From 63b9ca72fbab51b4009bee06dc3ba7a683704d46 Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Mon, 13 Jan 2025 10:50:06 +0700 Subject: [PATCH 01/21] :memo: custom font-size from epubjs for my company's project --- dist/js/epubreader.min.js | 2 +- dist/js/libs/epub.min.js | 2 +- dist/js/libs/jszip.min.js | 2 +- dist/js/libs/md5.min.js | 2 +- src/sidebar/settings.js | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dist/js/epubreader.min.js b/dist/js/epubreader.min.js index df8c4bb..e45ec77 100644 --- a/dist/js/epubreader.min.js +++ b/dist/js/epubreader.min.js @@ -1,2 +1,2 @@ -var e={263:(e,t,s)=>{var a=s(175),o=s(873),n=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,o,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),o=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,o=!1),c={value:t,configurable:s,enumerable:o,writable:d},l?n(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?o(t)?a(s)?o(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?n(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),o=s(134),n=Math.max;e.exports=function(e,t){var s,i,r,d=n(arguments.length,2);for(e=Object(o(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),o=Object.keys;e.exports=function(e){return o(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),o=Array.prototype.forEach,n=Object.create;e.exports=function(e){var t=n(null);return o.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,o,n,i,r,d,l,c=s(263),h=s(499),b=Function.prototype.apply,u=Function.prototype.call,m=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,w={configurable:!0,enumerable:!1,writable:!0};o=function(e,t){var s,o;return h(t),o=this,a.call(this,e,s=function(){n.call(o,e,s),b.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=w.value=m(null),g(this,"__ee__",w),w.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:o,off:n=function(e,t){var s,a,o,n;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(n=0;o=a[n];++n)o!==t&&o.__eeOnceListener__!==t||(2===a.length?s[e]=a[n?0:1]:a.splice(n,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,o,n;if(f.call(this,"__ee__")&&(o=this.__ee__[e]))if("object"==typeof o){for(s=arguments.length,n=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),o={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(o,typeof e)}},873:(e,t,s)=>{var a=s(80),o=/^\s*class[\s{/}]/,n=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!o.test(n.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var o=t[a];if(void 0!==o)return o.exports;var n=t[a]={exports:{}};return e[a](n,n.exports,s),n.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>R});var o=s(68);const n=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let o;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":o=t[a]?e[a]:t[a];break;default:o=t[a]}else o="arrows"===a?t[a]:void 0===n(s,a)?e[a]:t[a];return o},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],n(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add"},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter"},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加"},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить"}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class b{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class y extends b{constructor(e,t,s,a,o){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=o||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends m{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new u).setClass("tab-selector"),this.menuDiv=(new m).setClass("menu"),this.tabsDiv=(new m).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new m).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new I(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const o=new m;o.setId(e),o.add(s),this.panels.push(o),this.panelsDiv.add(o),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class I extends m{constructor(e,t){super(),this.button=new x("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class S extends b{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class D extends b{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new m).setId("item-box");for(let s=0;s{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),n.add(i),"toolbar"===s.arrows&&(d=(new m).setId("btn-p").setClass("box"),l=new x("button"),l.setTitle(t.get(o[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),n.add(d),c=(new m).setId("btn-n").setClass("box"),h=new x("button"),h.dom.title=t.get(o[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),n.add(c));const b=(new m).setClass("menu-2");let u,g,p,f;if(s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},n=(new m).setId("btn-o").setClass("box");u=new x("file"),u.dom.title=t.get(o[3]),u.dom.accept="application/epub+zip",u.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(o[4]))},u.dom.onclick=e=>{u.dom.blur()},n.add(u),b.add(n)}if(s.bookmarks&&(g=(new m).setId("btn-b").setClass("box"),p=new x("button"),p.setTitle(t.get(o[5])),p.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),p.dom.blur()},g.add(p),b.add(g)),s.fullscreen){const e=(new m).setId("btn-f").setClass("box");f=new x("button"),f.setTitle(t.get(o[6])),f.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(f),b.add(e)}a.add([n,b]),document.body.appendChild(a.dom),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?g.removeClass("bookmarked"):g.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?g.addClass("bookmarked"):g.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(o[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(o[1])),h.setTitle(t.get(o[2]))),s.openbook&&u.setTitle(t.get(o[3])),s.bookmarks&&p.setTitle(t.get(o[5])),s.fullscreen&&f.setTitle(t.get(o[6]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class O{constructor(e){const t=e.settings,s=(new m).setId("content");let a;"content"===t.arrows&&(a=(new m).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()},a.add(new u("<")),s.add(a));const o=(new m).setId("viewer");let n;s.add(o),"content"===t.arrows&&(n=(new m).setId("next").setClass("arrow"),n.dom.onclick=t=>{e.emit("next"),t.preventDefault()},n.add(new u(">")),s.add(n));const i=(new m).setId("loader"),r=(new m).setId("divider"),d=(new m).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{o.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{o.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?n.addClass("disabled"):n.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(n.addClass("active"),setTimeout((()=>{n.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{o.clear()}))}}class z extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/contents"],o=new v(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new T(o).addClass("header")),e.on("navigation",(e=>{t.clear(),t.add(this.generateToc(e)),this.add(t)})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new S(t);return e.forEach((e=>{const t=new w(e.href,e.label),a=new D(s).setId(e.id),o=new u;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([o,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);o.setClass("toggle-collapsed"),o.dom.onclick=()=>(t.expanded?(t.collaps(),o.setClass("toggle-collapsed")):(t.expand(),o.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class j extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],o=new v(s.get(a[0])).setClass("label"),n=new x("button",s.get(a[1]));n.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new T([o,n]).addClass("header")),this.selector=void 0,this.bookmarks=new S,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{n.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new w,s=new D,a=(new u).setClass("btn-remove"),o=this.reader.navItemFromCfi(e);let n,i;if(void 0===o){const t=this.reader.book.spine.get(e);n=t.idref,i=t.idref}else n=o.id,i=o.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(n),this.bookmarks.add(s)}}class B extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],o=new v(s.get(a[0])).setClass("label"),n=new x("button",s.get(a[1]));n.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new T([o,n]).addClass("header")),this.selector=void 0,this.notes=new S,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{n.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}set(e){const t=new w("#"+e.cfi,e.text),s=(new D).setId("note-"+e.uuid),a=(new u).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update()}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);-1!==t&&(this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update())}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class A extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings;let a;const o=new x("search").setId("nav-q");o.dom.placeholder=s.get("sidebar/search/placeholder"),o.dom.onsearch=()=>{const e=o.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new S,t.add(this.items),this.add([new T(o),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new w("#"+e.cfi,e.excerpt),s=new D;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class V extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new v(t.get(s[0])).setClass("label");this.add(new T(a).addClass("header"));const o=new f(t.get(s[1]),"language-ui"),n=new g,i=(new k).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),n.add(o),n.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new y(100,1);l.dom.onchange=t=>{e.emit("styleschanged",{fontSize:parseInt(t.target.value)})},l.setId("fontsize"),d.add(r),d.add(l);const c=new f(t.get(s[3]),"flow"),h=new g,b=(new k).setOptions({paginated:"Paginated",scrolled:"Scrolled"});b.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},b.setId("flow"),h.add(c),h.add(b);const u=new y(800,1),m=new f(t.get(s[4]),"spread"),p=new g,w=(new k).setOptions({none:"None",auto:"Auto"});w.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),u.dom.disabled="none"===t.target.value},w.setId("spread"),p.add(m),p.add(w);const C=new f(t.get(s[5]),"min-spread-width"),I=new g;u.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},u.setId("min-spread-width"),I.add(C),I.add(u);const S=t.get("sidebar/settings/pagination"),D=new g,_=new x("checkbox",!1,S[1]);_.setId("pagination"),_.dom.onclick=e=>{},D.add(new f(S[0],"pagination")),D.add(_),this.add(new T([n,d,h,p,I])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),b.setValue(e.flow),w.setValue(e.spread.mod),u.setValue(e.spread.min),u.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(w.setValue("none"),w.dom.disabled=!0,u.dom.disabled=!0):w.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),o.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),m.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class P extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a={},o="sidebar/metadata",n=new v(s.get(o)).setClass("label");this.add(new T(n).addClass("header")),a[o]=n,this.items=new S,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const n=new D,i=(new v).setClass("label"),r=(new v).setClass("value");i.setValue(s.get(o+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[o+"/"+e]=i,n.add([i,r]),this.items.add(n)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===o?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class L{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],o=new C("vertical").setId("sidebar"),n=(new m).setId("btn-p").addClass("box"),i=new x("button");i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},n.add(i),o.addMenu(n),o.addTab("btn-t",t.get(a[1]),new z(e)),s.bookmarks&&o.addTab("btn-d",t.get(a[2]),new j(e)),s.annotations&&o.addTab("btn-a",t.get(a[3]),new B(e)),o.addTab("btn-s",t.get(a[4]),new A(e)),o.addTab("btn-c",t.get(a[5]),new V(e)),o.addTab("btn-i",t.get(a[6]),new P(e)),o.select("btn-t"),document.body.appendChild(o.dom),e.on("sidebaropener",(e=>{e?o.setClass("open"):o.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),o.setLabel("btn-t",t.get(a[1])),s.bookmarks&&o.setLabel("btn-d",t.get(a[2])),s.annotations&&o.setLabel("btn-a",t.get(a[3])),o.setLabel("btn-s",t.get(a[4])),o.setLabel("btn-c",t.get(a[5])),o.setLabel("btn-i",t.get(a[6]))}))}}class F{constructor(e){const t=(new m).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],o=new f(s.get(a[0]),"note-input"),n=new x("text","").setId("note-input");n.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new x("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:n.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&n.getValue().length>0)},t.add(new T([o,n,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),n.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{o.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class R{constructor(e,t){const s=s=>{const a=new URL(window.location);let o=e;t&&!t.openbook?(o=e,s&&this.storage.clear()):s&&0===a.search.length&&(o=s),this.cfgInit(o,t),this.strings=new c(this),this.toolbar=new _(this),this.content=new O(this),this.sidebar=new L(this),this.settings.annotations&&(this.notedlg=new F(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("navigation",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"%")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:100},pagination:void 0,fullscreen:document.fullscreenEnabled},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=2,this.emit("styleschanged",{fontSize:t});break;case"-":t-=2,this.emit("styleschanged",{fontSize:t});break;case"0":t=100,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}o(R.prototype);var E=a.Reader;export{E as Reader}; +var e = { 263: (e, t, s) => { var a = s(175), o = s(873), n = s(596), i = s(148), r = s(214); (e.exports = function (e, t) { var s, o, d, l, c; return arguments.length < 2 || "string" != typeof e ? (l = t, t = e, e = null) : l = arguments[2], a(e) ? (s = r.call(e, "c"), o = r.call(e, "e"), d = r.call(e, "w")) : (s = d = !0, o = !1), c = { value: t, configurable: s, enumerable: o, writable: d }, l ? n(i(l), c) : c }).gs = function (e, t, s) { var d, l, c, h; return "string" != typeof e ? (c = s, s = t, t = e, e = null) : c = arguments[3], a(t) ? o(t) ? a(s) ? o(s) || (c = s, s = void 0) : s = void 0 : (c = t, t = s = void 0) : t = void 0, a(e) ? (d = r.call(e, "c"), l = r.call(e, "e")) : (d = !0, l = !1), h = { get: t, set: s, configurable: d, enumerable: l }, c ? n(i(c), h) : h } }, 11: e => { e.exports = function () { } }, 596: (e, t, s) => { e.exports = s(339)() ? Object.assign : s(595) }, 339: e => { e.exports = function () { var e, t = Object.assign; return "function" == typeof t && (t(e = { foo: "raz" }, { bar: "dwa" }, { trzy: "trzy" }), e.foo + e.bar + e.trzy === "razdwatrzy") } }, 595: (e, t, s) => { var a = s(93), o = s(134), n = Math.max; e.exports = function (e, t) { var s, i, r, d = n(arguments.length, 2); for (e = Object(o(e)), r = function (a) { try { e[a] = t[a] } catch (e) { s || (s = e) } }, i = 1; i < d; ++i)a(t = arguments[i]).forEach(r); if (void 0 !== s) throw s; return e } }, 762: (e, t, s) => { var a = s(11)(); e.exports = function (e) { return e !== a && null !== e } }, 93: (e, t, s) => { e.exports = s(380)() ? Object.keys : s(232) }, 380: e => { e.exports = function () { try { return Object.keys("primitive"), !0 } catch (e) { return !1 } } }, 232: (e, t, s) => { var a = s(762), o = Object.keys; e.exports = function (e) { return o(a(e) ? Object(e) : e) } }, 148: (e, t, s) => { var a = s(762), o = Array.prototype.forEach, n = Object.create; e.exports = function (e) { var t = n(null); return o.call(arguments, (function (e) { a(e) && function (e, t) { var s; for (s in e) t[s] = e[s] }(Object(e), t) })), t } }, 499: e => { e.exports = function (e) { if ("function" != typeof e) throw new TypeError(e + " is not a function"); return e } }, 134: (e, t, s) => { var a = s(762); e.exports = function (e) { if (!a(e)) throw new TypeError("Cannot use null or undefined"); return e } }, 214: (e, t, s) => { e.exports = s(525)() ? String.prototype.contains : s(521) }, 525: e => { var t = "razdwatrzy"; e.exports = function () { return "function" == typeof t.contains && !0 === t.contains("dwa") && !1 === t.contains("foo") } }, 521: e => { var t = String.prototype.indexOf; e.exports = function (e) { return t.call(this, e, arguments[1]) > -1 } }, 68: (e, t, s) => { var a, o, n, i, r, d, l, c = s(263), h = s(499), b = Function.prototype.apply, u = Function.prototype.call, m = Object.create, g = Object.defineProperty, p = Object.defineProperties, f = Object.prototype.hasOwnProperty, w = { configurable: !0, enumerable: !1, writable: !0 }; o = function (e, t) { var s, o; return h(t), o = this, a.call(this, e, s = function () { n.call(o, e, s), b.call(t, this, arguments) }), s.__eeOnceListener__ = t, this }, r = { on: a = function (e, t) { var s; return h(t), f.call(this, "__ee__") ? s = this.__ee__ : (s = w.value = m(null), g(this, "__ee__", w), w.value = null), s[e] ? "object" == typeof s[e] ? s[e].push(t) : s[e] = [s[e], t] : s[e] = t, this }, once: o, off: n = function (e, t) { var s, a, o, n; if (h(t), !f.call(this, "__ee__")) return this; if (!(s = this.__ee__)[e]) return this; if ("object" == typeof (a = s[e])) for (n = 0; o = a[n]; ++n)o !== t && o.__eeOnceListener__ !== t || (2 === a.length ? s[e] = a[n ? 0 : 1] : a.splice(n, 1)); else a !== t && a.__eeOnceListener__ !== t || delete s[e]; return this }, emit: i = function (e) { var t, s, a, o, n; if (f.call(this, "__ee__") && (o = this.__ee__[e])) if ("object" == typeof o) { for (s = arguments.length, n = new Array(s - 1), t = 1; t < s; ++t)n[t - 1] = arguments[t]; for (o = o.slice(), t = 0; a = o[t]; ++t)b.call(a, this, n) } else switch (arguments.length) { case 1: u.call(o, this); break; case 2: u.call(o, this, arguments[1]); break; case 3: u.call(o, this, arguments[1], arguments[2]); break; default: for (s = arguments.length, n = new Array(s - 1), t = 1; t < s; ++t)n[t - 1] = arguments[t]; b.call(o, this, n) } } }, d = { on: c(a), once: c(o), off: c(n), emit: c(i) }, l = p({}, d), e.exports = t = function (e) { return null == e ? m(l) : p(Object(e), d) }, t.methods = r }, 80: (e, t, s) => { var a = s(202); e.exports = function (e) { if ("function" != typeof e) return !1; if (!hasOwnProperty.call(e, "length")) return !1; try { if ("number" != typeof e.length) return !1; if ("function" != typeof e.call) return !1; if ("function" != typeof e.apply) return !1 } catch (e) { return !1 } return !a(e) } }, 181: (e, t, s) => { var a = s(175), o = { object: !0, function: !0, undefined: !0 }; e.exports = function (e) { return !!a(e) && hasOwnProperty.call(o, typeof e) } }, 873: (e, t, s) => { var a = s(80), o = /^\s*class[\s{/}]/, n = Function.prototype.toString; e.exports = function (e) { return !!a(e) && !o.test(n.call(e)) } }, 202: (e, t, s) => { var a = s(181); e.exports = function (e) { if (!a(e)) return !1; try { return !!e.constructor && e.constructor.prototype === e } catch (e) { return !1 } } }, 175: e => { e.exports = function (e) { return null != e } } }, t = {}; function s(a) { var o = t[a]; if (void 0 !== o) return o.exports; var n = t[a] = { exports: {} }; return e[a](n, n.exports, s), n.exports } s.d = (e, t) => { for (var a in t) s.o(t, a) && !s.o(e, a) && Object.defineProperty(e, a, { enumerable: !0, get: t[a] }) }, s.o = (e, t) => Object.prototype.hasOwnProperty.call(e, t), s.r = e => { "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(e, "__esModule", { value: !0 }) }; var a = {}; s.r(a), s.d(a, { Reader: () => R }); var o = s(68); const n = (e, t) => e ? e[t] : void 0, i = (e, t, s, a) => { let o; if ("boolean" == typeof t[a]) switch (a) { case "annotations": case "bookmarks": o = t[a] ? e[a] : t[a]; break; default: o = t[a] } else o = "arrows" === a ? t[a] : void 0 === n(s, a) ? e[a] : t[a]; return o }, r = (e, t, s) => { for (let a in e) "bookPath" !== a && (t[a] instanceof Array ? t[a] = s ? e[a] ? e[a] : t[a] : e[a] : t[a] instanceof Object ? r(e[a], t[a], n(s, a)) : t[a] = s ? i(e, t, s, a) : e[a]) }, d = () => { let e = (new Date).getTime(); return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (t => { let s = (e + 16 * Math.random()) % 16 | 0; return e = Math.floor(e / 16), ("x" === t ? s : 7 & s | 8).toString(16) })) }; class l { constructor() { this.name = "epubreader-js", this.version = 1, this.db, this.indexedDB = window.indexedDB || window.webkitIndexedDB || window.mozIndexedDB || window.OIndexedDB || window.msIndexedDB, void 0 === this.indexedDB && console.error("The IndexedDB API not available in your browser.") } init(e) { if (void 0 === this.indexedDB) return void e(); const t = Date.now(), s = e => console.error("IndexedDB", e), a = indexedDB.open(this.name, this.version); a.onupgradeneeded = e => { const t = e.target.result; !1 === t.objectStoreNames.contains("entries") && t.createObjectStore("entries") }, a.onsuccess = a => { this.db = a.target.result, this.db.onerror = s, e(), console.log(`storage.init: ${Date.now() - t} ms`) }, a.onerror = s } get(e) { if (void 0 === this.db) return void e(); const t = Date.now(); this.db.transaction(["entries"], "readwrite").objectStore("entries").get(0).onsuccess = s => { e(s.target.result), console.log(`storage.get: ${Date.now() - t} ms`) } } set(e, t) { if (void 0 === this.db) return void t(); const s = Date.now(); this.db.transaction(["entries"], "readwrite").objectStore("entries").put(e, 0).onsuccess = () => { t(), console.log(`storage.set: ${Date.now() - s} ms`) } } clear() { if (void 0 === this.db) return; const e = Date.now(); this.db.transaction(["entries"], "readwrite").objectStore("entries").clear().onsuccess = () => { console.log(`storage.clear: ${Date.now() - e} ms`) } } } class c { constructor(e) { this.language = e.settings.language || "en", this.values = { en: { "toolbar/sidebar": "Sidebar", "toolbar/prev": "Previous page", "toolbar/next": "Next page", "toolbar/openbook": "Open book", "toolbar/openbook/error": "Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.", "toolbar/bookmark": "Add this page to bookmarks", "toolbar/fullscreen": "Fullscreen", "sidebar/close": "Close Sidebar", "sidebar/contents": "Contents", "sidebar/bookmarks": "Bookmarks", "sidebar/bookmarks/add": "Add", "sidebar/bookmarks/remove": "Remove", "sidebar/bookmarks/clear": "Clear", "sidebar/annotations": "Annotations", "sidebar/annotations/add": "Add", "sidebar/annotations/remove": "Remove", "sidebar/annotations/clear": "Clear", "sidebar/annotations/anchor": "Anchor", "sidebar/annotations/cancel": "Cancel", "sidebar/search": "Search", "sidebar/search/placeholder": "Search", "sidebar/settings": "Settings", "sidebar/settings/language": "Language", "sidebar/settings/fontsize": "Font size (%)", "sidebar/settings/flow": "Flow", "sidebar/settings/pagination": ["Pagination", "Generate pagination"], "sidebar/settings/spread": "Spread", "sidebar/settings/spread/minwidth": "Minimum spread width", "sidebar/metadata": "Metadata", "sidebar/metadata/title": "Title", "sidebar/metadata/creator": "Creator", "sidebar/metadata/description": "Description", "sidebar/metadata/pubdate": "Pubdate", "sidebar/metadata/publisher": "Publisher", "sidebar/metadata/identifier": "Identifier", "sidebar/metadata/language": "Language", "sidebar/metadata/rights": "Rights", "sidebar/metadata/modified_date": "Modified date", "sidebar/metadata/layout": "Layout", "sidebar/metadata/flow": "Flow", "sidebar/metadata/spread": "Spread", "sidebar/metadata/direction": "Direction", "notedlg/label": "Note", "notedlg/add": "Add" }, fr: { "toolbar/sidebar": "Barre latérale", "toolbar/prev": "???", "toolbar/next": "???", "toolbar/openbook": "Ouvrir un livre local", "toolbar/openbook/error": "Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.", "toolbar/bookmark": "Insérer un marque page ici", "toolbar/fullscreen": "Plein écran", "sidebar/close": "???", "sidebar/contents": "Sommaire", "sidebar/bookmarks": "Marque-pages", "sidebar/bookmarks/add": "Ajouter", "sidebar/bookmarks/remove": "Retirer", "sidebar/bookmarks/clear": "Tout enlever", "sidebar/annotations": "Annotations", "sidebar/annotations/add": "Ajouter", "sidebar/annotations/remove": "Retirer", "sidebar/annotations/clear": "Tout enlever", "sidebar/annotations/anchor": "Ancre", "sidebar/annotations/cancel": "Annuler", "sidebar/search": "Rechercher", "sidebar/search/placeholder": "rechercher", "sidebar/settings": "Réglages", "sidebar/settings/language": "Langue", "sidebar/settings/fontsize": "???", "sidebar/settings/flow": "???", "sidebar/settings/pagination": ["Pagination", "Établir une pagination"], "sidebar/settings/spread": "???", "sidebar/settings/spread/minwidth": "???", "sidebar/metadata": "???", "sidebar/metadata/title": "???", "sidebar/metadata/creator": "???", "sidebar/metadata/description": "???", "sidebar/metadata/pubdate": "???", "sidebar/metadata/publisher": "???", "sidebar/metadata/identifier": "???", "sidebar/metadata/language": "Langue", "sidebar/metadata/rights": "???", "sidebar/metadata/modified_date": "???", "sidebar/metadata/layout": "???", "sidebar/metadata/flow": "???", "sidebar/metadata/spread": "???", "sidebar/metadata/direction": "???", "notedlg/label": "???", "notedlg/add": "Ajouter" }, ja: { "toolbar/sidebar": "サイドバー", "toolbar/prev": "???", "toolbar/next": "???", "toolbar/openbook": "本を開く", "toolbar/openbook/error": "ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。", "toolbar/bookmark": "このページに栞を設定する", "toolbar/fullscreen": "フルスクリーン", "sidebar/close": "???", "sidebar/contents": "目次", "sidebar/bookmarks": "栞", "sidebar/bookmarks/add": "追加", "sidebar/bookmarks/remove": "削除", "sidebar/bookmarks/clear": "クリア", "sidebar/annotations": "注釈", "sidebar/annotations/add": "追加", "sidebar/bookmarks/remove": "削除", "sidebar/annotations/clear": "クリア", "sidebar/annotations/anchor": "アンカー", "sidebar/annotations/cancel": "キャンセル", "sidebar/search": "検索", "sidebar/search/placeholder": "検索", "sidebar/settings": "設定", "sidebar/settings/language": "表示言語", "sidebar/settings/fontsize": "???", "sidebar/settings/flow": "???", "sidebar/settings/pagination": ["ページネーション", "ページネーションを生成します。"], "sidebar/settings/spread": "???", "sidebar/settings/spread/minwidth": "???", "sidebar/metadata": "???", "sidebar/metadata/title": "???", "sidebar/metadata/creator": "???", "sidebar/metadata/description": "???", "sidebar/metadata/pubdate": "???", "sidebar/metadata/publisher": "???", "sidebar/metadata/identifier": "???", "sidebar/metadata/language": "表示言語", "sidebar/metadata/rights": "???", "sidebar/metadata/modified_date": "???", "sidebar/metadata/layout": "???", "sidebar/metadata/flow": "???", "sidebar/metadata/spread": "???", "sidebar/metadata/direction": "???", "notedlg/label": "???", "notedlg/add": "追加" }, ru: { "toolbar/sidebar": "Боковая панель", "toolbar/prev": "Предыдущая страница", "toolbar/next": "Следущая страница", "toolbar/openbook": "Открыть книгу", "toolbar/openbook/error": "Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.", "toolbar/bookmark": "Добавить эту страницу в закладки", "toolbar/fullscreen": "Полноэкранный режим", "sidebar/close": "Закрыть боковую панель", "sidebar/contents": "Содержание", "sidebar/bookmarks": "Закладки", "sidebar/bookmarks/add": "Добавить", "sidebar/bookmarks/remove": "Удалить", "sidebar/bookmarks/clear": "Очистить", "sidebar/annotations": "Аннотации", "sidebar/annotations/add": "Добавить", "sidebar/annotations/remove": "Удалить", "sidebar/annotations/clear": "Очистить", "sidebar/annotations/anchor": "Метка", "sidebar/annotations/cancel": "Отмена", "sidebar/search": "Поиск", "sidebar/search/placeholder": "Поиск", "sidebar/settings": "Настройки", "sidebar/settings/language": "Язык", "sidebar/settings/fontsize": "Размер шрифта", "sidebar/settings/flow": "Поток", "sidebar/settings/pagination": ["Нумерация страниц", "Генерировать нумерацию страниц"], "sidebar/settings/spread": "Разворот", "sidebar/settings/spread/minwidth": "Мин. ширина колонки", "sidebar/metadata": "Метаданные", "sidebar/metadata/title": "Заголовок", "sidebar/metadata/creator": "Автор", "sidebar/metadata/description": "Описание", "sidebar/metadata/pubdate": "Дата публикации", "sidebar/metadata/publisher": "Издатель", "sidebar/metadata/identifier": "Идентификатор", "sidebar/metadata/language": "Язык", "sidebar/metadata/rights": "Лицензия", "sidebar/metadata/modified_date": "Дата изменения", "sidebar/metadata/layout": "Макет", "sidebar/metadata/flow": "Поток", "sidebar/metadata/spread": "Разворот", "sidebar/metadata/direction": "Направление", "notedlg/label": "Заметка", "notedlg/add": "Добавить" } }, e.on("languagechanged", (e => { this.language = e })) } get(e) { return this.values[this.language][e] || "???" } } const h = "is not an instance of UIElement."; class b { constructor(e) { this.dom = document.createElement(e) } add() { for (let e = 0; e < arguments.length; e++) { const t = arguments[e]; if (t instanceof b) this.dom.appendChild(t.dom); else if (Array.isArray(t)) for (let e = 0; e < t.length; e++) { const s = t[e]; s instanceof b ? this.dom.appendChild(s.dom) : console.error("UIElement:", s, h) } else console.error("UIElement:", t, h) } return this } remove() { for (let e = 0; e < arguments.length; e++) { const t = arguments[e]; t instanceof b ? this.dom.removeChild(t.dom) : Number.isInteger(t) ? this.dom.removeChild(this.dom.childNodes[t]) : console.error("UIElement:", t, h) } return this } clear() { for (; this.dom.children.length;)this.dom.removeChild(this.dom.lastChild); return this } setId(e) { return this.dom.id = e, this } getId() { return this.dom.id } removeAttribute(e) { return this.dom.removeAttribute(e), this } setClass(e) { return this.dom.className = e, this } addClass(e) { return this.dom.classList.add(e), this } removeClass(e) { return this.dom.classList.remove(e), this } setStyle(e, t) { return this.dom.style[e] = t, this } getTitle() { return this.dom.title } setTitle(e) { return this.dom.title !== e && e && (this.dom.title = e), this } getTextContent() { return this.dom.textContent } setTextContent(e) { return this.dom.textContent !== e && e && (this.dom.textContent = e), this } getBoundingClientRect() { return this.dom.getBoundingClientRect() } } class u extends b { constructor(e) { super("span"), this.setTextContent(e) } } class m extends b { constructor() { super("div") } } class g extends m { constructor() { super(), this.dom.className = "row" } } class p extends m { constructor() { super(), this.dom.className = "panel" } } class f extends b { constructor(e, t) { super("label"), this.dom.textContent = e, t && (this.dom.htmlFor = t) } } class w extends b { constructor(e, t) { super("a"), this.dom.href = e || "#", this.dom.textContent = t || "" } setHref(e) { return this.dom.href = e, this } } class v extends u { constructor(e) { super(), this.dom.textContent = e } getValue() { return this.dom.textContent } setValue(e) { return this.dom.textContent = e, this } } class k extends b { constructor() { super("select") } setMultiple(e) { return this.dom.multiple = e || !1, this } setOptions(e) { const t = this.dom.value; this.clear(); for (const t in e) { const s = document.createElement("option"); s.value = t, s.text = e[t], this.dom.appendChild(s) } return this.dom.value = t, this } getValue() { return this.dom.value } setValue(e) { return e = String(e), this.dom.value !== e && (this.dom.value = e), this } } class x extends b { constructor(e, t, s) { super("input"), this.dom.type = e, this.dom.onkeydown = e => { e.stopPropagation() }, this.setValue(t), this.setTitle(s) } getName() { return this.dom.name } setName(e) { return this.dom.name = e, this } getType() { return this.dom.type } setType(e) { return this.dom.type = e, this } getValue() { return this.dom.value } setValue(e) { return this.dom.value !== e && void 0 !== e && (this.dom.value = e), this } } class y extends b { constructor(e, t, s, a, o) { super("input"), this.dom.type = "number", this.dom.step = t || 1, this.dom.onkeydown = e => { e.stopPropagation() }, this.value = e || 0, this.min = s || -1 / 0, this.max = a || 1 / 0, this.precision = o || 0, this.setValue(e), this.dom.onchange = e => { this.setValue(this.value) } } getName() { return this.dom.name } setName(e) { return this.dom.name = e, this } setPrecision(e) { return this.precision = e, this.setValue(this.value), this } setRange(e, t) { return this.min = e, this.max = t, this.dom.min = e, this.dom.max = t, this } setStep(e) { return this.dom.step = e, this } getValue() { return parseFloat(this.dom.value) } setValue(e) { return void 0 !== e && ((e = parseFloat(e)) < this.min && (e = this.min), e > this.max && (e = this.max), this.value = e, this.dom.value = e.toFixed(this.precision)), this } } class C extends m { constructor(e) { super(), this.align = e || "horizontal", this.tabs = [], this.panels = [], this.selector = (new u).setClass("tab-selector"), this.menuDiv = (new m).setClass("menu"), this.tabsDiv = (new m).setClass("tabs"), this.tabsDiv.add(this.selector), this.panelsDiv = (new m).setClass("panels"), this.selected = "", this.add(this.menuDiv), this.add(this.tabsDiv), this.add(this.panelsDiv) } addMenu(e) { this.menuDiv.add(e) } addTab(e, t, s) { const a = new I(t, this); a.setId(e), a.setClass("box"), this.tabs.push(a), this.tabsDiv.add(a); const o = new m; o.setId(e), o.add(s), this.panels.push(o), this.panelsDiv.add(o), this.select(e) } select(e) { for (let t of this.tabs) t.dom.id === e ? (t.addClass("selected"), this.transformSelector(t)) : t.dom.id === this.selected && t.removeClass("selected"); for (let t of this.panels) t.dom.id === e ? t.dom.style.display = "block" : t.dom.id === this.selected && (t.dom.style.display = "none"); return this.selected = e, this } setLabel(e, t) { for (let s of this.tabs) if (s.dom.id === e) { s.setTitle(t); break } } transformSelector(e) { let t; const s = e.getBoundingClientRect(); "horizontal" === this.align ? (t = s.width * this.tabs.indexOf(e), this.selector.dom.style.transform = `translateX(${t}px)`) : (t = s.height * this.tabs.indexOf(e), this.selector.dom.style.transform = `translateY(${t}px)`) } } class I extends m { constructor(e, t) { super(), this.button = new x("button"), this.button.dom.title = e, this.dom.onclick = e => { t.select(this.dom.id), e.preventDefault() }, this.add(this.button) } } class S extends b { constructor(e) { super("ul"), this.parent = e && e.parent, this.expanded = !1 } expand() { return this.expanded = !0, this.dom.style.display = "block", this.parent && this.parent.expand(), this } collaps() { return this.expanded = !1, this.dom.style.display = "none", this } } class D extends b { constructor(e) { super("li"), this.parent = e, this.selected = !1 } add() { let e = 0; const t = (new m).setId("item-box"); for (let s = 0; s < arguments.length; s++) { const a = arguments[s]; a instanceof S ? super.add(a) : (t.add(a), e++) } return e && super.add(t), this } select() { return this.selected = !0, this.setClass("selected"), this } unselect() { return this.selected = !1, this.removeAttribute("class"), this } } class T extends b { constructor(e) { super("div"), this.setClass("box"), this.add(e) } } class _ { constructor(e) { const t = e.strings, s = e.settings, a = (new m).setId("toolbar"), o = ["toolbar/sidebar", "toolbar/prev", "toolbar/next", "toolbar/openbook", "toolbar/openbook/error", "toolbar/bookmark", "toolbar/fullscreen"], n = (new m).setClass("menu-1"), i = (new m).setId("btn-m").setClass("box"), r = new x("button"); let d, l, c, h; r.dom.title = t.get(o[0]), r.dom.onclick = t => { e.emit("sidebaropener", !0), r.dom.blur(), t.preventDefault() }, i.add(r), n.add(i), "toolbar" === s.arrows && (d = (new m).setId("btn-p").setClass("box"), l = new x("button"), l.setTitle(t.get(o[1])), l.dom.onclick = t => { e.emit("prev"), t.preventDefault(), l.dom.blur() }, d.add(l), n.add(d), c = (new m).setId("btn-n").setClass("box"), h = new x("button"), h.dom.title = t.get(o[2]), h.dom.onclick = t => { e.emit("next"), t.preventDefault(), h.dom.blur() }, c.add(h), n.add(c)); const b = (new m).setClass("menu-2"); let u, g, p, f; if (s.openbook) { const s = t => { e.storage.clear(), e.storage.set(t.target.result, (() => { e.unload(), e.init(t.target.result); const s = new URL(window.location.origin); window.history.pushState({}, "", s) })) }, a = e => { console.error(e) }, n = (new m).setId("btn-o").setClass("box"); u = new x("file"), u.dom.title = t.get(o[3]), u.dom.accept = "application/epub+zip", u.dom.onchange = e => { if (0 !== e.target.files.length) if (window.FileReader) { const t = new FileReader; t.onload = s, t.readAsArrayBuffer(e.target.files[0]), t.onerror = a } else alert(t.get(o[4])) }, u.dom.onclick = e => { u.dom.blur() }, n.add(u), b.add(n) } if (s.bookmarks && (g = (new m).setId("btn-b").setClass("box"), p = new x("button"), p.setTitle(t.get(o[5])), p.dom.onclick = t => { const s = this.locationCfi, a = -1 === e.isBookmarked(s); e.emit("bookmarked", a), t.preventDefault(), p.dom.blur() }, g.add(p), b.add(g)), s.fullscreen) { const e = (new m).setId("btn-f").setClass("box"); f = new x("button"), f.setTitle(t.get(o[6])), f.dom.onclick = e => { this.toggleFullScreen(), e.preventDefault() }, document.onkeydown = e => { "F11" === e.key && (e.preventDefault(), this.toggleFullScreen()) }, document.onfullscreenchange = t => { const s = window.screen.width === t.target.clientWidth, a = window.screen.height === t.target.clientHeight; s && a ? e.addClass("resize-small") : e.removeClass("resize-small") }, e.add(f), b.add(e) } a.add([n, b]), document.body.appendChild(a.dom), e.on("relocated", (t => { if (s.bookmarks) { const s = t.start.cfi; -1 === e.isBookmarked(s) ? g.removeClass("bookmarked") : g.addClass("bookmarked"), this.locationCfi = s } "toolbar" === s.arrows && (d.dom.style.display = t.atStart ? "none" : "block", c.dom.style.display = t.atEnd ? "none" : "block") })), e.on("bookmarked", (e => { e ? g.addClass("bookmarked") : g.removeClass("bookmarked") })), e.on("languagechanged", (e => { r.setTitle(t.get(o[0])), "toolbar" === s.arrows && (l.setTitle(t.get(o[1])), h.setTitle(t.get(o[2]))), s.openbook && u.setTitle(t.get(o[3])), s.bookmarks && p.setTitle(t.get(o[5])), s.fullscreen && f.setTitle(t.get(o[6])) })) } toggleFullScreen() { document.activeElement.blur(), null === document.fullscreenElement ? document.documentElement.requestFullscreen() : document.exitFullscreen && document.exitFullscreen() } } class O { constructor(e) { const t = e.settings, s = (new m).setId("content"); let a; "content" === t.arrows && (a = (new m).setId("prev").setClass("arrow"), a.dom.onclick = t => { e.emit("prev"), t.preventDefault() }, a.add(new u("<")), s.add(a)); const o = (new m).setId("viewer"); let n; s.add(o), "content" === t.arrows && (n = (new m).setId("next").setClass("arrow"), n.dom.onclick = t => { e.emit("next"), t.preventDefault() }, n.add(new u(">")), s.add(n)); const i = (new m).setId("loader"), r = (new m).setId("divider"), d = (new m).setId("overlay"); d.dom.onclick = t => { e.emit("sidebaropener", !1), t.preventDefault() }, s.add([i, r, d]), document.body.appendChild(s.dom), e.on("bookready", (e => { o.setClass(e.flow), i.dom.style.display = "block" })), e.on("bookloaded", (() => { i.dom.style.display = "none" })), e.on("layout", (e => { e.spread && e.width > e.spreadWidth ? r.dom.style.display = "block" : r.dom.style.display = "none" })), e.on("flowchanged", (e => { o.setClass(e) })), e.on("relocated", (e => { "content" === t.arrows && (e.atStart ? a.addClass("disabled") : a.removeClass("disabled"), e.atEnd ? n.addClass("disabled") : n.removeClass("disabled")) })), e.on("prev", (() => { "content" === t.arrows && (a.addClass("active"), setTimeout((() => { a.removeClass("active") }), 100)) })), e.on("next", (() => { "content" === t.arrows && (n.addClass("active"), setTimeout((() => { n.removeClass("active") }), 100)) })), e.on("sidebaropener", (e => { d.dom.style.display = e ? "block" : "none" })), e.on("viewercleanup", (() => { o.clear() })) } } class z extends p { constructor(e) { super(); const t = (new m).setClass("list-container"), s = e.strings, a = ["sidebar/contents"], o = new v(s.get(a[0])).setClass("label"); this.reader = e, this.selector = void 0, this.setId("contents"), this.add(new T(o).addClass("header")), e.on("navigation", (e => { t.clear(), t.add(this.generateToc(e)), this.add(t) })), e.on("languagechanged", (e => { o.setValue(s.get(a[0])) })) } generateToc(e, t) { const s = new S(t); return e.forEach((e => { const t = new w(e.href, e.label), a = new D(s).setId(e.id), o = new u; if (t.dom.onclick = t => { this.selector && this.selector !== a && this.selector.unselect(), a.select(), this.selector = a, this.reader.settings.sectionId = e.id, this.reader.rendition.display(e.href), t.preventDefault() }, a.add([o, t]), this.reader.navItems[e.href] = { id: e.id, label: e.label }, this.reader.settings.sectionId === e.id && (s.expand(), a.select(), this.selector = a), e.subitems && e.subitems.length > 0) { const t = this.generateToc(e.subitems, a); o.setClass("toggle-collapsed"), o.dom.onclick = () => (t.expanded ? (t.collaps(), o.setClass("toggle-collapsed")) : (t.expand(), o.setClass("toggle-expanded")), !1), a.add(t) } s.add(a) })), s } } class j extends p { constructor(e) { super(); const t = (new m).setClass("list-container"), s = e.strings, a = ["sidebar/bookmarks", "sidebar/bookmarks/clear"], o = new v(s.get(a[0])).setClass("label"), n = new x("button", s.get(a[1])); n.dom.onclick = t => { this.clearBookmarks(), e.emit("bookmarked", !1), t.preventDefault() }, this.add(new T([o, n]).addClass("header")), this.selector = void 0, this.bookmarks = new S, t.add(this.bookmarks), this.setId("bookmarks"), this.add(t), this.reader = e; const i = () => { n.dom.disabled = 0 === e.settings.bookmarks.length }; e.on("displayed", ((e, t) => { t.bookmarks.forEach((e => { this.setBookmark(e) })), i() })), e.on("relocated", (e => { this.locationCfi = e.start.cfi })), e.on("bookmarked", ((e, t) => { e ? this.appendBookmark() : this.removeBookmark(t), i() })), e.on("languagechanged", (e => { o.setValue(s.get(a[0])), n.setValue(s.get(a[1])) })) } appendBookmark() { const e = this.locationCfi; this.reader.isBookmarked(e) > -1 || (this.setBookmark(e), this.reader.settings.bookmarks.push(e)) } removeBookmark(e) { const t = e || this.locationCfi, s = this.reader.isBookmarked(t); -1 !== s && (this.bookmarks.remove(s), this.reader.settings.bookmarks.splice(s, 1)) } clearBookmarks() { this.bookmarks.clear(), this.reader.settings.bookmarks = [] } setBookmark(e) { const t = new w, s = new D, a = (new u).setClass("btn-remove"), o = this.reader.navItemFromCfi(e); let n, i; if (void 0 === o) { const t = this.reader.book.spine.get(e); n = t.idref, i = t.idref } else n = o.id, i = o.label; t.setHref("#" + e), t.dom.onclick = t => { this.selector && this.selector !== s && this.selector.unselect(), s.select(), this.selector = s, this.reader.rendition.display(e), t.preventDefault() }, t.setTextContent(i), a.dom.onclick = t => { this.reader.emit("bookmarked", !1, e), t.preventDefault() }, s.add([t, a]), s.setId(n), this.bookmarks.add(s) } } class B extends p { constructor(e) { super(); const t = (new m).setClass("list-container"), s = e.strings, a = ["sidebar/annotations", "sidebar/annotations/clear"], o = new v(s.get(a[0])).setClass("label"), n = new x("button", s.get(a[1])); n.dom.onclick = e => { this.clearNotes(), e.preventDefault() }, this.add(new T([o, n]).addClass("header")), this.selector = void 0, this.notes = new S, t.add(this.notes), this.setId("annotations"), this.add(t), this.reader = e, this.update = () => { n.dom.disabled = 0 === e.settings.annotations.length }, e.on("bookready", (e => { e.annotations.forEach((e => { this.set(e) })), this.update() })), e.on("noteadded", (e => { this.set(e), this.update() })), e.on("languagechanged", (e => { o.setValue(s.get(a[0])), n.setValue(s.get(a[1])) })) } set(e) { const t = new w("#" + e.cfi, e.text), s = (new D).setId("note-" + e.uuid), a = (new u).setClass("btn-remove"); t.dom.onclick = t => { this.selector && this.selector !== s && this.selector.unselect(), s.select(), this.selector = s, this.reader.rendition.display(e.cfi), t.preventDefault() }, a.dom.onclick = t => { this.removeNote(e), t.preventDefault() }, s.add([t, a]), this.notes.add(s), this.reader.rendition.annotations.add("highlight", e.cfi, {}, (() => { }), "note-highlight", {}), this.update() } removeNote(e) { const t = this.reader.settings.annotations.indexOf(e); -1 !== t && (this.notes.remove(t), this.reader.settings.annotations.splice(t, 1), this.reader.rendition.annotations.remove(e.cfi, "highlight"), this.update()) } clearNotes() { this.reader.settings.annotations.forEach((e => { this.reader.rendition.annotations.remove(e.cfi, "highlight") })), this.notes.clear(), this.reader.settings.annotations = [], this.update() } } class A extends p { constructor(e) { super(); const t = (new m).setClass("list-container"), s = e.strings; let a; const o = new x("search").setId("nav-q"); o.dom.placeholder = s.get("sidebar/search/placeholder"), o.dom.onsearch = () => { const e = o.getValue(); 0 === e.length ? this.items.clear() : a !== e && (this.items.clear(), this.doSearch(e).then((e => { e.forEach((e => { this.set(e) })) }))), a = e }, this.setId("search"), this.items = new S, t.add(this.items), this.add([new T(o), t]), this.reader = e, this.selector = void 0 } async doSearch(e) { const t = this.reader.book, s = await Promise.all(t.spine.spineItems.map((s => s.load(t.load.bind(t)).then(s.find.bind(s, e)).finally(s.unload.bind(s))))); return await Promise.resolve([].concat.apply([], s)) } set(e) { const t = new w("#" + e.cfi, e.excerpt), s = new D; t.dom.onclick = () => (this.selector && this.selector !== s && this.selector.unselect(), s.select(), this.selector = s, this.reader.rendition.display(e.cfi), !1), s.add(t), this.items.add(s) } } class V extends p { constructor(e) { super(), super.setId("settings"); const t = e.strings, s = ["sidebar/settings", "sidebar/settings/language", "sidebar/settings/fontsize", "sidebar/settings/flow", "sidebar/settings/spread", "sidebar/settings/spread/minwidth"], a = new v(t.get(s[0])).setClass("label"); this.add(new T(a).addClass("header")); const o = new f(t.get(s[1]), "language-ui"), n = new g, i = (new k).setOptions({ en: "English", fr: "French", ja: "Japanese", ru: "Russian" }); i.dom.onchange = t => { e.emit("languagechanged", t.target.value) }, i.setId("language-ui"), n.add(o), n.add(i); const r = new f(t.get(s[2]), "fontsize"), d = new g, l = new y(100, 1); l.dom.onchange = t => { e.emit("styleschanged", { fontSize: parseInt(t.target.value) }) }, l.setId("fontsize"), d.add(r), d.add(l); const c = new f(t.get(s[3]), "flow"), h = new g, b = (new k).setOptions({ paginated: "Paginated", scrolled: "Scrolled" }); b.dom.onchange = t => { e.emit("flowchanged", t.target.value), "scrolled" === t.target.value ? e.emit("spreadchanged", { mod: "none", min: void 0 }) : e.emit("spreadchanged", { mod: void 0, min: void 0 }) }, b.setId("flow"), h.add(c), h.add(b); const u = new y(800, 1), m = new f(t.get(s[4]), "spread"), p = new g, w = (new k).setOptions({ none: "None", auto: "Auto" }); w.dom.onchange = t => { e.emit("spreadchanged", { mod: t.target.value, min: void 0 }), u.dom.disabled = "none" === t.target.value }, w.setId("spread"), p.add(m), p.add(w); const C = new f(t.get(s[5]), "min-spread-width"), I = new g; u.dom.onchange = t => { e.emit("spreadchanged", { mod: void 0, min: parseInt(t.target.value) }) }, u.setId("min-spread-width"), I.add(C), I.add(u); const S = t.get("sidebar/settings/pagination"), D = new g, _ = new x("checkbox", !1, S[1]); _.setId("pagination"), _.dom.onclick = e => { }, D.add(new f(S[0], "pagination")), D.add(_), this.add(new T([n, d, h, p, I])), e.on("bookready", (e => { i.setValue(e.language), l.setValue(e.styles.fontSize), b.setValue(e.flow), w.setValue(e.spread.mod), u.setValue(e.spread.min), u.dom.disabled = "none" === e.spread.mod })), e.on("layout", (e => { "scrolled" === e.flow ? (w.setValue("none"), w.dom.disabled = !0, u.dom.disabled = !0) : w.dom.disabled = !1 })), e.on("languagechanged", (e => { a.setTextContent(t.get(s[0])), o.setTextContent(t.get(s[1])), r.setTextContent(t.get(s[2])), c.setTextContent(t.get(s[3])), m.setTextContent(t.get(s[4])), C.setTextContent(t.get(s[5])) })) } } class P extends p { constructor(e) { super(); const t = (new m).setClass("list-container"), s = e.strings, a = {}, o = "sidebar/metadata", n = new v(s.get(o)).setClass("label"); this.add(new T(n).addClass("header")), a[o] = n, this.items = new S, this.setId("metadata"), this.add(t); const i = (e, t) => { if (void 0 === t[e] || null === t[e] || "string" == typeof t[e] && 0 === t[e].length) return; const n = new D, i = (new v).setClass("label"), r = (new v).setClass("value"); i.setValue(s.get(o + "/" + e).toUpperCase()), "description" === e ? r.dom.innerHTML = t[e] : r.setValue(t[e]), a[o + "/" + e] = i, n.add([i, r]), this.items.add(n) }; e.on("metadata", (e => { this.items.clear(), t.clear(), t.add(this.items), document.title = e.title; for (const t in e) i(t, e) })), e.on("languagechanged", (e => { for (const e in a) { let t; t = e === o ? s.get(e) : s.get(e).toUpperCase(), a[e].setValue(t) } })) } } class L { constructor(e) { const t = e.strings, s = e.settings, a = ["sidebar/close", "sidebar/contents", "sidebar/bookmarks", "sidebar/annotations", "sidebar/search", "sidebar/settings", "sidebar/metadata"], o = new C("vertical").setId("sidebar"), n = (new m).setId("btn-p").addClass("box"), i = new x("button"); i.setTitle(t.get(a[0])), i.dom.onclick = t => { e.emit("sidebaropener", !1), t.preventDefault(), i.dom.blur() }, n.add(i), o.addMenu(n), o.addTab("btn-t", t.get(a[1]), new z(e)), s.bookmarks && o.addTab("btn-d", t.get(a[2]), new j(e)), s.annotations && o.addTab("btn-a", t.get(a[3]), new B(e)), o.addTab("btn-s", t.get(a[4]), new A(e)), o.addTab("btn-c", t.get(a[5]), new V(e)), o.addTab("btn-i", t.get(a[6]), new P(e)), o.select("btn-t"), document.body.appendChild(o.dom), e.on("sidebaropener", (e => { e ? o.setClass("open") : o.removeAttribute("class") })), e.on("languagechanged", (e => { i.setTitle(t.get(a[0])), o.setLabel("btn-t", t.get(a[1])), s.bookmarks && o.setLabel("btn-d", t.get(a[2])), s.annotations && o.setLabel("btn-a", t.get(a[3])), o.setLabel("btn-s", t.get(a[4])), o.setLabel("btn-c", t.get(a[5])), o.setLabel("btn-i", t.get(a[6])) })) } } class F { constructor(e) { const t = (new m).setId("notedlg"), s = e.strings, a = ["notedlg/label", "notedlg/add"], o = new f(s.get(a[0]), "note-input"), n = new x("text", "").setId("note-input"); n.dom.oninput = e => { this.update(), e.preventDefault() }; const i = new x("button", s.get(a[1])); i.dom.disabled = !0, i.dom.onclick = s => { const a = { cfi: this.cfi, date: new Date, text: n.getValue(), uuid: d() }; this.range = void 0, e.settings.annotations.push(a), e.emit("noteadded", a), t.removeAttribute("class"), s.preventDefault(), i.dom.blur() }, this.update = () => { i.dom.disabled = !(this.range && n.getValue().length > 0) }, t.add(new T([o, n, i]).addClass("control")), document.body.appendChild(t.dom), e.on("selected", ((e, s) => { this.cfi = e, this.range = s.range(e), this.update(), t.setClass("open"), n.setValue("") })), e.on("unselected", (() => { this.range = void 0, this.update(), t.removeAttribute("class") })), e.on("languagechanged", (e => { o.setTextContent(s.get(a[0])), i.setValue(s.get(a[1])) })) } } class R { constructor(e, t) { const s = s => { const a = new URL(window.location); let o = e; t && !t.openbook ? (o = e, s && this.storage.clear()) : s && 0 === a.search.length && (o = s), this.cfgInit(o, t), this.strings = new c(this), this.toolbar = new _(this), this.content = new O(this), this.sidebar = new L(this), this.settings.annotations && (this.notedlg = new F(this)), this.init() }; this.settings = void 0, this.isMobile = [/Android/i, /BlackBerry/i, /iPhone/i, /iPad/i, /iPod/i, /Windows Phone/i, /webOS/i].some((e => navigator.userAgent.match(e))), this.storage = new l; const a = t && t.openbook; !this.storage.indexedDB || t && !a ? s() : this.storage.init((() => this.storage.get((e => s(e))))), window.onbeforeunload = this.unload.bind(this), window.onhashchange = this.hashChanged.bind(this), window.onkeydown = this.keyboardHandler.bind(this), window.onwheel = e => { e.ctrlKey && e.preventDefault() } } init(e, t) { this.emit("viewercleanup"), this.navItems = {}, arguments.length > 0 && this.cfgInit(e, t), this.book = ePub(this.settings.bookPath), this.rendition = this.book.renderTo("viewer", { manager: this.settings.manager, flow: this.settings.flow, spread: this.settings.spread.mod, minSpreadWidth: this.settings.spread.min, width: "100%", height: "100%", snap: !0 }); const s = this.settings.previousLocationCfi; this.displayed = s ? this.rendition.display(s) : this.rendition.display(), this.displayed.then((e => { this.emit("displayed", e, this.settings) })), this.book.ready.then((() => { this.emit("bookready", this.settings) })).then((() => { this.emit("bookloaded") })), this.book.loaded.metadata.then((e => { this.emit("metadata", e) })), this.book.loaded.navigation.then((e => { this.emit("navigation", e) })), this.rendition.on("click", (e => { "Range" !== e.view.document.getSelection().type && this.emit("unselected") })), this.rendition.on("layout", (e => { this.emit("layout", e) })), this.rendition.on("selected", ((e, t) => { this.setLocation(e), this.emit("selected", e, t) })), this.rendition.on("relocated", (e => { this.setLocation(e.start.cfi), this.emit("relocated", e) })), this.rendition.on("keydown", this.keyboardHandler.bind(this)), this.on("prev", (() => { "rtl" === this.book.package.metadata.direction ? this.rendition.next() : this.rendition.prev() })), this.on("next", (() => { "rtl" === this.book.package.metadata.direction ? this.rendition.prev() : this.rendition.next() })), this.on("languagechanged", (e => { this.settings.language = e })), this.on("flowchanged", (e => { this.settings.flow = e, this.rendition.flow(e) })), this.on("spreadchanged", (e => { const t = e.mod || this.settings.spread.mod, s = e.min || this.settings.spread.min; this.settings.spread.mod = t, this.settings.spread.min = s, this.rendition.spread(t, s) })), this.on("styleschanged", (e => { const t = e.fontSize; this.settings.styles.fontSize = t, this.rendition.themes.fontSize(t + "%") })) } navItemFromCfi(e) { const t = this.rendition.getRange(e), s = t ? t.startContainer.parentNode.id : void 0, a = this.rendition.currentLocation().start.href; return this.navItems[a + "#" + s] || this.navItems[a] } isBookmarked(e) { return this.settings.bookmarks.indexOf(e) } isAnnotated(e) { return this.settings.annotations.indexOf(e) } cfgInit(e, t) { this.entryKey = md5(e).toString(), this.settings = { bookPath: e, arrows: this.isMobile ? "none" : "content", manager: this.isMobile ? "continuous" : "default", restore: !0, history: !0, openbook: !!this.storage.indexedDB, language: "en", sectionId: void 0, bookmarks: [], annotations: [], flow: "paginated", spread: { mod: "auto", min: 800 }, styles: { fontSize: 100 }, pagination: void 0, fullscreen: document.fullscreenEnabled }, r(t || {}, this.settings), this.settings.restore ? this.applySavedSettings(t || {}) : this.removeSavedSettings() } isSaved() { return localStorage && null !== localStorage.getItem(this.entryKey) } removeSavedSettings() { return !!this.isSaved() && (localStorage.removeItem(this.entryKey), !0) } applySavedSettings(e) { if (!this.isSaved()) return !1; let t; try { t = JSON.parse(localStorage.getItem(this.entryKey)) } catch (e) { console.exception(e) } return !!t && (r(t, this.settings, e), !0) } saveSettings() { this.settings.previousLocationCfi = this.rendition.location.start.cfi; const e = Object.assign({}, this.settings); delete e.arrows, delete e.manager, delete e.history, delete e.restore, delete e.openbook, delete e.pagination, delete e.fullscreen, localStorage.setItem(this.entryKey, JSON.stringify(e)) } setLocation(e) { const t = this.book.archived ? void 0 : this.book.url, s = new URL(window.location, t); s.hash = "#" + e, this.settings.history && window.location.hash !== s.hash && (window.history.pushState({}, "", s), this.currentLocationCfi = e) } unload() { this.settings.restore && localStorage && this.saveSettings() } hashChanged() { const e = window.location.hash.slice(1); this.rendition.display(e) } keyboardHandler(e) { let t = this.settings.styles.fontSize; switch (e.key) { case "=": case "+": t += 2, this.emit("styleschanged", { fontSize: t }); break; case "-": t -= 2, this.emit("styleschanged", { fontSize: t }); break; case "0": t = 100, this.emit("styleschanged", { fontSize: t }); break; case "ArrowLeft": this.emit("prev"); break; case "ArrowRight": this.emit("next") } } } o(R.prototype); var E = a.Reader; export { E as Reader }; //# sourceMappingURL=epubreader.min.js.map \ No newline at end of file diff --git a/dist/js/libs/epub.min.js b/dist/js/libs/epub.min.js index adb662b..1f9196e 100644 --- a/dist/js/libs/epub.min.js +++ b/dist/js/libs/epub.min.js @@ -1 +1 @@ -!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("JSZip")):"function"==typeof define&&define.amd?define(["JSZip"],e):"object"==typeof exports?exports.ePub=e(require("JSZip")):t.ePub=e(t.JSZip)}(window,(function(t){return function(t){var e={};function i(n){if(e[n])return e[n].exports;var s=e[n]={i:n,l:!1,exports:{}};return t[n].call(s.exports,s,s.exports,i),s.l=!0,s.exports}return i.m=t,i.c=e,i.d=function(t,e,n){i.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},i.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},i.t=function(t,e){if(1&e&&(t=i(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var s in t)i.d(n,s,function(e){return t[e]}.bind(null,s));return n},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p="/dist/",i(i.s=30)}([function(t,e,i){"use strict";i.r(e),i.d(e,"requestAnimationFrame",(function(){return s})),i.d(e,"uuid",(function(){return o})),i.d(e,"documentHeight",(function(){return a})),i.d(e,"isElement",(function(){return h})),i.d(e,"isNumber",(function(){return l})),i.d(e,"isFloat",(function(){return c})),i.d(e,"prefixed",(function(){return u})),i.d(e,"defaults",(function(){return d})),i.d(e,"extend",(function(){return f})),i.d(e,"insert",(function(){return p})),i.d(e,"locationOf",(function(){return g})),i.d(e,"indexOfSorted",(function(){return m})),i.d(e,"bounds",(function(){return v})),i.d(e,"borders",(function(){return y})),i.d(e,"nodeBounds",(function(){return b})),i.d(e,"windowBounds",(function(){return w})),i.d(e,"indexOfNode",(function(){return x})),i.d(e,"indexOfTextNode",(function(){return E})),i.d(e,"indexOfElementNode",(function(){return S})),i.d(e,"isXml",(function(){return N})),i.d(e,"createBlob",(function(){return _})),i.d(e,"createBlobUrl",(function(){return T})),i.d(e,"revokeBlobUrl",(function(){return C})),i.d(e,"createBase64Url",(function(){return O})),i.d(e,"type",(function(){return I})),i.d(e,"parse",(function(){return R})),i.d(e,"qs",(function(){return k})),i.d(e,"qsa",(function(){return A})),i.d(e,"qsp",(function(){return L})),i.d(e,"sprint",(function(){return j})),i.d(e,"treeWalker",(function(){return D})),i.d(e,"walk",(function(){return P})),i.d(e,"blob2base64",(function(){return M})),i.d(e,"defer",(function(){return z})),i.d(e,"querySelectorByType",(function(){return B})),i.d(e,"findChildren",(function(){return q})),i.d(e,"parents",(function(){return F})),i.d(e,"filterChildren",(function(){return U})),i.d(e,"getParentByTagName",(function(){return W})),i.d(e,"RangeObject",(function(){return H}));var n=i(15);const s="undefined"!=typeof window&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame),r="undefined"!=typeof URL?URL:"undefined"!=typeof window?window.URL||window.webkitURL||window.mozURL:void 0;function o(){var t=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var i=(t+16*Math.random())%16|0;return t=Math.floor(t/16),("x"==e?i:7&i|8).toString(16)}))}function a(){return Math.max(document.documentElement.clientHeight,document.body.scrollHeight,document.documentElement.scrollHeight,document.body.offsetHeight,document.documentElement.offsetHeight)}function h(t){return!(!t||1!=t.nodeType)}function l(t){return!isNaN(parseFloat(t))&&isFinite(t)}function c(t){let e=parseFloat(t);return!1!==l(t)&&("string"==typeof t&&t.indexOf(".")>-1||Math.floor(e)!==e)}function u(t){var e=["-webkit-","-webkit-","-moz-","-o-","-ms-"],i=t.toLowerCase();if("undefined"==typeof document||void 0!==document.body.style[i])return t;for(var n=0;n<5;n++)if(void 0!==document.body.style[e[n]+i])return e[n]+i;return t}function d(t){for(var e=1,i=arguments.length;ee?1:t=0?h:h+1:0===r?h:-1===r?g(t,e,i,h,a):g(t,e,i,o,h))}function m(t,e,i,n,s){var r,o=n||0,a=s||e.length,h=parseInt(o+(a-o)/2);return i||(i=function(t,e){return t>e?1:t-1}function _(t,e){return new Blob([t],{type:e})}function T(t,e){var i=_(t,e);return r.createObjectURL(i)}function C(t){return r.revokeObjectURL(t)}function O(t,e){if("string"==typeof t)return"data:"+e+";base64,"+btoa(t)}function I(t){return Object.prototype.toString.call(t).slice(8,-1)}function R(t,e,i){var s;return s="undefined"==typeof DOMParser||i?n.DOMParser:DOMParser,65279===t.charCodeAt(0)&&(t=t.slice(1)),(new s).parseFromString(t,e)}function k(t,e){var i;if(!t)throw new Error("No Element Provided");return void 0!==t.querySelector?t.querySelector(e):(i=t.getElementsByTagName(e)).length?i[0]:void 0}function A(t,e){return void 0!==t.querySelector?t.querySelectorAll(e):t.getElementsByTagName(e)}function L(t,e,i){var n,s;if(void 0!==t.querySelector){for(var r in e+="[",i)e+=r+"~='"+i[r]+"'";return e+="]",t.querySelector(e)}if(n=t.getElementsByTagName(e),s=Array.prototype.slice.call(n,0).filter((function(t){for(var e in i)if(t.getAttribute(e)===i[e])return!0;return!1})))return s[0]}function j(t,e){void 0!==(t.ownerDocument||t).createTreeWalker?D(t,e,NodeFilter.SHOW_TEXT):P(t,(function(t){t&&3===t.nodeType&&e(t)}))}function D(t,e,i){var n=document.createTreeWalker(t,i,null,!1);let s;for(;s=n.nextNode();)e(s)}function P(t,e){if(e(t))return!0;if(t=t.firstChild)do{if(P(t,e))return!0;t=t.nextSibling}while(t)}function M(t){return new Promise((function(e,i){var n=new FileReader;n.readAsDataURL(t),n.onloadend=function(){e(n.result)}}))}function z(){this.resolve=null,this.reject=null,this.id=o(),this.promise=new Promise(((t,e)=>{this.resolve=t,this.reject=e})),Object.freeze(this)}function B(t,e,i){var n;if(void 0!==t.querySelector&&(n=t.querySelector(`${e}[*|type="${i}"]`)),n&&0!==n.length)return n;n=A(t,e);for(var s=0;s1&&(e=n[1],i.terminal=this.parseTerminal(e)),""===s[0]&&s.shift(),i.steps=s.map(function(t){return this.parseStep(t)}.bind(this)),i}parseStep(t){var e,i,n,s,r;if((s=t.match(/\[(.*)\]/))&&s[1]&&(r=s[1]),i=parseInt(t),!isNaN(i))return i%2==0?(e="element",n=i/2-1):(e="text",n=(i-1)/2),{type:e,index:n,id:r||null}}parseTerminal(t){var e,i,s=t.match(/\[(.*)\]/);return s&&s[1]?(e=parseInt(t.split("[")[0]),i=s[1]):e=parseInt(t),Object(n.isNumber)(e)||(e=null),{offset:e,assertion:i}}getChapterComponent(t){return t.split("!")[0]}getPathComponent(t){var e=t.split("!");if(e[1])return e[1].split(",")[0]}getRange(t){var e=t.split(",");return 3===e.length&&[e[1],e[2]]}getCharecterOffsetComponent(t){return t.split(":")[1]||""}joinSteps(t){return t?t.map((function(t){var e="";return"element"===t.type&&(e+=2*(t.index+1)),"text"===t.type&&(e+=1+2*t.index),t.id&&(e+="["+t.id+"]"),e})).join("/"):""}segmentString(t){var e="/";return e+=this.joinSteps(t.steps),t.terminal&&null!=t.terminal.offset&&(e+=":"+t.terminal.offset),t.terminal&&null!=t.terminal.assertion&&(e+="["+t.terminal.assertion+"]"),e}toString(){var t="epubcfi(";return t+=this.segmentString(this.base),t+="!",t+=this.segmentString(this.path),this.range&&this.start&&(t+=",",t+=this.segmentString(this.start)),this.range&&this.end&&(t+=",",t+=this.segmentString(this.end)),t+")"}compare(t,e){var i,n,r,o;if("string"==typeof t&&(t=new s(t)),"string"==typeof e&&(e=new s(e)),t.spinePos>e.spinePos)return 1;if(t.spinePosn[a].index)return 1;if(i[a].indexo.offset?1:r.offset=0&&(s.terminal.offset=e,"text"!=s.steps[s.steps.length-1].type&&s.steps.push({type:"text",index:0})),s}equalStep(t,e){return!(!t||!e)&&t.index===e.index&&t.id===e.id&&t.type===e.type}fromRange(t,e,i){var n={range:!1,base:{},path:{},start:null,end:null},s=t.startContainer,r=t.endContainer,o=t.startOffset,a=t.endOffset,h=!1;if(i&&(h=null!=s.ownerDocument.querySelector("."+i)),"string"==typeof e?(n.base=this.parseComponent(e),n.spinePos=n.base.steps[1].index):"object"==typeof e&&(n.base=e),t.collapsed)h&&(o=this.patchOffset(s,o,i)),n.path=this.pathTo(s,o,i);else{n.range=!0,h&&(o=this.patchOffset(s,o,i)),n.start=this.pathTo(s,o,i),h&&(a=this.patchOffset(r,a,i)),n.end=this.pathTo(r,a,i),n.path={steps:[],terminal:null};var l,c=n.start.steps.length;for(l=0;l0&&3===s&&3===r?o[n]=a:e===s&&(a+=1,o[n]=a),r=s;return o}position(t){var e,i;return 1===t.nodeType?((e=t.parentNode.children)||(e=Object(n.findChildren)(t.parentNode)),i=Array.prototype.indexOf.call(e,t)):i=(e=this.textNodes(t.parentNode)).indexOf(t),i}filteredPosition(t,e){var i,n;return 1===t.nodeType?(i=t.parentNode.children,n=this.normalizedMap(i,1,e)):(i=t.parentNode.childNodes,t.parentNode.classList.contains(e)&&(i=(t=t.parentNode).parentNode.childNodes),n=this.normalizedMap(i,3,e)),n[Array.prototype.indexOf.call(i,t)]}stepsToXpath(t){var e=[".","*"];return t.forEach((function(t){var i=t.index+1;t.id?e.push("*[position()="+i+" and @id='"+t.id+"']"):"text"===t.type?e.push("text()["+i+"]"):e.push("*["+i+"]")})),e.join("/")}stepsToQuerySelector(t){var e=["html"];return t.forEach((function(t){var i=t.index+1;t.id?e.push("#"+t.id):"text"===t.type||e.push("*:nth-child("+i+")")})),e.join(">")}textNodes(t,e){return Array.prototype.slice.call(t.childNodes).filter((function(t){return 3===t.nodeType||!(!e||!t.classList.contains(e))}))}walkToNode(t,e,i){var s,r,o=e||document,a=o.documentElement,h=t.length;for(r=0;r(r=(s=a[t]).textContent.length))){o=1===s.nodeType?s.childNodes[0]:s;break}e-=r}}return{container:o,offset:e}}toRange(t,e){var i,s,r,o,a,h,l,c,u=t||document,d=!!e&&null!=u.querySelector("."+e);if(i=void 0!==u.createRange?u.createRange():new n.RangeObject,this.range?(s=this.start,h=this.path.steps.concat(s.steps),o=this.findNode(h,u,d?e:null),r=this.end,l=this.path.steps.concat(r.steps),a=this.findNode(l,u,d?e:null)):(s=this.path,h=this.path.steps,o=this.findNode(this.path.steps,u,d?e:null)),!o)return console.log("No startContainer found for",this.toString()),null;try{null!=s.terminal.offset?i.setStart(o,s.terminal.offset):i.setStart(o,0)}catch(t){c=this.fixMiss(h,s.terminal.offset,u,d?e:null),i.setStart(c.container,c.offset)}if(a)try{null!=r.terminal.offset?i.setEnd(a,r.terminal.offset):i.setEnd(a,0)}catch(t){c=this.fixMiss(l,this.end.terminal.offset,u,d?e:null),i.setEnd(c.container,c.offset)}return i}isCfiString(t){return"string"==typeof t&&0===t.indexOf("epubcfi(")&&")"===t[t.length-1]}generateChapterComponent(t,e,i){var n="/"+2*(t+1)+"/";return n+=2*(parseInt(e)+1),i&&(n+="["+i+"]"),n}collapse(t){this.range&&(this.range=!1,t?(this.path.steps=this.path.steps.concat(this.start.steps),this.path.terminal=this.start.terminal):(this.path.steps=this.path.steps.concat(this.end.steps),this.path.terminal=this.end.terminal))}}e.a=s},function(t,e,i){"use strict";var n,s,r,o,a,h,l,c=i(31),u=i(45),d=Function.prototype.apply,f=Function.prototype.call,p=Object.create,g=Object.defineProperty,m=Object.defineProperties,v=Object.prototype.hasOwnProperty,y={configurable:!0,enumerable:!1,writable:!0};s=function(t,e){var i,s;return u(e),s=this,n.call(this,t,i=function(){r.call(s,t,i),d.call(e,this,arguments)}),i.__eeOnceListener__=e,this},a={on:n=function(t,e){var i;return u(e),v.call(this,"__ee__")?i=this.__ee__:(i=y.value=p(null),g(this,"__ee__",y),y.value=null),i[t]?"object"==typeof i[t]?i[t].push(e):i[t]=[i[t],e]:i[t]=e,this},once:s,off:r=function(t,e){var i,n,s,r;if(u(e),!v.call(this,"__ee__"))return this;if(!(i=this.__ee__)[t])return this;if("object"==typeof(n=i[t]))for(r=0;s=n[r];++r)s!==e&&s.__eeOnceListener__!==e||(2===n.length?i[t]=n[r?0:1]:n.splice(r,1));else n!==e&&n.__eeOnceListener__!==e||delete i[t];return this},emit:o=function(t){var e,i,n,s,r;if(v.call(this,"__ee__")&&(s=this.__ee__[t]))if("object"==typeof s){for(i=arguments.length,r=new Array(i-1),e=1;e-1&&(t=new URL(t).pathname),e=this.parse(t),this.path=t,this.isDirectory(t)?this.directory=t:this.directory=e.dir+"/",this.filename=e.base,this.extension=e.ext.slice(1)}parse(t){return s.a.parse(t)}isAbsolute(t){return s.a.isAbsolute(t||this.path)}isDirectory(t){return"/"===t.charAt(t.length-1)}resolve(t){return s.a.resolve(this.directory,t)}relative(t){return t&&t.indexOf("://")>-1?t:s.a.relative(this.directory,t)}splitPath(t){return this.splitPathRe.exec(t).slice(1)}toString(){return this.path}}},function(t,e,i){"use strict";var n=i(4),s=i(7),r=i.n(s);e.a=class{constructor(t,e){var i=t.indexOf("://")>-1,s=t;if(this.Url=void 0,this.href=t,this.protocol="",this.origin="",this.hash="",this.hash="",this.search="",this.base=e,!i&&!1!==e&&"string"!=typeof e&&window&&window.location&&(this.base=window.location.href),i||this.base)try{this.base?this.Url=new URL(t,this.base):this.Url=new URL(t),this.href=this.Url.href,this.protocol=this.Url.protocol,this.origin=this.Url.origin,this.hash=this.Url.hash,this.search=this.Url.search,s=this.Url.pathname+(this.Url.search?this.Url.search:"")}catch(t){this.Url=void 0,this.base&&(s=new n.a(this.base).resolve(s))}this.Path=new n.a(s),this.directory=this.Path.directory,this.filename=this.Path.filename,this.extension=this.Path.extension}path(){return this.Path}resolve(t){var e;return t.indexOf("://")>-1?t:(e=r.a.resolve(this.directory,t),this.origin+e)}relative(t){return r.a.relative(t,this.directory)}toString(){return this.href}}},function(t,e,i){"use strict";e.a=class{constructor(t){this.context=t||this,this.hooks=[]}register(){for(var t=0;t2){for(var a=n.length-1,h=a;h>=0&&47!==n.charCodeAt(h);--h);if(h!==a){n=-1===h?"":n.slice(0,h),s=o,r=0;continue}}else if(2===n.length||1===n.length){n="",s=o,r=0;continue}e&&(n.length>0?n+="/..":n="..")}else n.length>0?n+="/"+t.slice(s+1,o):n=t.slice(s+1,o);s=o,r=0}else 46===i&&-1!==r?++r:r=-1}return n}var o={resolve:function(){for(var t,e="",i=!1,o=arguments.length-1;o>=-1&&!i;o--){var a;o>=0?a=arguments[o]:(void 0===t&&(t=n.cwd()),a=t),s(a),0!==a.length&&(e=a+"/"+e,i=47===a.charCodeAt(0))}return e=r(e,!i),i?e.length>0?"/"+e:"/":e.length>0?e:"."},normalize:function(t){if(s(t),0===t.length)return".";var e=47===t.charCodeAt(0),i=47===t.charCodeAt(t.length-1);return 0!==(t=r(t,!e)).length||e||(t="."),t.length>0&&i&&(t+="/"),e?"/"+t:t},isAbsolute:function(t){return s(t),t.length>0&&47===t.charCodeAt(0)},join:function(){if(0===arguments.length)return".";for(var t,e=0;e0&&(void 0===t?t=i:t+="/"+i)}return void 0===t?".":o.normalize(t)},relative:function(t,e){if(s(t),s(e),t===e)return"";if((t=o.resolve(t))===(e=o.resolve(e)))return"";for(var i=1;il){if(47===e.charCodeAt(a+u))return e.slice(a+u+1);if(0===u)return e.slice(a+u)}else r>l&&(47===t.charCodeAt(i+u)?c=u:0===u&&(c=0));break}var d=t.charCodeAt(i+u);if(d!==e.charCodeAt(a+u))break;47===d&&(c=u)}var f="";for(u=i+c+1;u<=n;++u)u!==n&&47!==t.charCodeAt(u)||(0===f.length?f+="..":f+="/..");return f.length>0?f+e.slice(a+c):(a+=c,47===e.charCodeAt(a)&&++a,e.slice(a))},_makeLong:function(t){return t},dirname:function(t){if(s(t),0===t.length)return".";for(var e=t.charCodeAt(0),i=47===e,n=-1,r=!0,o=t.length-1;o>=1;--o)if(47===(e=t.charCodeAt(o))){if(!r){n=o;break}}else r=!1;return-1===n?i?"/":".":i&&1===n?"//":t.slice(0,n)},basename:function(t,e){if(void 0!==e&&"string"!=typeof e)throw new TypeError('"ext" argument must be a string');s(t);var i,n=0,r=-1,o=!0;if(void 0!==e&&e.length>0&&e.length<=t.length){if(e.length===t.length&&e===t)return"";var a=e.length-1,h=-1;for(i=t.length-1;i>=0;--i){var l=t.charCodeAt(i);if(47===l){if(!o){n=i+1;break}}else-1===h&&(o=!1,h=i+1),a>=0&&(l===e.charCodeAt(a)?-1==--a&&(r=i):(a=-1,r=h))}return n===r?r=h:-1===r&&(r=t.length),t.slice(n,r)}for(i=t.length-1;i>=0;--i)if(47===t.charCodeAt(i)){if(!o){n=i+1;break}}else-1===r&&(o=!1,r=i+1);return-1===r?"":t.slice(n,r)},extname:function(t){s(t);for(var e=-1,i=0,n=-1,r=!0,o=0,a=t.length-1;a>=0;--a){var h=t.charCodeAt(a);if(47!==h)-1===n&&(r=!1,n=a+1),46===h?-1===e?e=a:1!==o&&(o=1):-1!==e&&(o=-1);else if(!r){i=a+1;break}}return-1===e||-1===n||0===o||1===o&&e===n-1&&e===i+1?"":t.slice(e,n)},format:function(t){if(null===t||"object"!=typeof t)throw new TypeError('Parameter "pathObject" must be an object, not '+typeof t);return function(t,e){var i=e.dir||e.root,n=e.base||(e.name||"")+(e.ext||"");return i?i===e.root?i+n:i+"/"+n:n}(0,t)},parse:function(t){s(t);var e={root:"",dir:"",base:"",ext:"",name:""};if(0===t.length)return e;var i,n=t.charCodeAt(0),r=47===n;r?(e.root="/",i=1):i=0;for(var o=-1,a=0,h=-1,l=!0,c=t.length-1,u=0;c>=i;--c)if(47!==(n=t.charCodeAt(c)))-1===h&&(l=!1,h=c+1),46===n?-1===o?o=c:1!==u&&(u=1):-1!==o&&(u=-1);else if(!l){a=c+1;break}return-1===o||-1===h||0===u||1===u&&o===h-1&&o===a+1?-1!==h&&(e.base=e.name=0===a&&r?t.slice(1,h):t.slice(a,h)):(0===a&&r?(e.name=t.slice(1,o),e.base=t.slice(1,h)):(e.name=t.slice(a,o),e.base=t.slice(a,h)),e.ext=t.slice(o,h)),a>0?e.dir=t.slice(0,a-1):r&&(e.dir="/"),e},sep:"/",delimiter:":",posix:null};t.exports=o},function(t,e,i){"use strict";i.d(e,"a",(function(){return r})),i.d(e,"b",(function(){return o})),i.d(e,"d",(function(){return a})),i.d(e,"c",(function(){return h})),i.d(e,"e",(function(){return l}));var n=i(0),s=i(5);function r(t,e){var i,s,r=e.url,o=r.indexOf("://")>-1;t&&(s=Object(n.qs)(t,"head"),(i=Object(n.qs)(s,"base"))||(i=t.createElement("base"),s.insertBefore(i,s.firstChild)),!o&&window&&window.location&&(r=window.location.origin+r),i.setAttribute("href",r))}function o(t,e){var i,s,r=e.canonical;t&&(i=Object(n.qs)(t,"head"),(s=Object(n.qs)(i,"link[rel='canonical']"))?s.setAttribute("href",r):((s=t.createElement("link")).setAttribute("rel","canonical"),s.setAttribute("href",r),i.appendChild(s)))}function a(t,e){var i,s,r=e.idref;t&&(i=Object(n.qs)(t,"head"),(s=Object(n.qs)(i,"link[property='dc.identifier']"))?s.setAttribute("content",r):((s=t.createElement("meta")).setAttribute("name","dc.identifier"),s.setAttribute("content",r),i.appendChild(s)))}function h(t,e){var i=t.querySelectorAll("a[href]");if(i.length)for(var r=Object(n.qs)(t.ownerDocument,"base"),o=r?r.getAttribute("href"):void 0,a=function(t){var i=t.getAttribute("href");if(0!==i.indexOf("mailto:"))if(i.indexOf("://")>-1)t.setAttribute("target","_blank");else{var n;try{n=new s.a(i,o)}catch(t){}t.onclick=function(){return n&&n.hash?e(n.Path.path+n.hash):e(n?n.Path.path:i),!1}}}.bind(this),h=0;h{this._q.length?this.dequeue().then(function(){this.run()}.bind(this)):(this.defered.resolve(),this.running=void 0)})),1==this.paused&&(this.paused=!1),this.defered.promise}flush(){return this.running?this.running:this._q.length?(this.running=this.dequeue().then(function(){return this.running=void 0,this.flush()}.bind(this)),this.running):void 0}clear(){this._q=[]}length(){return this._q.length}pause(){this.paused=!0}stop(){this._q=[],this.running=!1,this.paused=!0}}},function(t,e,i){"use strict";var n=i(3),s=i.n(n),r=i(0),o=i(11),a=i(9),h=i(28),l=i.n(h),c=class{constructor(t){this.settings=t||{},this.id="epubjs-container-"+Object(r.uuid)(),this.container=this.create(this.settings),this.settings.hidden&&(this.wrapper=this.wrap(this.container))}create(t){let e=t.height,i=t.width,n=t.overflow||!1,s=t.axis||"vertical",o=t.direction;Object(r.extend)(this.settings,t),t.height&&Object(r.isNumber)(t.height)&&(e=t.height+"px"),t.width&&Object(r.isNumber)(t.width)&&(i=t.width+"px");let a=document.createElement("div");return a.id=this.id,a.classList.add("epub-container"),a.style.wordSpacing="0",a.style.lineHeight="0",a.style.verticalAlign="top",a.style.position="relative","horizontal"===s&&(a.style.display="flex",a.style.flexDirection="row",a.style.flexWrap="nowrap"),i&&(a.style.width=i),e&&(a.style.height=e),n&&("scroll"===n&&"vertical"===s?(a.style["overflow-y"]=n,a.style["overflow-x"]="hidden"):"scroll"===n&&"horizontal"===s?(a.style["overflow-y"]="hidden",a.style["overflow-x"]=n):a.style.overflow=n),o&&(a.dir=o,a.style.direction=o),o&&this.settings.fullsize&&(document.body.style.direction=o),a}wrap(t){var e=document.createElement("div");return e.style.visibility="hidden",e.style.overflow="hidden",e.style.width="0",e.style.height="0",e.appendChild(t),e}getElement(t){var e;if(Object(r.isElement)(t)?e=t:"string"==typeof t&&(e=document.getElementById(t)),!e)throw new Error("Not an Element");return e}attachTo(t){var e,i=this.getElement(t);if(i)return e=this.settings.hidden?this.wrapper:this.container,i.appendChild(e),this.element=i,i}getContainer(){return this.container}onResize(t){Object(r.isNumber)(this.settings.width)&&Object(r.isNumber)(this.settings.height)||(this.resizeFunc=l()(t,50),window.addEventListener("resize",this.resizeFunc,!1))}onOrientationChange(t){this.orientationChangeFunc=t,window.addEventListener("orientationchange",this.orientationChangeFunc,!1)}size(t,e){var i;let n=t||this.settings.width,s=e||this.settings.height;null===t?(i=this.element.getBoundingClientRect()).width&&(t=Math.floor(i.width),this.container.style.width=t+"px"):Object(r.isNumber)(t)?this.container.style.width=t+"px":this.container.style.width=t,null===e?(i=i||this.element.getBoundingClientRect()).height&&(e=i.height,this.container.style.height=e+"px"):Object(r.isNumber)(e)?this.container.style.height=e+"px":this.container.style.height=e,Object(r.isNumber)(t)||(t=this.container.clientWidth),Object(r.isNumber)(e)||(e=this.container.clientHeight),this.containerStyles=window.getComputedStyle(this.container),this.containerPadding={left:parseFloat(this.containerStyles["padding-left"])||0,right:parseFloat(this.containerStyles["padding-right"])||0,top:parseFloat(this.containerStyles["padding-top"])||0,bottom:parseFloat(this.containerStyles["padding-bottom"])||0};let o=Object(r.windowBounds)(),a=window.getComputedStyle(document.body),h=parseFloat(a["padding-left"])||0,l=parseFloat(a["padding-right"])||0,c=parseFloat(a["padding-top"])||0,u=parseFloat(a["padding-bottom"])||0;return n||(t=o.width-h-l),(this.settings.fullsize&&!s||!s)&&(e=o.height-c-u),{width:t-this.containerPadding.left-this.containerPadding.right,height:e-this.containerPadding.top-this.containerPadding.bottom}}bounds(){let t;return"visible"!==this.container.style.overflow&&(t=this.container&&this.container.getBoundingClientRect()),t&&t.width&&t.height?t:Object(r.windowBounds)()}getSheet(){var t=document.createElement("style");return t.appendChild(document.createTextNode("")),document.head.appendChild(t),t.sheet}addStyleRules(t,e){var i="#"+this.id+" ",n="";this.sheet||(this.sheet=this.getSheet()),e.forEach((function(t){for(var e in t)t.hasOwnProperty(e)&&(n+=e+":"+t[e]+";")})),this.sheet.insertRule(i+t+" {"+n+"}",0)}axis(t){"horizontal"===t?(this.container.style.display="flex",this.container.style.flexDirection="row",this.container.style.flexWrap="nowrap"):this.container.style.display="block",this.settings.axis=t}direction(t){this.container&&(this.container.dir=t,this.container.style.direction=t),this.settings.fullsize&&(document.body.style.direction=t),this.settings.dir=t}overflow(t){this.container&&("scroll"===t&&"vertical"===this.settings.axis?(this.container.style["overflow-y"]=t,this.container.style["overflow-x"]="hidden"):"scroll"===t&&"horizontal"===this.settings.axis?(this.container.style["overflow-y"]="hidden",this.container.style["overflow-x"]=t):this.container.style.overflow=t),this.settings.overflow=t}destroy(){this.element&&(this.settings.hidden?this.wrapper:this.container,this.element.contains(this.container)&&this.element.removeChild(this.container),window.removeEventListener("resize",this.resizeFunc),window.removeEventListener("orientationChange",this.orientationChangeFunc))}},u=class{constructor(t){this.container=t,this._views=[],this.length=0,this.hidden=!1}all(){return this._views}first(){return this._views[0]}last(){return this._views[this._views.length-1]}indexOf(t){return this._views.indexOf(t)}slice(){return this._views.slice.apply(this._views,arguments)}get(t){return this._views[t]}append(t){return this._views.push(t),this.container&&this.container.appendChild(t.element),this.length++,t}prepend(t){return this._views.unshift(t),this.container&&this.container.insertBefore(t.element,this.container.firstChild),this.length++,t}insert(t,e){return this._views.splice(e,0,t),this.container&&(e-1&&this._views.splice(e,1),this.destroy(t),this.length--}destroy(t){t.displayed&&t.destroy(),this.container&&this.container.removeChild(t.element),t=null}forEach(){return this._views.forEach.apply(this._views,arguments)}clear(){var t,e=this.length;if(this.length){for(var i=0;i0?t="default":"undefined"!=typeof Element&&Element.prototype.scrollIntoView?(e.children[0].children[1].scrollIntoView(),e.scrollLeft<0&&(t="negative")):(e.scrollLeft=1,0===e.scrollLeft&&(t="negative")),document.body.removeChild(e),t}(),this.stage=new c({width:e.width,height:e.height,overflow:this.overflow,hidden:this.settings.hidden,axis:this.settings.axis,fullsize:this.settings.fullsize,direction:this.settings.direction}),this.stage.attachTo(t),this.container=this.stage.getContainer(),this.views=new u(this.container),this._bounds=this.bounds(),this._stageSize=this.stage.size(),this.viewSettings.width=this._stageSize.width,this.viewSettings.height=this._stageSize.height,this.stage.onResize(this.onResized.bind(this)),this.stage.onOrientationChange(this.onOrientationChange.bind(this)),this.addEventListeners(),this.layout&&this.updateLayout(),this.rendered=!0}addEventListeners(){var t;window.addEventListener("unload",function(t){this.destroy()}.bind(this)),t=this.settings.fullsize?window:this.container,this._onScroll=this.onScroll.bind(this),t.addEventListener("scroll",this._onScroll)}removeEventListeners(){(this.settings.fullsize?window:this.container).removeEventListener("scroll",this._onScroll),this._onScroll=void 0}destroy(){clearTimeout(this.orientationTimeout),clearTimeout(this.resizeTimeout),clearTimeout(this.afterScrolled),this.clear(),this.removeEventListeners(),this.stage.destroy(),this.rendered=!1}onOrientationChange(t){let{orientation:e}=window;this.optsSettings.resizeOnOrientationChange&&this.resize(),clearTimeout(this.orientationTimeout),this.orientationTimeout=setTimeout(function(){this.orientationTimeout=void 0,this.optsSettings.resizeOnOrientationChange&&this.resize(),this.emit(d.c.MANAGERS.ORIENTATION_CHANGE,e)}.bind(this),500)}onResized(t){this.resize()}resize(t,e,i){let n=this.stage.size(t,e);this.winBounds=Object(r.windowBounds)(),this.orientationTimeout&&this.winBounds.width===this.winBounds.height?this._stageSize=void 0:this._stageSize&&this._stageSize.width===n.width&&this._stageSize.height===n.height||(this._stageSize=n,this._bounds=this.bounds(),this.clear(),this.viewSettings.width=this._stageSize.width,this.viewSettings.height=this._stageSize.height,this.updateLayout(),this.emit(d.c.MANAGERS.RESIZED,{width:this._stageSize.width,height:this._stageSize.height},i))}createView(t,e){return new this.View(t,Object(r.extend)(this.viewSettings,{forceRight:e}))}handleNextPrePaginated(t,e,i){let n;if("pre-paginated"===this.layout.name&&this.layout.divisor>1){if(t||0===e.index)return;if(n=e.next(),n&&!n.properties.includes("page-spread-left"))return i.call(this,n)}}display(t,e){var i=new r.defer,n=i.promise;(e===t.href||Object(r.isNumber)(e))&&(e=void 0);var s=this.views.find(t);if(s&&t&&"pre-paginated"!==this.layout.name){let t=s.offset();if("ltr"===this.settings.direction)this.scrollTo(t.left,t.top,!0);else{let e=s.width();this.scrollTo(t.left+e,t.top,!0)}if(e){let t=s.locationOf(e),i=s.width();this.moveTo(t,i)}return i.resolve(),n}this.clear();let o=!1;return"pre-paginated"===this.layout.name&&2===this.layout.divisor&&t.properties.includes("page-spread-right")&&(o=!0),this.add(t,o).then(function(t){if(e){let i=t.locationOf(e),n=t.width();this.moveTo(i,n)}}.bind(this),(t=>{i.reject(t)})).then(function(){return this.handleNextPrePaginated(o,t,this.add)}.bind(this)).then(function(){this.views.show(),i.resolve()}.bind(this)),n}afterDisplayed(t){this.emit(d.c.MANAGERS.ADDED,t)}afterResized(t){this.emit(d.c.MANAGERS.RESIZE,t.section)}moveTo(t,e){var i=0,n=0;this.isPaginated?((i=Math.floor(t.left/this.layout.delta)*this.layout.delta)+this.layout.delta>this.container.scrollWidth&&(i=this.container.scrollWidth-this.layout.delta),(n=Math.floor(t.top/this.layout.delta)*this.layout.delta)+this.layout.delta>this.container.scrollHeight&&(n=this.container.scrollHeight-this.layout.delta)):n=t.top,"rtl"===this.settings.direction&&(i+=this.layout.delta,i-=e),this.scrollTo(i,n,!0)}add(t,e){var i=this.createView(t,e);return this.views.append(i),i.onDisplayed=this.afterDisplayed.bind(this),i.onResize=this.afterResized.bind(this),i.on(d.c.VIEWS.AXIS,(t=>{this.updateAxis(t)})),i.on(d.c.VIEWS.WRITING_MODE,(t=>{this.updateWritingMode(t)})),i.display(this.request)}append(t,e){var i=this.createView(t,e);return this.views.append(i),i.onDisplayed=this.afterDisplayed.bind(this),i.onResize=this.afterResized.bind(this),i.on(d.c.VIEWS.AXIS,(t=>{this.updateAxis(t)})),i.on(d.c.VIEWS.WRITING_MODE,(t=>{this.updateWritingMode(t)})),i.display(this.request)}prepend(t,e){var i=this.createView(t,e);return i.on(d.c.VIEWS.RESIZED,(t=>{this.counter(t)})),this.views.prepend(i),i.onDisplayed=this.afterDisplayed.bind(this),i.onResize=this.afterResized.bind(this),i.on(d.c.VIEWS.AXIS,(t=>{this.updateAxis(t)})),i.on(d.c.VIEWS.WRITING_MODE,(t=>{this.updateWritingMode(t)})),i.display(this.request)}counter(t){"vertical"===this.settings.axis?this.scrollBy(0,t.heightDelta,!0):this.scrollBy(t.widthDelta,0,!0)}next(){var t;let e=this.settings.direction;if(this.views.length&&(!this.isPaginated||"horizontal"!==this.settings.axis||e&&"ltr"!==e?this.isPaginated&&"horizontal"===this.settings.axis&&"rtl"===e?(this.scrollLeft=this.container.scrollLeft,"default"===this.settings.rtlScrollType?this.container.scrollLeft>0?this.scrollBy(this.layout.delta,0,!0):t=this.views.last().section.next():this.container.scrollLeft+-1*this.layout.delta>-1*this.container.scrollWidth?this.scrollBy(this.layout.delta,0,!0):t=this.views.last().section.next()):this.isPaginated&&"vertical"===this.settings.axis?(this.scrollTop=this.container.scrollTop,this.container.scrollTop+this.container.offsetHeightt)).then(function(){this.isPaginated||"horizontal"!==this.settings.axis||"rtl"!==this.settings.direction||"default"!==this.settings.rtlScrollType||this.scrollTo(this.container.scrollWidth,0,!0),this.views.show()}.bind(this))}}prev(){var t;let e=this.settings.direction;if(this.views.length&&(!this.isPaginated||"horizontal"!==this.settings.axis||e&&"ltr"!==e?this.isPaginated&&"horizontal"===this.settings.axis&&"rtl"===e?(this.scrollLeft=this.container.scrollLeft,"default"===this.settings.rtlScrollType?this.container.scrollLeft+this.container.offsetWidth0?this.scrollBy(0,-this.layout.height,!0):t=this.views.first().section.prev()):t=this.views.first().section.prev():(this.scrollLeft=this.container.scrollLeft,this.container.scrollLeft>0?this.scrollBy(-this.layout.delta,0,!0):t=this.views.first().section.prev()),t)){this.clear(),this.updateLayout();let e=!1;return"pre-paginated"===this.layout.name&&2===this.layout.divisor&&"object"!=typeof t.prev()&&(e=!0),this.prepend(t,e).then(function(){var e;if("pre-paginated"===this.layout.name&&this.layout.divisor>1&&(e=t.prev()))return this.prepend(e)}.bind(this),(t=>t)).then(function(){this.isPaginated&&"horizontal"===this.settings.axis&&("rtl"===this.settings.direction?"default"===this.settings.rtlScrollType?this.scrollTo(0,0,!0):this.scrollTo(-1*this.container.scrollWidth+this.layout.delta,0,!0):this.scrollTo(this.container.scrollWidth-this.layout.delta,0,!0)),this.views.show()}.bind(this))}}current(){var t=this.visible();return t.length?t[t.length-1]:null}clear(){this.views&&(this.views.hide(),this.scrollTo(0,0,!0),this.views.clear())}currentLocation(){return this.updateLayout(),this.isPaginated&&"horizontal"===this.settings.axis?this.location=this.paginatedLocation():this.location=this.scrolledLocation(),this.location}scrolledLocation(){let t=this.visible(),e=this.container.getBoundingClientRect(),i=e.height{let o,a,h,l,{index:c,href:u}=t.section,d=t.position(),f=t.width(),p=t.height();s?(o=r+e.top-d.top+0,a=o+i-0,l=this.layout.count(p,i).pages,h=i):(o=r+e.left-d.left+0,a=o+n-0,l=this.layout.count(f,n).pages,h=n);let g=Math.ceil(o/h),m=[],v=Math.ceil(a/h);if("rtl"===this.settings.direction&&!s){let t=g;g=l-v,v=l-t}m=[];for(var y=g;y<=v;y++){let t=y+1;m.push(t)}return{index:c,href:u,pages:m,totalPages:l,mapping:this.mapping.page(t.contents,t.section.cfiBase,o,a)}}))}paginatedLocation(){let t=this.visible(),e=this.container.getBoundingClientRect(),i=0,n=0;return this.settings.fullsize&&(i=window.scrollX),t.map((t=>{let s,r,o,a,{index:h,href:l}=t.section,c=t.position(),u=t.width();"rtl"===this.settings.direction?(s=e.right-i,a=Math.min(Math.abs(s-c.left),this.layout.width)-n,o=c.width-(c.right-s)-n,r=o-a):(s=e.left+i,a=Math.min(c.right-s,this.layout.width)-n,r=s-c.left+n,o=r+a),n+=a;let d=this.mapping.page(t.contents,t.section.cfiBase,r,o),f=this.layout.count(u).pages,p=Math.floor(r/this.layout.pageWidth),g=[],m=Math.floor(o/this.layout.pageWidth);if(p<0&&(p=0,m+=1),"rtl"===this.settings.direction){let t=p;p=f-m,m=f-t}for(var v=p+1;v<=m;v++){let t=v;g.push(t)}return{index:h,href:l,pages:g,totalPages:f,mapping:d}}))}isVisible(t,e,i,n){var s=t.position(),r=n||this.bounds();return"horizontal"===this.settings.axis&&s.right>r.left-e&&s.leftr.top-e&&s.top0&&"pre-paginated"===this.layout.name&&this.display(this.views.first().section)}updateLayout(){this.stage&&(this._stageSize=this.stage.size(),this.isPaginated?(this.layout.calculate(this._stageSize.width,this._stageSize.height,this.settings.gap),this.settings.offset=this.layout.delta/this.layout.divisor):this.layout.calculate(this._stageSize.width,this._stageSize.height),this.viewSettings.width=this.layout.width,this.viewSettings.height=this.layout.height,this.setLayout(this.layout))}setLayout(t){this.viewSettings.layout=t,this.mapping=new o.a(t.props,this.settings.direction,this.settings.axis),this.views&&this.views.forEach((function(e){e&&e.setLayout(t)}))}updateWritingMode(t){this.writingMode=t}updateAxis(t,e){(e||t!==this.settings.axis)&&(this.settings.axis=t,this.stage&&this.stage.axis(t),this.viewSettings.axis=t,this.mapping&&(this.mapping=new o.a(this.layout.props,this.settings.direction,this.settings.axis)),this.layout&&("vertical"===t?this.layout.spread("none"):this.layout.spread(this.layout.settings.spread)))}updateFlow(t,e="auto"){let i="paginated"===t||"auto"===t;this.isPaginated=i,"scrolled-doc"===t||"scrolled-continuous"===t||"scrolled"===t?this.updateAxis("vertical"):this.updateAxis("horizontal"),this.viewSettings.flow=t,this.settings.overflow?this.overflow=this.settings.overflow:this.overflow=i?"hidden":e,this.stage&&this.stage.overflow(this.overflow),this.updateLayout()}getContents(){var t=[];return this.views?(this.views.forEach((function(e){const i=e&&e.contents;i&&t.push(i)})),t):t}direction(t="ltr"){this.settings.direction=t,this.stage&&this.stage.direction(t),this.viewSettings.direction=t,this.updateLayout()}isRendered(){return this.rendered}}s()(f.prototype),e.a=f},function(t,e,i){"use strict";var n=i(2),s=i(0);e.a=class{constructor(t,e,i,n=!1){this.layout=t,this.horizontal="horizontal"===i,this.direction=e||"ltr",this._dev=n}section(t){var e=this.findRanges(t);return this.rangeListToCfiList(t.section.cfiBase,e)}page(t,e,i,s){var r,o=!(!t||!t.document)&&t.document.body;if(o){if(r=this.rangePairToCfiPair(e,{start:this.findStart(o,i,s),end:this.findEnd(o,i,s)}),!0===this._dev){let e=t.document,i=new n.a(r.start).toRange(e),s=new n.a(r.end).toRange(e),o=e.defaultView.getSelection(),a=e.createRange();o.removeAllRanges(),a.setStart(i.startContainer,i.startOffset),a.setEnd(s.endContainer,s.endOffset),o.addRange(a)}return r}}walk(t,e){if(!t||t.nodeType!==Node.TEXT_NODE){var i=function(t){return t.data.trim().length>0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},n=i;n.acceptNode=i;for(var s,r,o=document.createTreeWalker(t,NodeFilter.SHOW_TEXT,n,!1);(s=o.nextNode())&&!(r=e(s)););return r}}findRanges(t){for(var e,i,n=[],s=t.contents.scrollWidth(),r=Math.ceil(s/this.layout.spreadWidth)*this.layout.divisor,o=this.layout.columnWidth,a=this.layout.gap,h=0;h{var n,r,h,l,c;if(c=Object(s.nodeBounds)(t),this.horizontal&&"ltr"===this.direction){if(n=this.horizontal?c.left:c.top,r=this.horizontal?c.right:c.bottom,n>=e&&n<=i)return t;if(r>e)return t;a=t,o.push(t)}else if(this.horizontal&&"rtl"===this.direction){if(n=c.left,(r=c.right)<=i&&r>=e)return t;if(n=e&&h<=i)return t;if(l>e)return t;a=t,o.push(t)}})))return this.findTextStartRange(r,e,i);return this.findTextStartRange(a,e,i)}findEnd(t,e,i){for(var n,r,o=[t],a=t;o.length;)if(n=o.shift(),r=this.walk(n,(t=>{var n,r,h,l,c;if(c=Object(s.nodeBounds)(t),this.horizontal&&"ltr"===this.direction){if(n=Math.round(c.left),r=Math.round(c.right),n>i&&a)return a;if(r>i)return t;a=t,o.push(t)}else if(this.horizontal&&"rtl"===this.direction){if(n=Math.round(this.horizontal?c.left:c.top),(r=Math.round(this.horizontal?c.right:c.bottom))i&&a)return a;if(l>i)return t;a=t,o.push(t)}})))return this.findTextEndRange(r,e,i);return this.findTextEndRange(a,e,i)}findTextStartRange(t,e,i){for(var n,s,r=this.splitTextNodeIntoRanges(t),o=0;o=e)return n}else if(this.horizontal&&"rtl"===this.direction){if(s.right<=i)return n}else if(s.top>=e)return n;return r[0]}findTextEndRange(t,e,i){for(var n,s,r,o,a,h,l,c=this.splitTextNodeIntoRanges(t),u=0;ui&&n)return n;if(a>i)return s}else if(this.horizontal&&"rtl"===this.direction){if(o=r.left,(a=r.right)i&&n)return n;if(l>i)return s}n=s}return c[c.length-1]}splitTextNodeIntoRanges(t,e){var i,n=[],s=(t.textContent||"").trim(),r=t.ownerDocument,o=e||" ",a=s.indexOf(o);if(-1===a||t.nodeType!=Node.TEXT_NODE)return(i=r.createRange()).selectNodeContents(t),[i];for((i=r.createRange()).setStart(t,0),i.setEnd(t,a),n.push(i),i=!1;-1!=a;)(a=s.indexOf(o,a+1))>0&&(i&&(i.setEnd(t,a),n.push(i)),(i=r.createRange()).setStart(t,a+1));return i&&(i.setEnd(t,s.length),n.push(i)),n}rangePairToCfiPair(t,e){var i=e.start,s=e.end;return i.collapse(!0),s.collapse(!1),{start:new n.a(i,t).toString(),end:new n.a(s,t).toString()}}rangeListToCfiList(t,e){for(var i,n=[],s=0;s{"visible"===document.visibilityState&&!1===this.active?(this.active=!0,this.resizeListeners()):(this.active=!1,clearTimeout(this.expanding))}))}transitionListeners(){let t=this.content;t.style.transitionProperty="font, font-size, font-size-adjust, font-stretch, font-variation-settings, font-weight, width, height",t.style.transitionDuration="0.001ms",t.style.transitionTimingFunction="linear",t.style.transitionDelay="0",this._resizeCheck=this.resizeCheck.bind(this),this.document.addEventListener("transitionend",this._resizeCheck)}mediaQueryListeners(){for(var t=this.document.styleSheets,e=function(t){t.matches&&!this._expanding&&setTimeout(this.expand.bind(this),1)}.bind(this),i=0;i{requestAnimationFrame(this.resizeCheck.bind(this))})),this.observer.observe(this.document.documentElement)}mutationObservers(){this.observer=new MutationObserver((t=>{this.resizeCheck()})),this.observer.observe(this.document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})}imageLoadListeners(){for(var t,e=this.document.querySelectorAll("img"),i=0;i0?(n.setStart(e,s.startOffset-2),n.setEnd(e,s.startOffset),i=n.getBoundingClientRect()):i=e.parentNode.getBoundingClientRect()}catch(t){console.error(t,t.stack)}}else i=s.getBoundingClientRect()}}else if("string"==typeof t&&t.indexOf("#")>-1){let e=t.substring(t.indexOf("#")+1),n=this.document.getElementById(e);if(n)if(d){let t=new Range;t.selectNode(n),i=t.getBoundingClientRect()}else i=n.getBoundingClientRect()}return i&&(n.left=i.left,n.top=i.top),n}addStylesheet(t){return new Promise(function(e,i){var n,s=!1;this.document?(n=this.document.querySelector("link[href='"+t+"']"))?e(!0):((n=this.document.createElement("link")).type="text/css",n.rel="stylesheet",n.href=t,n.onload=n.onreadystatechange=function(){s||this.readyState&&"complete"!=this.readyState||(s=!0,setTimeout((()=>{e(!0)}),1))},this.document.head.appendChild(n)):e(!1)}.bind(this))}_getStylesheetNode(t){var e;return t="epubjs-inserted-css-"+(t||""),!!this.document&&((e=this.document.getElementById(t))||((e=this.document.createElement("style")).id=t,this.document.head.appendChild(e)),e)}addStylesheetCss(t,e){return!(!this.document||!t||(this._getStylesheetNode(e).innerHTML=t,0))}addStylesheetRules(t,e){var i;if(this.document&&t&&0!==t.length)if(i=this._getStylesheetNode(e).sheet,"[object Array]"===Object.prototype.toString.call(t))for(var n=0,s=t.length;n{const n=t[e];if(Array.isArray(n))n.forEach((t=>{const n=Object.keys(t).map((e=>`${e}:${t[e]}`)).join(";");i.insertRule(`${e}{${n}}`,i.cssRules.length)}));else{const t=Object.keys(n).map((t=>`${t}:${n[t]}`)).join(";");i.insertRule(`${e}{${t}}`,i.cssRules.length)}}))}addScript(t){return new Promise(function(e,i){var n,s=!1;this.document?((n=this.document.createElement("script")).type="text/javascript",n.async=!0,n.src=t,n.onload=n.onreadystatechange=function(){s||this.readyState&&"complete"!=this.readyState||(s=!0,setTimeout((function(){e(!0)}),1))},this.document.head.appendChild(n)):e(!1)}.bind(this))}addClass(t){var e;this.document&&(e=this.content||this.document.body)&&e.classList.add(t)}removeClass(t){var e;this.document&&(e=this.content||this.document.body)&&e.classList.remove(t)}addEventListeners(){this.document&&(this._triggerEvent=this.triggerEvent.bind(this),l.a.forEach((function(t){this.document.addEventListener(t,this._triggerEvent,{passive:!0})}),this))}removeEventListeners(){this.document&&(l.a.forEach((function(t){this.document.removeEventListener(t,this._triggerEvent,{passive:!0})}),this),this._triggerEvent=void 0)}triggerEvent(t){this.emit(t.type,t)}addSelectionListeners(){this.document&&(this._onSelectionChange=this.onSelectionChange.bind(this),this.document.addEventListener("selectionchange",this._onSelectionChange,{passive:!0}))}removeSelectionListeners(){this.document&&(this.document.removeEventListener("selectionchange",this._onSelectionChange,{passive:!0}),this._onSelectionChange=void 0)}onSelectionChange(t){this.selectionEndTimeout&&clearTimeout(this.selectionEndTimeout),this.selectionEndTimeout=setTimeout(function(){var t=this.window.getSelection();this.triggerSelectedEvent(t)}.bind(this),250)}triggerSelectedEvent(t){var e,i;t&&t.rangeCount>0&&((e=t.getRangeAt(0)).collapsed||(i=new o.a(e,this.cfiBase).toString(),this.emit(l.c.CONTENTS.SELECTED,i),this.emit(l.c.CONTENTS.SELECTED_RANGE,e)))}range(t,e){return new o.a(t).toRange(this.document,e)}cfiFromRange(t,e){return new o.a(t,this.cfiBase,e).toString()}cfiFromNode(t,e){return new o.a(t,this.cfiBase,e).toString()}map(t){return new a.a(t).section()}size(t,e){var i={scale:1,scalable:"no"};this.layoutStyle("scrolling"),t>=0&&(this.width(t),i.width=t,this.css("padding","0 "+t/12+"px")),e>=0&&(this.height(e),i.height=e),this.css("margin","0"),this.css("box-sizing","border-box"),this.viewport(i)}columns(t,e,i,n,s){let o=Object(r.prefixed)("column-axis"),a=Object(r.prefixed)("column-gap"),h=Object(r.prefixed)("column-width"),l=Object(r.prefixed)("column-fill"),c=0===this.writingMode().indexOf("vertical")?"vertical":"horizontal";this.layoutStyle("paginated"),"rtl"===s&&"horizontal"===c&&this.direction(s),this.width(t),this.height(e),this.viewport({width:t,height:e,scale:1,scalable:"no"}),this.css("overflow-y","hidden"),this.css("margin","0",!0),"vertical"===c?(this.css("padding-top",n/2+"px",!0),this.css("padding-bottom",n/2+"px",!0),this.css("padding-left","20px"),this.css("padding-right","20px"),this.css(o,"vertical")):(this.css("padding-top","20px"),this.css("padding-bottom","20px"),this.css("padding-left",n/2+"px",!0),this.css("padding-right",n/2+"px",!0),this.css(o,"horizontal")),this.css("box-sizing","border-box"),this.css("max-width","inherit"),this.css(l,"auto"),this.css(a,n+"px"),this.css(h,i+"px"),this.css("-webkit-line-box-contain","block glyphs replaced")}scaler(t,e,i){var n="scale("+t+")",s="";this.css("transform-origin","top left"),(e>=0||i>=0)&&(s=" translate("+(e||0)+"px, "+(i||0)+"px )"),this.css("transform",n+s)}fit(t,e,i){var n=this.viewport(),s=parseInt(n.width),r=parseInt(n.height),o=t/s,a=e/r,h=o{this.emit(l.c.CONTENTS.LINK_CLICKED,t)}))}writingMode(t){let e=Object(r.prefixed)("writing-mode");return t&&this.documentElement&&(this.documentElement.style[e]=t),this.window.getComputedStyle(this.documentElement)[e]||""}layoutStyle(t){return t&&(this._layoutStyle=t,navigator.epubReadingSystem.layoutStyle=this._layoutStyle),this._layoutStyle||"paginated"}epubReadingSystem(t,e){return navigator.epubReadingSystem={name:t,version:e,layoutStyle:this.layoutStyle(),hasFeature:function(t){switch(t){case"dom-manipulation":case"layout-changes":case"touch-events":case"mouse-events":case"keyboard-events":return!0;default:return!1}}},navigator.epubReadingSystem}destroy(){this.removeListeners()}}s()(f.prototype),e.a=f},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Underline=e.Highlight=e.Mark=e.Pane=void 0;var n=function(){function t(t,e){for(var i=0;i1&&void 0!==arguments[1]?arguments[1]:document.body;l(this,t),this.target=e,this.element=s.default.createElement("svg"),this.marks=[],this.element.style.position="absolute",this.element.setAttribute("pointer-events","none"),r.default.proxyMouse(this.target,this.marks),this.container=i,this.container.appendChild(this.element),this.render()}return n(t,[{key:"addMark",value:function(t){var e=s.default.createElement("g");return this.element.appendChild(e),t.bind(e,this.container),this.marks.push(t),t.render(),t}},{key:"removeMark",value:function(t){var e=this.marks.indexOf(t);if(-1!==e){var i=t.unbind();this.element.removeChild(i),this.marks.splice(e,1)}}},{key:"render",value:function(){var t,e,i,n;!function(t,e){t.style.setProperty("top",e.top+"px","important"),t.style.setProperty("left",e.left+"px","important"),t.style.setProperty("height",e.height+"px","important"),t.style.setProperty("width",e.width+"px","important")}(this.element,(t=this.target,e=this.container,i=e.getBoundingClientRect(),n=t.getBoundingClientRect(),{top:n.top-i.top,left:n.left-i.left,height:t.scrollHeight,width:t.scrollWidth}));var s=!0,r=!1,o=void 0;try{for(var a,h=this.marks[Symbol.iterator]();!(s=(a=h.next()).done);s=!0)a.value.render()}catch(t){r=!0,o=t}finally{try{!s&&h.return&&h.return()}finally{if(r)throw o}}}}]),t}();var c=e.Mark=function(){function t(){l(this,t),this.element=null}return n(t,[{key:"bind",value:function(t,e){this.element=t,this.container=e}},{key:"unbind",value:function(){var t=this.element;return this.element=null,t}},{key:"render",value:function(){}},{key:"dispatchEvent",value:function(t){this.element&&this.element.dispatchEvent(t)}},{key:"getBoundingClientRect",value:function(){return this.element.getBoundingClientRect()}},{key:"getClientRects",value:function(){for(var t=[],e=this.element.firstChild;e;)t.push(e.getBoundingClientRect()),e=e.nextSibling;return t}},{key:"filteredRanges",value:function(){var t=Array.from(this.range.getClientRects());return t.filter((function(e){for(var i=0;i=n.left&&s.top>=n.top&&s.bottom<=n.bottom)return!1}var n,s;return!0}))}}]),t}(),u=e.Highlight=function(t){function e(t,i,n,s){l(this,e);var r=a(this,(e.__proto__||Object.getPrototypeOf(e)).call(this));return r.range=t,r.className=i,r.data=n||{},r.attributes=s||{},r}return h(e,t),n(e,[{key:"bind",value:function(t,i){for(var n in function t(e,i,n){null===e&&(e=Function.prototype);var s=Object.getOwnPropertyDescriptor(e,i);if(void 0===s){var r=Object.getPrototypeOf(e);return null===r?void 0:t(r,i,n)}if("value"in s)return s.value;var o=s.get;return void 0!==o?o.call(n):void 0}(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"bind",this).call(this,t,i),this.data)this.data.hasOwnProperty(n)&&(this.element.dataset[n]=this.data[n]);for(var n in this.attributes)this.attributes.hasOwnProperty(n)&&this.element.setAttribute(n,this.attributes[n]);this.className&&this.element.classList.add(this.className)}},{key:"render",value:function(){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);for(var t=this.element.ownerDocument.createDocumentFragment(),e=this.filteredRanges(),i=this.element.getBoundingClientRect(),n=this.container.getBoundingClientRect(),r=0,o=e.length;r=0&&(this._minSpreadWidth=e),this._spread}calculate(t,e,i){var n,s,r,o,a,h=i||0,l=t,c=e,u=Math.floor(l/12);a=this._spread&&l>=this._minSpreadWidth?2:1,"reflowable"!==this.name||"paginated"!==this._flow||i>=0||(h=u%2==0?u:u-1),"pre-paginated"===this.name&&(h=0),a>1?r=(n=l/a-h)+h:(n=l,r=l),"pre-paginated"===this.name&&a>1&&(l=n),s=n*a+h,o=l,this.width=l,this.height=c,this.spreadWidth=s,this.pageWidth=r,this.delta=o,this.columnWidth=n,this.gap=h,this.divisor=a,this.update({width:l,height:c,spreadWidth:s,pageWidth:r,delta:o,columnWidth:n,gap:h,divisor:a})}format(t,e,i){return"pre-paginated"===this.name?t.fit(this.columnWidth,this.height,e):"paginated"===this._flow?t.columns(this.width,this.height,this.columnWidth,this.gap,this.settings.direction):i&&"horizontal"===i?t.size(null,this.height):t.size(this.width,null)}count(t,e){let i,n;return"pre-paginated"===this.name?(i=1,n=1):"paginated"===this._flow?(e=e||this.delta,i=Math.ceil(t/e),n=i*this.divisor):(e=e||this.height,i=Math.ceil(t/e),n=i),{spreads:i,pages:n}}update(t){if(Object.keys(t).forEach((e=>{this.props[e]===t[e]&&delete t[e]})),Object.keys(t).length>0){let e=Object(r.extend)(this.props,t);this.emit(l.c.LAYOUT.UPDATED,e,t)}}}s()(c.prototype);var u=c,d=i(5),f=class{constructor(t){this.rendition=t,this._themes={default:{rules:{},url:"",serialized:""}},this._overrides={},this._current="default",this._injected=[],this.rendition.hooks.content.register(this.inject.bind(this)),this.rendition.hooks.content.register(this.overrides.bind(this))}register(){if(0!==arguments.length)return 1===arguments.length&&"object"==typeof arguments[0]?this.registerThemes(arguments[0]):1===arguments.length&&"string"==typeof arguments[0]?this.default(arguments[0]):2===arguments.length&&"string"==typeof arguments[1]?this.registerUrl(arguments[0],arguments[1]):2===arguments.length&&"object"==typeof arguments[1]?this.registerRules(arguments[0],arguments[1]):void 0}default(t){if(t)return"string"==typeof t?this.registerUrl("default",t):"object"==typeof t?this.registerRules("default",t):void 0}registerThemes(t){for(var e in t)t.hasOwnProperty(e)&&("string"==typeof t[e]?this.registerUrl(e,t[e]):this.registerRules(e,t[e]))}registerCss(t,e){this._themes[t]={serialized:e},(this._injected[t]||"default"==t)&&this.update(t)}registerUrl(t,e){var i=new d.a(e);this._themes[t]={url:i.toString()},(this._injected[t]||"default"==t)&&this.update(t)}registerRules(t,e){this._themes[t]={rules:e},(this._injected[t]||"default"==t)&&this.update(t)}select(t){var e=this._current;this._current=t,this.update(t),this.rendition.getContents().forEach((i=>{i.removeClass(e),i.addClass(t)}))}update(t){this.rendition.getContents().forEach((e=>{this.add(t,e)}))}inject(t){var e,i=[],n=this._themes;for(var s in n)!n.hasOwnProperty(s)||s!==this._current&&"default"!==s||(((e=n[s]).rules&&Object.keys(e.rules).length>0||e.url&&-1===i.indexOf(e.url))&&this.add(s,t),this._injected.push(s));"default"!=this._current&&t.addClass(this._current)}add(t,e){var i=this._themes[t];i&&e&&(i.url?e.addStylesheet(i.url):i.serialized?(e.addStylesheetCss(i.serialized,t),i.injected=!0):i.rules&&(e.addStylesheetRules(i.rules,t),i.injected=!0))}override(t,e,i){var n=this.rendition.getContents();this._overrides[t]={value:e,priority:!0===i},n.forEach((e=>{e.css(t,this._overrides[t].value,this._overrides[t].priority)}))}removeOverride(t){var e=this.rendition.getContents();delete this._overrides[t],e.forEach((e=>{e.css(t)}))}overrides(t){var e=this._overrides;for(var i in e)e.hasOwnProperty(i)&&t.css(i,e[i].value,e[i].priority)}fontSize(t){this.override("font-size",t)}font(t){this.override("font-family",t,!0)}destroy(){this.rendition=void 0,this._themes=void 0,this._overrides=void 0,this._current=void 0,this._injected=void 0}};i(12);class p{constructor({type:t,cfiRange:e,data:i,sectionIndex:n,cb:s,className:r,styles:o}){this.type=t,this.cfiRange=e,this.data=i,this.sectionIndex=n,this.mark=void 0,this.cb=s,this.className=r,this.styles=o}update(t){this.data=t}attach(t){let e,{cfiRange:i,data:n,type:s,mark:r,cb:o,className:a,styles:h}=this;return"highlight"===s?e=t.highlight(i,n,o,a,h):"underline"===s?e=t.underline(i,n,o,a,h):"mark"===s&&(e=t.mark(i,n,o)),this.mark=e,this.emit(l.c.ANNOTATION.ATTACH,e),e}detach(t){let e,{cfiRange:i,type:n}=this;return t&&("highlight"===n?e=t.unhighlight(i):"underline"===n?e=t.ununderline(i):"mark"===n&&(e=t.unmark(i))),this.mark=void 0,this.emit(l.c.ANNOTATION.DETACH,e),e}text(){}}s()(p.prototype);var g=class{constructor(t){this.rendition=t,this.highlights=[],this.underlines=[],this.marks=[],this._annotations={},this._annotationsBySectionIndex={},this.rendition.hooks.render.register(this.inject.bind(this)),this.rendition.hooks.unloaded.register(this.clear.bind(this))}add(t,e,i,n,s,r){let o=encodeURI(e+t),h=new a.a(e).spinePos,l=new p({type:t,cfiRange:e,data:i,sectionIndex:h,cb:n,className:s,styles:r});return this._annotations[o]=l,h in this._annotationsBySectionIndex?this._annotationsBySectionIndex[h].push(o):this._annotationsBySectionIndex[h]=[o],this.rendition.views().forEach((t=>{l.sectionIndex===t.index&&l.attach(t)})),l}remove(t,e){let i=encodeURI(t+e);if(i in this._annotations){let t=this._annotations[i];if(e&&t.type!==e)return;this.rendition.views().forEach((e=>{this._removeFromAnnotationBySectionIndex(t.sectionIndex,i),t.sectionIndex===e.index&&t.detach(e)})),delete this._annotations[i]}}_removeFromAnnotationBySectionIndex(t,e){this._annotationsBySectionIndex[t]=this._annotationsAt(t).filter((t=>t!==e))}_annotationsAt(t){return this._annotationsBySectionIndex[t]}highlight(t,e,i,n,s){return this.add("highlight",t,e,i,n,s)}underline(t,e,i,n,s){return this.add("underline",t,e,i,n,s)}mark(t,e,i){return this.add("mark",t,e,i)}each(){return this._annotations.forEach.apply(this._annotations,arguments)}inject(t){let e=t.index;e in this._annotationsBySectionIndex&&this._annotationsBySectionIndex[e].forEach((e=>{this._annotations[e].attach(t)}))}clear(t){let e=t.index;e in this._annotationsBySectionIndex&&this._annotationsBySectionIndex[e].forEach((e=>{this._annotations[e].detach(t)}))}show(){}hide(){}},m=i(20),v=i(10),y=i(22);class b{constructor(t,e){this.settings=Object(r.extend)(this.settings||{},{width:null,height:null,ignoreClass:"",manager:"default",view:"iframe",flow:null,layout:null,spread:null,minSpreadWidth:800,stylesheet:null,resizeOnOrientationChange:!0,script:null,snap:!1,defaultDirection:"ltr",allowScriptedContent:!1,allowPopups:!1}),Object(r.extend)(this.settings,e),"object"==typeof this.settings.manager&&(this.manager=this.settings.manager),this.book=t,this.hooks={},this.hooks.display=new o.a(this),this.hooks.serialize=new o.a(this),this.hooks.content=new o.a(this),this.hooks.unloaded=new o.a(this),this.hooks.layout=new o.a(this),this.hooks.render=new o.a(this),this.hooks.show=new o.a(this),this.hooks.content.register(this.handleLinks.bind(this)),this.hooks.content.register(this.passEvents.bind(this)),this.hooks.content.register(this.adjustImages.bind(this)),this.book.spine.hooks.content.register(this.injectIdentifier.bind(this)),this.settings.stylesheet&&this.book.spine.hooks.content.register(this.injectStylesheet.bind(this)),this.settings.script&&this.book.spine.hooks.content.register(this.injectScript.bind(this)),this.themes=new f(this),this.annotations=new g(this),this.epubcfi=new a.a,this.q=new h.a(this),this.location=void 0,this.q.enqueue(this.book.opened),this.starting=new r.defer,this.started=this.starting.promise,this.q.enqueue(this.start)}setManager(t){this.manager=t}requireManager(t){return"string"==typeof t&&"default"===t?v.a:"string"==typeof t&&"continuous"===t?y.a:t}requireView(t){return"string"==typeof t&&"iframe"===t?m.a:t}start(){switch(this.settings.layout||"pre-paginated"!==this.book.package.metadata.layout&&"true"!==this.book.displayOptions.fixedLayout||(this.settings.layout="pre-paginated"),this.book.package.metadata.spread){case"none":this.settings.spread="none";break;case"both":this.settings.spread=!0}this.manager||(this.ViewManager=this.requireManager(this.settings.manager),this.View=this.requireView(this.settings.view),this.manager=new this.ViewManager({view:this.View,queue:this.q,request:this.book.load.bind(this.book),settings:this.settings})),this.direction(this.book.package.metadata.direction||this.settings.defaultDirection),this.settings.globalLayoutProperties=this.determineLayoutProperties(this.book.package.metadata),this.flow(this.settings.globalLayoutProperties.flow),this.layout(this.settings.globalLayoutProperties),this.manager.on(l.c.MANAGERS.ADDED,this.afterDisplayed.bind(this)),this.manager.on(l.c.MANAGERS.REMOVED,this.afterRemoved.bind(this)),this.manager.on(l.c.MANAGERS.RESIZED,this.onResized.bind(this)),this.manager.on(l.c.MANAGERS.ORIENTATION_CHANGE,this.onOrientationChange.bind(this)),this.manager.on(l.c.MANAGERS.SCROLLED,this.reportLocation.bind(this)),this.emit(l.c.RENDITION.STARTED),this.starting.resolve()}attachTo(t){return this.q.enqueue(function(){this.manager.render(t,{width:this.settings.width,height:this.settings.height}),this.emit(l.c.RENDITION.ATTACHED)}.bind(this))}display(t){return this.displaying&&this.displaying.resolve(),this.q.enqueue(this._display,t)}_display(t){if(this.book){this.epubcfi.isCfiString(t);var e,i=new r.defer,n=i.promise;return this.displaying=i,this.book.locations.length()&&Object(r.isFloat)(t)&&(t=this.book.locations.cfiFromPercentage(parseFloat(t))),(e=this.book.spine.get(t))?(this.manager.display(e,t).then((()=>{i.resolve(e),this.displaying=void 0,this.emit(l.c.RENDITION.DISPLAYED,e),this.reportLocation()}),(t=>{this.emit(l.c.RENDITION.DISPLAY_ERROR,t)})),n):(i.reject(new Error("No Section Found")),n)}}afterDisplayed(t){t.on(l.c.VIEWS.MARK_CLICKED,((e,i)=>this.triggerMarkEvent(e,i,t.contents))),this.hooks.render.trigger(t,this).then((()=>{t.contents?this.hooks.content.trigger(t.contents,this).then((()=>{this.emit(l.c.RENDITION.RENDERED,t.section,t)})):this.emit(l.c.RENDITION.RENDERED,t.section,t)}))}afterRemoved(t){this.hooks.unloaded.trigger(t,this).then((()=>{this.emit(l.c.RENDITION.REMOVED,t.section,t)}))}onResized(t,e){this.emit(l.c.RENDITION.RESIZED,{width:t.width,height:t.height},e),this.location&&this.location.start&&this.display(e||this.location.start.cfi)}onOrientationChange(t){this.emit(l.c.RENDITION.ORIENTATION_CHANGE,t)}moveTo(t){this.manager.moveTo(t)}resize(t,e,i){t&&(this.settings.width=t),e&&(this.settings.height=e),this.manager.resize(t,e,i)}clear(){this.manager.clear()}next(){return this.q.enqueue(this.manager.next.bind(this.manager)).then(this.reportLocation.bind(this))}prev(){return this.q.enqueue(this.manager.prev.bind(this.manager)).then(this.reportLocation.bind(this))}determineLayoutProperties(t){var e=this.settings.layout||t.layout||"reflowable",i=this.settings.spread||t.spread||"auto",n=this.settings.orientation||t.orientation||"auto",s=this.settings.flow||t.flow||"auto",r=t.viewport||"",o=this.settings.minSpreadWidth||t.minSpreadWidth||800,a=this.settings.direction||t.direction||"ltr";return(0===this.settings.width||this.settings.width>0)&&(0===this.settings.height||this.settings.height),{layout:e,spread:i,orientation:n,flow:s,viewport:r,minSpreadWidth:o,direction:a}}flow(t){var e=t;"scrolled"!==t&&"scrolled-doc"!==t&&"scrolled-continuous"!==t||(e="scrolled"),"auto"!==t&&"paginated"!==t||(e="paginated"),this.settings.flow=t,this._layout&&this._layout.flow(e),this.manager&&this._layout&&this.manager.applyLayout(this._layout),this.manager&&this.manager.updateFlow(e),this.manager&&this.manager.isRendered()&&this.location&&(this.manager.clear(),this.display(this.location.start.cfi))}layout(t){return t&&(this._layout=new u(t),this._layout.spread(t.spread,this.settings.minSpreadWidth),this._layout.on(l.c.LAYOUT.UPDATED,((t,e)=>{this.emit(l.c.RENDITION.LAYOUT,t,e)}))),this.manager&&this._layout&&this.manager.applyLayout(this._layout),this._layout}spread(t,e){this.settings.spread=t,e&&(this.settings.minSpreadWidth=e),this._layout&&this._layout.spread(t,e),this.manager&&this.manager.isRendered()&&this.manager.updateLayout()}direction(t){this.settings.direction=t||"ltr",this.manager&&this.manager.direction(this.settings.direction),this.manager&&this.manager.isRendered()&&this.location&&(this.manager.clear(),this.display(this.location.start.cfi))}reportLocation(){return this.q.enqueue(function(){requestAnimationFrame(function(){var t=this.manager.currentLocation();if(t&&t.then&&"function"==typeof t.then)t.then(function(t){let e=this.located(t);e&&e.start&&e.end&&(this.location=e,this.emit(l.c.RENDITION.LOCATION_CHANGED,{index:this.location.start.index,href:this.location.start.href,start:this.location.start.cfi,end:this.location.end.cfi,percentage:this.location.start.percentage}),this.emit(l.c.RENDITION.RELOCATED,this.location))}.bind(this));else if(t){let e=this.located(t);if(!e||!e.start||!e.end)return;this.location=e,this.emit(l.c.RENDITION.LOCATION_CHANGED,{index:this.location.start.index,href:this.location.start.href,start:this.location.start.cfi,end:this.location.end.cfi,percentage:this.location.start.percentage}),this.emit(l.c.RENDITION.RELOCATED,this.location)}}.bind(this))}.bind(this))}currentLocation(){var t=this.manager.currentLocation();if(t&&t.then&&"function"==typeof t.then)t.then(function(t){return this.located(t)}.bind(this));else if(t)return this.located(t)}located(t){if(!t.length)return{};let e=t[0],i=t[t.length-1],n={start:{index:e.index,href:e.href,cfi:e.mapping.start,displayed:{page:e.pages[0]||1,total:e.totalPages}},end:{index:i.index,href:i.href,cfi:i.mapping.end,displayed:{page:i.pages[i.pages.length-1]||1,total:i.totalPages}}},s=this.book.locations.locationFromCfi(e.mapping.start),r=this.book.locations.locationFromCfi(i.mapping.end);null!=s&&(n.start.location=s,n.start.percentage=this.book.locations.percentageFromLocation(s)),null!=r&&(n.end.location=r,n.end.percentage=this.book.locations.percentageFromLocation(r));let o=this.book.pageList.pageFromCfi(e.mapping.start),a=this.book.pageList.pageFromCfi(i.mapping.end);return-1!=o&&(n.start.page=o),-1!=a&&(n.end.page=a),i.index===this.book.spine.last().index&&n.end.displayed.page>=n.end.displayed.total&&(n.atEnd=!0),e.index===this.book.spine.first().index&&1===n.start.displayed.page&&(n.atStart=!0),n}destroy(){this.manager&&this.manager.destroy(),this.book=void 0}passEvents(t){l.a.forEach((e=>{t.on(e,(e=>this.triggerViewEvent(e,t)))})),t.on(l.c.CONTENTS.SELECTED,(e=>this.triggerSelectedEvent(e,t)))}triggerViewEvent(t,e){this.emit(t.type,t,e)}triggerSelectedEvent(t,e){this.emit(l.c.RENDITION.SELECTED,t,e)}triggerMarkEvent(t,e,i){this.emit(l.c.RENDITION.MARK_CLICKED,t,e,i)}getRange(t,e){var i=new a.a(t),n=this.manager.visible().filter((function(t){if(i.spinePos===t.index)return!0}));if(n.length)return n[0].contents.range(i,e)}adjustImages(t){if("pre-paginated"===this._layout.name)return new Promise((function(t){t()}));let e=t.window.getComputedStyle(t.content,null),i=.95*(t.content.offsetHeight-(parseFloat(e.paddingTop)+parseFloat(e.paddingBottom))),n=parseFloat(e.paddingLeft)+parseFloat(e.paddingRight);return t.addStylesheetRules({img:{"max-width":(this._layout.columnWidth?this._layout.columnWidth-n+"px":"100%")+"!important","max-height":i+"px!important","object-fit":"contain","page-break-inside":"avoid","break-inside":"avoid","box-sizing":"border-box"},svg:{"max-width":(this._layout.columnWidth?this._layout.columnWidth-n+"px":"100%")+"!important","max-height":i+"px!important","page-break-inside":"avoid","break-inside":"avoid"}}),new Promise((function(t,e){setTimeout((function(){t()}),1)}))}getContents(){return this.manager?this.manager.getContents():[]}views(){return(this.manager?this.manager.views:void 0)||[]}handleLinks(t){t&&t.on(l.c.CONTENTS.LINK_CLICKED,(t=>{let e=this.book.path.relative(t);this.display(e)}))}injectStylesheet(t,e){let i=t.createElement("link");i.setAttribute("type","text/css"),i.setAttribute("rel","stylesheet"),i.setAttribute("href",this.settings.stylesheet),t.getElementsByTagName("head")[0].appendChild(i)}injectScript(t,e){let i=t.createElement("script");i.setAttribute("type","text/javascript"),i.setAttribute("src",this.settings.script),i.textContent=" ",t.getElementsByTagName("head")[0].appendChild(i)}injectIdentifier(t,e){let i=this.book.packaging.metadata.identifier,n=t.createElement("meta");n.setAttribute("name","dc.relation.ispartof"),i&&n.setAttribute("content",i),t.getElementsByTagName("head")[0].appendChild(n)}}s()(b.prototype),e.a=b},function(t,e){var i;i=function(){return this}();try{i=i||new Function("return this")()}catch(t){"object"==typeof window&&(i=window)}t.exports=i},function(t,e,i){"use strict";var n=i(38)();t.exports=function(t){return t!==n&&null!==t}},function(t,e){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},function(t,e,i){"use strict";var n=i(3),s=i.n(n),r=i(0),o=i(2),a=i(12),h=i(1),l=i(13);class c{constructor(t,e){this.settings=Object(r.extend)({ignoreClass:"",axis:void 0,direction:void 0,width:0,height:0,layout:void 0,globalLayoutProperties:{},method:void 0,forceRight:!1,allowScriptedContent:!1,allowPopups:!1},e||{}),this.id="epubjs-view-"+Object(r.uuid)(),this.section=t,this.index=t.index,this.element=this.container(this.settings.axis),this.added=!1,this.displayed=!1,this.rendered=!1,this.fixedWidth=0,this.fixedHeight=0,this.epubcfi=new o.a,this.layout=this.settings.layout,this.pane=void 0,this.highlights={},this.underlines={},this.marks={}}container(t){var e=document.createElement("div");return e.classList.add("epub-view"),e.style.height="0px",e.style.width="0px",e.style.overflow="hidden",e.style.position="relative",e.style.display="block",e.style.flex=t&&"horizontal"==t?"none":"initial",e}create(){return this.iframe||(this.element||(this.element=this.createContainer()),this.iframe=document.createElement("iframe"),this.iframe.id=this.id,this.iframe.scrolling="no",this.iframe.style.overflow="hidden",this.iframe.seamless="seamless",this.iframe.style.border="none",this.iframe.sandbox="allow-same-origin",this.settings.allowScriptedContent&&(this.iframe.sandbox+=" allow-scripts"),this.settings.allowPopups&&(this.iframe.sandbox+=" allow-popups"),this.iframe.setAttribute("enable-annotation","true"),this.resizing=!0,this.element.style.visibility="hidden",this.iframe.style.visibility="hidden",this.iframe.style.width="0",this.iframe.style.height="0",this._width=0,this._height=0,this.element.setAttribute("ref",this.index),this.added=!0,this.elementBounds=Object(r.bounds)(this.element),"srcdoc"in this.iframe?this.supportsSrcdoc=!0:this.supportsSrcdoc=!1,this.settings.method||(this.settings.method=this.supportsSrcdoc?"srcdoc":"write")),this.iframe}render(t,e){return this.create(),this.size(),this.sectionRender||(this.sectionRender=this.section.render(t)),this.sectionRender.then(function(t){return this.load(t)}.bind(this)).then(function(){let t,e=this.contents.writingMode();return t="scrolled"===this.settings.flow?0===e.indexOf("vertical")?"horizontal":"vertical":0===e.indexOf("vertical")?"vertical":"horizontal",0===e.indexOf("vertical")&&"paginated"===this.settings.flow&&(this.layout.delta=this.layout.height),this.setAxis(t),this.emit(h.c.VIEWS.AXIS,t),this.setWritingMode(e),this.emit(h.c.VIEWS.WRITING_MODE,e),this.layout.format(this.contents,this.section,this.axis),this.addListeners(),new Promise(((t,e)=>{this.expand(),this.settings.forceRight&&(this.element.style.marginLeft=this.width()+"px"),t()}))}.bind(this),function(t){return this.emit(h.c.VIEWS.LOAD_ERROR,t),new Promise(((e,i)=>{i(t)}))}.bind(this)).then(function(){this.emit(h.c.VIEWS.RENDERED,this.section)}.bind(this))}reset(){this.iframe&&(this.iframe.style.width="0",this.iframe.style.height="0",this._width=0,this._height=0,this._textWidth=void 0,this._contentWidth=void 0,this._textHeight=void 0,this._contentHeight=void 0),this._needsReframe=!0}size(t,e){var i=t||this.settings.width,n=e||this.settings.height;"pre-paginated"===this.layout.name?this.lock("both",i,n):"horizontal"===this.settings.axis?this.lock("height",i,n):this.lock("width",i,n),this.settings.width=i,this.settings.height=n}lock(t,e,i){var n,s=Object(r.borders)(this.element);n=this.iframe?Object(r.borders)(this.iframe):{width:0,height:0},"width"==t&&Object(r.isNumber)(e)&&(this.lockedWidth=e-s.width-n.width),"height"==t&&Object(r.isNumber)(i)&&(this.lockedHeight=i-s.height-n.height),"both"===t&&Object(r.isNumber)(e)&&Object(r.isNumber)(i)&&(this.lockedWidth=e-s.width-n.width,this.lockedHeight=i-s.height-n.height),this.displayed&&this.iframe&&this.expand()}expand(t){var e,i=this.lockedWidth,n=this.lockedHeight;this.iframe&&!this._expanding&&(this._expanding=!0,"pre-paginated"===this.layout.name?(i=this.layout.columnWidth,n=this.layout.height):"horizontal"===this.settings.axis?((i=this.contents.textWidth())%this.layout.pageWidth>0&&(i=Math.ceil(i/this.layout.pageWidth)*this.layout.pageWidth),this.settings.forceEvenPages&&(e=i/this.layout.pageWidth,this.layout.divisor>1&&"reflowable"===this.layout.name&&e%2>0&&(i+=this.layout.pageWidth))):"vertical"===this.settings.axis&&(n=this.contents.textHeight(),"paginated"===this.settings.flow&&n%this.layout.height>0&&(n=Math.ceil(n/this.layout.height)*this.layout.height)),(this._needsReframe||i!=this._width||n!=this._height)&&this.reframe(i,n),this._expanding=!1)}reframe(t,e){var i;Object(r.isNumber)(t)&&(this.element.style.width=t+"px",this.iframe.style.width=t+"px",this._width=t),Object(r.isNumber)(e)&&(this.element.style.height=e+"px",this.iframe.style.height=e+"px",this._height=e),i={width:t,height:e,widthDelta:this.prevBounds?t-this.prevBounds.width:t,heightDelta:this.prevBounds?e-this.prevBounds.height:e},this.pane&&this.pane.render(),requestAnimationFrame((()=>{let t;for(let e in this.marks)this.marks.hasOwnProperty(e)&&(t=this.marks[e],this.placeMark(t.element,t.range))})),this.onResize(this,i),this.emit(h.c.VIEWS.RESIZED,i),this.prevBounds=i,this.elementBounds=Object(r.bounds)(this.element)}load(t){var e=new r.defer,i=e.promise;if(!this.iframe)return e.reject(new Error("No Iframe Available")),i;if(this.iframe.onload=function(t){this.onLoad(t,e)}.bind(this),"blobUrl"===this.settings.method)this.blobUrl=Object(r.createBlobUrl)(t,"application/xhtml+xml"),this.iframe.src=this.blobUrl,this.element.appendChild(this.iframe);else if("srcdoc"===this.settings.method)this.iframe.srcdoc=t,this.element.appendChild(this.iframe);else{if(this.element.appendChild(this.iframe),this.document=this.iframe.contentDocument,!this.document)return e.reject(new Error("No Document Available")),i;if(this.iframe.contentDocument.open(),window.MSApp&&MSApp.execUnsafeLocalFunction){var n=this;MSApp.execUnsafeLocalFunction((function(){n.iframe.contentDocument.write(t)}))}else this.iframe.contentDocument.write(t);this.iframe.contentDocument.close()}return i}onLoad(t,e){this.window=this.iframe.contentWindow,this.document=this.iframe.contentDocument,this.contents=new a.a(this.document,this.document.body,this.section.cfiBase,this.section.index),this.rendering=!1;var i=this.document.querySelector("link[rel='canonical']");i?i.setAttribute("href",this.section.canonical):((i=this.document.createElement("link")).setAttribute("rel","canonical"),i.setAttribute("href",this.section.canonical),this.document.querySelector("head").appendChild(i)),this.contents.on(h.c.CONTENTS.EXPAND,(()=>{this.displayed&&this.iframe&&(this.expand(),this.contents&&this.layout.format(this.contents))})),this.contents.on(h.c.CONTENTS.RESIZE,(t=>{this.displayed&&this.iframe&&(this.expand(),this.contents&&this.layout.format(this.contents))})),e.resolve(this.contents)}setLayout(t){this.layout=t,this.contents&&(this.layout.format(this.contents),this.expand())}setAxis(t){this.settings.axis=t,this.element.style.flex="horizontal"==t?"none":"initial",this.size()}setWritingMode(t){this.writingMode=t}addListeners(){}removeListeners(t){}display(t){var e=new r.defer;return this.displayed?e.resolve(this):this.render(t).then(function(){this.emit(h.c.VIEWS.DISPLAYED,this),this.onDisplayed(this),this.displayed=!0,e.resolve(this)}.bind(this),(function(t){e.reject(t,this)})),e.promise}show(){this.element.style.visibility="visible",this.iframe&&(this.iframe.style.visibility="visible",this.iframe.style.transform="translateZ(0)",this.iframe.offsetWidth,this.iframe.style.transform=null),this.emit(h.c.VIEWS.SHOWN,this)}hide(){this.element.style.visibility="hidden",this.iframe.style.visibility="hidden",this.stopExpanding=!0,this.emit(h.c.VIEWS.HIDDEN,this)}offset(){return{top:this.element.offsetTop,left:this.element.offsetLeft}}width(){return this._width}height(){return this._height}position(){return this.element.getBoundingClientRect()}locationOf(t){this.iframe.getBoundingClientRect();var e=this.contents.locationOf(t,this.settings.ignoreClass);return{left:e.left,top:e.top}}onDisplayed(t){}onResize(t,e){}bounds(t){return!t&&this.elementBounds||(this.elementBounds=Object(r.bounds)(this.element)),this.elementBounds}highlight(t,e={},i,n="epubjs-hl",s={}){if(!this.contents)return;const r=Object.assign({fill:"yellow","fill-opacity":"0.3","mix-blend-mode":"multiply"},s);let o=this.contents.range(t),a=()=>{this.emit(h.c.VIEWS.MARK_CLICKED,t,e)};e.epubcfi=t,this.pane||(this.pane=new l.Pane(this.iframe,this.element));let c=new l.Highlight(o,n,e,r),u=this.pane.addMark(c);return this.highlights[t]={mark:u,element:u.element,listeners:[a,i]},u.element.setAttribute("ref",n),u.element.addEventListener("click",a),u.element.addEventListener("touchstart",a),i&&(u.element.addEventListener("click",i),u.element.addEventListener("touchstart",i)),u}underline(t,e={},i,n="epubjs-ul",s={}){if(!this.contents)return;const r=Object.assign({stroke:"black","stroke-opacity":"0.3","mix-blend-mode":"multiply"},s);let o=this.contents.range(t),a=()=>{this.emit(h.c.VIEWS.MARK_CLICKED,t,e)};e.epubcfi=t,this.pane||(this.pane=new l.Pane(this.iframe,this.element));let c=new l.Underline(o,n,e,r),u=this.pane.addMark(c);return this.underlines[t]={mark:u,element:u.element,listeners:[a,i]},u.element.setAttribute("ref",n),u.element.addEventListener("click",a),u.element.addEventListener("touchstart",a),i&&(u.element.addEventListener("click",i),u.element.addEventListener("touchstart",i)),u}mark(t,e={},i){if(!this.contents)return;if(t in this.marks)return this.marks[t];let n=this.contents.range(t);if(!n)return;let s=n.commonAncestorContainer,r=1===s.nodeType?s:s.parentNode,o=i=>{this.emit(h.c.VIEWS.MARK_CLICKED,t,e)};n.collapsed&&1===s.nodeType?(n=new Range,n.selectNodeContents(s)):n.collapsed&&(n=new Range,n.selectNodeContents(r));let a=this.document.createElement("a");return a.setAttribute("ref","epubjs-mk"),a.style.position="absolute",a.dataset.epubcfi=t,e&&Object.keys(e).forEach((t=>{a.dataset[t]=e[t]})),i&&(a.addEventListener("click",i),a.addEventListener("touchstart",i)),a.addEventListener("click",o),a.addEventListener("touchstart",o),this.placeMark(a,n),this.element.appendChild(a),this.marks[t]={element:a,range:n,listeners:[o,i]},r}placeMark(t,e){let i,n,s;if("pre-paginated"===this.layout.name||"horizontal"!==this.settings.axis){let t=e.getBoundingClientRect();i=t.top,n=t.right}else{let t,o=e.getClientRects();for(var r=0;r!=o.length;r++)t=o[r],(!s||t.left{t&&(e.element.removeEventListener("click",t),e.element.removeEventListener("touchstart",t))})),delete this.highlights[t])}ununderline(t){let e;t in this.underlines&&(e=this.underlines[t],this.pane.removeMark(e.mark),e.listeners.forEach((t=>{t&&(e.element.removeEventListener("click",t),e.element.removeEventListener("touchstart",t))})),delete this.underlines[t])}unmark(t){let e;t in this.marks&&(e=this.marks[t],this.element.removeChild(e.element),e.listeners.forEach((t=>{t&&(e.element.removeEventListener("click",t),e.element.removeEventListener("touchstart",t))})),delete this.marks[t])}destroy(){for(let t in this.highlights)this.unhighlight(t);for(let t in this.underlines)this.ununderline(t);for(let t in this.marks)this.unmark(t);this.blobUrl&&Object(r.revokeBlobUrl)(this.blobUrl),this.displayed&&(this.displayed=!1,this.removeListeners(),this.contents.destroy(),this.stopExpanding=!0,this.element.removeChild(this.iframe),this.pane&&(this.pane.element.remove(),this.pane=void 0),this.iframe=void 0,this.contents=void 0,this._textWidth=null,this._textHeight=null,this._width=null,this._height=null)}}s()(c.prototype),e.a=c},function(t,e,i){var n=i(19),s=i(51),r=i(53),o=Math.max,a=Math.min;t.exports=function(t,e,i){var h,l,c,u,d,f,p=0,g=!1,m=!1,v=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function y(e){var i=h,n=l;return h=l=void 0,p=e,u=t.apply(n,i)}function b(t){var i=t-f;return void 0===f||i>=e||i<0||m&&t-p>=c}function w(){var t=s();if(b(t))return x(t);d=setTimeout(w,function(t){var i=e-(t-f);return m?a(i,c-(t-p)):i}(t))}function x(t){return d=void 0,v&&h?y(t):(h=l=void 0,u)}function E(){var t=s(),i=b(t);if(h=arguments,l=this,f=t,i){if(void 0===d)return function(t){return p=t,d=setTimeout(w,e),g?y(t):u}(f);if(m)return clearTimeout(d),d=setTimeout(w,e),y(f)}return void 0===d&&(d=setTimeout(w,e)),u}return e=r(e)||0,n(i)&&(g=!!i.leading,c=(m="maxWait"in i)?o(r(i.maxWait)||0,e):c,v="trailing"in i?!!i.trailing:v),E.cancel=function(){void 0!==d&&clearTimeout(d),p=0,h=f=l=d=void 0},E.flush=function(){return void 0===d?u:x(s())},E}},function(t,e,i){"use strict";var n=i(0),s=i(10),r=i(1),o=i(3),a=i.n(o);const h=Math.PI/2,l={easeOutSine:function(t){return Math.sin(t*h)},easeInOutSine:function(t){return-.5*(Math.cos(Math.PI*t)-1)},easeInOutQuint:function(t){return(t/=.5)<1?.5*Math.pow(t,5):.5*(Math.pow(t-2,5)+2)},easeInCubic:function(t){return Math.pow(t,3)}};class c{constructor(t,e){this.settings=Object(n.extend)({duration:80,minVelocity:.2,minDistance:10,easing:l.easeInCubic},e||{}),this.supportsTouch=this.supportsTouch(),this.supportsTouch&&this.setup(t)}setup(t){this.manager=t,this.layout=this.manager.layout,this.fullsize=this.manager.settings.fullsize,this.fullsize?(this.element=this.manager.stage.element,this.scroller=window,this.disableScroll()):(this.element=this.manager.stage.container,this.scroller=this.element,this.element.style.WebkitOverflowScrolling="touch"),this.manager.settings.offset=this.layout.width,this.manager.settings.afterScrolledTimeout=2*this.settings.duration,this.isVertical="vertical"===this.manager.settings.axis,this.manager.isPaginated&&!this.isVertical&&(this.touchCanceler=!1,this.resizeCanceler=!1,this.snapping=!1,this.scrollLeft,this.scrollTop,this.startTouchX=void 0,this.startTouchY=void 0,this.startTime=void 0,this.endTouchX=void 0,this.endTouchY=void 0,this.endTime=void 0,this.addListeners())}supportsTouch(){return!!("ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch)}disableScroll(){this.element.style.overflow="hidden"}enableScroll(){this.element.style.overflow=""}addListeners(){this._onResize=this.onResize.bind(this),window.addEventListener("resize",this._onResize),this._onScroll=this.onScroll.bind(this),this.scroller.addEventListener("scroll",this._onScroll),this._onTouchStart=this.onTouchStart.bind(this),this.scroller.addEventListener("touchstart",this._onTouchStart,{passive:!0}),this.on("touchstart",this._onTouchStart),this._onTouchMove=this.onTouchMove.bind(this),this.scroller.addEventListener("touchmove",this._onTouchMove,{passive:!0}),this.on("touchmove",this._onTouchMove),this._onTouchEnd=this.onTouchEnd.bind(this),this.scroller.addEventListener("touchend",this._onTouchEnd,{passive:!0}),this.on("touchend",this._onTouchEnd),this._afterDisplayed=this.afterDisplayed.bind(this),this.manager.on(r.c.MANAGERS.ADDED,this._afterDisplayed)}removeListeners(){window.removeEventListener("resize",this._onResize),this._onResize=void 0,this.scroller.removeEventListener("scroll",this._onScroll),this._onScroll=void 0,this.scroller.removeEventListener("touchstart",this._onTouchStart,{passive:!0}),this.off("touchstart",this._onTouchStart),this._onTouchStart=void 0,this.scroller.removeEventListener("touchmove",this._onTouchMove,{passive:!0}),this.off("touchmove",this._onTouchMove),this._onTouchMove=void 0,this.scroller.removeEventListener("touchend",this._onTouchEnd,{passive:!0}),this.off("touchend",this._onTouchEnd),this._onTouchEnd=void 0,this.manager.off(r.c.MANAGERS.ADDED,this._afterDisplayed),this._afterDisplayed=void 0}afterDisplayed(t){let e=t.contents;["touchstart","touchmove","touchend"].forEach((t=>{e.on(t,(t=>this.triggerViewEvent(t,e)))}))}triggerViewEvent(t,e){this.emit(t.type,t,e)}onScroll(t){this.scrollLeft=this.fullsize?window.scrollX:this.scroller.scrollLeft,this.scrollTop=this.fullsize?window.scrollY:this.scroller.scrollTop}onResize(t){this.resizeCanceler=!0}onTouchStart(t){let{screenX:e,screenY:i}=t.touches[0];this.fullsize&&this.enableScroll(),this.touchCanceler=!0,this.startTouchX||(this.startTouchX=e,this.startTouchY=i,this.startTime=this.now()),this.endTouchX=e,this.endTouchY=i,this.endTime=this.now()}onTouchMove(t){let{screenX:e,screenY:i}=t.touches[0],n=Math.abs(i-this.endTouchY);this.touchCanceler=!0,!this.fullsize&&n<10&&(this.element.scrollLeft-=e-this.endTouchX),this.endTouchX=e,this.endTouchY=i,this.endTime=this.now()}onTouchEnd(t){this.fullsize&&this.disableScroll(),this.touchCanceler=!1;let e=this.wasSwiped();0!==e?this.snap(e):this.snap(),this.startTouchX=void 0,this.startTouchY=void 0,this.startTime=void 0,this.endTouchX=void 0,this.endTouchY=void 0,this.endTime=void 0}wasSwiped(){let t=this.layout.pageWidth*this.layout.divisor,e=this.endTouchX-this.startTouchX,i=Math.abs(e),n=e/(this.endTime-this.startTime),s=this.settings.minVelocity;return i<=this.settings.minDistance||i>=t?0:n>s?-1:n<-s?1:void 0}needsSnap(){return this.scrollLeft%(this.layout.pageWidth*this.layout.divisor)!=0}snap(t=0){let e=this.scrollLeft,i=this.layout.pageWidth*this.layout.divisor,n=Math.round(e/i)*i;return t&&(n+=t*i),this.smoothScrollTo(n)}smoothScrollTo(t){const e=new n.defer,i=this.scrollLeft,s=this.now(),r=this.settings.duration,o=this.settings.easing;return this.snapping=!0,function n(){const a=this.now(),h=Math.min(1,(a-s)/r);if(o(h),this.touchCanceler||this.resizeCanceler)return this.resizeCanceler=!1,this.snapping=!1,void e.resolve();h<1?(window.requestAnimationFrame(n.bind(this)),this.scrollTo(i+(t-i)*h,0)):(this.scrollTo(t,0),this.snapping=!1,e.resolve())}.call(this),e.promise}scrollTo(t=0,e=0){this.fullsize?window.scroll(t,e):(this.scroller.scrollLeft=t,this.scroller.scrollTop=e)}now(){return"now"in window.performance?performance.now():(new Date).getTime()}destroy(){this.scroller&&(this.fullsize&&this.enableScroll(),this.removeListeners(),this.scroller=void 0)}}a()(c.prototype);var u=c,d=i(21),f=i.n(d);class p extends s.a{constructor(t){super(t),this.name="continuous",this.settings=Object(n.extend)(this.settings||{},{infinite:!0,overflow:void 0,axis:void 0,writingMode:void 0,flow:"scrolled",offset:500,offsetDelta:250,width:void 0,height:void 0,snap:!1,afterScrolledTimeout:10,allowScriptedContent:!1,allowPopups:!1}),Object(n.extend)(this.settings,t.settings||{}),"undefined"!=t.settings.gap&&0===t.settings.gap&&(this.settings.gap=t.settings.gap),this.viewSettings={ignoreClass:this.settings.ignoreClass,axis:this.settings.axis,flow:this.settings.flow,layout:this.layout,width:0,height:0,forceEvenPages:!1,allowScriptedContent:this.settings.allowScriptedContent,allowPopups:this.settings.allowPopups},this.scrollTop=0,this.scrollLeft=0}display(t,e){return s.a.prototype.display.call(this,t,e).then(function(){return this.fill()}.bind(this))}fill(t){var e=t||new n.defer;return this.q.enqueue((()=>this.check())).then((t=>{t?this.fill(e):e.resolve()})),e.promise}moveTo(t){var e=0,i=0;this.isPaginated?(e=Math.floor(t.left/this.layout.delta)*this.layout.delta,this.settings.offsetDelta):(i=t.top,t.top,this.settings.offsetDelta),(e>0||i>0)&&this.scrollBy(e,i,!0)}afterResized(t){this.emit(r.c.MANAGERS.RESIZE,t.section)}removeShownListeners(t){t.onDisplayed=function(){}}add(t){var e=this.createView(t);return this.views.append(e),e.on(r.c.VIEWS.RESIZED,(t=>{e.expanded=!0})),e.on(r.c.VIEWS.AXIS,(t=>{this.updateAxis(t)})),e.on(r.c.VIEWS.WRITING_MODE,(t=>{this.updateWritingMode(t)})),e.onDisplayed=this.afterDisplayed.bind(this),e.onResize=this.afterResized.bind(this),e.display(this.request)}append(t){var e=this.createView(t);return e.on(r.c.VIEWS.RESIZED,(t=>{e.expanded=!0})),e.on(r.c.VIEWS.AXIS,(t=>{this.updateAxis(t)})),e.on(r.c.VIEWS.WRITING_MODE,(t=>{this.updateWritingMode(t)})),this.views.append(e),e.onDisplayed=this.afterDisplayed.bind(this),e}prepend(t){var e=this.createView(t);return e.on(r.c.VIEWS.RESIZED,(t=>{this.counter(t),e.expanded=!0})),e.on(r.c.VIEWS.AXIS,(t=>{this.updateAxis(t)})),e.on(r.c.VIEWS.WRITING_MODE,(t=>{this.updateWritingMode(t)})),this.views.prepend(e),e.onDisplayed=this.afterDisplayed.bind(this),e}counter(t){"vertical"===this.settings.axis?this.scrollBy(0,t.heightDelta,!0):this.scrollBy(t.widthDelta,0,!0)}update(t){for(var e,i=this.bounds(),s=this.views.all(),r=s.length,o=[],a=void 0!==t?t:this.settings.offset||0,h=new n.defer,l=[],c=0;c{e.hide()}));l.push(t)}o.push(e)}else this.q.enqueue(e.destroy.bind(e)),clearTimeout(this.trimTimeout),this.trimTimeout=setTimeout(function(){this.q.enqueue(this.trim.bind(this))}.bind(this),250);return l.length?Promise.all(l).catch((t=>{h.reject(t)})):(h.resolve(),h.promise)}check(t,e){var i=new n.defer,s=[],r="horizontal"===this.settings.axis,o=this.settings.offset||0;t&&r&&(o=t),e&&!r&&(o=e);var a=this._bounds;let h=r?this.scrollLeft:this.scrollTop,l=r?Math.floor(a.width):a.height,c=r?this.container.scrollWidth:this.container.scrollHeight,u=this.writingMode&&0===this.writingMode.indexOf("vertical")?"vertical":"horizontal",d=this.settings.rtlScrollType,f="rtl"===this.settings.direction;this.settings.fullsize?(r&&f&&"negative"===d||!r&&f&&"default"===d)&&(h*=-1):(f&&"default"===d&&"horizontal"===u&&(h=c-l-h),f&&"negative"===d&&"horizontal"===u&&(h*=-1));let p=h-o;h+l+o>=c&&(()=>{let t=this.views.last(),e=t&&t.section.next();e&&s.push(this.append(e))})(),p<0&&(()=>{let t=this.views.first(),e=t&&t.section.prev();e&&s.push(this.prepend(e))})();let g=s.map((t=>t.display(this.request)));return s.length?Promise.all(g).then((()=>this.check())).then((()=>this.update(o)),(t=>t)):(this.q.enqueue(function(){this.update()}.bind(this)),i.resolve(!1),i.promise)}trim(){for(var t=new n.defer,e=this.views.displayed(),i=e[0],s=e[e.length-1],r=this.views.indexOf(i),o=this.views.indexOf(s),a=this.views.slice(0,r),h=this.views.slice(o+1),l=0;l=43)}})).catch((function(){return!1}))}(t).then((function(t){return u=t}))}function g(t){var e=d[t.name],i={};i.promise=new o((function(t,e){i.resolve=t,i.reject=e})),e.deferredOperations.push(i),e.dbReady?e.dbReady=e.dbReady.then((function(){return i.promise})):e.dbReady=i.promise}function m(t){var e=d[t.name].deferredOperations.pop();if(e)return e.resolve(),e.promise}function v(t,e){var i=d[t.name].deferredOperations.pop();if(i)return i.reject(e),i.promise}function y(t,e){return new o((function(i,n){if(d[t.name]=d[t.name]||{forages:[],db:null,dbReady:null,deferredOperations:[]},t.db){if(!e)return i(t.db);g(t),t.db.close()}var r=[t.name];e&&r.push(t.version);var o=s.open.apply(s,r);e&&(o.onupgradeneeded=function(e){var i=o.result;try{i.createObjectStore(t.storeName),e.oldVersion<=1&&i.createObjectStore("local-forage-detect-blob-support")}catch(i){if("ConstraintError"!==i.name)throw i;console.warn('The database "'+t.name+'" has been upgraded from version '+e.oldVersion+" to version "+e.newVersion+', but the storage "'+t.storeName+'" already exists.')}}),o.onerror=function(t){t.preventDefault(),n(o.error)},o.onsuccess=function(){var e=o.result;e.onversionchange=function(t){t.target.close()},i(e),m(t)}}))}function b(t){return y(t,!1)}function w(t){return y(t,!0)}function x(t,e){if(!t.db)return!0;var i=!t.db.objectStoreNames.contains(t.storeName),n=t.versiont.db.version;if(n&&(t.version!==e&&console.warn('The database "'+t.name+"\" can't be downgraded from version "+t.db.version+" to version "+t.version+"."),t.version=t.db.version),s||i){if(i){var r=t.db.version+1;r>t.version&&(t.version=r)}return!0}return!1}function E(t){return r([function(t){for(var e=t.length,i=new ArrayBuffer(e),n=new Uint8Array(i),s=0;s0&&(!t.db||"InvalidStateError"===s.name||"NotFoundError"===s.name))return o.resolve().then((function(){if(!t.db||"NotFoundError"===s.name&&!t.db.objectStoreNames.contains(t.storeName)&&t.version<=t.db.version)return t.db&&(t.version=t.db.version+1),w(t)})).then((function(){return function(t){g(t);for(var e=d[t.name],i=e.forages,n=0;n>4,c[h++]=(15&n)<<4|s>>2,c[h++]=(3&s)<<6|63&r;return l}function k(t){var e,i=new Uint8Array(t),n="";for(e=0;e>2],n+=C[(3&i[e])<<4|i[e+1]>>4],n+=C[(15&i[e+1])<<2|i[e+2]>>6],n+=C[63&i[e+2]];return i.length%3==2?n=n.substring(0,n.length-1)+"=":i.length%3==1&&(n=n.substring(0,n.length-2)+"=="),n}var A={serialize:function(t,e){var i="";if(t&&(i=I.call(t)),t&&("[object ArrayBuffer]"===i||t.buffer&&"[object ArrayBuffer]"===I.call(t.buffer))){var n,s="__lfsc__:";t instanceof ArrayBuffer?(n=t,s+="arbf"):(n=t.buffer,"[object Int8Array]"===i?s+="si08":"[object Uint8Array]"===i?s+="ui08":"[object Uint8ClampedArray]"===i?s+="uic8":"[object Int16Array]"===i?s+="si16":"[object Uint16Array]"===i?s+="ur16":"[object Int32Array]"===i?s+="si32":"[object Uint32Array]"===i?s+="ui32":"[object Float32Array]"===i?s+="fl32":"[object Float64Array]"===i?s+="fl64":e(new Error("Failed to get type for BinaryArray"))),e(s+k(n))}else if("[object Blob]"===i){var r=new FileReader;r.onload=function(){var i="~~local_forage_type~"+t.type+"~"+k(this.result);e("__lfsc__:blob"+i)},r.readAsArrayBuffer(t)}else try{e(JSON.stringify(t))}catch(i){console.error("Couldn't convert value into a JSON string: ",t),e(null,i)}},deserialize:function(t){if("__lfsc__:"!==t.substring(0,9))return JSON.parse(t);var e,i=t.substring(13),n=t.substring(9,13);if("blob"===n&&O.test(i)){var s=i.match(O);e=s[1],i=i.substring(s[0].length)}var o=R(i);switch(n){case"arbf":return o;case"blob":return r([o],{type:e});case"si08":return new Int8Array(o);case"ui08":return new Uint8Array(o);case"uic8":return new Uint8ClampedArray(o);case"si16":return new Int16Array(o);case"ur16":return new Uint16Array(o);case"si32":return new Int32Array(o);case"ui32":return new Uint32Array(o);case"fl32":return new Float32Array(o);case"fl64":return new Float64Array(o);default:throw new Error("Unkown type: "+n)}},stringToBuffer:R,bufferToString:k};function L(t,e,i,n){t.executeSql("CREATE TABLE IF NOT EXISTS "+e.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],i,n)}function j(t,e,i,n,s,r){t.executeSql(i,n,s,(function(t,o){o.code===o.SYNTAX_ERR?t.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[e.storeName],(function(t,a){a.rows.length?r(t,o):L(t,e,(function(){t.executeSql(i,n,s,r)}),r)}),r):r(t,o)}),r)}function D(t,e,i,n){var s=this;t=l(t);var r=new o((function(r,o){s.ready().then((function(){void 0===e&&(e=null);var a=e,h=s._dbInfo;h.serializer.serialize(e,(function(e,l){l?o(l):h.db.transaction((function(i){j(i,h,"INSERT OR REPLACE INTO "+h.storeName+" (key, value) VALUES (?, ?)",[t,e],(function(){r(a)}),(function(t,e){o(e)}))}),(function(e){if(e.code===e.QUOTA_ERR){if(n>0)return void r(D.apply(s,[t,a,i,n-1]));o(e)}}))}))})).catch(o)}));return a(r,i),r}var P={_driver:"webSQLStorage",_initStorage:function(t){var e=this,i={db:null};if(t)for(var n in t)i[n]="string"!=typeof t[n]?t[n].toString():t[n];var s=new o((function(t,n){try{i.db=openDatabase(i.name,String(i.version),i.description,i.size)}catch(t){return n(t)}i.db.transaction((function(s){L(s,i,(function(){e._dbInfo=i,t()}),(function(t,e){n(e)}))}),n)}));return i.serializer=A,s},_support:"function"==typeof openDatabase,iterate:function(t,e){var i=this,n=new o((function(e,n){i.ready().then((function(){var s=i._dbInfo;s.db.transaction((function(i){j(i,s,"SELECT * FROM "+s.storeName,[],(function(i,n){for(var r=n.rows,o=r.length,a=0;a '__WebKitDatabaseInfoTable__'",[],(function(i,n){for(var s=[],r=0;r0?(this._dbInfo=e,e.serializer=A,o.resolve()):o.reject()},_support:function(){try{return"undefined"!=typeof localStorage&&"setItem"in localStorage&&!!localStorage.setItem}catch(t){return!1}}(),iterate:function(t,e){var i=this,n=i.ready().then((function(){for(var e=i._dbInfo,n=e.keyPrefix,s=n.length,r=localStorage.length,o=1,a=0;a=0;i--){var n=localStorage.key(i);0===n.indexOf(t)&&localStorage.removeItem(n)}}));return a(i,t),i},length:function(t){var e=this.keys().then((function(t){return t.length}));return a(e,t),e},key:function(t,e){var i=this,n=i.ready().then((function(){var e,n=i._dbInfo;try{e=localStorage.key(t)}catch(t){e=null}return e&&(e=e.substring(n.keyPrefix.length)),e}));return a(n,e),n},keys:function(t){var e=this,i=e.ready().then((function(){for(var t=e._dbInfo,i=localStorage.length,n=[],s=0;s=0;e--){var i=localStorage.key(e);0===i.indexOf(t)&&localStorage.removeItem(i)}})):o.reject("Invalid arguments"),e),n}},B=function(t,e){for(var i,n,s=t.length,r=0;r=0,i=new("undefined"==typeof XMLSerializer||e?d.DOMParser:XMLSerializer);return this.output=i.serializeToString(t),this.output}.bind(this)).then(function(){return this.hooks.serialize.trigger(this.output,this)}.bind(this)).then(function(){e.resolve(this.output)}.bind(this)).catch((function(t){e.reject(t)})),i}find(t){var e=this,i=[],n=t.toLowerCase();return Object(r.sprint)(e.document,(function(t){!function(t){for(var s,r,o,a=t.textContent.toLowerCase(),h=e.document.createRange(),l=-1;-1!=r;)-1!=(r=a.indexOf(n,l+1))&&((h=e.document.createRange()).setStart(t,r),h.setEnd(t,r+n.length),s=e.cfiFromRange(h),o=t.textContent.length<150?t.textContent:"..."+(o=t.textContent.substring(r-75,r+75))+"...",i.push({cfi:s,excerpt:o})),l=r}(t)})),i}search(t,e=5){if(void 0===document.createTreeWalker)return this.find(t);let i=[];const n=this,s=t.toLowerCase(),r=function(t){const e=t.reduce(((t,e)=>t+e.textContent),"").toLowerCase().indexOf(s);if(-1!=e){const r=0,o=e+s.length;let a=0,h=0;if(et+e.textContent.length),0);u.setEnd(c,d>o?o:o-d),s=n.cfiFromRange(u);let f=t.slice(0,a+1).reduce(((t,e)=>t+e.textContent),"");f.length>150&&(f=f.substring(e-75,e+75),f="..."+f+"..."),i.push({cfi:s,excerpt:f})}}},o=document.createTreeWalker(n.document,NodeFilter.SHOW_TEXT,null,!1);let a,h=[];for(;a=o.nextNode();)h.push(a),h.length==e&&(r(h.slice(0,e)),h=h.slice(1,e));return h.length>0&&r(h),i}reconcileLayoutSettings(t){var e={layout:t.layout,spread:t.spread,orientation:t.orientation};return this.properties.forEach((function(t){var i,n,s=t.replace("rendition:",""),r=s.indexOf("-");-1!=r&&(i=s.slice(0,r),n=s.slice(r+1),e[i]=n)})),e}cfiFromRange(t){return new h.a(t,this.cfiBase).toString()}cfiFromElement(t){return new h.a(t,this.cfiBase).toString()}unload(){this.document=void 0,this.contents=void 0,this.output=void 0}destroy(){this.unload(),this.hooks.serialize.clear(),this.hooks.content.clear(),this.hooks=void 0,this.idref=void 0,this.linear=void 0,this.properties=void 0,this.index=void 0,this.href=void 0,this.url=void 0,this.next=void 0,this.prev=void 0,this.cfiBase=void 0}},p=class{constructor(){this.spineItems=[],this.spineByHref={},this.spineById={},this.hooks={},this.hooks.serialize=new l.a,this.hooks.content=new l.a,this.hooks.content.register(c.a),this.hooks.content.register(c.b),this.hooks.content.register(c.d),this.epubcfi=new h.a,this.loaded=!1,this.items=void 0,this.manifest=void 0,this.spineNodeIndex=void 0,this.baseUrl=void 0,this.length=void 0}unpack(t,e,i){this.items=t.spine,this.manifest=t.manifest,this.spineNodeIndex=t.spineNodeIndex,this.baseUrl=t.baseUrl||t.basePath||"",this.length=this.items.length,this.items.forEach(((t,n)=>{var s,r=this.manifest[t.idref];t.index=n,t.cfiBase=this.epubcfi.generateChapterComponent(this.spineNodeIndex,t.index,t.id),t.href&&(t.url=e(t.href,!0),t.canonical=i(t.href)),r&&(t.href=r.href,t.url=e(t.href,!0),t.canonical=i(t.href),r.properties.length&&t.properties.push.apply(t.properties,r.properties)),"yes"===t.linear?(t.prev=function(){let e=t.index;for(;e>0;){let t=this.get(e-1);if(t&&t.linear)return t;e-=1}}.bind(this),t.next=function(){let e=t.index;for(;e-1)return delete this.spineByHref[t.href],delete this.spineById[t.idref],this.spineItems.splice(e,1)}each(){return this.spineItems.forEach.apply(this.spineItems,arguments)}first(){let t=0;do{let e=this.get(t);if(e&&e.linear)return e;t+=1}while(t=0)}destroy(){this.each((t=>t.destroy())),this.spineItems=void 0,this.spineByHref=void 0,this.spineById=void 0,this.hooks.serialize.clear(),this.hooks.content.clear(),this.hooks=void 0,this.epubcfi=void 0,this.loaded=!1,this.items=void 0,this.manifest=void 0,this.spineNodeIndex=void 0,this.baseUrl=void 0,this.length=void 0}},g=i(9),m=i(1);class v{constructor(t,e,i){this.spine=t,this.request=e,this.pause=i||100,this.q=new g.a(this),this.epubcfi=new h.a,this._locations=[],this._locationsWords=[],this.total=0,this.break=150,this._current=0,this._wordCounter=0,this.currentLocation="",this._currentCfi="",this.processingTimeout=void 0}generate(t){return t&&(this.break=t),this.q.pause(),this.spine.each(function(t){t.linear&&this.q.enqueue(this.process.bind(this),t)}.bind(this)),this.q.run().then(function(){return this.total=this._locations.length-1,this._currentCfi&&(this.currentLocation=this._currentCfi),this._locations}.bind(this))}createRange(){return{startContainer:void 0,startOffset:void 0,endContainer:void 0,endOffset:void 0}}process(t){return t.load(this.request).then(function(e){var i=new r.defer,n=this.parse(e,t.cfiBase);return this._locations=this._locations.concat(n),t.unload(),this.processingTimeout=setTimeout((()=>i.resolve(n)),this.pause),i.promise}.bind(this))}parse(t,e,i){var n,s,o=[],a=t.ownerDocument,l=Object(r.qs)(a,"body"),c=0,u=i||this.break;if(Object(r.sprint)(l,function(t){var i,r=t.length,a=0;if(0===t.textContent.trim().length)return!1;for(0==c&&((n=this.createRange()).startContainer=t,n.startOffset=0),(i=u-c)>r&&(c+=r,a=r);a=r)c+=r-a,a=r;else{a+=i,n.endContainer=t,n.endOffset=a;let s=new h.a(n,e).toString();o.push(s),c=0}s=t}.bind(this)),n&&n.startContainer&&s){n.endContainer=s,n.endOffset=s.length;let t=new h.a(n,e).toString();o.push(t),c=0}return o}generateFromWords(t,e,i){var n=t?new h.a(t):void 0;return this.q.pause(),this._locationsWords=[],this._wordCounter=0,this.spine.each(function(t){t.linear&&(n?t.index>=n.spinePos&&this.q.enqueue(this.processWords.bind(this),t,e,n,i):this.q.enqueue(this.processWords.bind(this),t,e,n,i))}.bind(this)),this.q.run().then(function(){return this._currentCfi&&(this.currentLocation=this._currentCfi),this._locationsWords}.bind(this))}processWords(t,e,i,n){return n&&this._locationsWords.length>=n?Promise.resolve():t.load(this.request).then(function(s){var o=new r.defer,a=this.parseWords(s,t,e,i),h=n-this._locationsWords.length;return this._locationsWords=this._locationsWords.concat(a.length>=n?a.slice(0,h):a),t.unload(),this.processingTimeout=setTimeout((()=>o.resolve(a)),this.pause),o.promise}.bind(this))}countWords(t){return(t=(t=(t=t.replace(/(^\s*)|(\s*$)/gi,"")).replace(/[ ]{2,}/gi," ")).replace(/\n /,"\n")).split(" ").length}parseWords(t,e,i,n){var s,o=e.cfiBase,a=[],l=t.ownerDocument,c=Object(r.qs)(l,"body"),u=i,d=!n||n.spinePos!==e.index;return n&&e.index===n.spinePos&&(s=n.findNode(n.range?n.path.steps.concat(n.start.steps):n.path.steps,t.ownerDocument)),Object(r.sprint)(c,function(t){if(!d){if(t!==s)return!1;d=!0}if(t.textContent.length<10&&0===t.textContent.trim().length)return!1;var e,i=this.countWords(t.textContent),n=0;if(0===i)return!1;for((e=u-this._wordCounter)>i&&(this._wordCounter+=i,n=i);n=i)this._wordCounter+=i-n,n=i;else{n+=e;let i=new h.a(t,o);a.push({cfi:i.toString(),wordCount:this._wordCounter}),this._wordCounter=0}}.bind(this)),a}locationFromCfi(t){let e;return h.a.prototype.isCfiString(t)&&(t=new h.a(t)),0===this._locations.length?-1:(e=Object(r.locationOf)(t,this._locations,this.epubcfi.compare),e>this.total?this.total:e)}percentageFromCfi(t){if(0===this._locations.length)return null;var e=this.locationFromCfi(t);return this.percentageFromLocation(e)}percentageFromLocation(t){return t&&this.total?t/this.total:0}cfiFromLocation(t){var e=-1;return"number"!=typeof t&&(t=parseInt(t)),t>=0&&t1&&console.warn("Normalize cfiFromPercentage value to between 0 - 1"),t>=1){let t=new h.a(this._locations[this.total]);return t.collapse(),t.toString()}return e=Math.ceil(this.total*t),this.cfiFromLocation(e)}load(t){return this._locations="string"==typeof t?JSON.parse(t):t,this.total=this._locations.length-1,this._locations}save(){return JSON.stringify(this._locations)}getCurrent(){return this._current}setCurrent(t){var e;if("string"==typeof t)this._currentCfi=t;else{if("number"!=typeof t)return;this._current=t}0!==this._locations.length&&("string"==typeof t?(e=this.locationFromCfi(t),this._current=e):e=t,this.emit(m.c.LOCATIONS.CHANGED,{percentage:this.percentageFromLocation(e)}))}get currentLocation(){return this._current}set currentLocation(t){this.setCurrent(t)}length(){return this._locations.length}destroy(){this.spine=void 0,this.request=void 0,this.pause=void 0,this.q.stop(),this.q=void 0,this.epubcfi=void 0,this._locations=void 0,this.total=void 0,this.break=void 0,this._current=void 0,this.currentLocation=void 0,this._currentCfi=void 0,clearTimeout(this.processingTimeout)}}s()(v.prototype);var y=v,b=i(7),w=i.n(b),x=class{constructor(t){this.packagePath="",this.directory="",this.encoding="",t&&this.parse(t)}parse(t){var e;if(!t)throw new Error("Container File Not Found");if(!(e=Object(r.qs)(t,"rootfile")))throw new Error("No RootFile Found");this.packagePath=e.getAttribute("full-path"),this.directory=w.a.dirname(this.packagePath),this.encoding=t.xmlEncoding}destroy(){this.packagePath=void 0,this.directory=void 0,this.encoding=void 0}},E=class{constructor(t){this.manifest={},this.navPath="",this.ncxPath="",this.coverPath="",this.spineNodeIndex=0,this.spine=[],this.metadata={},t&&this.parse(t)}parse(t){var e,i,n;if(!t)throw new Error("Package File Not Found");if(!(e=Object(r.qs)(t,"metadata")))throw new Error("No Metadata Found");if(!(i=Object(r.qs)(t,"manifest")))throw new Error("No Manifest Found");if(!(n=Object(r.qs)(t,"spine")))throw new Error("No Spine Found");return this.manifest=this.parseManifest(i),this.navPath=this.findNavPath(i),this.ncxPath=this.findNcxPath(i,n),this.coverPath=this.findCoverPath(t),this.spineNodeIndex=Object(r.indexOfElementNode)(n),this.spine=this.parseSpine(n,this.manifest),this.uniqueIdentifier=this.findUniqueIdentifier(t),this.metadata=this.parseMetadata(e),this.metadata.direction=n.getAttribute("page-progression-direction"),{metadata:this.metadata,spine:this.spine,manifest:this.manifest,navPath:this.navPath,ncxPath:this.ncxPath,coverPath:this.coverPath,spineNodeIndex:this.spineNodeIndex}}parseMetadata(t){var e={};return e.title=this.getElementText(t,"title"),e.creator=this.getElementText(t,"creator"),e.description=this.getElementText(t,"description"),e.pubdate=this.getElementText(t,"date"),e.publisher=this.getElementText(t,"publisher"),e.identifier=this.getElementText(t,"identifier"),e.language=this.getElementText(t,"language"),e.rights=this.getElementText(t,"rights"),e.modified_date=this.getPropertyText(t,"dcterms:modified"),e.layout=this.getPropertyText(t,"rendition:layout"),e.orientation=this.getPropertyText(t,"rendition:orientation"),e.flow=this.getPropertyText(t,"rendition:flow"),e.viewport=this.getPropertyText(t,"rendition:viewport"),e.media_active_class=this.getPropertyText(t,"media:active-class"),e.spread=this.getPropertyText(t,"rendition:spread"),e}parseManifest(t){var e={},i=Object(r.qsa)(t,"item");return Array.prototype.slice.call(i).forEach((function(t){var i=t.getAttribute("id"),n=t.getAttribute("href")||"",s=t.getAttribute("media-type")||"",r=t.getAttribute("media-overlay")||"",o=t.getAttribute("properties")||"";e[i]={href:n,type:s,overlay:r,properties:o.length?o.split(" "):[]}})),e}parseSpine(t,e){var i=[],n=Object(r.qsa)(t,"itemref");return Array.prototype.slice.call(n).forEach((function(t,e){var n=t.getAttribute("idref"),s=t.getAttribute("properties")||"",r=s.length?s.split(" "):[],o={id:t.getAttribute("id"),idref:n,linear:t.getAttribute("linear")||"yes",properties:r,index:e};i.push(o)})),i}findUniqueIdentifier(t){var e=t.documentElement.getAttribute("unique-identifier");if(!e)return"";var i=t.getElementById(e);return i&&"identifier"===i.localName&&"http://purl.org/dc/elements/1.1/"===i.namespaceURI&&i.childNodes.length>0?i.childNodes[0].nodeValue.trim():""}findNavPath(t){var e=Object(r.qsp)(t,"item",{properties:"nav"});return!!e&&e.getAttribute("href")}findNcxPath(t,e){var i,n=Object(r.qsp)(t,"item",{"media-type":"application/x-dtbncx+xml"});return n||(i=e.getAttribute("toc"))&&(n=t.querySelector("#"+i)),!!n&&n.getAttribute("href")}findCoverPath(t){Object(r.qs)(t,"package").getAttribute("version");var e=Object(r.qsp)(t,"item",{properties:"cover-image"});if(e)return e.getAttribute("href");var i=Object(r.qsp)(t,"meta",{name:"cover"});if(i){var n=i.getAttribute("content"),s=t.getElementById(n);return s?s.getAttribute("href"):""}return!1}getElementText(t,e){var i,n=t.getElementsByTagNameNS("http://purl.org/dc/elements/1.1/",e);return n&&0!==n.length&&(i=n[0]).childNodes.length?i.childNodes[0].nodeValue:""}getPropertyText(t,e){var i=Object(r.qsp)(t,"meta",{property:e});return i&&i.childNodes.length?i.childNodes[0].nodeValue:""}load(t){this.metadata=t.metadata;let e=t.readingOrder||t.spine;return this.spine=e.map(((t,e)=>(t.index=e,t.linear=t.linear||"yes",t))),t.resources.forEach(((t,e)=>{this.manifest[e]=t,t.rel&&"cover"===t.rel[0]&&(this.coverPath=t.href)})),this.spineNodeIndex=0,this.toc=t.toc.map(((t,e)=>(t.label=t.title,t))),{metadata:this.metadata,spine:this.spine,manifest:this.manifest,navPath:this.navPath,ncxPath:this.ncxPath,coverPath:this.coverPath,spineNodeIndex:this.spineNodeIndex,toc:this.toc}}destroy(){this.manifest=void 0,this.navPath=void 0,this.ncxPath=void 0,this.coverPath=void 0,this.spineNodeIndex=void 0,this.spine=void 0,this.metadata=void 0}},S=class{constructor(t){this.toc=[],this.tocByHref={},this.tocById={},this.landmarks=[],this.landmarksByType={},this.length=0,t&&this.parse(t)}parse(t){let e,i,n=t.nodeType;n&&(e=Object(r.qs)(t,"html"),i=Object(r.qs)(t,"ncx")),n?e?(this.toc=this.parseNav(t),this.landmarks=this.parseLandmarks(t)):i&&(this.toc=this.parseNcx(t)):this.toc=this.load(t),this.length=0,this.unpack(this.toc)}unpack(t){for(var e,i=0;i(t.label=t.title,t.subitems=t.children?this.load(t.children):[],t)))}forEach(t){return this.toc.forEach(t)}},N={application:{ecmascript:["es","ecma"],javascript:"js",ogg:"ogx",pdf:"pdf",postscript:["ps","ai","eps","epsi","epsf","eps2","eps3"],"rdf+xml":"rdf",smil:["smi","smil"],"xhtml+xml":["xhtml","xht"],xml:["xml","xsl","xsd","opf","ncx"],zip:"zip","x-httpd-eruby":"rhtml","x-latex":"latex","x-maker":["frm","maker","frame","fm","fb","book","fbdoc"],"x-object":"o","x-shockwave-flash":["swf","swfl"],"x-silverlight":"scr","epub+zip":"epub","font-tdpfr":"pfr","inkml+xml":["ink","inkml"],json:"json","jsonml+json":"jsonml","mathml+xml":"mathml","metalink+xml":"metalink",mp4:"mp4s","omdoc+xml":"omdoc",oxps:"oxps","vnd.amazon.ebook":"azw",widget:"wgt","x-dtbook+xml":"dtb","x-dtbresource+xml":"res","x-font-bdf":"bdf","x-font-ghostscript":"gsf","x-font-linux-psf":"psf","x-font-otf":"otf","x-font-pcf":"pcf","x-font-snf":"snf","x-font-ttf":["ttf","ttc"],"x-font-type1":["pfa","pfb","pfm","afm"],"x-font-woff":"woff","x-mobipocket-ebook":["prc","mobi"],"x-mspublisher":"pub","x-nzb":"nzb","x-tgif":"obj","xaml+xml":"xaml","xml-dtd":"dtd","xproc+xml":"xpl","xslt+xml":"xslt","internet-property-stream":"acx","x-compress":"z","x-compressed":"tgz","x-gzip":"gz"},audio:{flac:"flac",midi:["mid","midi","kar","rmi"],mpeg:["mpga","mpega","mp2","mp3","m4a","mp2a","m2a","m3a"],mpegurl:"m3u",ogg:["oga","ogg","spx"],"x-aiff":["aif","aiff","aifc"],"x-ms-wma":"wma","x-wav":"wav",adpcm:"adp",mp4:"mp4a",webm:"weba","x-aac":"aac","x-caf":"caf","x-matroska":"mka","x-pn-realaudio-plugin":"rmp",xm:"xm",mid:["mid","rmi"]},image:{gif:"gif",ief:"ief",jpeg:["jpeg","jpg","jpe"],pcx:"pcx",png:"png","svg+xml":["svg","svgz"],tiff:["tiff","tif"],"x-icon":"ico",bmp:"bmp",webp:"webp","x-pict":["pic","pct"],"x-tga":"tga","cis-cod":"cod"},text:{"cache-manifest":["manifest","appcache"],css:"css",csv:"csv",html:["html","htm","shtml","stm"],mathml:"mml",plain:["txt","text","brf","conf","def","list","log","in","bas"],richtext:"rtx","tab-separated-values":"tsv","x-bibtex":"bib"},video:{mpeg:["mpeg","mpg","mpe","m1v","m2v","mp2","mpa","mpv2"],mp4:["mp4","mp4v","mpg4"],quicktime:["qt","mov"],ogg:"ogv","vnd.mpegurl":["mxu","m4u"],"x-flv":"flv","x-la-asf":["lsf","lsx"],"x-mng":"mng","x-ms-asf":["asf","asx","asr"],"x-ms-wm":"wm","x-ms-wmv":"wmv","x-ms-wmx":"wmx","x-ms-wvx":"wvx","x-msvideo":"avi","x-sgi-movie":"movie","x-matroska":["mpv","mkv","mk3d","mks"],"3gpp2":"3g2",h261:"h261",h263:"h263",h264:"h264",jpeg:"jpgv",jpm:["jpm","jpgm"],mj2:["mj2","mjp2"],"vnd.ms-playready.media.pyv":"pyv","vnd.uvvu.mp4":["uvu","uvvu"],"vnd.vivo":"viv",webm:"webm","x-f4v":"f4v","x-m4v":"m4v","x-ms-vob":"vob","x-smv":"smv"}},_=function(){var t,e,i,n,s={};for(t in N)if(N.hasOwnProperty(t))for(e in N[t])if(N[t].hasOwnProperty(e))if("string"==typeof(i=N[t][e]))s[i]=t+"/"+e;else for(n=0;nObject(r.blob2base64)(t))).then((t=>Object(r.createBase64Url)(t,i))):this.settings.request(t,"blob").then((t=>Object(r.createBlobUrl)(t,i)))}replacements(){if("none"===this.settings.replacements)return new Promise(function(t){t(this.urls)}.bind(this));var t=this.urls.map((t=>{var e=this.settings.resolver(t);return this.createUrl(e).catch((t=>(console.error(t),null)))}));return Promise.all(t).then((t=>(this.replacementUrls=t.filter((t=>"string"==typeof t)),t)))}replaceCss(t,e){var i=[];return t=t||this.settings.archive,e=e||this.settings.resolver,this.cssUrls.forEach(function(n){var s=this.createCssFile(n,t,e).then(function(t){var e=this.urls.indexOf(n);e>-1&&(this.replacementUrls[e]=t)}.bind(this));i.push(s)}.bind(this)),Promise.all(i)}createCssFile(t){if(w.a.isAbsolute(t))return new Promise((function(t){t()}));var e,i=this.settings.resolver(t);e=this.settings.archive?this.settings.archive.getText(i):this.settings.request(i,"text");var n=this.urls.map((t=>{var e=this.settings.resolver(t);return new a.a(i).relative(e)}));return e?e.then((t=>(t=Object(c.e)(t,n,this.replacementUrls),"base64"===this.settings.replacements?Object(r.createBase64Url)(t,"text/css"):Object(r.createBlobUrl)(t,"text/css"))),(t=>new Promise((function(t){t()})))):new Promise((function(t){t()}))}relativeTo(t,e){return e=e||this.settings.resolver,this.urls.map(function(i){var n=e(i);return new a.a(t).relative(n)}.bind(this))}get(t){var e=this.urls.indexOf(t);if(-1!==e)return this.replacementUrls.length?new Promise(function(t,i){t(this.replacementUrls[e])}.bind(this)):this.createUrl(t)}substitute(t,e){var i;return i=e?this.relativeTo(e):this.urls,Object(c.e)(t,i,this.replacementUrls)}destroy(){this.settings=void 0,this.manifest=void 0,this.resources=void 0,this.replacementUrls=void 0,this.html=void 0,this.assets=void 0,this.css=void 0,this.urls=void 0,this.cssUrls=void 0}},O=class{constructor(t){this.pages=[],this.locations=[],this.epubcfi=new h.a,this.firstPage=0,this.lastPage=0,this.totalPages=0,this.toc=void 0,this.ncx=void 0,t&&(this.pageList=this.parse(t)),this.pageList&&this.pageList.length&&this.process(this.pageList)}parse(t){var e=Object(r.qs)(t,"html"),i=Object(r.qs)(t,"ncx");return e?this.parseNav(t):i?this.parseNcx(t):void 0}parseNav(t){var e,i,n=Object(r.querySelectorByType)(t,"nav","page-list"),s=n?Object(r.qsa)(n,"li"):[],o=s.length,a=[];if(!s||0===o)return a;for(e=0;e1&&e[1],href:s,packageUrl:i,page:a}):{href:s,page:a}}process(t){t.forEach((function(t){this.pages.push(t.page),t.cfi&&this.locations.push(t.cfi)}),this),this.firstPage=parseInt(this.pages[0]),this.lastPage=parseInt(this.pages[this.pages.length-1]),this.totalPages=this.lastPage-this.firstPage}pageFromCfi(t){var e=-1;if(0===this.locations.length)return-1;var i=Object(r.indexOfSorted)(t,this.locations,this.epubcfi.compare);return-1!=i?e=this.pages[i]:void 0!==(e=(i=Object(r.locationOf)(t,this.locations,this.epubcfi.compare))-1>=0?this.pages[i-1]:this.pages[0])||(e=-1),e}cfiFromPage(t){var e=-1;"number"!=typeof t&&(t=parseInt(t));var i=this.pages.indexOf(t);return-1!=i&&(e=this.locations[i]),e}pageFromPercentage(t){return Math.round(this.totalPages*t)}percentageFromPage(t){var e=(t-this.firstPage)/this.totalPages;return Math.round(1e3*e)/1e3}percentageFromCfi(t){var e=this.pageFromCfi(t);return this.percentageFromPage(e)}destroy(){this.pages=void 0,this.locations=void 0,this.epubcfi=void 0,this.pageList=void 0,this.toc=void 0,this.ncx=void 0}},I=i(16),R=i(29),k=i.n(R),A=class{constructor(){this.zip=void 0,this.urlCache={},this.checkRequirements()}checkRequirements(){try{this.zip=new k.a}catch(t){throw new Error("JSZip lib not loaded")}}open(t,e){return this.zip.loadAsync(t,{base64:e})}openUrl(t,e){return u(t,"binary").then(function(t){return this.zip.loadAsync(t,{base64:e})}.bind(this))}request(t,e){var i,n=new r.defer,s=new a.a(t);return e||(e=s.extension),(i="blob"==e?this.getBlob(t):this.getText(t))?i.then(function(t){let i=this.handleResponse(t,e);n.resolve(i)}.bind(this)):n.reject({message:"File not found in the epub: "+t,stack:(new Error).stack}),n.promise}handleResponse(t,e){return"json"==e?JSON.parse(t):Object(r.isXml)(e)?Object(r.parse)(t,"text/xml"):"xhtml"==e?Object(r.parse)(t,"application/xhtml+xml"):"html"==e||"htm"==e?Object(r.parse)(t,"text/html"):t}getBlob(t,e){var i=window.decodeURIComponent(t.substr(1)),n=this.zip.file(i);if(n)return e=e||T(n.name),n.async("uint8array").then((function(t){return new Blob([t],{type:e})}))}getText(t,e){var i=window.decodeURIComponent(t.substr(1)),n=this.zip.file(i);if(n)return n.async("string").then((function(t){return t}))}getBase64(t,e){var i=window.decodeURIComponent(t.substr(1)),n=this.zip.file(i);if(n)return e=e||T(n.name),n.async("base64").then((function(t){return"data:"+e+";base64,"+t}))}createUrl(t,e){var i,n,s=new r.defer,o=window.URL||window.webkitURL||window.mozURL,a=e&&e.base64;return t in this.urlCache?(s.resolve(this.urlCache[t]),s.promise):(a?(n=this.getBase64(t))&&n.then(function(e){this.urlCache[t]=e,s.resolve(e)}.bind(this)):(n=this.getBlob(t))&&n.then(function(e){i=o.createObjectURL(e),this.urlCache[t]=i,s.resolve(i)}.bind(this)),n||s.reject({message:"File not found in the epub: "+t,stack:(new Error).stack}),s.promise)}revokeUrl(t){var e=window.URL||window.webkitURL||window.mozURL,i=this.urlCache[t];i&&e.revokeObjectURL(i)}destroy(){var t=window.URL||window.webkitURL||window.mozURL;for(let e in this.urlCache)t.revokeObjectURL(e);this.zip=void 0,this.urlCache={}}},L=i(23),j=i.n(L);class D{constructor(t,e,i){this.urlCache={},this.storage=void 0,this.name=t,this.requester=e||u,this.resolver=i,this.online=!0,this.checkRequirements(),this.addListeners()}checkRequirements(){try{let t;void 0===j.a&&(t=j.a),this.storage=t.createInstance({name:this.name})}catch(t){throw new Error("localForage lib not loaded")}}addListeners(){this._status=this.status.bind(this),window.addEventListener("online",this._status),window.addEventListener("offline",this._status)}removeListeners(){window.removeEventListener("online",this._status),window.removeEventListener("offline",this._status),this._status=void 0}status(t){let e=navigator.onLine;this.online=e,e?this.emit("online",this):this.emit("offline",this)}add(t,e){let i=t.resources.map((t=>{let{href:i}=t,n=this.resolver(i),s=window.encodeURIComponent(n);return this.storage.getItem(s).then((t=>!t||e?this.requester(n,"binary").then((t=>this.storage.setItem(s,t))):t))}));return Promise.all(i)}put(t,e,i){let n=window.encodeURIComponent(t);return this.storage.getItem(n).then((s=>s||this.requester(t,"binary",e,i).then((t=>this.storage.setItem(n,t)))))}request(t,e,i,n){return this.online?this.requester(t,e,i,n).then((e=>(this.put(t),e))):this.retrieve(t,e)}retrieve(t,e){new r.defer;var i=new a.a(t);return e||(e=i.extension),("blob"==e?this.getBlob(t):this.getText(t)).then((i=>{var n,s=new r.defer;return i?(n=this.handleResponse(i,e),s.resolve(n)):s.reject({message:"File not found in storage: "+t,stack:(new Error).stack}),s.promise}))}handleResponse(t,e){return"json"==e?JSON.parse(t):Object(r.isXml)(e)?Object(r.parse)(t,"text/xml"):"xhtml"==e?Object(r.parse)(t,"application/xhtml+xml"):"html"==e||"htm"==e?Object(r.parse)(t,"text/html"):t}getBlob(t,e){let i=window.encodeURIComponent(t);return this.storage.getItem(i).then((function(i){if(i)return e=e||T(t),new Blob([i],{type:e})}))}getText(t,e){let i=window.encodeURIComponent(t);return e=e||T(t),this.storage.getItem(i).then((function(t){var i,n=new r.defer,s=new FileReader;if(t)return i=new Blob([t],{type:e}),s.addEventListener("loadend",(()=>{n.resolve(s.result)})),s.readAsText(i,e),n.promise}))}getBase64(t,e){let i=window.encodeURIComponent(t);return e=e||T(t),this.storage.getItem(i).then((t=>{var i,n=new r.defer,s=new FileReader;if(t)return i=new Blob([t],{type:e}),s.addEventListener("loadend",(()=>{n.resolve(s.result)})),s.readAsDataURL(i,e),n.promise}))}createUrl(t,e){var i,n,s=new r.defer,o=window.URL||window.webkitURL||window.mozURL,a=e&&e.base64;return t in this.urlCache?(s.resolve(this.urlCache[t]),s.promise):(a?(n=this.getBase64(t))&&n.then(function(e){this.urlCache[t]=e,s.resolve(e)}.bind(this)):(n=this.getBlob(t))&&n.then(function(e){i=o.createObjectURL(e),this.urlCache[t]=i,s.resolve(i)}.bind(this)),n||s.reject({message:"File not found in storage: "+t,stack:(new Error).stack}),s.promise)}revokeUrl(t){var e=window.URL||window.webkitURL||window.mozURL,i=this.urlCache[t];i&&e.revokeObjectURL(i)}destroy(){var t=window.URL||window.webkitURL||window.mozURL;for(let e in this.urlCache)t.revokeObjectURL(e);this.urlCache={},this.removeListeners()}}s()(D.prototype);var P=D,M=class{constructor(t){this.interactive="",this.fixedLayout="",this.openToSpread="",this.orientationLock="",t&&this.parse(t)}parse(t){if(!t)return this;const e=Object(r.qs)(t,"display_options");return e?(Object(r.qsa)(e,"option").forEach((t=>{let e="";switch(t.childNodes.length&&(e=t.childNodes[0].nodeValue),t.attributes.name.value){case"interactive":this.interactive=e;break;case"fixed-layout":this.fixedLayout=e;break;case"open-to-spread":this.openToSpread=e;break;case"orientation-lock":this.orientationLock=e}})),this):this}destroy(){this.interactive=void 0,this.fixedLayout=void 0,this.openToSpread=void 0,this.orientationLock=void 0}};const z="binary",B="base64",q="epub",F="json";class U{constructor(t,e){void 0===e&&"string"!=typeof t&&t instanceof Blob==0&&t instanceof ArrayBuffer==0&&(e=t,t=void 0),this.settings=Object(r.extend)(this.settings||{},{requestMethod:void 0,requestCredentials:void 0,requestHeaders:void 0,encoding:void 0,replacements:void 0,canonical:void 0,openAs:void 0,store:void 0}),Object(r.extend)(this.settings,e),this.opening=new r.defer,this.opened=this.opening.promise,this.isOpen=!1,this.loading={manifest:new r.defer,spine:new r.defer,metadata:new r.defer,cover:new r.defer,navigation:new r.defer,pageList:new r.defer,resources:new r.defer,displayOptions:new r.defer},this.loaded={manifest:this.loading.manifest.promise,spine:this.loading.spine.promise,metadata:this.loading.metadata.promise,cover:this.loading.cover.promise,navigation:this.loading.navigation.promise,pageList:this.loading.pageList.promise,resources:this.loading.resources.promise,displayOptions:this.loading.displayOptions.promise},this.ready=Promise.all([this.loaded.manifest,this.loaded.spine,this.loaded.metadata,this.loaded.cover,this.loaded.navigation,this.loaded.resources,this.loaded.displayOptions]),this.isRendered=!1,this.request=this.settings.requestMethod||u,this.spine=new p,this.locations=new y(this.spine,this.load.bind(this)),this.navigation=void 0,this.pageList=void 0,this.url=void 0,this.path=void 0,this.archived=!1,this.archive=void 0,this.storage=void 0,this.resources=void 0,this.rendition=void 0,this.container=void 0,this.packaging=void 0,this.displayOptions=void 0,this.settings.store&&this.store(this.settings.store),t&&this.open(t,this.settings.openAs).catch((e=>{var i=new Error("Cannot load book at "+t);this.emit(m.c.BOOK.OPEN_FAILED,i)}))}open(t,e){var i,n=e||this.determineType(t);return n===z?(this.archived=!0,this.url=new o.a("/",""),i=this.openEpub(t)):n===B?(this.archived=!0,this.url=new o.a("/",""),i=this.openEpub(t,n)):n===q?(this.archived=!0,this.url=new o.a("/",""),i=this.request(t,"binary",this.settings.requestCredentials,this.settings.requestHeaders).then(this.openEpub.bind(this))):"opf"==n?(this.url=new o.a(t),i=this.openPackaging(this.url.Path.toString())):n==F?(this.url=new o.a(t),i=this.openManifest(this.url.Path.toString())):(this.url=new o.a(t),i=this.openContainer("META-INF/container.xml").then(this.openPackaging.bind(this))),i}openEpub(t,e){return this.unarchive(t,e||this.settings.encoding).then((()=>this.openContainer("META-INF/container.xml"))).then((t=>this.openPackaging(t)))}openContainer(t){return this.load(t).then((t=>(this.container=new x(t),this.resolve(this.container.packagePath))))}openPackaging(t){return this.path=new a.a(t),this.load(t).then((t=>(this.packaging=new E(t),this.unpack(this.packaging))))}openManifest(t){return this.path=new a.a(t),this.load(t).then((t=>(this.packaging=new E,this.packaging.load(t),this.unpack(this.packaging))))}load(t){var e=this.resolve(t);return this.archived?this.archive.request(e):this.request(e,null,this.settings.requestCredentials,this.settings.requestHeaders)}resolve(t,e){if(t){var i=t;return t.indexOf("://")>-1?t:(this.path&&(i=this.path.resolve(t)),0!=e&&this.url&&(i=this.url.resolve(i)),i)}}canonical(t){return t?this.settings.canonical?this.settings.canonical(t):this.resolve(t,!0):""}determineType(t){var e;return"base64"===this.settings.encoding?B:"string"!=typeof t?z:((e=new o.a(t).path().extension)&&(e=e.replace(/\?.*$/,"")),e?"epub"===e?q:"opf"===e?"opf":"json"===e?F:void 0:"directory")}unpack(t){this.package=t,""===this.packaging.metadata.layout?this.load(this.url.resolve("META-INF/com.apple.ibooks.display-options.xml")).then((t=>{this.displayOptions=new M(t),this.loading.displayOptions.resolve(this.displayOptions)})).catch((t=>{this.displayOptions=new M,this.loading.displayOptions.resolve(this.displayOptions)})):(this.displayOptions=new M,this.loading.displayOptions.resolve(this.displayOptions)),this.spine.unpack(this.packaging,this.resolve.bind(this),this.canonical.bind(this)),this.resources=new C(this.packaging.manifest,{archive:this.archive,resolver:this.resolve.bind(this),request:this.request.bind(this),replacements:this.settings.replacements||(this.archived?"blobUrl":"base64")}),this.loadNavigation(this.packaging).then((()=>{this.loading.navigation.resolve(this.navigation)})),this.packaging.coverPath&&(this.cover=this.resolve(this.packaging.coverPath)),this.loading.manifest.resolve(this.packaging.manifest),this.loading.metadata.resolve(this.packaging.metadata),this.loading.spine.resolve(this.spine),this.loading.cover.resolve(this.cover),this.loading.resources.resolve(this.resources),this.loading.pageList.resolve(this.pageList),this.isOpen=!0,this.archived||this.settings.replacements&&"none"!=this.settings.replacements?this.replacements().then((()=>{this.loaded.displayOptions.then((()=>{this.opening.resolve(this)}))})).catch((t=>{console.error(t)})):this.loaded.displayOptions.then((()=>{this.opening.resolve(this)}))}loadNavigation(t){let e=t.navPath||t.ncxPath,i=t.toc;return i?new Promise(((e,n)=>{this.navigation=new S(i),t.pageList&&(this.pageList=new O(t.pageList)),e(this.navigation)})):e?this.load(e,"xml").then((t=>(this.navigation=new S(t),this.pageList=new O(t),this.navigation))):new Promise(((t,e)=>{this.navigation=new S,this.pageList=new O,t(this.navigation)}))}section(t){return this.spine.get(t)}renderTo(t,e){return this.rendition=new I.a(this,e),this.rendition.attachTo(t),this.rendition}setRequestCredentials(t){this.settings.requestCredentials=t}setRequestHeaders(t){this.settings.requestHeaders=t}unarchive(t,e){return this.archive=new A,this.archive.open(t,e)}store(t){let e=this.settings.replacements&&"none"!==this.settings.replacements,i=this.url,n=this.settings.requestMethod||u.bind(this);return this.storage=new P(t,n,this.resolve.bind(this)),this.request=this.storage.request.bind(this.storage),this.opened.then((()=>{this.archived&&(this.storage.requester=this.archive.request.bind(this.archive));let t=(t,e)=>{e.output=this.resources.substitute(t,e.url)};this.resources.settings.replacements=e||"blobUrl",this.resources.replacements().then((()=>this.resources.replaceCss())),this.storage.on("offline",(()=>{this.url=new o.a("/",""),this.spine.hooks.serialize.register(t)})),this.storage.on("online",(()=>{this.url=i,this.spine.hooks.serialize.deregister(t)}))})),this.storage}coverUrl(){return this.loaded.cover.then((()=>this.cover?this.archived?this.archive.createUrl(this.cover):this.cover:null))}replacements(){return this.spine.hooks.serialize.register(((t,e)=>{e.output=this.resources.substitute(t,e.url)})),this.resources.replacements().then((()=>this.resources.replaceCss()))}getRange(t){var e=new h.a(t),i=this.spine.get(e.spinePos),n=this.load.bind(this);return i?i.load(n).then((function(t){return e.toRange(i.document)})):new Promise(((t,e)=>{e("CFI could not be found")}))}key(t){var e=t||this.packaging.metadata.identifier||this.url.filename;return`epubjs:${m.b}:${e}`}destroy(){this.opened=void 0,this.loading=void 0,this.loaded=void 0,this.ready=void 0,this.isOpen=!1,this.isRendered=!1,this.spine&&this.spine.destroy(),this.locations&&this.locations.destroy(),this.pageList&&this.pageList.destroy(),this.archive&&this.archive.destroy(),this.resources&&this.resources.destroy(),this.container&&this.container.destroy(),this.packaging&&this.packaging.destroy(),this.rendition&&this.rendition.destroy(),this.displayOptions&&this.displayOptions.destroy(),this.spine=void 0,this.locations=void 0,this.pageList=void 0,this.archive=void 0,this.resources=void 0,this.container=void 0,this.packaging=void 0,this.rendition=void 0,this.navigation=void 0,this.url=void 0,this.path=void 0,this.archived=!1}}s()(U.prototype),e.a=U},function(t,e,i){var n=i(14).NAMESPACE;function s(t){return""!==t}function r(t,e){return t.hasOwnProperty(e)||(t[e]=!0),t}function o(t){if(!t)return[];var e=function(t){return t?t.split(/[\t\n\f\r ]+/).filter(s):[]}(t);return Object.keys(e.reduce(r,{}))}function a(t,e){for(var i in t)e[i]=t[i]}function h(t,e){var i=t.prototype;if(!(i instanceof e)){function n(){}n.prototype=e.prototype,a(i,n=new n),t.prototype=i=n}i.constructor!=t&&("function"!=typeof t&&console.error("unknown Class:"+t),i.constructor=t)}var l={},c=l.ELEMENT_NODE=1,u=l.ATTRIBUTE_NODE=2,d=l.TEXT_NODE=3,f=l.CDATA_SECTION_NODE=4,p=l.ENTITY_REFERENCE_NODE=5,g=l.ENTITY_NODE=6,m=l.PROCESSING_INSTRUCTION_NODE=7,v=l.COMMENT_NODE=8,y=l.DOCUMENT_NODE=9,b=l.DOCUMENT_TYPE_NODE=10,w=l.DOCUMENT_FRAGMENT_NODE=11,x=l.NOTATION_NODE=12,E={},S={},N=(E.INDEX_SIZE_ERR=(S[1]="Index size error",1),E.DOMSTRING_SIZE_ERR=(S[2]="DOMString size error",2),E.HIERARCHY_REQUEST_ERR=(S[3]="Hierarchy request error",3)),_=(E.WRONG_DOCUMENT_ERR=(S[4]="Wrong document",4),E.INVALID_CHARACTER_ERR=(S[5]="Invalid character",5),E.NO_DATA_ALLOWED_ERR=(S[6]="No data allowed",6),E.NO_MODIFICATION_ALLOWED_ERR=(S[7]="No modification allowed",7),E.NOT_FOUND_ERR=(S[8]="Not found",8)),T=(E.NOT_SUPPORTED_ERR=(S[9]="Not supported",9),E.INUSE_ATTRIBUTE_ERR=(S[10]="Attribute in use",10));function C(t,e){if(e instanceof Error)var i=e;else i=this,Error.call(this,S[t]),this.message=S[t],Error.captureStackTrace&&Error.captureStackTrace(this,C);return i.code=t,e&&(this.message=this.message+": "+e),i}function O(){}function I(t,e){this._node=t,this._refresh=e,R(this)}function R(t){var e=t._node._inc||t._node.ownerDocument._inc;if(t._inc!=e){var i=t._refresh(t._node);at(t,"length",i.length),a(i,t),t._inc=e}}function k(){}function A(t,e){for(var i=t.length;i--;)if(t[i]===e)return i}function L(t,e,i,s){if(s?e[A(e,s)]=i:e[e.length++]=i,t){i.ownerElement=t;var r=t.ownerDocument;r&&(s&&q(r,t,s),function(t,e,i){t&&t._inc++,i.namespaceURI===n.XMLNS&&(e._nsMap[i.prefix?i.localName:""]=i.value)}(r,t,i))}}function j(t,e,i){var n=A(e,i);if(!(n>=0))throw C(_,new Error(t.tagName+"@"+i));for(var s=e.length-1;n"==t&&">")||"&"==t&&"&"||'"'==t&&"""||"&#"+t.charCodeAt()+";"}function z(t,e){if(e(t))return!0;if(t=t.firstChild)do{if(z(t,e))return!0}while(t=t.nextSibling)}function B(){}function q(t,e,i,s){t&&t._inc++,i.namespaceURI===n.XMLNS&&delete e._nsMap[i.prefix?i.localName:""]}function F(t,e,i){if(t&&t._inc){t._inc++;var n=e.childNodes;if(i)n[n.length++]=i;else{for(var s=e.firstChild,r=0;s;)n[r++]=s,s=s.nextSibling;n.length=r}}}function U(t,e){var i=e.previousSibling,n=e.nextSibling;return i?i.nextSibling=n:t.firstChild=n,n?n.previousSibling=i:t.lastChild=i,F(t.ownerDocument,t),e}function W(t,e,i){var n=e.parentNode;if(n&&n.removeChild(e),e.nodeType===w){var s=e.firstChild;if(null==s)return e;var r=e.lastChild}else s=r=e;var o=i?i.previousSibling:t.lastChild;s.previousSibling=o,r.nextSibling=i,o?o.nextSibling=s:t.firstChild=s,null==i?t.lastChild=r:i.previousSibling=r;do{s.parentNode=t}while(s!==r&&(s=s.nextSibling));return F(t.ownerDocument||t,t),e.nodeType==w&&(e.firstChild=e.lastChild=null),e}function H(){this._nsMap={}}function V(){}function X(){}function G(){}function Y(){}function $(){}function K(){}function Z(){}function J(){}function Q(){}function tt(){}function et(){}function it(){}function nt(t,e){var i=[],n=9==this.nodeType&&this.documentElement||this,s=n.prefix,r=n.namespaceURI;if(r&&null==s&&null==(s=n.lookupPrefix(r)))var o=[{namespace:r,prefix:null}];return ot(this,i,t,e,o),i.join("")}function st(t,e,i){var s=t.prefix||"",r=t.namespaceURI;if(!r)return!1;if("xml"===s&&r===n.XML||r===n.XMLNS)return!1;for(var o=i.length;o--;){var a=i[o];if(a.prefix===s)return a.namespace!==r}return!0}function rt(t,e,i){t.push(" ",e,'="',i.replace(/[<&"]/g,M),'"')}function ot(t,e,i,s,r){if(r||(r=[]),s){if(!(t=s(t)))return;if("string"==typeof t)return void e.push(t)}switch(t.nodeType){case c:var o=t.attributes,a=o.length,h=t.firstChild,l=t.tagName,g=l;if(!(i=n.isHTML(t.namespaceURI)||i)&&!t.prefix&&t.namespaceURI){for(var x,E=0;E=0;S--)if(""===(N=r[S]).prefix&&N.namespace===t.namespaceURI){x=N.namespace;break}if(x!==t.namespaceURI)for(S=r.length-1;S>=0;S--){var N;if((N=r[S]).namespace===t.namespaceURI){N.prefix&&(g=N.prefix+":"+l);break}}}e.push("<",g);for(var _=0;_"),i&&/^script$/i.test(l))for(;h;)h.data?e.push(h.data):ot(h,e,i,s,r.slice()),h=h.nextSibling;else for(;h;)ot(h,e,i,s,r.slice()),h=h.nextSibling;e.push("")}else e.push("/>");return;case y:case w:for(h=t.firstChild;h;)ot(h,e,i,s,r.slice()),h=h.nextSibling;return;case u:return rt(e,t.name,t.value);case d:return e.push(t.data.replace(/[<&]/g,M).replace(/]]>/g,"]]>"));case f:return e.push("");case v:return e.push("\x3c!--",t.data,"--\x3e");case b:var I=t.publicId,R=t.systemId;if(e.push("");else if(R&&"."!=R)e.push(" SYSTEM ",R,">");else{var k=t.internalSubset;k&&e.push(" [",k,"]"),e.push(">")}return;case m:return e.push("");case p:return e.push("&",t.nodeName,";");default:e.push("??",t.nodeName)}}function at(t,e,i){t[e]=i}E.INVALID_STATE_ERR=(S[11]="Invalid state",11),E.SYNTAX_ERR=(S[12]="Syntax error",12),E.INVALID_MODIFICATION_ERR=(S[13]="Invalid modification",13),E.NAMESPACE_ERR=(S[14]="Invalid namespace",14),E.INVALID_ACCESS_ERR=(S[15]="Invalid access",15),C.prototype=Error.prototype,a(E,C),O.prototype={length:0,item:function(t){return this[t]||null},toString:function(t,e){for(var i=[],n=0;n0},lookupPrefix:function(t){for(var e=this;e;){var i=e._nsMap;if(i)for(var n in i)if(i[n]==t)return n;e=e.nodeType==u?e.ownerDocument:e.parentNode}return null},lookupNamespaceURI:function(t){for(var e=this;e;){var i=e._nsMap;if(i&&t in i)return i[t];e=e.nodeType==u?e.ownerDocument:e.parentNode}return null},isDefaultNamespace:function(t){return null==this.lookupPrefix(t)}},a(l,P),a(l,P.prototype),B.prototype={nodeName:"#document",nodeType:y,doctype:null,documentElement:null,_inc:1,insertBefore:function(t,e){if(t.nodeType==w){for(var i=t.firstChild;i;){var n=i.nextSibling;this.insertBefore(i,e),i=n}return t}return null==this.documentElement&&t.nodeType==c&&(this.documentElement=t),W(this,t,e),t.ownerDocument=this,t},removeChild:function(t){return this.documentElement==t&&(this.documentElement=null),U(this,t)},importNode:function(t,e){return function t(e,i,n){var s;switch(i.nodeType){case c:(s=i.cloneNode(!1)).ownerDocument=e;case w:break;case u:n=!0}if(s||(s=i.cloneNode(!1)),s.ownerDocument=e,s.parentNode=null,n)for(var r=i.firstChild;r;)s.appendChild(t(e,r,n)),r=r.nextSibling;return s}(this,t,e)},getElementById:function(t){var e=null;return z(this.documentElement,(function(i){if(i.nodeType==c&&i.getAttribute("id")==t)return e=i,!0})),e},getElementsByClassName:function(t){var e=o(t);return new I(this,(function(i){var n=[];return e.length>0&&z(i.documentElement,(function(s){if(s!==i&&s.nodeType===c){var r=s.getAttribute("class");if(r){var a=t===r;if(!a){var h=o(r);a=e.every((l=h,function(t){return l&&-1!==l.indexOf(t)}))}a&&n.push(s)}}var l})),n}))},createElement:function(t){var e=new H;return e.ownerDocument=this,e.nodeName=t,e.tagName=t,e.localName=t,e.childNodes=new O,(e.attributes=new k)._ownerElement=e,e},createDocumentFragment:function(){var t=new tt;return t.ownerDocument=this,t.childNodes=new O,t},createTextNode:function(t){var e=new G;return e.ownerDocument=this,e.appendData(t),e},createComment:function(t){var e=new Y;return e.ownerDocument=this,e.appendData(t),e},createCDATASection:function(t){var e=new $;return e.ownerDocument=this,e.appendData(t),e},createProcessingInstruction:function(t,e){var i=new et;return i.ownerDocument=this,i.tagName=i.target=t,i.nodeValue=i.data=e,i},createAttribute:function(t){var e=new V;return e.ownerDocument=this,e.name=t,e.nodeName=t,e.localName=t,e.specified=!0,e},createEntityReference:function(t){var e=new Q;return e.ownerDocument=this,e.nodeName=t,e},createElementNS:function(t,e){var i=new H,n=e.split(":"),s=i.attributes=new k;return i.childNodes=new O,i.ownerDocument=this,i.nodeName=e,i.tagName=e,i.namespaceURI=t,2==n.length?(i.prefix=n[0],i.localName=n[1]):i.localName=e,s._ownerElement=i,i},createAttributeNS:function(t,e){var i=new V,n=e.split(":");return i.ownerDocument=this,i.nodeName=e,i.name=e,i.namespaceURI=t,i.specified=!0,2==n.length?(i.prefix=n[0],i.localName=n[1]):i.localName=e,i}},h(B,P),H.prototype={nodeType:c,hasAttribute:function(t){return null!=this.getAttributeNode(t)},getAttribute:function(t){var e=this.getAttributeNode(t);return e&&e.value||""},getAttributeNode:function(t){return this.attributes.getNamedItem(t)},setAttribute:function(t,e){var i=this.ownerDocument.createAttribute(t);i.value=i.nodeValue=""+e,this.setAttributeNode(i)},removeAttribute:function(t){var e=this.getAttributeNode(t);e&&this.removeAttributeNode(e)},appendChild:function(t){return t.nodeType===w?this.insertBefore(t,null):function(t,e){var i=e.parentNode;if(i){var n=t.lastChild;i.removeChild(e),n=t.lastChild}return n=t.lastChild,e.parentNode=t,e.previousSibling=n,e.nextSibling=null,n?n.nextSibling=e:t.firstChild=e,t.lastChild=e,F(t.ownerDocument,t,e),e}(this,t)},setAttributeNode:function(t){return this.attributes.setNamedItem(t)},setAttributeNodeNS:function(t){return this.attributes.setNamedItemNS(t)},removeAttributeNode:function(t){return this.attributes.removeNamedItem(t.nodeName)},removeAttributeNS:function(t,e){var i=this.getAttributeNodeNS(t,e);i&&this.removeAttributeNode(i)},hasAttributeNS:function(t,e){return null!=this.getAttributeNodeNS(t,e)},getAttributeNS:function(t,e){var i=this.getAttributeNodeNS(t,e);return i&&i.value||""},setAttributeNS:function(t,e,i){var n=this.ownerDocument.createAttributeNS(t,e);n.value=n.nodeValue=""+i,this.setAttributeNode(n)},getAttributeNodeNS:function(t,e){return this.attributes.getNamedItemNS(t,e)},getElementsByTagName:function(t){return new I(this,(function(e){var i=[];return z(e,(function(n){n===e||n.nodeType!=c||"*"!==t&&n.tagName!=t||i.push(n)})),i}))},getElementsByTagNameNS:function(t,e){return new I(this,(function(i){var n=[];return z(i,(function(s){s===i||s.nodeType!==c||"*"!==t&&s.namespaceURI!==t||"*"!==e&&s.localName!=e||n.push(s)})),n}))}},B.prototype.getElementsByTagName=H.prototype.getElementsByTagName,B.prototype.getElementsByTagNameNS=H.prototype.getElementsByTagNameNS,h(H,P),V.prototype.nodeType=u,h(V,P),X.prototype={data:"",substringData:function(t,e){return this.data.substring(t,t+e)},appendData:function(t){t=this.data+t,this.nodeValue=this.data=t,this.length=t.length},insertData:function(t,e){this.replaceData(t,0,e)},appendChild:function(t){throw new Error(S[N])},deleteData:function(t,e){this.replaceData(t,e,"")},replaceData:function(t,e,i){i=this.data.substring(0,t)+i+this.data.substring(t+e),this.nodeValue=this.data=i,this.length=i.length}},h(X,P),G.prototype={nodeName:"#text",nodeType:d,splitText:function(t){var e=this.data,i=e.substring(t);e=e.substring(0,t),this.data=this.nodeValue=e,this.length=e.length;var n=this.ownerDocument.createTextNode(i);return this.parentNode&&this.parentNode.insertBefore(n,this.nextSibling),n}},h(G,X),Y.prototype={nodeName:"#comment",nodeType:v},h(Y,X),$.prototype={nodeName:"#cdata-section",nodeType:f},h($,X),K.prototype.nodeType=b,h(K,P),Z.prototype.nodeType=x,h(Z,P),J.prototype.nodeType=g,h(J,P),Q.prototype.nodeType=p,h(Q,P),tt.prototype.nodeName="#document-fragment",tt.prototype.nodeType=w,h(tt,P),et.prototype.nodeType=m,h(et,P),it.prototype.serializeToString=function(t,e,i){return nt.call(t,e,i)},P.prototype.toString=nt;try{Object.defineProperty&&(Object.defineProperty(I.prototype,"length",{get:function(){return R(this),this.$$length}}),Object.defineProperty(P.prototype,"textContent",{get:function(){return function t(e){switch(e.nodeType){case c:case w:var i=[];for(e=e.firstChild;e;)7!==e.nodeType&&8!==e.nodeType&&i.push(t(e)),e=e.nextSibling;return i.join("");default:return e.nodeValue}}(this)},set:function(t){switch(this.nodeType){case c:case w:for(;this.firstChild;)this.removeChild(this.firstChild);(t||String(t))&&this.appendChild(this.ownerDocument.createTextNode(t));break;default:this.data=t,this.value=t,this.nodeValue=t}}}),at=function(t,e,i){t["$$"+e]=i})}catch(t){}e.DocumentType=K,e.DOMException=C,e.DOMImplementation=D,e.Element=H,e.Node=P,e.NodeList=O,e.XMLSerializer=it},function(t,e,i){var n=i(52),s="object"==typeof self&&self&&self.Object===Object&&self,r=n||s||Function("return this")();t.exports=r},function(t,e,i){var n=i(26).Symbol;t.exports=n},function(t,e,i){var n=i(21),s=i(19);t.exports=function(t,e,i){var r=!0,o=!0;if("function"!=typeof t)throw new TypeError("Expected a function");return s(i)&&(r="leading"in i?!!i.leading:r,o="trailing"in i?!!i.trailing:o),n(t,e,{leading:r,maxWait:e,trailing:o})}},function(e,i){e.exports=t},function(t,e,i){"use strict";i.r(e),function(t){var n=i(24),s=i(16),r=i(2),o=i(12),a=i(0),h=i(1);function l(t,e){return new n.a(t,e)}i(20),i(10),i(22),l.VERSION=h.b,void 0!==t&&(t.EPUBJS_VERSION=h.b),l.Book=n.a,l.Rendition=s.a,l.Contents=o.a,l.CFI=r.a,l.utils=a,e.default=l}.call(this,i(17))},function(t,e,i){"use strict";var n=i(32),s=i(40),r=i(41),o=i(42);(t.exports=function(t,e){var i,r,a,h,l;return arguments.length<2||"string"!=typeof t?(h=e,e=t,t=null):h=arguments[2],null==t?(i=a=!0,r=!1):(i=o.call(t,"c"),r=o.call(t,"e"),a=o.call(t,"w")),l={value:e,configurable:i,enumerable:r,writable:a},h?n(s(h),l):l}).gs=function(t,e,i){var a,h,l,c;return"string"!=typeof t?(l=i,i=e,e=t,t=null):l=arguments[3],null==e?e=void 0:r(e)?null==i?i=void 0:r(i)||(l=i,i=void 0):(l=e,e=i=void 0),null==t?(a=!0,h=!1):(a=o.call(t,"c"),h=o.call(t,"e")),c={get:e,set:i,configurable:a,enumerable:h},l?n(s(l),c):c}},function(t,e,i){"use strict";t.exports=i(33)()?Object.assign:i(34)},function(t,e,i){"use strict";t.exports=function(){var t,e=Object.assign;return"function"==typeof e&&(e(t={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),t.foo+t.bar+t.trzy==="razdwatrzy")}},function(t,e,i){"use strict";var n=i(35),s=i(39),r=Math.max;t.exports=function(t,e){var i,o,a,h=r(arguments.length,2);for(t=Object(s(t)),a=function(n){try{t[n]=e[n]}catch(t){i||(i=t)}},o=1;o-1}},function(t,e,i){"use strict";t.exports=function(t){if("function"!=typeof t)throw new TypeError(t+" is not a function");return t}},function(t,e,i){var n=i(14),s=i(25),r=i(47),o=i(48),a=s.DOMImplementation,h=n.NAMESPACE,l=o.ParseError,c=o.XMLReader;function u(t){this.options=t||{locator:{}}}function d(){this.cdata=!1}function f(t,e){e.lineNumber=t.lineNumber,e.columnNumber=t.columnNumber}function p(t){if(t)return"\n@"+(t.systemId||"")+"#[line:"+t.lineNumber+",col:"+t.columnNumber+"]"}function g(t,e,i){return"string"==typeof t?t.substr(e,i):t.length>=e+i||e?new java.lang.String(t,e,i)+"":t}function m(t,e){t.currentElement?t.currentElement.appendChild(e):t.doc.appendChild(e)}u.prototype.parseFromString=function(t,e){var i=this.options,n=new c,s=i.domBuilder||new d,o=i.errorHandler,a=i.locator,l=i.xmlns||{},u=/\/x?html?$/.test(e),f=u?r.HTML_ENTITIES:r.XML_ENTITIES;return a&&s.setDocumentLocator(a),n.errorHandler=function(t,e,i){if(!t){if(e instanceof d)return e;t=e}var n={},s=t instanceof Function;function r(e){var r=t[e];!r&&s&&(r=2==t.length?function(i){t(e,i)}:t),n[e]=r&&function(t){r("[xmldom "+e+"]\t"+t+p(i))}||function(){}}return i=i||{},r("warning"),r("error"),r("fatalError"),n}(o,s,a),n.domBuilder=i.domBuilder||s,u&&(l[""]=h.HTML),l.xml=l.xml||h.XML,t&&"string"==typeof t?n.parse(t,l,f):n.errorHandler.error("invalid doc source"),s.doc},d.prototype={startDocument:function(){this.doc=(new a).createDocument(null,null,null),this.locator&&(this.doc.documentURI=this.locator.systemId)},startElement:function(t,e,i,n){var s=this.doc,r=s.createElementNS(t,i||e),o=n.length;m(this,r),this.currentElement=r,this.locator&&f(this.locator,r);for(var a=0;a",lt:"<",quot:'"'}),e.HTML_ENTITIES=n({lt:"<",gt:">",amp:"&",quot:'"',apos:"'",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"­­",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",times:"×",divide:"÷",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",fnof:"ƒ",circ:"ˆ",tilde:"˜",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",bull:"•",hellip:"…",permil:"‰",prime:"′",Prime:"″",lsaquo:"‹",rsaquo:"›",oline:"‾",euro:"€",trade:"™",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦"}),e.entityMap=e.HTML_ENTITIES},function(t,e,i){var n=i(14).NAMESPACE,s=/[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,r=new RegExp("[\\-\\.0-9"+s.source.slice(1,-1)+"\\u00B7\\u0300-\\u036F\\u203F-\\u2040]"),o=new RegExp("^"+s.source+r.source+"*(?::"+s.source+r.source+"*)?$");function a(t,e){this.message=t,this.locator=e,Error.captureStackTrace&&Error.captureStackTrace(this,a)}function h(){}function l(t,e){return e.lineNumber=t.lineNumber,e.columnNumber=t.columnNumber,e}function c(t,e,i,s,r,o){function a(t,e,n){i.attributeNames.hasOwnProperty(t)&&o.fatalError("Attribute "+t+" redefined"),i.addValue(t,e,n)}for(var h,l=++e,c=0;;){var u=t.charAt(l);switch(u){case"=":if(1===c)h=t.slice(e,l),c=3;else{if(2!==c)throw new Error("attribute equal must after attrName");c=3}break;case"'":case'"':if(3===c||1===c){if(1===c&&(o.warning('attribute value must after "="'),h=t.slice(e,l)),e=l+1,!((l=t.indexOf(u,e))>0))throw new Error("attribute value no end '"+u+"' match");a(h,d=t.slice(e,l).replace(/&#?\w+;/g,r),e-1),c=5}else{if(4!=c)throw new Error('attribute value must after "="');a(h,d=t.slice(e,l).replace(/&#?\w+;/g,r),e),o.warning('attribute "'+h+'" missed start quot('+u+")!!"),e=l+1,c=5}break;case"/":switch(c){case 0:i.setTagName(t.slice(e,l));case 5:case 6:case 7:c=7,i.closed=!0;case 4:case 1:case 2:break;default:throw new Error("attribute invalid close char('/')")}break;case"":return o.error("unexpected end of input"),0==c&&i.setTagName(t.slice(e,l)),l;case">":switch(c){case 0:i.setTagName(t.slice(e,l));case 5:case 6:case 7:break;case 4:case 1:"/"===(d=t.slice(e,l)).slice(-1)&&(i.closed=!0,d=d.slice(0,-1));case 2:2===c&&(d=h),4==c?(o.warning('attribute "'+d+'" missed quot(")!'),a(h,d.replace(/&#?\w+;/g,r),e)):(n.isHTML(s[""])&&d.match(/^(?:disabled|checked|selected)$/i)||o.warning('attribute "'+d+'" missed value!! "'+d+'" instead!!'),a(d,d,e));break;case 3:throw new Error("attribute value missed!!")}return l;case"€":u=" ";default:if(u<=" ")switch(c){case 0:i.setTagName(t.slice(e,l)),c=6;break;case 1:h=t.slice(e,l),c=2;break;case 4:var d=t.slice(e,l).replace(/&#?\w+;/g,r);o.warning('attribute "'+d+'" missed quot(")!!'),a(h,d,e);case 5:c=6}else switch(c){case 2:i.tagName,n.isHTML(s[""])&&h.match(/^(?:disabled|checked|selected)$/i)||o.warning('attribute "'+h+'" missed value!! "'+h+'" instead2!!'),a(h,h,e),e=l,c=1;break;case 5:o.warning('attribute space is required"'+h+'"!!');case 6:c=1,e=l;break;case 3:c=4,e=l;break;case 7:throw new Error("elements closed character '/' and '>' must be connected to")}}l++}}function u(t,e,i){for(var s=t.tagName,r=null,o=t.length;o--;){var a=t[o],h=a.qName,l=a.value;if((f=h.indexOf(":"))>0)var c=a.prefix=h.slice(0,f),u=h.slice(f+1),d="xmlns"===c&&u;else u=h,c=null,d="xmlns"===h&&"";a.localName=u,!1!==d&&(null==r&&(r={},p(i,i={})),i[d]=r[d]=l,a.uri=n.XMLNS,e.startPrefixMapping(d,l))}for(o=t.length;o--;)(c=(a=t[o]).prefix)&&("xml"===c&&(a.uri=n.XML),"xmlns"!==c&&(a.uri=i[c||""]));var f;(f=s.indexOf(":"))>0?(c=t.prefix=s.slice(0,f),u=t.localName=s.slice(f+1)):(c=null,u=t.localName=s);var g=t.uri=i[c||""];if(e.startElement(g,u,s,t),!t.closed)return t.currentNSMap=i,t.localNSMap=r,!0;if(e.endElement(g,u,s),r)for(c in r)e.endPrefixMapping(c)}function d(t,e,i,n,s){if(/^(?:script|textarea)$/i.test(i)){var r=t.indexOf("",e),o=t.substring(e+1,r);if(/[&<]/.test(o))return/^script$/i.test(i)?(s.characters(o,0,o.length),r):(o=o.replace(/&#?\w+;/g,n),s.characters(o,0,o.length),r)}return e+1}function f(t,e,i,n){var s=n[i];return null==s&&((s=t.lastIndexOf(""))e?(i.comment(t,e+4,s-e-4),s+3):(n.error("Unclosed comment"),-1):-1;if("CDATA["==t.substr(e+3,6)){var s=t.indexOf("]]>",e+9);return i.startCDATA(),i.characters(t,e+9,s-e-9),i.endCDATA(),s+3}var r=function(t,e){var i,n=[],s=/'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g;for(s.lastIndex=e,s.exec(t);i=s.exec(t);)if(n.push(i),i[1])return n}(t,e),o=r.length;if(o>1&&/!doctype/i.test(r[0][0])){var a=r[1][0],h=!1,l=!1;o>3&&(/^public$/i.test(r[2][0])?(h=r[3][0],l=o>4&&r[4][0]):/^system$/i.test(r[2][0])&&(l=r[3][0]));var c=r[o-1];return i.startDTD(a,h,l),i.endDTD(),c.index+c[0].length}return-1}function m(t,e,i){var n=t.indexOf("?>",e);if(n){var s=t.substring(e,n).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/);return s?(s[0].length,i.processingInstruction(s[1],s[2]),n+2):-1}return-1}function v(){this.attributeNames={}}a.prototype=new Error,a.prototype.name=a.name,h.prototype={parse:function(t,e,i){var s=this.domBuilder;s.startDocument(),p(e,e={}),function(t,e,i,s,r){function o(t){var e=t.slice(1,-1);return e in i?i[e]:"#"===e.charAt(0)?function(t){if(t>65535){var e=55296+((t-=65536)>>10),i=56320+(1023&t);return String.fromCharCode(e,i)}return String.fromCharCode(t)}(parseInt(e.substr(1).replace("x","0x"))):(r.error("entity not found:"+t),t)}function h(e){if(e>N){var i=t.substring(N,e).replace(/&#?\w+;/g,o);x&&p(N),s.characters(i,0,e-N),N=e}}function p(e,i){for(;e>=b&&(i=w.exec(t));)y=i.index,b=y+i[0].length,x.lineNumber++;x.columnNumber=e-y+1}for(var y=0,b=0,w=/.*(?:\r\n?|\n)|.*$/g,x=s.locator,E=[{currentNSMap:e}],S={},N=0;;){try{var _=t.indexOf("<",N);if(_<0){if(!t.substr(N).match(/^\s*$/)){var T=s.doc,C=T.createTextNode(t.substr(N));T.appendChild(C),s.currentElement=C}return}switch(_>N&&h(_),t.charAt(_+1)){case"/":var O=t.indexOf(">",_+3),I=t.substring(_+2,O).replace(/[ \t\n\r]+$/g,""),R=E.pop();O<0?(I=t.substring(_+2).replace(/[\s<].*/,""),r.error("end tag name: "+I+" is not complete:"+R.tagName),O=_+1+I.length):I.match(/\sN?N=O:h(Math.max(_,N)+1)}}(t,e,i,s,this.errorHandler),s.endDocument()}},v.prototype={setTagName:function(t){if(!o.test(t))throw new Error("invalid tagName:"+t);this.tagName=t},addValue:function(t,e,i){if(!o.test(t))throw new Error("invalid attribute:"+t);this.attributeNames[t]=this.length,this[this.length++]={qName:t,value:e,offset:i}},length:0,getLocalName:function(t){return this[t].localName},getLocator:function(t){return this[t].locator},getQName:function(t){return this[t].qName},getURI:function(t){return this[t].uri},getValue:function(t){return this[t].value}},e.XMLReader=h,e.ParseError=a},function(t,e,i){"use strict";function n(t){return document.createElementNS("http://www.w3.org/2000/svg",t)}Object.defineProperty(e,"__esModule",{value:!0}),e.createElement=n,e.default={createElement:n}},function(t,e,i){"use strict";function n(t,e){function i(i){for(var n=e.length-1;n>=0;n--){var o=e[n],a=i.clientX,h=i.clientY;if(i.touches&&i.touches.length&&(a=i.touches[0].clientX,h=i.touches[0].clientY),r(o,t,a,h)){o.dispatchEvent(s(i));break}}}if("iframe"===t.nodeName||"IFRAME"===t.nodeName)try{this.target=t.contentDocument}catch(e){this.target=t}else this.target=t;for(var n=["mouseup","mousedown","click","touchstart"],o=0;oi&&a>e}if(!r(t.getBoundingClientRect(),i,n))return!1;for(var o=t.getClientRects(),a=0,h=o.length;a -1 || Math.floor(e) !== e) } function u(t) { var e = ["-webkit-", "-webkit-", "-moz-", "-o-", "-ms-"], i = t.toLowerCase(); if ("undefined" == typeof document || void 0 !== document.body.style[i]) return t; for (var n = 0; n < 5; n++)if (void 0 !== document.body.style[e[n] + i]) return e[n] + i; return t } function d(t) { for (var e = 1, i = arguments.length; e < i; e++) { var n = arguments[e]; for (var s in n) void 0 === t[s] && (t[s] = n[s]) } return t } function f(t) { return [].slice.call(arguments, 1).forEach((function (e) { e && Object.getOwnPropertyNames(e).forEach((function (i) { Object.defineProperty(t, i, Object.getOwnPropertyDescriptor(e, i)) })) })), t } function p(t, e, i) { var n = g(t, e, i); return e.splice(n, 0, t), n } function g(t, e, i, n, s) { var r, o = n || 0, a = s || e.length, h = parseInt(o + (a - o) / 2); return i || (i = function (t, e) { return t > e ? 1 : t < e ? -1 : t == e ? 0 : void 0 }), a - o <= 0 ? h : (r = i(e[h], t), a - o == 1 ? r >= 0 ? h : h + 1 : 0 === r ? h : -1 === r ? g(t, e, i, h, a) : g(t, e, i, o, h)) } function m(t, e, i, n, s) { var r, o = n || 0, a = s || e.length, h = parseInt(o + (a - o) / 2); return i || (i = function (t, e) { return t > e ? 1 : t < e ? -1 : t == e ? 0 : void 0 }), a - o <= 0 ? -1 : (r = i(e[h], t), a - o == 1 ? 0 === r ? h : -1 : 0 === r ? h : -1 === r ? m(t, e, i, h, a) : m(t, e, i, o, h)) } function v(t) { var e = window.getComputedStyle(t), i = 0, n = 0; return ["width", "paddingRight", "paddingLeft", "marginRight", "marginLeft", "borderRightWidth", "borderLeftWidth"].forEach((function (t) { i += parseFloat(e[t]) || 0 })), ["height", "paddingTop", "paddingBottom", "marginTop", "marginBottom", "borderTopWidth", "borderBottomWidth"].forEach((function (t) { n += parseFloat(e[t]) || 0 })), { height: n, width: i } } function y(t) { var e = window.getComputedStyle(t), i = 0, n = 0; return ["paddingRight", "paddingLeft", "marginRight", "marginLeft", "borderRightWidth", "borderLeftWidth"].forEach((function (t) { i += parseFloat(e[t]) || 0 })), ["paddingTop", "paddingBottom", "marginTop", "marginBottom", "borderTopWidth", "borderBottomWidth"].forEach((function (t) { n += parseFloat(e[t]) || 0 })), { height: n, width: i } } function b(t) { let e, i = t.ownerDocument; if (t.nodeType == Node.TEXT_NODE) { let n = i.createRange(); n.selectNodeContents(t), e = n.getBoundingClientRect() } else e = t.getBoundingClientRect(); return e } function w() { var t = window.innerWidth, e = window.innerHeight; return { top: 0, left: 0, right: t, bottom: e, width: t, height: e } } function x(t, e) { for (var i, n = t.parentNode.childNodes, s = -1, r = 0; r < n.length && ((i = n[r]).nodeType === e && s++, i != t); r++); return s } function E(t) { return x(t, 3) } function S(t) { return x(t, 1) } function N(t) { return ["xml", "opf", "ncx"].indexOf(t) > -1 } function _(t, e) { return new Blob([t], { type: e }) } function T(t, e) { var i = _(t, e); return r.createObjectURL(i) } function C(t) { return r.revokeObjectURL(t) } function O(t, e) { if ("string" == typeof t) return "data:" + e + ";base64," + btoa(t) } function I(t) { return Object.prototype.toString.call(t).slice(8, -1) } function R(t, e, i) { var s; return s = "undefined" == typeof DOMParser || i ? n.DOMParser : DOMParser, 65279 === t.charCodeAt(0) && (t = t.slice(1)), (new s).parseFromString(t, e) } function k(t, e) { var i; if (!t) throw new Error("No Element Provided"); return void 0 !== t.querySelector ? t.querySelector(e) : (i = t.getElementsByTagName(e)).length ? i[0] : void 0 } function A(t, e) { return void 0 !== t.querySelector ? t.querySelectorAll(e) : t.getElementsByTagName(e) } function L(t, e, i) { var n, s; if (void 0 !== t.querySelector) { for (var r in e += "[", i) e += r + "~='" + i[r] + "'"; return e += "]", t.querySelector(e) } if (n = t.getElementsByTagName(e), s = Array.prototype.slice.call(n, 0).filter((function (t) { for (var e in i) if (t.getAttribute(e) === i[e]) return !0; return !1 }))) return s[0] } function j(t, e) { void 0 !== (t.ownerDocument || t).createTreeWalker ? D(t, e, NodeFilter.SHOW_TEXT) : P(t, (function (t) { t && 3 === t.nodeType && e(t) })) } function D(t, e, i) { var n = document.createTreeWalker(t, i, null, !1); let s; for (; s = n.nextNode();)e(s) } function P(t, e) { if (e(t)) return !0; if (t = t.firstChild) do { if (P(t, e)) return !0; t = t.nextSibling } while (t) } function M(t) { return new Promise((function (e, i) { var n = new FileReader; n.readAsDataURL(t), n.onloadend = function () { e(n.result) } })) } function z() { this.resolve = null, this.reject = null, this.id = o(), this.promise = new Promise(((t, e) => { this.resolve = t, this.reject = e })), Object.freeze(this) } function B(t, e, i) { var n; if (void 0 !== t.querySelector && (n = t.querySelector(`${e}[*|type="${i}"]`)), n && 0 !== n.length) return n; n = A(t, e); for (var s = 0; s < n.length; s++)if (n[s].getAttributeNS("http://www.idpf.org/2007/ops", "type") === i || n[s].getAttribute("epub:type") === i) return n[s] } function q(t) { for (var e = [], i = t.childNodes, n = 0; n < i.length; n++) { let t = i[n]; 1 === t.nodeType && e.push(t) } return e } function F(t) { for (var e = [t]; t; t = t.parentNode)e.unshift(t); return e } function U(t, e, i) { for (var n = [], s = t.childNodes, r = 0; r < s.length; r++) { let t = s[r]; if (1 === t.nodeType && t.nodeName.toLowerCase() === e) { if (i) return t; n.push(t) } } if (!i) return n } function W(t, e) { let i; if (null !== t && "" !== e) for (i = t.parentNode; 1 === i.nodeType;) { if (i.tagName.toLowerCase() === e) return i; i = i.parentNode } } class H { constructor() { this.collapsed = !1, this.commonAncestorContainer = void 0, this.endContainer = void 0, this.endOffset = void 0, this.startContainer = void 0, this.startOffset = void 0 } setStart(t, e) { this.startContainer = t, this.startOffset = e, this.endContainer ? this.commonAncestorContainer = this._commonAncestorContainer() : this.collapse(!0), this._checkCollapsed() } setEnd(t, e) { this.endContainer = t, this.endOffset = e, this.startContainer ? (this.collapsed = !1, this.commonAncestorContainer = this._commonAncestorContainer()) : this.collapse(!1), this._checkCollapsed() } collapse(t) { this.collapsed = !0, t ? (this.endContainer = this.startContainer, this.endOffset = this.startOffset, this.commonAncestorContainer = this.startContainer.parentNode) : (this.startContainer = this.endContainer, this.startOffset = this.endOffset, this.commonAncestorContainer = this.endOffset.parentNode) } selectNode(t) { let e = t.parentNode, i = Array.prototype.indexOf.call(e.childNodes, t); this.setStart(e, i), this.setEnd(e, i + 1) } selectNodeContents(t) { t.childNodes[t.childNodes - 1]; let e = 3 === t.nodeType ? t.textContent.length : parent.childNodes.length; this.setStart(t, 0), this.setEnd(t, e) } _commonAncestorContainer(t, e) { var i = F(t || this.startContainer), n = F(e || this.endContainer); if (i[0] == n[0]) for (var s = 0; s < i.length; s++)if (i[s] != n[s]) return i[s - 1] } _checkCollapsed() { this.startContainer === this.endContainer && this.startOffset === this.endOffset ? this.collapsed = !0 : this.collapsed = !1 } toString() { } } }, function (t, e, i) { "use strict"; i.d(e, "b", (function () { return n })), i.d(e, "a", (function () { return s })), i.d(e, "c", (function () { return r })); const n = "0.3", s = ["keydown", "keyup", "keypressed", "mouseup", "mousedown", "mousemove", "click", "touchend", "touchstart", "touchmove"], r = { BOOK: { OPEN_FAILED: "openFailed" }, CONTENTS: { EXPAND: "expand", RESIZE: "resize", SELECTED: "selected", SELECTED_RANGE: "selectedRange", LINK_CLICKED: "linkClicked" }, LOCATIONS: { CHANGED: "changed" }, MANAGERS: { RESIZE: "resize", RESIZED: "resized", ORIENTATION_CHANGE: "orientationchange", ADDED: "added", SCROLL: "scroll", SCROLLED: "scrolled", REMOVED: "removed" }, VIEWS: { AXIS: "axis", WRITING_MODE: "writingMode", LOAD_ERROR: "loaderror", RENDERED: "rendered", RESIZED: "resized", DISPLAYED: "displayed", SHOWN: "shown", HIDDEN: "hidden", MARK_CLICKED: "markClicked" }, RENDITION: { STARTED: "started", ATTACHED: "attached", DISPLAYED: "displayed", DISPLAY_ERROR: "displayerror", RENDERED: "rendered", REMOVED: "removed", RESIZED: "resized", ORIENTATION_CHANGE: "orientationchange", LOCATION_CHANGED: "locationChanged", RELOCATED: "relocated", MARK_CLICKED: "markClicked", SELECTED: "selected", LAYOUT: "layout" }, LAYOUT: { UPDATED: "updated" }, ANNOTATION: { ATTACH: "attach", DETACH: "detach" } } }, function (t, e, i) { "use strict"; var n = i(0); class s { constructor(t, e, i) { var r; if (this.str = "", this.base = {}, this.spinePos = 0, this.range = !1, this.path = {}, this.start = null, this.end = null, !(this instanceof s)) return new s(t, e, i); if ("string" == typeof e ? this.base = this.parseComponent(e) : "object" == typeof e && e.steps && (this.base = e), "string" === (r = this.checkType(t))) return this.str = t, Object(n.extend)(this, this.parse(t)); if ("range" === r) return Object(n.extend)(this, this.fromRange(t, this.base, i)); if ("node" === r) return Object(n.extend)(this, this.fromNode(t, this.base, i)); if ("EpubCFI" === r && t.path) return t; if (t) throw new TypeError("not a valid argument for EpubCFI"); return this } checkType(t) { return this.isCfiString(t) ? "string" : !t || "object" != typeof t || "Range" !== Object(n.type)(t) && void 0 === t.startContainer ? t && "object" == typeof t && void 0 !== t.nodeType ? "node" : !!(t && "object" == typeof t && t instanceof s) && "EpubCFI" : "range" } parse(t) { var e, i, n, s = { spinePos: -1, range: !1, base: {}, path: {}, start: null, end: null }; return "string" != typeof t ? { spinePos: -1 } : (0 === t.indexOf("epubcfi(") && ")" === t[t.length - 1] && (t = t.slice(8, t.length - 1)), (e = this.getChapterComponent(t)) ? (s.base = this.parseComponent(e), i = this.getPathComponent(t), s.path = this.parseComponent(i), (n = this.getRange(t)) && (s.range = !0, s.start = this.parseComponent(n[0]), s.end = this.parseComponent(n[1])), s.spinePos = s.base.steps[1].index, s) : { spinePos: -1 }) } parseComponent(t) { var e, i = { steps: [], terminal: { offset: null, assertion: null } }, n = t.split(":"), s = n[0].split("/"); return n.length > 1 && (e = n[1], i.terminal = this.parseTerminal(e)), "" === s[0] && s.shift(), i.steps = s.map(function (t) { return this.parseStep(t) }.bind(this)), i } parseStep(t) { var e, i, n, s, r; if ((s = t.match(/\[(.*)\]/)) && s[1] && (r = s[1]), i = parseInt(t), !isNaN(i)) return i % 2 == 0 ? (e = "element", n = i / 2 - 1) : (e = "text", n = (i - 1) / 2), { type: e, index: n, id: r || null } } parseTerminal(t) { var e, i, s = t.match(/\[(.*)\]/); return s && s[1] ? (e = parseInt(t.split("[")[0]), i = s[1]) : e = parseInt(t), Object(n.isNumber)(e) || (e = null), { offset: e, assertion: i } } getChapterComponent(t) { return t.split("!")[0] } getPathComponent(t) { var e = t.split("!"); if (e[1]) return e[1].split(",")[0] } getRange(t) { var e = t.split(","); return 3 === e.length && [e[1], e[2]] } getCharecterOffsetComponent(t) { return t.split(":")[1] || "" } joinSteps(t) { return t ? t.map((function (t) { var e = ""; return "element" === t.type && (e += 2 * (t.index + 1)), "text" === t.type && (e += 1 + 2 * t.index), t.id && (e += "[" + t.id + "]"), e })).join("/") : "" } segmentString(t) { var e = "/"; return e += this.joinSteps(t.steps), t.terminal && null != t.terminal.offset && (e += ":" + t.terminal.offset), t.terminal && null != t.terminal.assertion && (e += "[" + t.terminal.assertion + "]"), e } toString() { var t = "epubcfi("; return t += this.segmentString(this.base), t += "!", t += this.segmentString(this.path), this.range && this.start && (t += ",", t += this.segmentString(this.start)), this.range && this.end && (t += ",", t += this.segmentString(this.end)), t + ")" } compare(t, e) { var i, n, r, o; if ("string" == typeof t && (t = new s(t)), "string" == typeof e && (e = new s(e)), t.spinePos > e.spinePos) return 1; if (t.spinePos < e.spinePos) return -1; t.range ? (i = t.path.steps.concat(t.start.steps), r = t.start.terminal) : (i = t.path.steps, r = t.path.terminal), e.range ? (n = e.path.steps.concat(e.start.steps), o = e.start.terminal) : (n = e.path.steps, o = e.path.terminal); for (var a = 0; a < i.length; a++) { if (!i[a]) return -1; if (!n[a]) return 1; if (i[a].index > n[a].index) return 1; if (i[a].index < n[a].index) return -1 } return i.length < n.length ? -1 : r.offset > o.offset ? 1 : r.offset < o.offset ? -1 : 0 } step(t) { var e = 3 === t.nodeType ? "text" : "element"; return { id: t.id, tagName: t.tagName, type: e, index: this.position(t) } } filteredStep(t, e) { var i, n = this.filter(t, e); if (n) return i = 3 === n.nodeType ? "text" : "element", { id: n.id, tagName: n.tagName, type: i, index: this.filteredPosition(n, e) } } pathTo(t, e, i) { for (var n, s = { steps: [], terminal: { offset: null, assertion: null } }, r = t; r && r.parentNode && 9 != r.parentNode.nodeType;)(n = i ? this.filteredStep(r, i) : this.step(r)) && s.steps.unshift(n), r = r.parentNode; return null != e && e >= 0 && (s.terminal.offset = e, "text" != s.steps[s.steps.length - 1].type && s.steps.push({ type: "text", index: 0 })), s } equalStep(t, e) { return !(!t || !e) && t.index === e.index && t.id === e.id && t.type === e.type } fromRange(t, e, i) { var n = { range: !1, base: {}, path: {}, start: null, end: null }, s = t.startContainer, r = t.endContainer, o = t.startOffset, a = t.endOffset, h = !1; if (i && (h = null != s.ownerDocument.querySelector("." + i)), "string" == typeof e ? (n.base = this.parseComponent(e), n.spinePos = n.base.steps[1].index) : "object" == typeof e && (n.base = e), t.collapsed) h && (o = this.patchOffset(s, o, i)), n.path = this.pathTo(s, o, i); else { n.range = !0, h && (o = this.patchOffset(s, o, i)), n.start = this.pathTo(s, o, i), h && (a = this.patchOffset(r, a, i)), n.end = this.pathTo(r, a, i), n.path = { steps: [], terminal: null }; var l, c = n.start.steps.length; for (l = 0; l < c && this.equalStep(n.start.steps[l], n.end.steps[l]); l++)l === c - 1 ? n.start.terminal === n.end.terminal && (n.path.steps.push(n.start.steps[l]), n.range = !1) : n.path.steps.push(n.start.steps[l]); n.start.steps = n.start.steps.slice(n.path.steps.length), n.end.steps = n.end.steps.slice(n.path.steps.length) } return n } fromNode(t, e, i) { var n = { range: !1, base: {}, path: {}, start: null, end: null }; return "string" == typeof e ? (n.base = this.parseComponent(e), n.spinePos = n.base.steps[1].index) : "object" == typeof e && (n.base = e), n.path = this.pathTo(t, null, i), n } filter(t, e) { var i, n, s, r, o, a = !1; return 3 === t.nodeType ? (a = !0, s = t.parentNode, i = t.parentNode.classList.contains(e)) : (a = !1, i = t.classList.contains(e)), i && a ? (r = s.previousSibling, o = s.nextSibling, r && 3 === r.nodeType ? n = r : o && 3 === o.nodeType && (n = o), n || t) : !(i && !a) && t } patchOffset(t, e, i) { if (3 != t.nodeType) throw new Error("Anchor must be a text node"); var n = t, s = e; for (t.parentNode.classList.contains(i) && (n = t.parentNode); n.previousSibling;) { if (1 === n.previousSibling.nodeType) { if (!n.previousSibling.classList.contains(i)) break; s += n.previousSibling.textContent.length } else s += n.previousSibling.textContent.length; n = n.previousSibling } return s } normalizedMap(t, e, i) { var n, s, r, o = {}, a = -1, h = t.length; for (n = 0; n < h; n++)1 === (s = t[n].nodeType) && t[n].classList.contains(i) && (s = 3), n > 0 && 3 === s && 3 === r ? o[n] = a : e === s && (a += 1, o[n] = a), r = s; return o } position(t) { var e, i; return 1 === t.nodeType ? ((e = t.parentNode.children) || (e = Object(n.findChildren)(t.parentNode)), i = Array.prototype.indexOf.call(e, t)) : i = (e = this.textNodes(t.parentNode)).indexOf(t), i } filteredPosition(t, e) { var i, n; return 1 === t.nodeType ? (i = t.parentNode.children, n = this.normalizedMap(i, 1, e)) : (i = t.parentNode.childNodes, t.parentNode.classList.contains(e) && (i = (t = t.parentNode).parentNode.childNodes), n = this.normalizedMap(i, 3, e)), n[Array.prototype.indexOf.call(i, t)] } stepsToXpath(t) { var e = [".", "*"]; return t.forEach((function (t) { var i = t.index + 1; t.id ? e.push("*[position()=" + i + " and @id='" + t.id + "']") : "text" === t.type ? e.push("text()[" + i + "]") : e.push("*[" + i + "]") })), e.join("/") } stepsToQuerySelector(t) { var e = ["html"]; return t.forEach((function (t) { var i = t.index + 1; t.id ? e.push("#" + t.id) : "text" === t.type || e.push("*:nth-child(" + i + ")") })), e.join(">") } textNodes(t, e) { return Array.prototype.slice.call(t.childNodes).filter((function (t) { return 3 === t.nodeType || !(!e || !t.classList.contains(e)) })) } walkToNode(t, e, i) { var s, r, o = e || document, a = o.documentElement, h = t.length; for (r = 0; r < h && ("element" === (s = t[r]).type ? a = s.id ? o.getElementById(s.id) : (a.children || Object(n.findChildren)(a))[s.index] : "text" === s.type && (a = this.textNodes(a, i)[s.index]), a); r++); return a } findNode(t, e, i) { var n, s, r = e || document; return i || void 0 === r.evaluate ? n = i ? this.walkToNode(t, r, i) : this.walkToNode(t, r) : (s = this.stepsToXpath(t), n = r.evaluate(s, r, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue), n } fixMiss(t, e, i, n) { var s, r, o = this.findNode(t.slice(0, -1), i, n), a = o.childNodes, h = this.normalizedMap(a, 3, n), l = t[t.length - 1].index; for (let t in h) { if (!h.hasOwnProperty(t)) return; if (h[t] === l) { if (!(e > (r = (s = a[t]).textContent.length))) { o = 1 === s.nodeType ? s.childNodes[0] : s; break } e -= r } } return { container: o, offset: e } } toRange(t, e) { var i, s, r, o, a, h, l, c, u = t || document, d = !!e && null != u.querySelector("." + e); if (i = void 0 !== u.createRange ? u.createRange() : new n.RangeObject, this.range ? (s = this.start, h = this.path.steps.concat(s.steps), o = this.findNode(h, u, d ? e : null), r = this.end, l = this.path.steps.concat(r.steps), a = this.findNode(l, u, d ? e : null)) : (s = this.path, h = this.path.steps, o = this.findNode(this.path.steps, u, d ? e : null)), !o) return console.log("No startContainer found for", this.toString()), null; try { null != s.terminal.offset ? i.setStart(o, s.terminal.offset) : i.setStart(o, 0) } catch (t) { c = this.fixMiss(h, s.terminal.offset, u, d ? e : null), i.setStart(c.container, c.offset) } if (a) try { null != r.terminal.offset ? i.setEnd(a, r.terminal.offset) : i.setEnd(a, 0) } catch (t) { c = this.fixMiss(l, this.end.terminal.offset, u, d ? e : null), i.setEnd(c.container, c.offset) } return i } isCfiString(t) { return "string" == typeof t && 0 === t.indexOf("epubcfi(") && ")" === t[t.length - 1] } generateChapterComponent(t, e, i) { var n = "/" + 2 * (t + 1) + "/"; return n += 2 * (parseInt(e) + 1), i && (n += "[" + i + "]"), n } collapse(t) { this.range && (this.range = !1, t ? (this.path.steps = this.path.steps.concat(this.start.steps), this.path.terminal = this.start.terminal) : (this.path.steps = this.path.steps.concat(this.end.steps), this.path.terminal = this.end.terminal)) } } e.a = s }, function (t, e, i) { "use strict"; var n, s, r, o, a, h, l, c = i(31), u = i(45), d = Function.prototype.apply, f = Function.prototype.call, p = Object.create, g = Object.defineProperty, m = Object.defineProperties, v = Object.prototype.hasOwnProperty, y = { configurable: !0, enumerable: !1, writable: !0 }; s = function (t, e) { var i, s; return u(e), s = this, n.call(this, t, i = function () { r.call(s, t, i), d.call(e, this, arguments) }), i.__eeOnceListener__ = e, this }, a = { on: n = function (t, e) { var i; return u(e), v.call(this, "__ee__") ? i = this.__ee__ : (i = y.value = p(null), g(this, "__ee__", y), y.value = null), i[t] ? "object" == typeof i[t] ? i[t].push(e) : i[t] = [i[t], e] : i[t] = e, this }, once: s, off: r = function (t, e) { var i, n, s, r; if (u(e), !v.call(this, "__ee__")) return this; if (!(i = this.__ee__)[t]) return this; if ("object" == typeof (n = i[t])) for (r = 0; s = n[r]; ++r)s !== e && s.__eeOnceListener__ !== e || (2 === n.length ? i[t] = n[r ? 0 : 1] : n.splice(r, 1)); else n !== e && n.__eeOnceListener__ !== e || delete i[t]; return this }, emit: o = function (t) { var e, i, n, s, r; if (v.call(this, "__ee__") && (s = this.__ee__[t])) if ("object" == typeof s) { for (i = arguments.length, r = new Array(i - 1), e = 1; e < i; ++e)r[e - 1] = arguments[e]; for (s = s.slice(), e = 0; n = s[e]; ++e)d.call(n, this, r) } else switch (arguments.length) { case 1: f.call(s, this); break; case 2: f.call(s, this, arguments[1]); break; case 3: f.call(s, this, arguments[1], arguments[2]); break; default: for (i = arguments.length, r = new Array(i - 1), e = 1; e < i; ++e)r[e - 1] = arguments[e]; d.call(s, this, r) } } }, h = { on: c(n), once: c(s), off: c(r), emit: c(o) }, l = m({}, h), t.exports = e = function (t) { return null == t ? p(l) : m(Object(t), h) }, e.methods = a }, function (t, e, i) { "use strict"; var n = i(7), s = i.n(n); e.a = class { constructor(t) { var e; t.indexOf("://") > -1 && (t = new URL(t).pathname), e = this.parse(t), this.path = t, this.isDirectory(t) ? this.directory = t : this.directory = e.dir + "/", this.filename = e.base, this.extension = e.ext.slice(1) } parse(t) { return s.a.parse(t) } isAbsolute(t) { return s.a.isAbsolute(t || this.path) } isDirectory(t) { return "/" === t.charAt(t.length - 1) } resolve(t) { return s.a.resolve(this.directory, t) } relative(t) { return t && t.indexOf("://") > -1 ? t : s.a.relative(this.directory, t) } splitPath(t) { return this.splitPathRe.exec(t).slice(1) } toString() { return this.path } } }, function (t, e, i) { "use strict"; var n = i(4), s = i(7), r = i.n(s); e.a = class { constructor(t, e) { var i = t.indexOf("://") > -1, s = t; if (this.Url = void 0, this.href = t, this.protocol = "", this.origin = "", this.hash = "", this.hash = "", this.search = "", this.base = e, !i && !1 !== e && "string" != typeof e && window && window.location && (this.base = window.location.href), i || this.base) try { this.base ? this.Url = new URL(t, this.base) : this.Url = new URL(t), this.href = this.Url.href, this.protocol = this.Url.protocol, this.origin = this.Url.origin, this.hash = this.Url.hash, this.search = this.Url.search, s = this.Url.pathname + (this.Url.search ? this.Url.search : "") } catch (t) { this.Url = void 0, this.base && (s = new n.a(this.base).resolve(s)) } this.Path = new n.a(s), this.directory = this.Path.directory, this.filename = this.Path.filename, this.extension = this.Path.extension } path() { return this.Path } resolve(t) { var e; return t.indexOf("://") > -1 ? t : (e = r.a.resolve(this.directory, t), this.origin + e) } relative(t) { return r.a.relative(t, this.directory) } toString() { return this.href } } }, function (t, e, i) { "use strict"; e.a = class { constructor(t) { this.context = t || this, this.hooks = [] } register() { for (var t = 0; t < arguments.length; ++t)if ("function" == typeof arguments[t]) this.hooks.push(arguments[t]); else for (var e = 0; e < arguments[t].length; ++e)this.hooks.push(arguments[t][e]) } deregister(t) { let e; for (let i = 0; i < this.hooks.length; i++)if (e = this.hooks[i], e === t) { this.hooks.splice(i, 1); break } } trigger() { var t = arguments, e = this.context, i = []; return this.hooks.forEach((function (n) { try { var s = n.apply(e, t) } catch (t) { console.log(t) } s && "function" == typeof s.then && i.push(s) })), Promise.all(i) } list() { return this.hooks } clear() { return this.hooks = [] } } }, function (t, e, i) { "use strict"; if (!n) var n = { cwd: function () { return "/" } }; function s(t) { if ("string" != typeof t) throw new TypeError("Path must be a string. Received " + t) } function r(t, e) { for (var i, n = "", s = -1, r = 0, o = 0; o <= t.length; ++o) { if (o < t.length) i = t.charCodeAt(o); else { if (47 === i) break; i = 47 } if (47 === i) { if (s === o - 1 || 1 === r); else if (s !== o - 1 && 2 === r) { if (n.length < 2 || 46 !== n.charCodeAt(n.length - 1) || 46 !== n.charCodeAt(n.length - 2)) if (n.length > 2) { for (var a = n.length - 1, h = a; h >= 0 && 47 !== n.charCodeAt(h); --h); if (h !== a) { n = -1 === h ? "" : n.slice(0, h), s = o, r = 0; continue } } else if (2 === n.length || 1 === n.length) { n = "", s = o, r = 0; continue } e && (n.length > 0 ? n += "/.." : n = "..") } else n.length > 0 ? n += "/" + t.slice(s + 1, o) : n = t.slice(s + 1, o); s = o, r = 0 } else 46 === i && -1 !== r ? ++r : r = -1 } return n } var o = { resolve: function () { for (var t, e = "", i = !1, o = arguments.length - 1; o >= -1 && !i; o--) { var a; o >= 0 ? a = arguments[o] : (void 0 === t && (t = n.cwd()), a = t), s(a), 0 !== a.length && (e = a + "/" + e, i = 47 === a.charCodeAt(0)) } return e = r(e, !i), i ? e.length > 0 ? "/" + e : "/" : e.length > 0 ? e : "." }, normalize: function (t) { if (s(t), 0 === t.length) return "."; var e = 47 === t.charCodeAt(0), i = 47 === t.charCodeAt(t.length - 1); return 0 !== (t = r(t, !e)).length || e || (t = "."), t.length > 0 && i && (t += "/"), e ? "/" + t : t }, isAbsolute: function (t) { return s(t), t.length > 0 && 47 === t.charCodeAt(0) }, join: function () { if (0 === arguments.length) return "."; for (var t, e = 0; e < arguments.length; ++e) { var i = arguments[e]; s(i), i.length > 0 && (void 0 === t ? t = i : t += "/" + i) } return void 0 === t ? "." : o.normalize(t) }, relative: function (t, e) { if (s(t), s(e), t === e) return ""; if ((t = o.resolve(t)) === (e = o.resolve(e))) return ""; for (var i = 1; i < t.length && 47 === t.charCodeAt(i); ++i); for (var n = t.length, r = n - i, a = 1; a < e.length && 47 === e.charCodeAt(a); ++a); for (var h = e.length - a, l = r < h ? r : h, c = -1, u = 0; u <= l; ++u) { if (u === l) { if (h > l) { if (47 === e.charCodeAt(a + u)) return e.slice(a + u + 1); if (0 === u) return e.slice(a + u) } else r > l && (47 === t.charCodeAt(i + u) ? c = u : 0 === u && (c = 0)); break } var d = t.charCodeAt(i + u); if (d !== e.charCodeAt(a + u)) break; 47 === d && (c = u) } var f = ""; for (u = i + c + 1; u <= n; ++u)u !== n && 47 !== t.charCodeAt(u) || (0 === f.length ? f += ".." : f += "/.."); return f.length > 0 ? f + e.slice(a + c) : (a += c, 47 === e.charCodeAt(a) && ++a, e.slice(a)) }, _makeLong: function (t) { return t }, dirname: function (t) { if (s(t), 0 === t.length) return "."; for (var e = t.charCodeAt(0), i = 47 === e, n = -1, r = !0, o = t.length - 1; o >= 1; --o)if (47 === (e = t.charCodeAt(o))) { if (!r) { n = o; break } } else r = !1; return -1 === n ? i ? "/" : "." : i && 1 === n ? "//" : t.slice(0, n) }, basename: function (t, e) { if (void 0 !== e && "string" != typeof e) throw new TypeError('"ext" argument must be a string'); s(t); var i, n = 0, r = -1, o = !0; if (void 0 !== e && e.length > 0 && e.length <= t.length) { if (e.length === t.length && e === t) return ""; var a = e.length - 1, h = -1; for (i = t.length - 1; i >= 0; --i) { var l = t.charCodeAt(i); if (47 === l) { if (!o) { n = i + 1; break } } else -1 === h && (o = !1, h = i + 1), a >= 0 && (l === e.charCodeAt(a) ? -1 == --a && (r = i) : (a = -1, r = h)) } return n === r ? r = h : -1 === r && (r = t.length), t.slice(n, r) } for (i = t.length - 1; i >= 0; --i)if (47 === t.charCodeAt(i)) { if (!o) { n = i + 1; break } } else -1 === r && (o = !1, r = i + 1); return -1 === r ? "" : t.slice(n, r) }, extname: function (t) { s(t); for (var e = -1, i = 0, n = -1, r = !0, o = 0, a = t.length - 1; a >= 0; --a) { var h = t.charCodeAt(a); if (47 !== h) -1 === n && (r = !1, n = a + 1), 46 === h ? -1 === e ? e = a : 1 !== o && (o = 1) : -1 !== e && (o = -1); else if (!r) { i = a + 1; break } } return -1 === e || -1 === n || 0 === o || 1 === o && e === n - 1 && e === i + 1 ? "" : t.slice(e, n) }, format: function (t) { if (null === t || "object" != typeof t) throw new TypeError('Parameter "pathObject" must be an object, not ' + typeof t); return function (t, e) { var i = e.dir || e.root, n = e.base || (e.name || "") + (e.ext || ""); return i ? i === e.root ? i + n : i + "/" + n : n }(0, t) }, parse: function (t) { s(t); var e = { root: "", dir: "", base: "", ext: "", name: "" }; if (0 === t.length) return e; var i, n = t.charCodeAt(0), r = 47 === n; r ? (e.root = "/", i = 1) : i = 0; for (var o = -1, a = 0, h = -1, l = !0, c = t.length - 1, u = 0; c >= i; --c)if (47 !== (n = t.charCodeAt(c))) -1 === h && (l = !1, h = c + 1), 46 === n ? -1 === o ? o = c : 1 !== u && (u = 1) : -1 !== o && (u = -1); else if (!l) { a = c + 1; break } return -1 === o || -1 === h || 0 === u || 1 === u && o === h - 1 && o === a + 1 ? -1 !== h && (e.base = e.name = 0 === a && r ? t.slice(1, h) : t.slice(a, h)) : (0 === a && r ? (e.name = t.slice(1, o), e.base = t.slice(1, h)) : (e.name = t.slice(a, o), e.base = t.slice(a, h)), e.ext = t.slice(o, h)), a > 0 ? e.dir = t.slice(0, a - 1) : r && (e.dir = "/"), e }, sep: "/", delimiter: ":", posix: null }; t.exports = o }, function (t, e, i) { "use strict"; i.d(e, "a", (function () { return r })), i.d(e, "b", (function () { return o })), i.d(e, "d", (function () { return a })), i.d(e, "c", (function () { return h })), i.d(e, "e", (function () { return l })); var n = i(0), s = i(5); function r(t, e) { var i, s, r = e.url, o = r.indexOf("://") > -1; t && (s = Object(n.qs)(t, "head"), (i = Object(n.qs)(s, "base")) || (i = t.createElement("base"), s.insertBefore(i, s.firstChild)), !o && window && window.location && (r = window.location.origin + r), i.setAttribute("href", r)) } function o(t, e) { var i, s, r = e.canonical; t && (i = Object(n.qs)(t, "head"), (s = Object(n.qs)(i, "link[rel='canonical']")) ? s.setAttribute("href", r) : ((s = t.createElement("link")).setAttribute("rel", "canonical"), s.setAttribute("href", r), i.appendChild(s))) } function a(t, e) { var i, s, r = e.idref; t && (i = Object(n.qs)(t, "head"), (s = Object(n.qs)(i, "link[property='dc.identifier']")) ? s.setAttribute("content", r) : ((s = t.createElement("meta")).setAttribute("name", "dc.identifier"), s.setAttribute("content", r), i.appendChild(s))) } function h(t, e) { var i = t.querySelectorAll("a[href]"); if (i.length) for (var r = Object(n.qs)(t.ownerDocument, "base"), o = r ? r.getAttribute("href") : void 0, a = function (t) { var i = t.getAttribute("href"); if (0 !== i.indexOf("mailto:")) if (i.indexOf("://") > -1) t.setAttribute("target", "_blank"); else { var n; try { n = new s.a(i, o) } catch (t) { } t.onclick = function () { return n && n.hash ? e(n.Path.path + n.hash) : e(n ? n.Path.path : i), !1 } } }.bind(this), h = 0; h < i.length; h++)a(i[h]) } function l(t, e, i) { return e.forEach((function (e, n) { e && i[n] && (e = e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), t = t.replace(new RegExp(e, "g"), i[n])) })), t } i(4) }, function (t, e, i) { "use strict"; var n = i(0); e.a = class { constructor(t) { this._q = [], this.context = t, this.tick = n.requestAnimationFrame, this.running = !1, this.paused = !1 } enqueue() { var t, e, i = [].shift.call(arguments), s = arguments; if (!i) throw new Error("No Task Provided"); return e = "function" == typeof i ? { task: i, args: s, deferred: t = new n.defer, promise: t.promise } : { promise: i }, this._q.push(e), 0 != this.paused || this.running || this.run(), e.promise } dequeue() { var t, e, i; return !this._q.length || this.paused ? ((t = new n.defer).deferred.resolve(), t.promise) : (e = (t = this._q.shift()).task) ? (i = e.apply(this.context, t.args)) && "function" == typeof i.then ? i.then(function () { t.deferred.resolve.apply(this.context, arguments) }.bind(this), function () { t.deferred.reject.apply(this.context, arguments) }.bind(this)) : (t.deferred.resolve.apply(this.context, i), t.promise) : t.promise ? t.promise : void 0 } dump() { for (; this._q.length;)this.dequeue() } run() { return this.running || (this.running = !0, this.defered = new n.defer), this.tick.call(window, (() => { this._q.length ? this.dequeue().then(function () { this.run() }.bind(this)) : (this.defered.resolve(), this.running = void 0) })), 1 == this.paused && (this.paused = !1), this.defered.promise } flush() { return this.running ? this.running : this._q.length ? (this.running = this.dequeue().then(function () { return this.running = void 0, this.flush() }.bind(this)), this.running) : void 0 } clear() { this._q = [] } length() { return this._q.length } pause() { this.paused = !0 } stop() { this._q = [], this.running = !1, this.paused = !0 } } }, function (t, e, i) { "use strict"; var n = i(3), s = i.n(n), r = i(0), o = i(11), a = i(9), h = i(28), l = i.n(h), c = class { constructor(t) { this.settings = t || {}, this.id = "epubjs-container-" + Object(r.uuid)(), this.container = this.create(this.settings), this.settings.hidden && (this.wrapper = this.wrap(this.container)) } create(t) { let e = t.height, i = t.width, n = t.overflow || !1, s = t.axis || "vertical", o = t.direction; Object(r.extend)(this.settings, t), t.height && Object(r.isNumber)(t.height) && (e = t.height + "px"), t.width && Object(r.isNumber)(t.width) && (i = t.width + "px"); let a = document.createElement("div"); return a.id = this.id, a.classList.add("epub-container"), a.style.wordSpacing = "0", a.style.lineHeight = "0", a.style.verticalAlign = "top", a.style.position = "relative", "horizontal" === s && (a.style.display = "flex", a.style.flexDirection = "row", a.style.flexWrap = "nowrap"), i && (a.style.width = i), e && (a.style.height = e), n && ("scroll" === n && "vertical" === s ? (a.style["overflow-y"] = n, a.style["overflow-x"] = "hidden") : "scroll" === n && "horizontal" === s ? (a.style["overflow-y"] = "hidden", a.style["overflow-x"] = n) : a.style.overflow = n), o && (a.dir = o, a.style.direction = o), o && this.settings.fullsize && (document.body.style.direction = o), a } wrap(t) { var e = document.createElement("div"); return e.style.visibility = "hidden", e.style.overflow = "hidden", e.style.width = "0", e.style.height = "0", e.appendChild(t), e } getElement(t) { var e; if (Object(r.isElement)(t) ? e = t : "string" == typeof t && (e = document.getElementById(t)), !e) throw new Error("Not an Element"); return e } attachTo(t) { var e, i = this.getElement(t); if (i) return e = this.settings.hidden ? this.wrapper : this.container, i.appendChild(e), this.element = i, i } getContainer() { return this.container } onResize(t) { Object(r.isNumber)(this.settings.width) && Object(r.isNumber)(this.settings.height) || (this.resizeFunc = l()(t, 50), window.addEventListener("resize", this.resizeFunc, !1)) } onOrientationChange(t) { this.orientationChangeFunc = t, window.addEventListener("orientationchange", this.orientationChangeFunc, !1) } size(t, e) { var i; let n = t || this.settings.width, s = e || this.settings.height; null === t ? (i = this.element.getBoundingClientRect()).width && (t = Math.floor(i.width), this.container.style.width = t + "px") : Object(r.isNumber)(t) ? this.container.style.width = t + "px" : this.container.style.width = t, null === e ? (i = i || this.element.getBoundingClientRect()).height && (e = i.height, this.container.style.height = e + "px") : Object(r.isNumber)(e) ? this.container.style.height = e + "px" : this.container.style.height = e, Object(r.isNumber)(t) || (t = this.container.clientWidth), Object(r.isNumber)(e) || (e = this.container.clientHeight), this.containerStyles = window.getComputedStyle(this.container), this.containerPadding = { left: parseFloat(this.containerStyles["padding-left"]) || 0, right: parseFloat(this.containerStyles["padding-right"]) || 0, top: parseFloat(this.containerStyles["padding-top"]) || 0, bottom: parseFloat(this.containerStyles["padding-bottom"]) || 0 }; let o = Object(r.windowBounds)(), a = window.getComputedStyle(document.body), h = parseFloat(a["padding-left"]) || 0, l = parseFloat(a["padding-right"]) || 0, c = parseFloat(a["padding-top"]) || 0, u = parseFloat(a["padding-bottom"]) || 0; return n || (t = o.width - h - l), (this.settings.fullsize && !s || !s) && (e = o.height - c - u), { width: t - this.containerPadding.left - this.containerPadding.right, height: e - this.containerPadding.top - this.containerPadding.bottom } } bounds() { let t; return "visible" !== this.container.style.overflow && (t = this.container && this.container.getBoundingClientRect()), t && t.width && t.height ? t : Object(r.windowBounds)() } getSheet() { var t = document.createElement("style"); return t.appendChild(document.createTextNode("")), document.head.appendChild(t), t.sheet } addStyleRules(t, e) { var i = "#" + this.id + " ", n = ""; this.sheet || (this.sheet = this.getSheet()), e.forEach((function (t) { for (var e in t) t.hasOwnProperty(e) && (n += e + ":" + t[e] + ";") })), this.sheet.insertRule(i + t + " {" + n + "}", 0) } axis(t) { "horizontal" === t ? (this.container.style.display = "flex", this.container.style.flexDirection = "row", this.container.style.flexWrap = "nowrap") : this.container.style.display = "block", this.settings.axis = t } direction(t) { this.container && (this.container.dir = t, this.container.style.direction = t), this.settings.fullsize && (document.body.style.direction = t), this.settings.dir = t } overflow(t) { this.container && ("scroll" === t && "vertical" === this.settings.axis ? (this.container.style["overflow-y"] = t, this.container.style["overflow-x"] = "hidden") : "scroll" === t && "horizontal" === this.settings.axis ? (this.container.style["overflow-y"] = "hidden", this.container.style["overflow-x"] = t) : this.container.style.overflow = t), this.settings.overflow = t } destroy() { this.element && (this.settings.hidden ? this.wrapper : this.container, this.element.contains(this.container) && this.element.removeChild(this.container), window.removeEventListener("resize", this.resizeFunc), window.removeEventListener("orientationChange", this.orientationChangeFunc)) } }, u = class { constructor(t) { this.container = t, this._views = [], this.length = 0, this.hidden = !1 } all() { return this._views } first() { return this._views[0] } last() { return this._views[this._views.length - 1] } indexOf(t) { return this._views.indexOf(t) } slice() { return this._views.slice.apply(this._views, arguments) } get(t) { return this._views[t] } append(t) { return this._views.push(t), this.container && this.container.appendChild(t.element), this.length++, t } prepend(t) { return this._views.unshift(t), this.container && this.container.insertBefore(t.element, this.container.firstChild), this.length++, t } insert(t, e) { return this._views.splice(e, 0, t), this.container && (e < this.container.children.length ? this.container.insertBefore(t.element, this.container.children[e]) : this.container.appendChild(t.element)), this.length++, t } remove(t) { var e = this._views.indexOf(t); e > -1 && this._views.splice(e, 1), this.destroy(t), this.length-- } destroy(t) { t.displayed && t.destroy(), this.container && this.container.removeChild(t.element), t = null } forEach() { return this._views.forEach.apply(this._views, arguments) } clear() { var t, e = this.length; if (this.length) { for (var i = 0; i < e; i++)t = this._views[i], this.destroy(t); this._views = [], this.length = 0 } } find(t) { for (var e, i = this.length, n = 0; n < i; n++)if ((e = this._views[n]).displayed && e.section.index == t.index) return e } displayed() { for (var t, e = [], i = this.length, n = 0; n < i; n++)(t = this._views[n]).displayed && e.push(t); return e } show() { for (var t, e = this.length, i = 0; i < e; i++)(t = this._views[i]).displayed && t.show(); this.hidden = !1 } hide() { for (var t, e = this.length, i = 0; i < e; i++)(t = this._views[i]).displayed && t.hide(); this.hidden = !0 } }, d = i(1); class f { constructor(t) { this.name = "default", this.optsSettings = t.settings, this.View = t.view, this.request = t.request, this.renditionQueue = t.queue, this.q = new a.a(this), this.settings = Object(r.extend)(this.settings || {}, { infinite: !0, hidden: !1, width: void 0, height: void 0, axis: void 0, writingMode: void 0, flow: "scrolled", ignoreClass: "", fullsize: void 0, allowScriptedContent: !1, allowPopups: !1 }), Object(r.extend)(this.settings, t.settings || {}), this.viewSettings = { ignoreClass: this.settings.ignoreClass, axis: this.settings.axis, flow: this.settings.flow, layout: this.layout, method: this.settings.method, width: 0, height: 0, forceEvenPages: !0, allowScriptedContent: this.settings.allowScriptedContent, allowPopups: this.settings.allowPopups }, this.rendered = !1 } render(t, e) { let i = t.tagName; void 0 !== this.settings.fullsize || !i || "body" != i.toLowerCase() && "html" != i.toLowerCase() || (this.settings.fullsize = !0), this.settings.fullsize && (this.settings.overflow = "visible", this.overflow = this.settings.overflow), this.settings.size = e, this.settings.rtlScrollType = function () { var t = "reverse", e = function () { var t = document.createElement("div"); t.dir = "rtl", t.style.position = "fixed", t.style.width = "1px", t.style.height = "1px", t.style.top = "0px", t.style.left = "0px", t.style.overflow = "hidden"; var e = document.createElement("div"); e.style.width = "2px"; var i = document.createElement("span"); i.style.width = "1px", i.style.display = "inline-block"; var n = document.createElement("span"); return n.style.width = "1px", n.style.display = "inline-block", e.appendChild(i), e.appendChild(n), t.appendChild(e), t }(); return document.body.appendChild(e), e.scrollLeft > 0 ? t = "default" : "undefined" != typeof Element && Element.prototype.scrollIntoView ? (e.children[0].children[1].scrollIntoView(), e.scrollLeft < 0 && (t = "negative")) : (e.scrollLeft = 1, 0 === e.scrollLeft && (t = "negative")), document.body.removeChild(e), t }(), this.stage = new c({ width: e.width, height: e.height, overflow: this.overflow, hidden: this.settings.hidden, axis: this.settings.axis, fullsize: this.settings.fullsize, direction: this.settings.direction }), this.stage.attachTo(t), this.container = this.stage.getContainer(), this.views = new u(this.container), this._bounds = this.bounds(), this._stageSize = this.stage.size(), this.viewSettings.width = this._stageSize.width, this.viewSettings.height = this._stageSize.height, this.stage.onResize(this.onResized.bind(this)), this.stage.onOrientationChange(this.onOrientationChange.bind(this)), this.addEventListeners(), this.layout && this.updateLayout(), this.rendered = !0 } addEventListeners() { var t; window.addEventListener("unload", function (t) { this.destroy() }.bind(this)), t = this.settings.fullsize ? window : this.container, this._onScroll = this.onScroll.bind(this), t.addEventListener("scroll", this._onScroll) } removeEventListeners() { (this.settings.fullsize ? window : this.container).removeEventListener("scroll", this._onScroll), this._onScroll = void 0 } destroy() { clearTimeout(this.orientationTimeout), clearTimeout(this.resizeTimeout), clearTimeout(this.afterScrolled), this.clear(), this.removeEventListeners(), this.stage.destroy(), this.rendered = !1 } onOrientationChange(t) { let { orientation: e } = window; this.optsSettings.resizeOnOrientationChange && this.resize(), clearTimeout(this.orientationTimeout), this.orientationTimeout = setTimeout(function () { this.orientationTimeout = void 0, this.optsSettings.resizeOnOrientationChange && this.resize(), this.emit(d.c.MANAGERS.ORIENTATION_CHANGE, e) }.bind(this), 500) } onResized(t) { this.resize() } resize(t, e, i) { let n = this.stage.size(t, e); this.winBounds = Object(r.windowBounds)(), this.orientationTimeout && this.winBounds.width === this.winBounds.height ? this._stageSize = void 0 : this._stageSize && this._stageSize.width === n.width && this._stageSize.height === n.height || (this._stageSize = n, this._bounds = this.bounds(), this.clear(), this.viewSettings.width = this._stageSize.width, this.viewSettings.height = this._stageSize.height, this.updateLayout(), this.emit(d.c.MANAGERS.RESIZED, { width: this._stageSize.width, height: this._stageSize.height }, i)) } createView(t, e) { return new this.View(t, Object(r.extend)(this.viewSettings, { forceRight: e })) } handleNextPrePaginated(t, e, i) { let n; if ("pre-paginated" === this.layout.name && this.layout.divisor > 1) { if (t || 0 === e.index) return; if (n = e.next(), n && !n.properties.includes("page-spread-left")) return i.call(this, n) } } display(t, e) { var i = new r.defer, n = i.promise; (e === t.href || Object(r.isNumber)(e)) && (e = void 0); var s = this.views.find(t); if (s && t && "pre-paginated" !== this.layout.name) { let t = s.offset(); if ("ltr" === this.settings.direction) this.scrollTo(t.left, t.top, !0); else { let e = s.width(); this.scrollTo(t.left + e, t.top, !0) } if (e) { let t = s.locationOf(e), i = s.width(); this.moveTo(t, i) } return i.resolve(), n } this.clear(); let o = !1; return "pre-paginated" === this.layout.name && 2 === this.layout.divisor && t.properties.includes("page-spread-right") && (o = !0), this.add(t, o).then(function (t) { if (e) { let i = t.locationOf(e), n = t.width(); this.moveTo(i, n) } }.bind(this), (t => { i.reject(t) })).then(function () { return this.handleNextPrePaginated(o, t, this.add) }.bind(this)).then(function () { this.views.show(), i.resolve() }.bind(this)), n } afterDisplayed(t) { this.emit(d.c.MANAGERS.ADDED, t) } afterResized(t) { this.emit(d.c.MANAGERS.RESIZE, t.section) } moveTo(t, e) { var i = 0, n = 0; this.isPaginated ? ((i = Math.floor(t.left / this.layout.delta) * this.layout.delta) + this.layout.delta > this.container.scrollWidth && (i = this.container.scrollWidth - this.layout.delta), (n = Math.floor(t.top / this.layout.delta) * this.layout.delta) + this.layout.delta > this.container.scrollHeight && (n = this.container.scrollHeight - this.layout.delta)) : n = t.top, "rtl" === this.settings.direction && (i += this.layout.delta, i -= e), this.scrollTo(i, n, !0) } add(t, e) { var i = this.createView(t, e); return this.views.append(i), i.onDisplayed = this.afterDisplayed.bind(this), i.onResize = this.afterResized.bind(this), i.on(d.c.VIEWS.AXIS, (t => { this.updateAxis(t) })), i.on(d.c.VIEWS.WRITING_MODE, (t => { this.updateWritingMode(t) })), i.display(this.request) } append(t, e) { var i = this.createView(t, e); return this.views.append(i), i.onDisplayed = this.afterDisplayed.bind(this), i.onResize = this.afterResized.bind(this), i.on(d.c.VIEWS.AXIS, (t => { this.updateAxis(t) })), i.on(d.c.VIEWS.WRITING_MODE, (t => { this.updateWritingMode(t) })), i.display(this.request) } prepend(t, e) { var i = this.createView(t, e); return i.on(d.c.VIEWS.RESIZED, (t => { this.counter(t) })), this.views.prepend(i), i.onDisplayed = this.afterDisplayed.bind(this), i.onResize = this.afterResized.bind(this), i.on(d.c.VIEWS.AXIS, (t => { this.updateAxis(t) })), i.on(d.c.VIEWS.WRITING_MODE, (t => { this.updateWritingMode(t) })), i.display(this.request) } counter(t) { "vertical" === this.settings.axis ? this.scrollBy(0, t.heightDelta, !0) : this.scrollBy(t.widthDelta, 0, !0) } next() { var t; let e = this.settings.direction; if (this.views.length && (!this.isPaginated || "horizontal" !== this.settings.axis || e && "ltr" !== e ? this.isPaginated && "horizontal" === this.settings.axis && "rtl" === e ? (this.scrollLeft = this.container.scrollLeft, "default" === this.settings.rtlScrollType ? this.container.scrollLeft > 0 ? this.scrollBy(this.layout.delta, 0, !0) : t = this.views.last().section.next() : this.container.scrollLeft + -1 * this.layout.delta > -1 * this.container.scrollWidth ? this.scrollBy(this.layout.delta, 0, !0) : t = this.views.last().section.next()) : this.isPaginated && "vertical" === this.settings.axis ? (this.scrollTop = this.container.scrollTop, this.container.scrollTop + this.container.offsetHeight < this.container.scrollHeight ? this.scrollBy(0, this.layout.height, !0) : t = this.views.last().section.next()) : t = this.views.last().section.next() : (this.scrollLeft = this.container.scrollLeft, this.container.scrollLeft + this.container.offsetWidth + this.layout.delta <= this.container.scrollWidth ? this.scrollBy(this.layout.delta, 0, !0) : t = this.views.last().section.next()), t)) { this.clear(), this.updateLayout(); let e = !1; return "pre-paginated" === this.layout.name && 2 === this.layout.divisor && t.properties.includes("page-spread-right") && (e = !0), this.append(t, e).then(function () { return this.handleNextPrePaginated(e, t, this.append) }.bind(this), (t => t)).then(function () { this.isPaginated || "horizontal" !== this.settings.axis || "rtl" !== this.settings.direction || "default" !== this.settings.rtlScrollType || this.scrollTo(this.container.scrollWidth, 0, !0), this.views.show() }.bind(this)) } } prev() { var t; let e = this.settings.direction; if (this.views.length && (!this.isPaginated || "horizontal" !== this.settings.axis || e && "ltr" !== e ? this.isPaginated && "horizontal" === this.settings.axis && "rtl" === e ? (this.scrollLeft = this.container.scrollLeft, "default" === this.settings.rtlScrollType ? this.container.scrollLeft + this.container.offsetWidth < this.container.scrollWidth ? this.scrollBy(-this.layout.delta, 0, !0) : t = this.views.first().section.prev() : this.container.scrollLeft < 0 ? this.scrollBy(-this.layout.delta, 0, !0) : t = this.views.first().section.prev()) : this.isPaginated && "vertical" === this.settings.axis ? (this.scrollTop = this.container.scrollTop, this.container.scrollTop > 0 ? this.scrollBy(0, -this.layout.height, !0) : t = this.views.first().section.prev()) : t = this.views.first().section.prev() : (this.scrollLeft = this.container.scrollLeft, this.container.scrollLeft > 0 ? this.scrollBy(-this.layout.delta, 0, !0) : t = this.views.first().section.prev()), t)) { this.clear(), this.updateLayout(); let e = !1; return "pre-paginated" === this.layout.name && 2 === this.layout.divisor && "object" != typeof t.prev() && (e = !0), this.prepend(t, e).then(function () { var e; if ("pre-paginated" === this.layout.name && this.layout.divisor > 1 && (e = t.prev())) return this.prepend(e) }.bind(this), (t => t)).then(function () { this.isPaginated && "horizontal" === this.settings.axis && ("rtl" === this.settings.direction ? "default" === this.settings.rtlScrollType ? this.scrollTo(0, 0, !0) : this.scrollTo(-1 * this.container.scrollWidth + this.layout.delta, 0, !0) : this.scrollTo(this.container.scrollWidth - this.layout.delta, 0, !0)), this.views.show() }.bind(this)) } } current() { var t = this.visible(); return t.length ? t[t.length - 1] : null } clear() { this.views && (this.views.hide(), this.scrollTo(0, 0, !0), this.views.clear()) } currentLocation() { return this.updateLayout(), this.isPaginated && "horizontal" === this.settings.axis ? this.location = this.paginatedLocation() : this.location = this.scrolledLocation(), this.location } scrolledLocation() { let t = this.visible(), e = this.container.getBoundingClientRect(), i = e.height < window.innerHeight ? e.height : window.innerHeight, n = e.width < window.innerWidth ? e.width : window.innerWidth, s = "vertical" === this.settings.axis, r = (this.settings.direction, 0); return this.settings.fullsize && (r = s ? window.scrollY : window.scrollX), t.map((t => { let o, a, h, l, { index: c, href: u } = t.section, d = t.position(), f = t.width(), p = t.height(); s ? (o = r + e.top - d.top + 0, a = o + i - 0, l = this.layout.count(p, i).pages, h = i) : (o = r + e.left - d.left + 0, a = o + n - 0, l = this.layout.count(f, n).pages, h = n); let g = Math.ceil(o / h), m = [], v = Math.ceil(a / h); if ("rtl" === this.settings.direction && !s) { let t = g; g = l - v, v = l - t } m = []; for (var y = g; y <= v; y++) { let t = y + 1; m.push(t) } return { index: c, href: u, pages: m, totalPages: l, mapping: this.mapping.page(t.contents, t.section.cfiBase, o, a) } })) } paginatedLocation() { let t = this.visible(), e = this.container.getBoundingClientRect(), i = 0, n = 0; return this.settings.fullsize && (i = window.scrollX), t.map((t => { let s, r, o, a, { index: h, href: l } = t.section, c = t.position(), u = t.width(); "rtl" === this.settings.direction ? (s = e.right - i, a = Math.min(Math.abs(s - c.left), this.layout.width) - n, o = c.width - (c.right - s) - n, r = o - a) : (s = e.left + i, a = Math.min(c.right - s, this.layout.width) - n, r = s - c.left + n, o = r + a), n += a; let d = this.mapping.page(t.contents, t.section.cfiBase, r, o), f = this.layout.count(u).pages, p = Math.floor(r / this.layout.pageWidth), g = [], m = Math.floor(o / this.layout.pageWidth); if (p < 0 && (p = 0, m += 1), "rtl" === this.settings.direction) { let t = p; p = f - m, m = f - t } for (var v = p + 1; v <= m; v++) { let t = v; g.push(t) } return { index: h, href: l, pages: g, totalPages: f, mapping: d } })) } isVisible(t, e, i, n) { var s = t.position(), r = n || this.bounds(); return "horizontal" === this.settings.axis && s.right > r.left - e && s.left < r.right + i || "vertical" === this.settings.axis && s.bottom > r.top - e && s.top < r.bottom + i } visible() { for (var t, e = this.bounds(), i = this.views.displayed(), n = i.length, s = [], r = 0; r < n; r++)t = i[r], !0 === this.isVisible(t, 0, 0, e) && s.push(t); return s } scrollBy(t, e, i) { let n = "rtl" === this.settings.direction ? -1 : 1; i && (this.ignore = !0), this.settings.fullsize ? window.scrollBy(t * n, e * n) : (t && (this.container.scrollLeft += t * n), e && (this.container.scrollTop += e)), this.scrolled = !0 } scrollTo(t, e, i) { i && (this.ignore = !0), this.settings.fullsize ? window.scrollTo(t, e) : (this.container.scrollLeft = t, this.container.scrollTop = e), this.scrolled = !0 } onScroll() { let t, e; this.settings.fullsize ? (t = window.scrollY, e = window.scrollX) : (t = this.container.scrollTop, e = this.container.scrollLeft), this.scrollTop = t, this.scrollLeft = e, this.ignore ? this.ignore = !1 : (this.emit(d.c.MANAGERS.SCROLL, { top: t, left: e }), clearTimeout(this.afterScrolled), this.afterScrolled = setTimeout(function () { this.emit(d.c.MANAGERS.SCROLLED, { top: this.scrollTop, left: this.scrollLeft }) }.bind(this), 20)) } bounds() { return this.stage.bounds() } applyLayout(t) { this.layout = t, this.updateLayout(), this.views && this.views.length > 0 && "pre-paginated" === this.layout.name && this.display(this.views.first().section) } updateLayout() { this.stage && (this._stageSize = this.stage.size(), this.isPaginated ? (this.layout.calculate(this._stageSize.width, this._stageSize.height, this.settings.gap), this.settings.offset = this.layout.delta / this.layout.divisor) : this.layout.calculate(this._stageSize.width, this._stageSize.height), this.viewSettings.width = this.layout.width, this.viewSettings.height = this.layout.height, this.setLayout(this.layout)) } setLayout(t) { this.viewSettings.layout = t, this.mapping = new o.a(t.props, this.settings.direction, this.settings.axis), this.views && this.views.forEach((function (e) { e && e.setLayout(t) })) } updateWritingMode(t) { this.writingMode = t } updateAxis(t, e) { (e || t !== this.settings.axis) && (this.settings.axis = t, this.stage && this.stage.axis(t), this.viewSettings.axis = t, this.mapping && (this.mapping = new o.a(this.layout.props, this.settings.direction, this.settings.axis)), this.layout && ("vertical" === t ? this.layout.spread("none") : this.layout.spread(this.layout.settings.spread))) } updateFlow(t, e = "auto") { let i = "paginated" === t || "auto" === t; this.isPaginated = i, "scrolled-doc" === t || "scrolled-continuous" === t || "scrolled" === t ? this.updateAxis("vertical") : this.updateAxis("horizontal"), this.viewSettings.flow = t, this.settings.overflow ? this.overflow = this.settings.overflow : this.overflow = i ? "hidden" : e, this.stage && this.stage.overflow(this.overflow), this.updateLayout() } getContents() { var t = []; return this.views ? (this.views.forEach((function (e) { const i = e && e.contents; i && t.push(i) })), t) : t } direction(t = "ltr") { this.settings.direction = t, this.stage && this.stage.direction(t), this.viewSettings.direction = t, this.updateLayout() } isRendered() { return this.rendered } } s()(f.prototype), e.a = f }, function (t, e, i) { "use strict"; var n = i(2), s = i(0); e.a = class { constructor(t, e, i, n = !1) { this.layout = t, this.horizontal = "horizontal" === i, this.direction = e || "ltr", this._dev = n } section(t) { var e = this.findRanges(t); return this.rangeListToCfiList(t.section.cfiBase, e) } page(t, e, i, s) { var r, o = !(!t || !t.document) && t.document.body; if (o) { if (r = this.rangePairToCfiPair(e, { start: this.findStart(o, i, s), end: this.findEnd(o, i, s) }), !0 === this._dev) { let e = t.document, i = new n.a(r.start).toRange(e), s = new n.a(r.end).toRange(e), o = e.defaultView.getSelection(), a = e.createRange(); o.removeAllRanges(), a.setStart(i.startContainer, i.startOffset), a.setEnd(s.endContainer, s.endOffset), o.addRange(a) } return r } } walk(t, e) { if (!t || t.nodeType !== Node.TEXT_NODE) { var i = function (t) { return t.data.trim().length > 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_REJECT }, n = i; n.acceptNode = i; for (var s, r, o = document.createTreeWalker(t, NodeFilter.SHOW_TEXT, n, !1); (s = o.nextNode()) && !(r = e(s));); return r } } findRanges(t) { for (var e, i, n = [], s = t.contents.scrollWidth(), r = Math.ceil(s / this.layout.spreadWidth) * this.layout.divisor, o = this.layout.columnWidth, a = this.layout.gap, h = 0; h < r.pages; h++)e = (o + a) * h, i = o * (h + 1) + a * h, n.push({ start: this.findStart(t.document.body, e, i), end: this.findEnd(t.document.body, e, i) }); return n } findStart(t, e, i) { for (var n, r, o = [t], a = t; o.length;)if (n = o.shift(), r = this.walk(n, (t => { var n, r, h, l, c; if (c = Object(s.nodeBounds)(t), this.horizontal && "ltr" === this.direction) { if (n = this.horizontal ? c.left : c.top, r = this.horizontal ? c.right : c.bottom, n >= e && n <= i) return t; if (r > e) return t; a = t, o.push(t) } else if (this.horizontal && "rtl" === this.direction) { if (n = c.left, (r = c.right) <= i && r >= e) return t; if (n < i) return t; a = t, o.push(t) } else { if (h = c.top, l = c.bottom, h >= e && h <= i) return t; if (l > e) return t; a = t, o.push(t) } }))) return this.findTextStartRange(r, e, i); return this.findTextStartRange(a, e, i) } findEnd(t, e, i) { for (var n, r, o = [t], a = t; o.length;)if (n = o.shift(), r = this.walk(n, (t => { var n, r, h, l, c; if (c = Object(s.nodeBounds)(t), this.horizontal && "ltr" === this.direction) { if (n = Math.round(c.left), r = Math.round(c.right), n > i && a) return a; if (r > i) return t; a = t, o.push(t) } else if (this.horizontal && "rtl" === this.direction) { if (n = Math.round(this.horizontal ? c.left : c.top), (r = Math.round(this.horizontal ? c.right : c.bottom)) < e && a) return a; if (n < e) return t; a = t, o.push(t) } else { if (h = Math.round(c.top), l = Math.round(c.bottom), h > i && a) return a; if (l > i) return t; a = t, o.push(t) } }))) return this.findTextEndRange(r, e, i); return this.findTextEndRange(a, e, i) } findTextStartRange(t, e, i) { for (var n, s, r = this.splitTextNodeIntoRanges(t), o = 0; o < r.length; o++)if (s = (n = r[o]).getBoundingClientRect(), this.horizontal && "ltr" === this.direction) { if (s.left >= e) return n } else if (this.horizontal && "rtl" === this.direction) { if (s.right <= i) return n } else if (s.top >= e) return n; return r[0] } findTextEndRange(t, e, i) { for (var n, s, r, o, a, h, l, c = this.splitTextNodeIntoRanges(t), u = 0; u < c.length; u++) { if (r = (s = c[u]).getBoundingClientRect(), this.horizontal && "ltr" === this.direction) { if (o = r.left, a = r.right, o > i && n) return n; if (a > i) return s } else if (this.horizontal && "rtl" === this.direction) { if (o = r.left, (a = r.right) < e && n) return n; if (o < e) return s } else { if (h = r.top, l = r.bottom, h > i && n) return n; if (l > i) return s } n = s } return c[c.length - 1] } splitTextNodeIntoRanges(t, e) { var i, n = [], s = (t.textContent || "").trim(), r = t.ownerDocument, o = e || " ", a = s.indexOf(o); if (-1 === a || t.nodeType != Node.TEXT_NODE) return (i = r.createRange()).selectNodeContents(t), [i]; for ((i = r.createRange()).setStart(t, 0), i.setEnd(t, a), n.push(i), i = !1; -1 != a;)(a = s.indexOf(o, a + 1)) > 0 && (i && (i.setEnd(t, a), n.push(i)), (i = r.createRange()).setStart(t, a + 1)); return i && (i.setEnd(t, s.length), n.push(i)), n } rangePairToCfiPair(t, e) { var i = e.start, s = e.end; return i.collapse(!0), s.collapse(!1), { start: new n.a(i, t).toString(), end: new n.a(s, t).toString() } } rangeListToCfiList(t, e) { for (var i, n = [], s = 0; s < e.length; s++)i = this.rangePairToCfiPair(t, e[s]), n.push(i); return n } axis(t) { return t && (this.horizontal = "horizontal" === t), this.horizontal } } }, function (t, e, i) { "use strict"; var n = i(3), s = i.n(n), r = i(0), o = i(2), a = i(11), h = i(8), l = i(1); const c = "undefined" != typeof navigator, u = c && /Chrome/.test(navigator.userAgent), d = c && !u && /AppleWebKit/.test(navigator.userAgent); class f { constructor(t, e, i, n) { this.epubcfi = new o.a, this.document = t, this.documentElement = this.document.documentElement, this.content = e || this.document.body, this.window = this.document.defaultView, this._size = { width: 0, height: 0 }, this.sectionIndex = n || 0, this.cfiBase = i || "", this.epubReadingSystem("epub.js", l.b), this.called = 0, this.active = !0, this.listeners() } static get listenedEvents() { return l.a } width(t) { var e = this.content; return t && Object(r.isNumber)(t) && (t += "px"), t && (e.style.width = t), parseInt(this.window.getComputedStyle(e).width) } height(t) { var e = this.content; return t && Object(r.isNumber)(t) && (t += "px"), t && (e.style.height = t), parseInt(this.window.getComputedStyle(e).height) } contentWidth(t) { var e = this.content || this.document.body; return t && Object(r.isNumber)(t) && (t += "px"), t && (e.style.width = t), parseInt(this.window.getComputedStyle(e).width) } contentHeight(t) { var e = this.content || this.document.body; return t && Object(r.isNumber)(t) && (t += "px"), t && (e.style.height = t), parseInt(this.window.getComputedStyle(e).height) } textWidth() { let t, e, i = this.document.createRange(), n = this.content || this.document.body, s = Object(r.borders)(n); return i.selectNodeContents(n), t = i.getBoundingClientRect(), e = t.width, s && s.width && (e += s.width), Math.round(e) } textHeight() { let t, e, i = this.document.createRange(), n = this.content || this.document.body; return i.selectNodeContents(n), t = i.getBoundingClientRect(), e = t.bottom, Math.round(e) } scrollWidth() { return this.documentElement.scrollWidth } scrollHeight() { return this.documentElement.scrollHeight } overflow(t) { return t && (this.documentElement.style.overflow = t), this.window.getComputedStyle(this.documentElement).overflow } overflowX(t) { return t && (this.documentElement.style.overflowX = t), this.window.getComputedStyle(this.documentElement).overflowX } overflowY(t) { return t && (this.documentElement.style.overflowY = t), this.window.getComputedStyle(this.documentElement).overflowY } css(t, e, i) { var n = this.content || this.document.body; return e ? n.style.setProperty(t, e, i ? "important" : "") : n.style.removeProperty(t), this.window.getComputedStyle(n)[t] } viewport(t) { var e, i = this.document.querySelector("meta[name='viewport']"), n = { width: void 0, height: void 0, scale: void 0, minimum: void 0, maximum: void 0, scalable: void 0 }, s = []; if (i && i.hasAttribute("content")) { let t = i.getAttribute("content"), e = t.match(/width\s*=\s*([^,]*)/), s = t.match(/height\s*=\s*([^,]*)/), r = t.match(/initial-scale\s*=\s*([^,]*)/), o = t.match(/minimum-scale\s*=\s*([^,]*)/), a = t.match(/maximum-scale\s*=\s*([^,]*)/), h = t.match(/user-scalable\s*=\s*([^,]*)/); e && e.length && void 0 !== e[1] && (n.width = e[1]), s && s.length && void 0 !== s[1] && (n.height = s[1]), r && r.length && void 0 !== r[1] && (n.scale = r[1]), o && o.length && void 0 !== o[1] && (n.minimum = o[1]), a && a.length && void 0 !== a[1] && (n.maximum = a[1]), h && h.length && void 0 !== h[1] && (n.scalable = h[1]) } return e = Object(r.defaults)(t || {}, n), t && (e.width && s.push("width=" + e.width), e.height && s.push("height=" + e.height), e.scale && s.push("initial-scale=" + e.scale), "no" === e.scalable ? (s.push("minimum-scale=" + e.scale), s.push("maximum-scale=" + e.scale), s.push("user-scalable=" + e.scalable)) : (e.scalable && s.push("user-scalable=" + e.scalable), e.minimum && s.push("minimum-scale=" + e.minimum), e.maximum && s.push("minimum-scale=" + e.maximum)), i || ((i = this.document.createElement("meta")).setAttribute("name", "viewport"), this.document.querySelector("head").appendChild(i)), i.setAttribute("content", s.join(", ")), this.window.scrollTo(0, 0)), e } expand() { this.emit(l.c.CONTENTS.EXPAND) } listeners() { this.imageLoadListeners(), this.mediaQueryListeners(), this.addEventListeners(), this.addSelectionListeners(), "undefined" == typeof ResizeObserver ? (this.resizeListeners(), this.visibilityListeners()) : this.resizeObservers(), this.linksHandler() } removeListeners() { this.removeEventListeners(), this.removeSelectionListeners(), this.observer && this.observer.disconnect(), clearTimeout(this.expanding) } resizeCheck() { let t = this.textWidth(), e = this.textHeight(); t == this._size.width && e == this._size.height || (this._size = { width: t, height: e }, this.onResize && this.onResize(this._size), this.emit(l.c.CONTENTS.RESIZE, this._size)) } resizeListeners() { clearTimeout(this.expanding), requestAnimationFrame(this.resizeCheck.bind(this)), this.expanding = setTimeout(this.resizeListeners.bind(this), 350) } visibilityListeners() { document.addEventListener("visibilitychange", (() => { "visible" === document.visibilityState && !1 === this.active ? (this.active = !0, this.resizeListeners()) : (this.active = !1, clearTimeout(this.expanding)) })) } transitionListeners() { let t = this.content; t.style.transitionProperty = "font, font-size, font-size-adjust, font-stretch, font-variation-settings, font-weight, width, height", t.style.transitionDuration = "0.001ms", t.style.transitionTimingFunction = "linear", t.style.transitionDelay = "0", this._resizeCheck = this.resizeCheck.bind(this), this.document.addEventListener("transitionend", this._resizeCheck) } mediaQueryListeners() { for (var t = this.document.styleSheets, e = function (t) { t.matches && !this._expanding && setTimeout(this.expand.bind(this), 1) }.bind(this), i = 0; i < t.length; i += 1) { var n; try { n = t[i].cssRules } catch (t) { return } if (!n) return; for (var s = 0; s < n.length; s += 1)n[s].media && this.window.matchMedia(n[s].media.mediaText).addListener(e) } } resizeObservers() { this.observer = new ResizeObserver((t => { requestAnimationFrame(this.resizeCheck.bind(this)) })), this.observer.observe(this.document.documentElement) } mutationObservers() { this.observer = new MutationObserver((t => { this.resizeCheck() })), this.observer.observe(this.document, { attributes: !0, childList: !0, characterData: !0, subtree: !0 }) } imageLoadListeners() { for (var t, e = this.document.querySelectorAll("img"), i = 0; i < e.length; i++)void 0 !== (t = e[i]).naturalWidth && 0 === t.naturalWidth && (t.onload = this.expand.bind(this)) } fontLoadListeners() { this.document && this.document.fonts && this.document.fonts.ready.then(function () { this.resizeCheck() }.bind(this)) } root() { return this.document ? this.document.documentElement : null } locationOf(t, e) { var i, n = { left: 0, top: 0 }; if (!this.document) return n; if (this.epubcfi.isCfiString(t)) { let s = new o.a(t).toRange(this.document, e); if (s) { try { if (!s.endContainer || s.startContainer == s.endContainer && s.startOffset == s.endOffset) { let t = s.startContainer.textContent.indexOf(" ", s.startOffset); -1 == t && (t = s.startContainer.textContent.length), s.setEnd(s.startContainer, t) } } catch (t) { console.error("setting end offset to start container length failed", t) } if (s.startContainer.nodeType === Node.ELEMENT_NODE) i = s.startContainer.getBoundingClientRect(), n.left = i.left, n.top = i.top; else if (d) { let e = s.startContainer, n = new Range; try { 1 === e.nodeType ? i = e.getBoundingClientRect() : s.startOffset + 2 < e.length ? (n.setStart(e, s.startOffset), n.setEnd(e, s.startOffset + 2), i = n.getBoundingClientRect()) : s.startOffset - 2 > 0 ? (n.setStart(e, s.startOffset - 2), n.setEnd(e, s.startOffset), i = n.getBoundingClientRect()) : i = e.parentNode.getBoundingClientRect() } catch (t) { console.error(t, t.stack) } } else i = s.getBoundingClientRect() } } else if ("string" == typeof t && t.indexOf("#") > -1) { let e = t.substring(t.indexOf("#") + 1), n = this.document.getElementById(e); if (n) if (d) { let t = new Range; t.selectNode(n), i = t.getBoundingClientRect() } else i = n.getBoundingClientRect() } return i && (n.left = i.left, n.top = i.top), n } addStylesheet(t) { return new Promise(function (e, i) { var n, s = !1; this.document ? (n = this.document.querySelector("link[href='" + t + "']")) ? e(!0) : ((n = this.document.createElement("link")).type = "text/css", n.rel = "stylesheet", n.href = t, n.onload = n.onreadystatechange = function () { s || this.readyState && "complete" != this.readyState || (s = !0, setTimeout((() => { e(!0) }), 1)) }, this.document.head.appendChild(n)) : e(!1) }.bind(this)) } _getStylesheetNode(t) { var e; return t = "epubjs-inserted-css-" + (t || ""), !!this.document && ((e = this.document.getElementById(t)) || ((e = this.document.createElement("style")).id = t, this.document.head.appendChild(e)), e) } addStylesheetCss(t, e) { return !(!this.document || !t || (this._getStylesheetNode(e).innerHTML = t, 0)) } addStylesheetRules(t, e) { var i; if (this.document && t && 0 !== t.length) if (i = this._getStylesheetNode(e).sheet, "[object Array]" === Object.prototype.toString.call(t)) for (var n = 0, s = t.length; n < s; n++) { var r = 1, o = t[n], a = t[n][0], h = ""; "[object Array]" === Object.prototype.toString.call(o[1][0]) && (o = o[1], r = 0); for (var l = o.length; r < l; r++) { var c = o[r]; h += c[0] + ":" + c[1] + (c[2] ? " !important" : "") + ";\n" } i.insertRule(a + "{" + h + "}", i.cssRules.length) } else Object.keys(t).forEach((e => { const n = t[e]; if (Array.isArray(n)) n.forEach((t => { const n = Object.keys(t).map((e => `${e}:${t[e]}`)).join(";"); i.insertRule(`${e}{${n}}`, i.cssRules.length) })); else { const t = Object.keys(n).map((t => `${t}:${n[t]}`)).join(";"); i.insertRule(`${e}{${t}}`, i.cssRules.length) } })) } addScript(t) { return new Promise(function (e, i) { var n, s = !1; this.document ? ((n = this.document.createElement("script")).type = "text/javascript", n.async = !0, n.src = t, n.onload = n.onreadystatechange = function () { s || this.readyState && "complete" != this.readyState || (s = !0, setTimeout((function () { e(!0) }), 1)) }, this.document.head.appendChild(n)) : e(!1) }.bind(this)) } addClass(t) { var e; this.document && (e = this.content || this.document.body) && e.classList.add(t) } removeClass(t) { var e; this.document && (e = this.content || this.document.body) && e.classList.remove(t) } addEventListeners() { this.document && (this._triggerEvent = this.triggerEvent.bind(this), l.a.forEach((function (t) { this.document.addEventListener(t, this._triggerEvent, { passive: !0 }) }), this)) } removeEventListeners() { this.document && (l.a.forEach((function (t) { this.document.removeEventListener(t, this._triggerEvent, { passive: !0 }) }), this), this._triggerEvent = void 0) } triggerEvent(t) { this.emit(t.type, t) } addSelectionListeners() { this.document && (this._onSelectionChange = this.onSelectionChange.bind(this), this.document.addEventListener("selectionchange", this._onSelectionChange, { passive: !0 })) } removeSelectionListeners() { this.document && (this.document.removeEventListener("selectionchange", this._onSelectionChange, { passive: !0 }), this._onSelectionChange = void 0) } onSelectionChange(t) { this.selectionEndTimeout && clearTimeout(this.selectionEndTimeout), this.selectionEndTimeout = setTimeout(function () { var t = this.window.getSelection(); this.triggerSelectedEvent(t) }.bind(this), 250) } triggerSelectedEvent(t) { var e, i; t && t.rangeCount > 0 && ((e = t.getRangeAt(0)).collapsed || (i = new o.a(e, this.cfiBase).toString(), this.emit(l.c.CONTENTS.SELECTED, i), this.emit(l.c.CONTENTS.SELECTED_RANGE, e))) } range(t, e) { return new o.a(t).toRange(this.document, e) } cfiFromRange(t, e) { return new o.a(t, this.cfiBase, e).toString() } cfiFromNode(t, e) { return new o.a(t, this.cfiBase, e).toString() } map(t) { return new a.a(t).section() } size(t, e) { var i = { scale: 1, scalable: "no" }; this.layoutStyle("scrolling"), t >= 0 && (this.width(t), i.width = t, this.css("padding", "0 " + t / 12 + "px")), e >= 0 && (this.height(e), i.height = e), this.css("margin", "0"), this.css("box-sizing", "border-box"), this.viewport(i) } columns(t, e, i, n, s) { let o = Object(r.prefixed)("column-axis"), a = Object(r.prefixed)("column-gap"), h = Object(r.prefixed)("column-width"), l = Object(r.prefixed)("column-fill"), c = 0 === this.writingMode().indexOf("vertical") ? "vertical" : "horizontal"; this.layoutStyle("paginated"), "rtl" === s && "horizontal" === c && this.direction(s), this.width(t), this.height(e), this.viewport({ width: t, height: e, scale: 1, scalable: "no" }), this.css("overflow-y", "hidden"), this.css("margin", "0", !0), "vertical" === c ? (this.css("padding-top", n / 2 + "px", !0), this.css("padding-bottom", n / 2 + "px", !0), this.css("padding-left", "20px"), this.css("padding-right", "20px"), this.css(o, "vertical")) : (this.css("padding-top", "20px"), this.css("padding-bottom", "20px"), this.css("padding-left", n / 2 + "px", !0), this.css("padding-right", n / 2 + "px", !0), this.css(o, "horizontal")), this.css("box-sizing", "border-box"), this.css("max-width", "inherit"), this.css(l, "auto"), this.css(a, n + "px"), this.css(h, i + "px"), this.css("-webkit-line-box-contain", "block glyphs replaced") } scaler(t, e, i) { var n = "scale(" + t + ")", s = ""; this.css("transform-origin", "top left"), (e >= 0 || i >= 0) && (s = " translate(" + (e || 0) + "px, " + (i || 0) + "px )"), this.css("transform", n + s) } fit(t, e, i) { var n = this.viewport(), s = parseInt(n.width), r = parseInt(n.height), o = t / s, a = e / r, h = o < a ? o : a; if (this.layoutStyle("paginated"), this.width(s), this.height(r), this.overflow("hidden"), this.scaler(h, 0, 0), this.css("background-size", s * h + "px " + r * h + "px"), this.css("background-color", "transparent"), i && i.properties.includes("page-spread-left")) { var l = t - s * h; this.css("margin-left", l + "px") } } direction(t) { this.documentElement && (this.documentElement.style.direction = t) } mapPage(t, e, i, n, s) { return new a.a(e, s).page(this, t, i, n) } linksHandler() { Object(h.c)(this.content, (t => { this.emit(l.c.CONTENTS.LINK_CLICKED, t) })) } writingMode(t) { let e = Object(r.prefixed)("writing-mode"); return t && this.documentElement && (this.documentElement.style[e] = t), this.window.getComputedStyle(this.documentElement)[e] || "" } layoutStyle(t) { return t && (this._layoutStyle = t, navigator.epubReadingSystem.layoutStyle = this._layoutStyle), this._layoutStyle || "paginated" } epubReadingSystem(t, e) { return navigator.epubReadingSystem = { name: t, version: e, layoutStyle: this.layoutStyle(), hasFeature: function (t) { switch (t) { case "dom-manipulation": case "layout-changes": case "touch-events": case "mouse-events": case "keyboard-events": return !0; default: return !1 } } }, navigator.epubReadingSystem } destroy() { this.removeListeners() } } s()(f.prototype), e.a = f }, function (t, e, i) { "use strict"; Object.defineProperty(e, "__esModule", { value: !0 }), e.Underline = e.Highlight = e.Mark = e.Pane = void 0; var n = function () { function t(t, e) { for (var i = 0; i < e.length; i++) { var n = e[i]; n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(t, n.key, n) } } return function (e, i, n) { return i && t(e.prototype, i), n && t(e, n), e } }(), s = o(i(49)), r = o(i(50)); function o(t) { return t && t.__esModule ? t : { default: t } } function a(t, e) { if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return !e || "object" != typeof e && "function" != typeof e ? t : e } function h(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, enumerable: !1, writable: !0, configurable: !0 } }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e) } function l(t, e) { if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function") } e.Pane = function () { function t(e) { var i = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : document.body; l(this, t), this.target = e, this.element = s.default.createElement("svg"), this.marks = [], this.element.style.position = "absolute", this.element.setAttribute("pointer-events", "none"), r.default.proxyMouse(this.target, this.marks), this.container = i, this.container.appendChild(this.element), this.render() } return n(t, [{ key: "addMark", value: function (t) { var e = s.default.createElement("g"); return this.element.appendChild(e), t.bind(e, this.container), this.marks.push(t), t.render(), t } }, { key: "removeMark", value: function (t) { var e = this.marks.indexOf(t); if (-1 !== e) { var i = t.unbind(); this.element.removeChild(i), this.marks.splice(e, 1) } } }, { key: "render", value: function () { var t, e, i, n; !function (t, e) { t.style.setProperty("top", e.top + "px", "important"), t.style.setProperty("left", e.left + "px", "important"), t.style.setProperty("height", e.height + "px", "important"), t.style.setProperty("width", e.width + "px", "important") }(this.element, (t = this.target, e = this.container, i = e.getBoundingClientRect(), n = t.getBoundingClientRect(), { top: n.top - i.top, left: n.left - i.left, height: t.scrollHeight, width: t.scrollWidth })); var s = !0, r = !1, o = void 0; try { for (var a, h = this.marks[Symbol.iterator](); !(s = (a = h.next()).done); s = !0)a.value.render() } catch (t) { r = !0, o = t } finally { try { !s && h.return && h.return() } finally { if (r) throw o } } } }]), t }(); var c = e.Mark = function () { function t() { l(this, t), this.element = null } return n(t, [{ key: "bind", value: function (t, e) { this.element = t, this.container = e } }, { key: "unbind", value: function () { var t = this.element; return this.element = null, t } }, { key: "render", value: function () { } }, { key: "dispatchEvent", value: function (t) { this.element && this.element.dispatchEvent(t) } }, { key: "getBoundingClientRect", value: function () { return this.element.getBoundingClientRect() } }, { key: "getClientRects", value: function () { for (var t = [], e = this.element.firstChild; e;)t.push(e.getBoundingClientRect()), e = e.nextSibling; return t } }, { key: "filteredRanges", value: function () { var t = Array.from(this.range.getClientRects()); return t.filter((function (e) { for (var i = 0; i < t.length; i++) { if (t[i] === e) return !0; if (n = t[i], (s = e).right <= n.right && s.left >= n.left && s.top >= n.top && s.bottom <= n.bottom) return !1 } var n, s; return !0 })) } }]), t }(), u = e.Highlight = function (t) { function e(t, i, n, s) { l(this, e); var r = a(this, (e.__proto__ || Object.getPrototypeOf(e)).call(this)); return r.range = t, r.className = i, r.data = n || {}, r.attributes = s || {}, r } return h(e, t), n(e, [{ key: "bind", value: function (t, i) { for (var n in function t(e, i, n) { null === e && (e = Function.prototype); var s = Object.getOwnPropertyDescriptor(e, i); if (void 0 === s) { var r = Object.getPrototypeOf(e); return null === r ? void 0 : t(r, i, n) } if ("value" in s) return s.value; var o = s.get; return void 0 !== o ? o.call(n) : void 0 }(e.prototype.__proto__ || Object.getPrototypeOf(e.prototype), "bind", this).call(this, t, i), this.data) this.data.hasOwnProperty(n) && (this.element.dataset[n] = this.data[n]); for (var n in this.attributes) this.attributes.hasOwnProperty(n) && this.element.setAttribute(n, this.attributes[n]); this.className && this.element.classList.add(this.className) } }, { key: "render", value: function () { for (; this.element.firstChild;)this.element.removeChild(this.element.firstChild); for (var t = this.element.ownerDocument.createDocumentFragment(), e = this.filteredRanges(), i = this.element.getBoundingClientRect(), n = this.container.getBoundingClientRect(), r = 0, o = e.length; r < o; r++) { var a = e[r], h = s.default.createElement("rect"); h.setAttribute("x", a.left - i.left + n.left), h.setAttribute("y", a.top - i.top + n.top), h.setAttribute("height", a.height), h.setAttribute("width", a.width), t.appendChild(h) } this.element.appendChild(t) } }]), e }(c); e.Underline = function (t) { function e(t, i, n, s) { return l(this, e), a(this, (e.__proto__ || Object.getPrototypeOf(e)).call(this, t, i, n, s)) } return h(e, t), n(e, [{ key: "render", value: function () { for (; this.element.firstChild;)this.element.removeChild(this.element.firstChild); for (var t = this.element.ownerDocument.createDocumentFragment(), e = this.filteredRanges(), i = this.element.getBoundingClientRect(), n = this.container.getBoundingClientRect(), r = 0, o = e.length; r < o; r++) { var a = e[r], h = s.default.createElement("rect"); h.setAttribute("x", a.left - i.left + n.left), h.setAttribute("y", a.top - i.top + n.top), h.setAttribute("height", a.height), h.setAttribute("width", a.width), h.setAttribute("fill", "none"); var l = s.default.createElement("line"); l.setAttribute("x1", a.left - i.left + n.left), l.setAttribute("x2", a.left - i.left + n.left + a.width), l.setAttribute("y1", a.top - i.top + n.top + a.height - 1), l.setAttribute("y2", a.top - i.top + n.top + a.height - 1), l.setAttribute("stroke-width", 1), l.setAttribute("stroke", "black"), l.setAttribute("stroke-linecap", "square"), t.appendChild(h), t.appendChild(l) } this.element.appendChild(t) } }]), e }(u) }, function (t, e, i) { "use strict"; function n(t, e) { return void 0 === e && (e = Object), e && "function" == typeof e.freeze ? e.freeze(t) : t } var s = n({ HTML: "text/html", isHTML: function (t) { return t === s.HTML }, XML_APPLICATION: "application/xml", XML_TEXT: "text/xml", XML_XHTML_APPLICATION: "application/xhtml+xml", XML_SVG_IMAGE: "image/svg+xml" }), r = n({ HTML: "http://www.w3.org/1999/xhtml", isHTML: function (t) { return t === r.HTML }, SVG: "http://www.w3.org/2000/svg", XML: "http://www.w3.org/XML/1998/namespace", XMLNS: "http://www.w3.org/2000/xmlns/" }); e.freeze = n, e.MIME_TYPE = s, e.NAMESPACE = r }, function (t, e, i) { var n = i(25); e.DOMImplementation = n.DOMImplementation, e.XMLSerializer = n.XMLSerializer, e.DOMParser = i(46).DOMParser }, function (t, e, i) { "use strict"; var n = i(3), s = i.n(n), r = i(0), o = i(6), a = i(2), h = i(9), l = i(1); class c { constructor(t) { this.settings = t, this.name = t.layout || "reflowable", this._spread = "none" !== t.spread, this._minSpreadWidth = t.minSpreadWidth || 800, this._evenSpreads = t.evenSpreads || !1, "scrolled" === t.flow || "scrolled-continuous" === t.flow || "scrolled-doc" === t.flow ? this._flow = "scrolled" : this._flow = "paginated", this.width = 0, this.height = 0, this.spreadWidth = 0, this.delta = 0, this.columnWidth = 0, this.gap = 0, this.divisor = 1, this.props = { name: this.name, spread: this._spread, flow: this._flow, width: 0, height: 0, spreadWidth: 0, delta: 0, columnWidth: 0, gap: 0, divisor: 1 } } flow(t) { return void 0 !== t && (this._flow = "scrolled" === t || "scrolled-continuous" === t || "scrolled-doc" === t ? "scrolled" : "paginated", this.update({ flow: this._flow })), this._flow } spread(t, e) { return t && (this._spread = "none" !== t, this.update({ spread: this._spread })), e >= 0 && (this._minSpreadWidth = e), this._spread } calculate(t, e, i) { var n, s, r, o, a, h = i || 0, l = t, c = e, u = Math.floor(l / 12); a = this._spread && l >= this._minSpreadWidth ? 2 : 1, "reflowable" !== this.name || "paginated" !== this._flow || i >= 0 || (h = u % 2 == 0 ? u : u - 1), "pre-paginated" === this.name && (h = 0), a > 1 ? r = (n = l / a - h) + h : (n = l, r = l), "pre-paginated" === this.name && a > 1 && (l = n), s = n * a + h, o = l, this.width = l, this.height = c, this.spreadWidth = s, this.pageWidth = r, this.delta = o, this.columnWidth = n, this.gap = h, this.divisor = a, this.update({ width: l, height: c, spreadWidth: s, pageWidth: r, delta: o, columnWidth: n, gap: h, divisor: a }) } format(t, e, i) { return "pre-paginated" === this.name ? t.fit(this.columnWidth, this.height, e) : "paginated" === this._flow ? t.columns(this.width, this.height, this.columnWidth, this.gap, this.settings.direction) : i && "horizontal" === i ? t.size(null, this.height) : t.size(this.width, null) } count(t, e) { let i, n; return "pre-paginated" === this.name ? (i = 1, n = 1) : "paginated" === this._flow ? (e = e || this.delta, i = Math.ceil(t / e), n = i * this.divisor) : (e = e || this.height, i = Math.ceil(t / e), n = i), { spreads: i, pages: n } } update(t) { if (Object.keys(t).forEach((e => { this.props[e] === t[e] && delete t[e] })), Object.keys(t).length > 0) { let e = Object(r.extend)(this.props, t); this.emit(l.c.LAYOUT.UPDATED, e, t) } } } s()(c.prototype); var u = c, d = i(5), f = class { constructor(t) { this.rendition = t, this._themes = { default: { rules: {}, url: "", serialized: "" } }, this._overrides = {}, this._current = "default", this._injected = [], this.rendition.hooks.content.register(this.inject.bind(this)), this.rendition.hooks.content.register(this.overrides.bind(this)) } register() { if (0 !== arguments.length) return 1 === arguments.length && "object" == typeof arguments[0] ? this.registerThemes(arguments[0]) : 1 === arguments.length && "string" == typeof arguments[0] ? this.default(arguments[0]) : 2 === arguments.length && "string" == typeof arguments[1] ? this.registerUrl(arguments[0], arguments[1]) : 2 === arguments.length && "object" == typeof arguments[1] ? this.registerRules(arguments[0], arguments[1]) : void 0 } default(t) { if (t) return "string" == typeof t ? this.registerUrl("default", t) : "object" == typeof t ? this.registerRules("default", t) : void 0 } registerThemes(t) { for (var e in t) t.hasOwnProperty(e) && ("string" == typeof t[e] ? this.registerUrl(e, t[e]) : this.registerRules(e, t[e])) } registerCss(t, e) { this._themes[t] = { serialized: e }, (this._injected[t] || "default" == t) && this.update(t) } registerUrl(t, e) { var i = new d.a(e); this._themes[t] = { url: i.toString() }, (this._injected[t] || "default" == t) && this.update(t) } registerRules(t, e) { this._themes[t] = { rules: e }, (this._injected[t] || "default" == t) && this.update(t) } select(t) { var e = this._current; this._current = t, this.update(t), this.rendition.getContents().forEach((i => { i.removeClass(e), i.addClass(t) })) } update(t) { this.rendition.getContents().forEach((e => { this.add(t, e) })) } inject(t) { var e, i = [], n = this._themes; for (var s in n) !n.hasOwnProperty(s) || s !== this._current && "default" !== s || (((e = n[s]).rules && Object.keys(e.rules).length > 0 || e.url && -1 === i.indexOf(e.url)) && this.add(s, t), this._injected.push(s)); "default" != this._current && t.addClass(this._current) } add(t, e) { var i = this._themes[t]; i && e && (i.url ? e.addStylesheet(i.url) : i.serialized ? (e.addStylesheetCss(i.serialized, t), i.injected = !0) : i.rules && (e.addStylesheetRules(i.rules, t), i.injected = !0)) } override(t, e, i) { var n = this.rendition.getContents(); this._overrides[t] = { value: e, priority: !0 === i }, n.forEach((e => { e.css(t, this._overrides[t].value, this._overrides[t].priority) })) } removeOverride(t) { var e = this.rendition.getContents(); delete this._overrides[t], e.forEach((e => { e.css(t) })) } overrides(t) { var e = this._overrides; for (var i in e) e.hasOwnProperty(i) && t.css(i, e[i].value, e[i].priority) } fontSize(t) { this.override("font-size", t) } font(t) { this.override("font-family", t, !0) } destroy() { this.rendition = void 0, this._themes = void 0, this._overrides = void 0, this._current = void 0, this._injected = void 0 } }; i(12); class p { constructor({ type: t, cfiRange: e, data: i, sectionIndex: n, cb: s, className: r, styles: o }) { this.type = t, this.cfiRange = e, this.data = i, this.sectionIndex = n, this.mark = void 0, this.cb = s, this.className = r, this.styles = o } update(t) { this.data = t } attach(t) { let e, { cfiRange: i, data: n, type: s, mark: r, cb: o, className: a, styles: h } = this; return "highlight" === s ? e = t.highlight(i, n, o, a, h) : "underline" === s ? e = t.underline(i, n, o, a, h) : "mark" === s && (e = t.mark(i, n, o)), this.mark = e, this.emit(l.c.ANNOTATION.ATTACH, e), e } detach(t) { let e, { cfiRange: i, type: n } = this; return t && ("highlight" === n ? e = t.unhighlight(i) : "underline" === n ? e = t.ununderline(i) : "mark" === n && (e = t.unmark(i))), this.mark = void 0, this.emit(l.c.ANNOTATION.DETACH, e), e } text() { } } s()(p.prototype); var g = class { constructor(t) { this.rendition = t, this.highlights = [], this.underlines = [], this.marks = [], this._annotations = {}, this._annotationsBySectionIndex = {}, this.rendition.hooks.render.register(this.inject.bind(this)), this.rendition.hooks.unloaded.register(this.clear.bind(this)) } add(t, e, i, n, s, r) { let o = encodeURI(e + t), h = new a.a(e).spinePos, l = new p({ type: t, cfiRange: e, data: i, sectionIndex: h, cb: n, className: s, styles: r }); return this._annotations[o] = l, h in this._annotationsBySectionIndex ? this._annotationsBySectionIndex[h].push(o) : this._annotationsBySectionIndex[h] = [o], this.rendition.views().forEach((t => { l.sectionIndex === t.index && l.attach(t) })), l } remove(t, e) { let i = encodeURI(t + e); if (i in this._annotations) { let t = this._annotations[i]; if (e && t.type !== e) return; this.rendition.views().forEach((e => { this._removeFromAnnotationBySectionIndex(t.sectionIndex, i), t.sectionIndex === e.index && t.detach(e) })), delete this._annotations[i] } } _removeFromAnnotationBySectionIndex(t, e) { this._annotationsBySectionIndex[t] = this._annotationsAt(t).filter((t => t !== e)) } _annotationsAt(t) { return this._annotationsBySectionIndex[t] } highlight(t, e, i, n, s) { return this.add("highlight", t, e, i, n, s) } underline(t, e, i, n, s) { return this.add("underline", t, e, i, n, s) } mark(t, e, i) { return this.add("mark", t, e, i) } each() { return this._annotations.forEach.apply(this._annotations, arguments) } inject(t) { let e = t.index; e in this._annotationsBySectionIndex && this._annotationsBySectionIndex[e].forEach((e => { this._annotations[e].attach(t) })) } clear(t) { let e = t.index; e in this._annotationsBySectionIndex && this._annotationsBySectionIndex[e].forEach((e => { this._annotations[e].detach(t) })) } show() { } hide() { } }, m = i(20), v = i(10), y = i(22); class b { constructor(t, e) { this.settings = Object(r.extend)(this.settings || {}, { width: null, height: null, ignoreClass: "", manager: "default", view: "iframe", flow: null, layout: null, spread: null, minSpreadWidth: 800, stylesheet: null, resizeOnOrientationChange: !0, script: null, snap: !1, defaultDirection: "ltr", allowScriptedContent: !1, allowPopups: !1 }), Object(r.extend)(this.settings, e), "object" == typeof this.settings.manager && (this.manager = this.settings.manager), this.book = t, this.hooks = {}, this.hooks.display = new o.a(this), this.hooks.serialize = new o.a(this), this.hooks.content = new o.a(this), this.hooks.unloaded = new o.a(this), this.hooks.layout = new o.a(this), this.hooks.render = new o.a(this), this.hooks.show = new o.a(this), this.hooks.content.register(this.handleLinks.bind(this)), this.hooks.content.register(this.passEvents.bind(this)), this.hooks.content.register(this.adjustImages.bind(this)), this.book.spine.hooks.content.register(this.injectIdentifier.bind(this)), this.settings.stylesheet && this.book.spine.hooks.content.register(this.injectStylesheet.bind(this)), this.settings.script && this.book.spine.hooks.content.register(this.injectScript.bind(this)), this.themes = new f(this), this.annotations = new g(this), this.epubcfi = new a.a, this.q = new h.a(this), this.location = void 0, this.q.enqueue(this.book.opened), this.starting = new r.defer, this.started = this.starting.promise, this.q.enqueue(this.start) } setManager(t) { this.manager = t } requireManager(t) { return "string" == typeof t && "default" === t ? v.a : "string" == typeof t && "continuous" === t ? y.a : t } requireView(t) { return "string" == typeof t && "iframe" === t ? m.a : t } start() { switch (this.settings.layout || "pre-paginated" !== this.book.package.metadata.layout && "true" !== this.book.displayOptions.fixedLayout || (this.settings.layout = "pre-paginated"), this.book.package.metadata.spread) { case "none": this.settings.spread = "none"; break; case "both": this.settings.spread = !0 }this.manager || (this.ViewManager = this.requireManager(this.settings.manager), this.View = this.requireView(this.settings.view), this.manager = new this.ViewManager({ view: this.View, queue: this.q, request: this.book.load.bind(this.book), settings: this.settings })), this.direction(this.book.package.metadata.direction || this.settings.defaultDirection), this.settings.globalLayoutProperties = this.determineLayoutProperties(this.book.package.metadata), this.flow(this.settings.globalLayoutProperties.flow), this.layout(this.settings.globalLayoutProperties), this.manager.on(l.c.MANAGERS.ADDED, this.afterDisplayed.bind(this)), this.manager.on(l.c.MANAGERS.REMOVED, this.afterRemoved.bind(this)), this.manager.on(l.c.MANAGERS.RESIZED, this.onResized.bind(this)), this.manager.on(l.c.MANAGERS.ORIENTATION_CHANGE, this.onOrientationChange.bind(this)), this.manager.on(l.c.MANAGERS.SCROLLED, this.reportLocation.bind(this)), this.emit(l.c.RENDITION.STARTED), this.starting.resolve() } attachTo(t) { return this.q.enqueue(function () { this.manager.render(t, { width: this.settings.width, height: this.settings.height }), this.emit(l.c.RENDITION.ATTACHED) }.bind(this)) } display(t) { return this.displaying && this.displaying.resolve(), this.q.enqueue(this._display, t) } _display(t) { if (this.book) { this.epubcfi.isCfiString(t); var e, i = new r.defer, n = i.promise; return this.displaying = i, this.book.locations.length() && Object(r.isFloat)(t) && (t = this.book.locations.cfiFromPercentage(parseFloat(t))), (e = this.book.spine.get(t)) ? (this.manager.display(e, t).then((() => { i.resolve(e), this.displaying = void 0, this.emit(l.c.RENDITION.DISPLAYED, e), this.reportLocation() }), (t => { this.emit(l.c.RENDITION.DISPLAY_ERROR, t) })), n) : (i.reject(new Error("No Section Found")), n) } } afterDisplayed(t) { t.on(l.c.VIEWS.MARK_CLICKED, ((e, i) => this.triggerMarkEvent(e, i, t.contents))), this.hooks.render.trigger(t, this).then((() => { t.contents ? this.hooks.content.trigger(t.contents, this).then((() => { this.emit(l.c.RENDITION.RENDERED, t.section, t) })) : this.emit(l.c.RENDITION.RENDERED, t.section, t) })) } afterRemoved(t) { this.hooks.unloaded.trigger(t, this).then((() => { this.emit(l.c.RENDITION.REMOVED, t.section, t) })) } onResized(t, e) { this.emit(l.c.RENDITION.RESIZED, { width: t.width, height: t.height }, e), this.location && this.location.start && this.display(e || this.location.start.cfi) } onOrientationChange(t) { this.emit(l.c.RENDITION.ORIENTATION_CHANGE, t) } moveTo(t) { this.manager.moveTo(t) } resize(t, e, i) { t && (this.settings.width = t), e && (this.settings.height = e), this.manager.resize(t, e, i) } clear() { this.manager.clear() } next() { return this.q.enqueue(this.manager.next.bind(this.manager)).then(this.reportLocation.bind(this)) } prev() { return this.q.enqueue(this.manager.prev.bind(this.manager)).then(this.reportLocation.bind(this)) } determineLayoutProperties(t) { var e = this.settings.layout || t.layout || "reflowable", i = this.settings.spread || t.spread || "auto", n = this.settings.orientation || t.orientation || "auto", s = this.settings.flow || t.flow || "auto", r = t.viewport || "", o = this.settings.minSpreadWidth || t.minSpreadWidth || 800, a = this.settings.direction || t.direction || "ltr"; return (0 === this.settings.width || this.settings.width > 0) && (0 === this.settings.height || this.settings.height), { layout: e, spread: i, orientation: n, flow: s, viewport: r, minSpreadWidth: o, direction: a } } flow(t) { var e = t; "scrolled" !== t && "scrolled-doc" !== t && "scrolled-continuous" !== t || (e = "scrolled"), "auto" !== t && "paginated" !== t || (e = "paginated"), this.settings.flow = t, this._layout && this._layout.flow(e), this.manager && this._layout && this.manager.applyLayout(this._layout), this.manager && this.manager.updateFlow(e), this.manager && this.manager.isRendered() && this.location && (this.manager.clear(), this.display(this.location.start.cfi)) } layout(t) { return t && (this._layout = new u(t), this._layout.spread(t.spread, this.settings.minSpreadWidth), this._layout.on(l.c.LAYOUT.UPDATED, ((t, e) => { this.emit(l.c.RENDITION.LAYOUT, t, e) }))), this.manager && this._layout && this.manager.applyLayout(this._layout), this._layout } spread(t, e) { this.settings.spread = t, e && (this.settings.minSpreadWidth = e), this._layout && this._layout.spread(t, e), this.manager && this.manager.isRendered() && this.manager.updateLayout() } direction(t) { this.settings.direction = t || "ltr", this.manager && this.manager.direction(this.settings.direction), this.manager && this.manager.isRendered() && this.location && (this.manager.clear(), this.display(this.location.start.cfi)) } reportLocation() { return this.q.enqueue(function () { requestAnimationFrame(function () { var t = this.manager.currentLocation(); if (t && t.then && "function" == typeof t.then) t.then(function (t) { let e = this.located(t); e && e.start && e.end && (this.location = e, this.emit(l.c.RENDITION.LOCATION_CHANGED, { index: this.location.start.index, href: this.location.start.href, start: this.location.start.cfi, end: this.location.end.cfi, percentage: this.location.start.percentage }), this.emit(l.c.RENDITION.RELOCATED, this.location)) }.bind(this)); else if (t) { let e = this.located(t); if (!e || !e.start || !e.end) return; this.location = e, this.emit(l.c.RENDITION.LOCATION_CHANGED, { index: this.location.start.index, href: this.location.start.href, start: this.location.start.cfi, end: this.location.end.cfi, percentage: this.location.start.percentage }), this.emit(l.c.RENDITION.RELOCATED, this.location) } }.bind(this)) }.bind(this)) } currentLocation() { var t = this.manager.currentLocation(); if (t && t.then && "function" == typeof t.then) t.then(function (t) { return this.located(t) }.bind(this)); else if (t) return this.located(t) } located(t) { if (!t.length) return {}; let e = t[0], i = t[t.length - 1], n = { start: { index: e.index, href: e.href, cfi: e.mapping.start, displayed: { page: e.pages[0] || 1, total: e.totalPages } }, end: { index: i.index, href: i.href, cfi: i.mapping.end, displayed: { page: i.pages[i.pages.length - 1] || 1, total: i.totalPages } } }, s = this.book.locations.locationFromCfi(e.mapping.start), r = this.book.locations.locationFromCfi(i.mapping.end); null != s && (n.start.location = s, n.start.percentage = this.book.locations.percentageFromLocation(s)), null != r && (n.end.location = r, n.end.percentage = this.book.locations.percentageFromLocation(r)); let o = this.book.pageList.pageFromCfi(e.mapping.start), a = this.book.pageList.pageFromCfi(i.mapping.end); return -1 != o && (n.start.page = o), -1 != a && (n.end.page = a), i.index === this.book.spine.last().index && n.end.displayed.page >= n.end.displayed.total && (n.atEnd = !0), e.index === this.book.spine.first().index && 1 === n.start.displayed.page && (n.atStart = !0), n } destroy() { this.manager && this.manager.destroy(), this.book = void 0 } passEvents(t) { l.a.forEach((e => { t.on(e, (e => this.triggerViewEvent(e, t))) })), t.on(l.c.CONTENTS.SELECTED, (e => this.triggerSelectedEvent(e, t))) } triggerViewEvent(t, e) { this.emit(t.type, t, e) } triggerSelectedEvent(t, e) { this.emit(l.c.RENDITION.SELECTED, t, e) } triggerMarkEvent(t, e, i) { this.emit(l.c.RENDITION.MARK_CLICKED, t, e, i) } getRange(t, e) { var i = new a.a(t), n = this.manager.visible().filter((function (t) { if (i.spinePos === t.index) return !0 })); if (n.length) return n[0].contents.range(i, e) } adjustImages(t) { if ("pre-paginated" === this._layout.name) return new Promise((function (t) { t() })); let e = t.window.getComputedStyle(t.content, null), i = .95 * (t.content.offsetHeight - (parseFloat(e.paddingTop) + parseFloat(e.paddingBottom))), n = parseFloat(e.paddingLeft) + parseFloat(e.paddingRight); return t.addStylesheetRules({ img: { "max-width": (this._layout.columnWidth ? this._layout.columnWidth - n + "px" : "100%") + "!important", "max-height": i + "px!important", "object-fit": "contain", "page-break-inside": "avoid", "break-inside": "avoid", "box-sizing": "border-box" }, svg: { "max-width": (this._layout.columnWidth ? this._layout.columnWidth - n + "px" : "100%") + "!important", "max-height": i + "px!important", "page-break-inside": "avoid", "break-inside": "avoid" } }), new Promise((function (t, e) { setTimeout((function () { t() }), 1) })) } getContents() { return this.manager ? this.manager.getContents() : [] } views() { return (this.manager ? this.manager.views : void 0) || [] } handleLinks(t) { t && t.on(l.c.CONTENTS.LINK_CLICKED, (t => { let e = this.book.path.relative(t); this.display(e) })) } injectStylesheet(t, e) { let i = t.createElement("link"); i.setAttribute("type", "text/css"), i.setAttribute("rel", "stylesheet"), i.setAttribute("href", this.settings.stylesheet), t.getElementsByTagName("head")[0].appendChild(i) } injectScript(t, e) { let i = t.createElement("script"); i.setAttribute("type", "text/javascript"), i.setAttribute("src", this.settings.script), i.textContent = " ", t.getElementsByTagName("head")[0].appendChild(i) } injectIdentifier(t, e) { let i = this.book.packaging.metadata.identifier, n = t.createElement("meta"); n.setAttribute("name", "dc.relation.ispartof"), i && n.setAttribute("content", i), t.getElementsByTagName("head")[0].appendChild(n) } } s()(b.prototype), e.a = b }, function (t, e) { var i; i = function () { return this }(); try { i = i || new Function("return this")() } catch (t) { "object" == typeof window && (i = window) } t.exports = i }, function (t, e, i) { "use strict"; var n = i(38)(); t.exports = function (t) { return t !== n && null !== t } }, function (t, e) { t.exports = function (t) { var e = typeof t; return null != t && ("object" == e || "function" == e) } }, function (t, e, i) { "use strict"; var n = i(3), s = i.n(n), r = i(0), o = i(2), a = i(12), h = i(1), l = i(13); class c { constructor(t, e) { this.settings = Object(r.extend)({ ignoreClass: "", axis: void 0, direction: void 0, width: 0, height: 0, layout: void 0, globalLayoutProperties: {}, method: void 0, forceRight: !1, allowScriptedContent: !1, allowPopups: !1 }, e || {}), this.id = "epubjs-view-" + Object(r.uuid)(), this.section = t, this.index = t.index, this.element = this.container(this.settings.axis), this.added = !1, this.displayed = !1, this.rendered = !1, this.fixedWidth = 0, this.fixedHeight = 0, this.epubcfi = new o.a, this.layout = this.settings.layout, this.pane = void 0, this.highlights = {}, this.underlines = {}, this.marks = {} } container(t) { var e = document.createElement("div"); return e.classList.add("epub-view"), e.style.height = "0px", e.style.width = "0px", e.style.overflow = "hidden", e.style.position = "relative", e.style.display = "block", e.style.flex = t && "horizontal" == t ? "none" : "initial", e } create() { return this.iframe || (this.element || (this.element = this.createContainer()), this.iframe = document.createElement("iframe"), this.iframe.id = this.id, this.iframe.scrolling = "no", this.iframe.style.overflow = "hidden", this.iframe.seamless = "seamless", this.iframe.style.border = "none", this.iframe.sandbox = "allow-same-origin", this.settings.allowScriptedContent && (this.iframe.sandbox += " allow-scripts"), this.settings.allowPopups && (this.iframe.sandbox += " allow-popups"), this.iframe.setAttribute("enable-annotation", "true"), this.resizing = !0, this.element.style.visibility = "hidden", this.iframe.style.visibility = "hidden", this.iframe.style.width = "0", this.iframe.style.height = "0", this._width = 0, this._height = 0, this.element.setAttribute("ref", this.index), this.added = !0, this.elementBounds = Object(r.bounds)(this.element), "srcdoc" in this.iframe ? this.supportsSrcdoc = !0 : this.supportsSrcdoc = !1, this.settings.method || (this.settings.method = this.supportsSrcdoc ? "srcdoc" : "write")), this.iframe } render(t, e) { return this.create(), this.size(), this.sectionRender || (this.sectionRender = this.section.render(t)), this.sectionRender.then(function (t) { return this.load(t) }.bind(this)).then(function () { let t, e = this.contents.writingMode(); return t = "scrolled" === this.settings.flow ? 0 === e.indexOf("vertical") ? "horizontal" : "vertical" : 0 === e.indexOf("vertical") ? "vertical" : "horizontal", 0 === e.indexOf("vertical") && "paginated" === this.settings.flow && (this.layout.delta = this.layout.height), this.setAxis(t), this.emit(h.c.VIEWS.AXIS, t), this.setWritingMode(e), this.emit(h.c.VIEWS.WRITING_MODE, e), this.layout.format(this.contents, this.section, this.axis), this.addListeners(), new Promise(((t, e) => { this.expand(), this.settings.forceRight && (this.element.style.marginLeft = this.width() + "px"), t() })) }.bind(this), function (t) { return this.emit(h.c.VIEWS.LOAD_ERROR, t), new Promise(((e, i) => { i(t) })) }.bind(this)).then(function () { this.emit(h.c.VIEWS.RENDERED, this.section) }.bind(this)) } reset() { this.iframe && (this.iframe.style.width = "0", this.iframe.style.height = "0", this._width = 0, this._height = 0, this._textWidth = void 0, this._contentWidth = void 0, this._textHeight = void 0, this._contentHeight = void 0), this._needsReframe = !0 } size(t, e) { var i = t || this.settings.width, n = e || this.settings.height; "pre-paginated" === this.layout.name ? this.lock("both", i, n) : "horizontal" === this.settings.axis ? this.lock("height", i, n) : this.lock("width", i, n), this.settings.width = i, this.settings.height = n } lock(t, e, i) { var n, s = Object(r.borders)(this.element); n = this.iframe ? Object(r.borders)(this.iframe) : { width: 0, height: 0 }, "width" == t && Object(r.isNumber)(e) && (this.lockedWidth = e - s.width - n.width), "height" == t && Object(r.isNumber)(i) && (this.lockedHeight = i - s.height - n.height), "both" === t && Object(r.isNumber)(e) && Object(r.isNumber)(i) && (this.lockedWidth = e - s.width - n.width, this.lockedHeight = i - s.height - n.height), this.displayed && this.iframe && this.expand() } expand(t) { var e, i = this.lockedWidth, n = this.lockedHeight; this.iframe && !this._expanding && (this._expanding = !0, "pre-paginated" === this.layout.name ? (i = this.layout.columnWidth, n = this.layout.height) : "horizontal" === this.settings.axis ? ((i = this.contents.textWidth()) % this.layout.pageWidth > 0 && (i = Math.ceil(i / this.layout.pageWidth) * this.layout.pageWidth), this.settings.forceEvenPages && (e = i / this.layout.pageWidth, this.layout.divisor > 1 && "reflowable" === this.layout.name && e % 2 > 0 && (i += this.layout.pageWidth))) : "vertical" === this.settings.axis && (n = this.contents.textHeight(), "paginated" === this.settings.flow && n % this.layout.height > 0 && (n = Math.ceil(n / this.layout.height) * this.layout.height)), (this._needsReframe || i != this._width || n != this._height) && this.reframe(i, n), this._expanding = !1) } reframe(t, e) { var i; Object(r.isNumber)(t) && (this.element.style.width = t + "px", this.iframe.style.width = t + "px", this._width = t), Object(r.isNumber)(e) && (this.element.style.height = e + "px", this.iframe.style.height = e + "px", this._height = e), i = { width: t, height: e, widthDelta: this.prevBounds ? t - this.prevBounds.width : t, heightDelta: this.prevBounds ? e - this.prevBounds.height : e }, this.pane && this.pane.render(), requestAnimationFrame((() => { let t; for (let e in this.marks) this.marks.hasOwnProperty(e) && (t = this.marks[e], this.placeMark(t.element, t.range)) })), this.onResize(this, i), this.emit(h.c.VIEWS.RESIZED, i), this.prevBounds = i, this.elementBounds = Object(r.bounds)(this.element) } load(t) { var e = new r.defer, i = e.promise; if (!this.iframe) return e.reject(new Error("No Iframe Available")), i; if (this.iframe.onload = function (t) { this.onLoad(t, e) }.bind(this), "blobUrl" === this.settings.method) this.blobUrl = Object(r.createBlobUrl)(t, "application/xhtml+xml"), this.iframe.src = this.blobUrl, this.element.appendChild(this.iframe); else if ("srcdoc" === this.settings.method) this.iframe.srcdoc = t, this.element.appendChild(this.iframe); else { if (this.element.appendChild(this.iframe), this.document = this.iframe.contentDocument, !this.document) return e.reject(new Error("No Document Available")), i; if (this.iframe.contentDocument.open(), window.MSApp && MSApp.execUnsafeLocalFunction) { var n = this; MSApp.execUnsafeLocalFunction((function () { n.iframe.contentDocument.write(t) })) } else this.iframe.contentDocument.write(t); this.iframe.contentDocument.close() } return i } onLoad(t, e) { this.window = this.iframe.contentWindow, this.document = this.iframe.contentDocument, this.contents = new a.a(this.document, this.document.body, this.section.cfiBase, this.section.index), this.rendering = !1; var i = this.document.querySelector("link[rel='canonical']"); i ? i.setAttribute("href", this.section.canonical) : ((i = this.document.createElement("link")).setAttribute("rel", "canonical"), i.setAttribute("href", this.section.canonical), this.document.querySelector("head").appendChild(i)), this.contents.on(h.c.CONTENTS.EXPAND, (() => { this.displayed && this.iframe && (this.expand(), this.contents && this.layout.format(this.contents)) })), this.contents.on(h.c.CONTENTS.RESIZE, (t => { this.displayed && this.iframe && (this.expand(), this.contents && this.layout.format(this.contents)) })), e.resolve(this.contents) } setLayout(t) { this.layout = t, this.contents && (this.layout.format(this.contents), this.expand()) } setAxis(t) { this.settings.axis = t, this.element.style.flex = "horizontal" == t ? "none" : "initial", this.size() } setWritingMode(t) { this.writingMode = t } addListeners() { } removeListeners(t) { } display(t) { var e = new r.defer; return this.displayed ? e.resolve(this) : this.render(t).then(function () { this.emit(h.c.VIEWS.DISPLAYED, this), this.onDisplayed(this), this.displayed = !0, e.resolve(this) }.bind(this), (function (t) { e.reject(t, this) })), e.promise } show() { this.element.style.visibility = "visible", this.iframe && (this.iframe.style.visibility = "visible", this.iframe.style.transform = "translateZ(0)", this.iframe.offsetWidth, this.iframe.style.transform = null), this.emit(h.c.VIEWS.SHOWN, this) } hide() { this.element.style.visibility = "hidden", this.iframe.style.visibility = "hidden", this.stopExpanding = !0, this.emit(h.c.VIEWS.HIDDEN, this) } offset() { return { top: this.element.offsetTop, left: this.element.offsetLeft } } width() { return this._width } height() { return this._height } position() { return this.element.getBoundingClientRect() } locationOf(t) { this.iframe.getBoundingClientRect(); var e = this.contents.locationOf(t, this.settings.ignoreClass); return { left: e.left, top: e.top } } onDisplayed(t) { } onResize(t, e) { } bounds(t) { return !t && this.elementBounds || (this.elementBounds = Object(r.bounds)(this.element)), this.elementBounds } highlight(t, e = {}, i, n = "epubjs-hl", s = {}) { if (!this.contents) return; const r = Object.assign({ fill: "yellow", "fill-opacity": "0.3", "mix-blend-mode": "multiply" }, s); let o = this.contents.range(t), a = () => { this.emit(h.c.VIEWS.MARK_CLICKED, t, e) }; e.epubcfi = t, this.pane || (this.pane = new l.Pane(this.iframe, this.element)); let c = new l.Highlight(o, n, e, r), u = this.pane.addMark(c); return this.highlights[t] = { mark: u, element: u.element, listeners: [a, i] }, u.element.setAttribute("ref", n), u.element.addEventListener("click", a), u.element.addEventListener("touchstart", a), i && (u.element.addEventListener("click", i), u.element.addEventListener("touchstart", i)), u } underline(t, e = {}, i, n = "epubjs-ul", s = {}) { if (!this.contents) return; const r = Object.assign({ stroke: "black", "stroke-opacity": "0.3", "mix-blend-mode": "multiply" }, s); let o = this.contents.range(t), a = () => { this.emit(h.c.VIEWS.MARK_CLICKED, t, e) }; e.epubcfi = t, this.pane || (this.pane = new l.Pane(this.iframe, this.element)); let c = new l.Underline(o, n, e, r), u = this.pane.addMark(c); return this.underlines[t] = { mark: u, element: u.element, listeners: [a, i] }, u.element.setAttribute("ref", n), u.element.addEventListener("click", a), u.element.addEventListener("touchstart", a), i && (u.element.addEventListener("click", i), u.element.addEventListener("touchstart", i)), u } mark(t, e = {}, i) { if (!this.contents) return; if (t in this.marks) return this.marks[t]; let n = this.contents.range(t); if (!n) return; let s = n.commonAncestorContainer, r = 1 === s.nodeType ? s : s.parentNode, o = i => { this.emit(h.c.VIEWS.MARK_CLICKED, t, e) }; n.collapsed && 1 === s.nodeType ? (n = new Range, n.selectNodeContents(s)) : n.collapsed && (n = new Range, n.selectNodeContents(r)); let a = this.document.createElement("a"); return a.setAttribute("ref", "epubjs-mk"), a.style.position = "absolute", a.dataset.epubcfi = t, e && Object.keys(e).forEach((t => { a.dataset[t] = e[t] })), i && (a.addEventListener("click", i), a.addEventListener("touchstart", i)), a.addEventListener("click", o), a.addEventListener("touchstart", o), this.placeMark(a, n), this.element.appendChild(a), this.marks[t] = { element: a, range: n, listeners: [o, i] }, r } placeMark(t, e) { let i, n, s; if ("pre-paginated" === this.layout.name || "horizontal" !== this.settings.axis) { let t = e.getBoundingClientRect(); i = t.top, n = t.right } else { let t, o = e.getClientRects(); for (var r = 0; r != o.length; r++)t = o[r], (!s || t.left < s) && (s = t.left, n = Math.ceil(s / this.layout.props.pageWidth) * this.layout.props.pageWidth - this.layout.gap / 2, i = t.top) } t.style.top = i + "px", t.style.left = n + "px" } unhighlight(t) { let e; t in this.highlights && (e = this.highlights[t], this.pane.removeMark(e.mark), e.listeners.forEach((t => { t && (e.element.removeEventListener("click", t), e.element.removeEventListener("touchstart", t)) })), delete this.highlights[t]) } ununderline(t) { let e; t in this.underlines && (e = this.underlines[t], this.pane.removeMark(e.mark), e.listeners.forEach((t => { t && (e.element.removeEventListener("click", t), e.element.removeEventListener("touchstart", t)) })), delete this.underlines[t]) } unmark(t) { let e; t in this.marks && (e = this.marks[t], this.element.removeChild(e.element), e.listeners.forEach((t => { t && (e.element.removeEventListener("click", t), e.element.removeEventListener("touchstart", t)) })), delete this.marks[t]) } destroy() { for (let t in this.highlights) this.unhighlight(t); for (let t in this.underlines) this.ununderline(t); for (let t in this.marks) this.unmark(t); this.blobUrl && Object(r.revokeBlobUrl)(this.blobUrl), this.displayed && (this.displayed = !1, this.removeListeners(), this.contents.destroy(), this.stopExpanding = !0, this.element.removeChild(this.iframe), this.pane && (this.pane.element.remove(), this.pane = void 0), this.iframe = void 0, this.contents = void 0, this._textWidth = null, this._textHeight = null, this._width = null, this._height = null) } } s()(c.prototype), e.a = c }, function (t, e, i) { var n = i(19), s = i(51), r = i(53), o = Math.max, a = Math.min; t.exports = function (t, e, i) { var h, l, c, u, d, f, p = 0, g = !1, m = !1, v = !0; if ("function" != typeof t) throw new TypeError("Expected a function"); function y(e) { var i = h, n = l; return h = l = void 0, p = e, u = t.apply(n, i) } function b(t) { var i = t - f; return void 0 === f || i >= e || i < 0 || m && t - p >= c } function w() { var t = s(); if (b(t)) return x(t); d = setTimeout(w, function (t) { var i = e - (t - f); return m ? a(i, c - (t - p)) : i }(t)) } function x(t) { return d = void 0, v && h ? y(t) : (h = l = void 0, u) } function E() { var t = s(), i = b(t); if (h = arguments, l = this, f = t, i) { if (void 0 === d) return function (t) { return p = t, d = setTimeout(w, e), g ? y(t) : u }(f); if (m) return clearTimeout(d), d = setTimeout(w, e), y(f) } return void 0 === d && (d = setTimeout(w, e)), u } return e = r(e) || 0, n(i) && (g = !!i.leading, c = (m = "maxWait" in i) ? o(r(i.maxWait) || 0, e) : c, v = "trailing" in i ? !!i.trailing : v), E.cancel = function () { void 0 !== d && clearTimeout(d), p = 0, h = f = l = d = void 0 }, E.flush = function () { return void 0 === d ? u : x(s()) }, E } }, function (t, e, i) { "use strict"; var n = i(0), s = i(10), r = i(1), o = i(3), a = i.n(o); const h = Math.PI / 2, l = { easeOutSine: function (t) { return Math.sin(t * h) }, easeInOutSine: function (t) { return -.5 * (Math.cos(Math.PI * t) - 1) }, easeInOutQuint: function (t) { return (t /= .5) < 1 ? .5 * Math.pow(t, 5) : .5 * (Math.pow(t - 2, 5) + 2) }, easeInCubic: function (t) { return Math.pow(t, 3) } }; class c { constructor(t, e) { this.settings = Object(n.extend)({ duration: 80, minVelocity: .2, minDistance: 10, easing: l.easeInCubic }, e || {}), this.supportsTouch = this.supportsTouch(), this.supportsTouch && this.setup(t) } setup(t) { this.manager = t, this.layout = this.manager.layout, this.fullsize = this.manager.settings.fullsize, this.fullsize ? (this.element = this.manager.stage.element, this.scroller = window, this.disableScroll()) : (this.element = this.manager.stage.container, this.scroller = this.element, this.element.style.WebkitOverflowScrolling = "touch"), this.manager.settings.offset = this.layout.width, this.manager.settings.afterScrolledTimeout = 2 * this.settings.duration, this.isVertical = "vertical" === this.manager.settings.axis, this.manager.isPaginated && !this.isVertical && (this.touchCanceler = !1, this.resizeCanceler = !1, this.snapping = !1, this.scrollLeft, this.scrollTop, this.startTouchX = void 0, this.startTouchY = void 0, this.startTime = void 0, this.endTouchX = void 0, this.endTouchY = void 0, this.endTime = void 0, this.addListeners()) } supportsTouch() { return !!("ontouchstart" in window || window.DocumentTouch && document instanceof DocumentTouch) } disableScroll() { this.element.style.overflow = "hidden" } enableScroll() { this.element.style.overflow = "" } addListeners() { this._onResize = this.onResize.bind(this), window.addEventListener("resize", this._onResize), this._onScroll = this.onScroll.bind(this), this.scroller.addEventListener("scroll", this._onScroll), this._onTouchStart = this.onTouchStart.bind(this), this.scroller.addEventListener("touchstart", this._onTouchStart, { passive: !0 }), this.on("touchstart", this._onTouchStart), this._onTouchMove = this.onTouchMove.bind(this), this.scroller.addEventListener("touchmove", this._onTouchMove, { passive: !0 }), this.on("touchmove", this._onTouchMove), this._onTouchEnd = this.onTouchEnd.bind(this), this.scroller.addEventListener("touchend", this._onTouchEnd, { passive: !0 }), this.on("touchend", this._onTouchEnd), this._afterDisplayed = this.afterDisplayed.bind(this), this.manager.on(r.c.MANAGERS.ADDED, this._afterDisplayed) } removeListeners() { window.removeEventListener("resize", this._onResize), this._onResize = void 0, this.scroller.removeEventListener("scroll", this._onScroll), this._onScroll = void 0, this.scroller.removeEventListener("touchstart", this._onTouchStart, { passive: !0 }), this.off("touchstart", this._onTouchStart), this._onTouchStart = void 0, this.scroller.removeEventListener("touchmove", this._onTouchMove, { passive: !0 }), this.off("touchmove", this._onTouchMove), this._onTouchMove = void 0, this.scroller.removeEventListener("touchend", this._onTouchEnd, { passive: !0 }), this.off("touchend", this._onTouchEnd), this._onTouchEnd = void 0, this.manager.off(r.c.MANAGERS.ADDED, this._afterDisplayed), this._afterDisplayed = void 0 } afterDisplayed(t) { let e = t.contents;["touchstart", "touchmove", "touchend"].forEach((t => { e.on(t, (t => this.triggerViewEvent(t, e))) })) } triggerViewEvent(t, e) { this.emit(t.type, t, e) } onScroll(t) { this.scrollLeft = this.fullsize ? window.scrollX : this.scroller.scrollLeft, this.scrollTop = this.fullsize ? window.scrollY : this.scroller.scrollTop } onResize(t) { this.resizeCanceler = !0 } onTouchStart(t) { let { screenX: e, screenY: i } = t.touches[0]; this.fullsize && this.enableScroll(), this.touchCanceler = !0, this.startTouchX || (this.startTouchX = e, this.startTouchY = i, this.startTime = this.now()), this.endTouchX = e, this.endTouchY = i, this.endTime = this.now() } onTouchMove(t) { let { screenX: e, screenY: i } = t.touches[0], n = Math.abs(i - this.endTouchY); this.touchCanceler = !0, !this.fullsize && n < 10 && (this.element.scrollLeft -= e - this.endTouchX), this.endTouchX = e, this.endTouchY = i, this.endTime = this.now() } onTouchEnd(t) { this.fullsize && this.disableScroll(), this.touchCanceler = !1; let e = this.wasSwiped(); 0 !== e ? this.snap(e) : this.snap(), this.startTouchX = void 0, this.startTouchY = void 0, this.startTime = void 0, this.endTouchX = void 0, this.endTouchY = void 0, this.endTime = void 0 } wasSwiped() { let t = this.layout.pageWidth * this.layout.divisor, e = this.endTouchX - this.startTouchX, i = Math.abs(e), n = e / (this.endTime - this.startTime), s = this.settings.minVelocity; return i <= this.settings.minDistance || i >= t ? 0 : n > s ? -1 : n < -s ? 1 : void 0 } needsSnap() { return this.scrollLeft % (this.layout.pageWidth * this.layout.divisor) != 0 } snap(t = 0) { let e = this.scrollLeft, i = this.layout.pageWidth * this.layout.divisor, n = Math.round(e / i) * i; return t && (n += t * i), this.smoothScrollTo(n) } smoothScrollTo(t) { const e = new n.defer, i = this.scrollLeft, s = this.now(), r = this.settings.duration, o = this.settings.easing; return this.snapping = !0, function n() { const a = this.now(), h = Math.min(1, (a - s) / r); if (o(h), this.touchCanceler || this.resizeCanceler) return this.resizeCanceler = !1, this.snapping = !1, void e.resolve(); h < 1 ? (window.requestAnimationFrame(n.bind(this)), this.scrollTo(i + (t - i) * h, 0)) : (this.scrollTo(t, 0), this.snapping = !1, e.resolve()) }.call(this), e.promise } scrollTo(t = 0, e = 0) { this.fullsize ? window.scroll(t, e) : (this.scroller.scrollLeft = t, this.scroller.scrollTop = e) } now() { return "now" in window.performance ? performance.now() : (new Date).getTime() } destroy() { this.scroller && (this.fullsize && this.enableScroll(), this.removeListeners(), this.scroller = void 0) } } a()(c.prototype); var u = c, d = i(21), f = i.n(d); class p extends s.a { constructor(t) { super(t), this.name = "continuous", this.settings = Object(n.extend)(this.settings || {}, { infinite: !0, overflow: void 0, axis: void 0, writingMode: void 0, flow: "scrolled", offset: 500, offsetDelta: 250, width: void 0, height: void 0, snap: !1, afterScrolledTimeout: 10, allowScriptedContent: !1, allowPopups: !1 }), Object(n.extend)(this.settings, t.settings || {}), "undefined" != t.settings.gap && 0 === t.settings.gap && (this.settings.gap = t.settings.gap), this.viewSettings = { ignoreClass: this.settings.ignoreClass, axis: this.settings.axis, flow: this.settings.flow, layout: this.layout, width: 0, height: 0, forceEvenPages: !1, allowScriptedContent: this.settings.allowScriptedContent, allowPopups: this.settings.allowPopups }, this.scrollTop = 0, this.scrollLeft = 0 } display(t, e) { return s.a.prototype.display.call(this, t, e).then(function () { return this.fill() }.bind(this)) } fill(t) { var e = t || new n.defer; return this.q.enqueue((() => this.check())).then((t => { t ? this.fill(e) : e.resolve() })), e.promise } moveTo(t) { var e = 0, i = 0; this.isPaginated ? (e = Math.floor(t.left / this.layout.delta) * this.layout.delta, this.settings.offsetDelta) : (i = t.top, t.top, this.settings.offsetDelta), (e > 0 || i > 0) && this.scrollBy(e, i, !0) } afterResized(t) { this.emit(r.c.MANAGERS.RESIZE, t.section) } removeShownListeners(t) { t.onDisplayed = function () { } } add(t) { var e = this.createView(t); return this.views.append(e), e.on(r.c.VIEWS.RESIZED, (t => { e.expanded = !0 })), e.on(r.c.VIEWS.AXIS, (t => { this.updateAxis(t) })), e.on(r.c.VIEWS.WRITING_MODE, (t => { this.updateWritingMode(t) })), e.onDisplayed = this.afterDisplayed.bind(this), e.onResize = this.afterResized.bind(this), e.display(this.request) } append(t) { var e = this.createView(t); return e.on(r.c.VIEWS.RESIZED, (t => { e.expanded = !0 })), e.on(r.c.VIEWS.AXIS, (t => { this.updateAxis(t) })), e.on(r.c.VIEWS.WRITING_MODE, (t => { this.updateWritingMode(t) })), this.views.append(e), e.onDisplayed = this.afterDisplayed.bind(this), e } prepend(t) { var e = this.createView(t); return e.on(r.c.VIEWS.RESIZED, (t => { this.counter(t), e.expanded = !0 })), e.on(r.c.VIEWS.AXIS, (t => { this.updateAxis(t) })), e.on(r.c.VIEWS.WRITING_MODE, (t => { this.updateWritingMode(t) })), this.views.prepend(e), e.onDisplayed = this.afterDisplayed.bind(this), e } counter(t) { "vertical" === this.settings.axis ? this.scrollBy(0, t.heightDelta, !0) : this.scrollBy(t.widthDelta, 0, !0) } update(t) { for (var e, i = this.bounds(), s = this.views.all(), r = s.length, o = [], a = void 0 !== t ? t : this.settings.offset || 0, h = new n.defer, l = [], c = 0; c < r; c++)if (e = s[c], !0 === this.isVisible(e, a, a, i)) { if (e.displayed) e.show(); else { let t = e.display(this.request).then((function (t) { t.show() }), (t => { e.hide() })); l.push(t) } o.push(e) } else this.q.enqueue(e.destroy.bind(e)), clearTimeout(this.trimTimeout), this.trimTimeout = setTimeout(function () { this.q.enqueue(this.trim.bind(this)) }.bind(this), 250); return l.length ? Promise.all(l).catch((t => { h.reject(t) })) : (h.resolve(), h.promise) } check(t, e) { var i = new n.defer, s = [], r = "horizontal" === this.settings.axis, o = this.settings.offset || 0; t && r && (o = t), e && !r && (o = e); var a = this._bounds; let h = r ? this.scrollLeft : this.scrollTop, l = r ? Math.floor(a.width) : a.height, c = r ? this.container.scrollWidth : this.container.scrollHeight, u = this.writingMode && 0 === this.writingMode.indexOf("vertical") ? "vertical" : "horizontal", d = this.settings.rtlScrollType, f = "rtl" === this.settings.direction; this.settings.fullsize ? (r && f && "negative" === d || !r && f && "default" === d) && (h *= -1) : (f && "default" === d && "horizontal" === u && (h = c - l - h), f && "negative" === d && "horizontal" === u && (h *= -1)); let p = h - o; h + l + o >= c && (() => { let t = this.views.last(), e = t && t.section.next(); e && s.push(this.append(e)) })(), p < 0 && (() => { let t = this.views.first(), e = t && t.section.prev(); e && s.push(this.prepend(e)) })(); let g = s.map((t => t.display(this.request))); return s.length ? Promise.all(g).then((() => this.check())).then((() => this.update(o)), (t => t)) : (this.q.enqueue(function () { this.update() }.bind(this)), i.resolve(!1), i.promise) } trim() { for (var t = new n.defer, e = this.views.displayed(), i = e[0], s = e[e.length - 1], r = this.views.indexOf(i), o = this.views.indexOf(s), a = this.views.slice(0, r), h = this.views.slice(o + 1), l = 0; l < a.length - 1; l++)this.erase(a[l], a); for (var c = 1; c < h.length; c++)this.erase(h[c]); return t.resolve(), t.promise } erase(t, e) { var i, n; this.settings.fullsize ? (i = window.scrollY, n = window.scrollX) : (i = this.container.scrollTop, n = this.container.scrollLeft); var s = t.bounds(); this.views.remove(t), e && ("vertical" === this.settings.axis ? this.scrollTo(0, i - s.height, !0) : "rtl" === this.settings.direction ? this.settings.fullsize ? this.scrollTo(n + Math.floor(s.width), 0, !0) : this.scrollTo(n, 0, !0) : this.scrollTo(n - Math.floor(s.width), 0, !0)) } addEventListeners(t) { window.addEventListener("unload", function (t) { this.ignore = !0, this.destroy() }.bind(this)), this.addScrollListeners(), this.isPaginated && this.settings.snap && (this.snapper = new u(this, this.settings.snap && "object" == typeof this.settings.snap && this.settings.snap)) } addScrollListeners() { var t; this.tick = n.requestAnimationFrame; let e = "rtl" === this.settings.direction && "default" === this.settings.rtlScrollType ? -1 : 1; this.scrollDeltaVert = 0, this.scrollDeltaHorz = 0, this.settings.fullsize ? (t = window, this.scrollTop = window.scrollY * e, this.scrollLeft = window.scrollX * e) : (t = this.container, this.scrollTop = this.container.scrollTop, this.scrollLeft = this.container.scrollLeft), this._onScroll = this.onScroll.bind(this), t.addEventListener("scroll", this._onScroll), this._scrolled = f()(this.scrolled.bind(this), 30), this.didScroll = !1 } removeEventListeners() { (this.settings.fullsize ? window : this.container).removeEventListener("scroll", this._onScroll), this._onScroll = void 0 } onScroll() { let t, e, i = "rtl" === this.settings.direction && "default" === this.settings.rtlScrollType ? -1 : 1; this.settings.fullsize ? (t = window.scrollY * i, e = window.scrollX * i) : (t = this.container.scrollTop, e = this.container.scrollLeft), this.scrollTop = t, this.scrollLeft = e, this.ignore ? this.ignore = !1 : this._scrolled(), this.scrollDeltaVert += Math.abs(t - this.prevScrollTop), this.scrollDeltaHorz += Math.abs(e - this.prevScrollLeft), this.prevScrollTop = t, this.prevScrollLeft = e, clearTimeout(this.scrollTimeout), this.scrollTimeout = setTimeout(function () { this.scrollDeltaVert = 0, this.scrollDeltaHorz = 0 }.bind(this), 150), clearTimeout(this.afterScrolled), this.didScroll = !1 } scrolled() { this.q.enqueue(function () { return this.check() }.bind(this)), this.emit(r.c.MANAGERS.SCROLL, { top: this.scrollTop, left: this.scrollLeft }), clearTimeout(this.afterScrolled), this.afterScrolled = setTimeout(function () { this.snapper && this.snapper.supportsTouch && this.snapper.needsSnap() || this.emit(r.c.MANAGERS.SCROLLED, { top: this.scrollTop, left: this.scrollLeft }) }.bind(this), this.settings.afterScrolledTimeout) } next() { let t = "pre-paginated" === this.layout.props.name && this.layout.props.spread ? 2 * this.layout.props.delta : this.layout.props.delta; this.views.length && (this.isPaginated && "horizontal" === this.settings.axis ? this.scrollBy(t, 0, !0) : this.scrollBy(0, this.layout.height, !0), this.q.enqueue(function () { return this.check() }.bind(this))) } prev() { let t = "pre-paginated" === this.layout.props.name && this.layout.props.spread ? 2 * this.layout.props.delta : this.layout.props.delta; this.views.length && (this.isPaginated && "horizontal" === this.settings.axis ? this.scrollBy(-t, 0, !0) : this.scrollBy(0, -this.layout.height, !0), this.q.enqueue(function () { return this.check() }.bind(this))) } updateFlow(t) { this.rendered && this.snapper && (this.snapper.destroy(), this.snapper = void 0), super.updateFlow(t, "scroll"), this.rendered && this.isPaginated && this.settings.snap && (this.snapper = new u(this, this.settings.snap && "object" == typeof this.settings.snap && this.settings.snap)) } destroy() { super.destroy(), this.snapper && this.snapper.destroy() } } e.a = p }, function (t, e, i) { (function (e) { t.exports = function t(e, i, n) { function s(o, a) { if (!i[o]) { if (!e[o]) { if (r) return r(o, !0); var h = new Error("Cannot find module '" + o + "'"); throw h.code = "MODULE_NOT_FOUND", h } var l = i[o] = { exports: {} }; e[o][0].call(l.exports, (function (t) { return s(e[o][1][t] || t) }), l, l.exports, t, e, i, n) } return i[o].exports } for (var r = !1, o = 0; o < n.length; o++)s(n[o]); return s }({ 1: [function (t, i, n) { (function (t) { "use strict"; var e, n, s = t.MutationObserver || t.WebKitMutationObserver; if (s) { var r = 0, o = new s(c), a = t.document.createTextNode(""); o.observe(a, { characterData: !0 }), e = function () { a.data = r = ++r % 2 } } else if (t.setImmediate || void 0 === t.MessageChannel) e = "document" in t && "onreadystatechange" in t.document.createElement("script") ? function () { var e = t.document.createElement("script"); e.onreadystatechange = function () { c(), e.onreadystatechange = null, e.parentNode.removeChild(e), e = null }, t.document.documentElement.appendChild(e) } : function () { setTimeout(c, 0) }; else { var h = new t.MessageChannel; h.port1.onmessage = c, e = function () { h.port2.postMessage(0) } } var l = []; function c() { var t, e; n = !0; for (var i = l.length; i;) { for (e = l, l = [], t = -1; ++t < i;)e[t](); i = l.length } n = !1 } i.exports = function (t) { 1 !== l.push(t) || n || e() } }).call(this, void 0 !== e ? e : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {}) }, {}], 2: [function (t, e, i) { "use strict"; var n = t(1); function s() { } var r = {}, o = ["REJECTED"], a = ["FULFILLED"], h = ["PENDING"]; function l(t) { if ("function" != typeof t) throw new TypeError("resolver must be a function"); this.state = h, this.queue = [], this.outcome = void 0, t !== s && f(this, t) } function c(t, e, i) { this.promise = t, "function" == typeof e && (this.onFulfilled = e, this.callFulfilled = this.otherCallFulfilled), "function" == typeof i && (this.onRejected = i, this.callRejected = this.otherCallRejected) } function u(t, e, i) { n((function () { var n; try { n = e(i) } catch (e) { return r.reject(t, e) } n === t ? r.reject(t, new TypeError("Cannot resolve promise with itself")) : r.resolve(t, n) })) } function d(t) { var e = t && t.then; if (t && ("object" == typeof t || "function" == typeof t) && "function" == typeof e) return function () { e.apply(t, arguments) } } function f(t, e) { var i = !1; function n(e) { i || (i = !0, r.reject(t, e)) } function s(e) { i || (i = !0, r.resolve(t, e)) } var o = p((function () { e(s, n) })); "error" === o.status && n(o.value) } function p(t, e) { var i = {}; try { i.value = t(e), i.status = "success" } catch (t) { i.status = "error", i.value = t } return i } e.exports = l, l.prototype.catch = function (t) { return this.then(null, t) }, l.prototype.then = function (t, e) { if ("function" != typeof t && this.state === a || "function" != typeof e && this.state === o) return this; var i = new this.constructor(s); return this.state !== h ? u(i, this.state === a ? t : e, this.outcome) : this.queue.push(new c(i, t, e)), i }, c.prototype.callFulfilled = function (t) { r.resolve(this.promise, t) }, c.prototype.otherCallFulfilled = function (t) { u(this.promise, this.onFulfilled, t) }, c.prototype.callRejected = function (t) { r.reject(this.promise, t) }, c.prototype.otherCallRejected = function (t) { u(this.promise, this.onRejected, t) }, r.resolve = function (t, e) { var i = p(d, e); if ("error" === i.status) return r.reject(t, i.value); var n = i.value; if (n) f(t, n); else { t.state = a, t.outcome = e; for (var s = -1, o = t.queue.length; ++s < o;)t.queue[s].callFulfilled(e) } return t }, r.reject = function (t, e) { t.state = o, t.outcome = e; for (var i = -1, n = t.queue.length; ++i < n;)t.queue[i].callRejected(e); return t }, l.resolve = function (t) { return t instanceof this ? t : r.resolve(new this(s), t) }, l.reject = function (t) { var e = new this(s); return r.reject(e, t) }, l.all = function (t) { var e = this; if ("[object Array]" !== Object.prototype.toString.call(t)) return this.reject(new TypeError("must be an array")); var i = t.length, n = !1; if (!i) return this.resolve([]); for (var o = new Array(i), a = 0, h = -1, l = new this(s); ++h < i;)c(t[h], h); return l; function c(t, s) { e.resolve(t).then((function (t) { o[s] = t, ++a !== i || n || (n = !0, r.resolve(l, o)) }), (function (t) { n || (n = !0, r.reject(l, t)) })) } }, l.race = function (t) { if ("[object Array]" !== Object.prototype.toString.call(t)) return this.reject(new TypeError("must be an array")); var e = t.length, i = !1; if (!e) return this.resolve([]); for (var n, o = -1, a = new this(s); ++o < e;)n = t[o], this.resolve(n).then((function (t) { i || (i = !0, r.resolve(a, t)) }), (function (t) { i || (i = !0, r.reject(a, t)) })); return a } }, { 1: 1 }], 3: [function (t, i, n) { (function (e) { "use strict"; "function" != typeof e.Promise && (e.Promise = t(2)) }).call(this, void 0 !== e ? e : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {}) }, { 2: 2 }], 4: [function (t, e, i) { "use strict"; var n = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (t) { return typeof t } : function (t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t }, s = function () { try { if ("undefined" != typeof indexedDB) return indexedDB; if ("undefined" != typeof webkitIndexedDB) return webkitIndexedDB; if ("undefined" != typeof mozIndexedDB) return mozIndexedDB; if ("undefined" != typeof OIndexedDB) return OIndexedDB; if ("undefined" != typeof msIndexedDB) return msIndexedDB } catch (t) { return } }(); function r(t, e) { t = t || [], e = e || {}; try { return new Blob(t, e) } catch (s) { if ("TypeError" !== s.name) throw s; for (var i = new ("undefined" != typeof BlobBuilder ? BlobBuilder : "undefined" != typeof MSBlobBuilder ? MSBlobBuilder : "undefined" != typeof MozBlobBuilder ? MozBlobBuilder : WebKitBlobBuilder), n = 0; n < t.length; n += 1)i.append(t[n]); return i.getBlob(e.type) } } "undefined" == typeof Promise && t(3); var o = Promise; function a(t, e) { e && t.then((function (t) { e(null, t) }), (function (t) { e(t) })) } function h(t, e, i) { "function" == typeof e && t.then(e), "function" == typeof i && t.catch(i) } function l(t) { return "string" != typeof t && (console.warn(t + " used as a key, but it is not a string."), t = String(t)), t } function c() { if (arguments.length && "function" == typeof arguments[arguments.length - 1]) return arguments[arguments.length - 1] } var u = void 0, d = {}, f = Object.prototype.toString; function p(t) { return "boolean" == typeof u ? o.resolve(u) : function (t) { return new o((function (e) { var i = t.transaction("local-forage-detect-blob-support", "readwrite"), n = r([""]); i.objectStore("local-forage-detect-blob-support").put(n, "key"), i.onabort = function (t) { t.preventDefault(), t.stopPropagation(), e(!1) }, i.oncomplete = function () { var t = navigator.userAgent.match(/Chrome\/(\d+)/), i = navigator.userAgent.match(/Edge\//); e(i || !t || parseInt(t[1], 10) >= 43) } })).catch((function () { return !1 })) }(t).then((function (t) { return u = t })) } function g(t) { var e = d[t.name], i = {}; i.promise = new o((function (t, e) { i.resolve = t, i.reject = e })), e.deferredOperations.push(i), e.dbReady ? e.dbReady = e.dbReady.then((function () { return i.promise })) : e.dbReady = i.promise } function m(t) { var e = d[t.name].deferredOperations.pop(); if (e) return e.resolve(), e.promise } function v(t, e) { var i = d[t.name].deferredOperations.pop(); if (i) return i.reject(e), i.promise } function y(t, e) { return new o((function (i, n) { if (d[t.name] = d[t.name] || { forages: [], db: null, dbReady: null, deferredOperations: [] }, t.db) { if (!e) return i(t.db); g(t), t.db.close() } var r = [t.name]; e && r.push(t.version); var o = s.open.apply(s, r); e && (o.onupgradeneeded = function (e) { var i = o.result; try { i.createObjectStore(t.storeName), e.oldVersion <= 1 && i.createObjectStore("local-forage-detect-blob-support") } catch (i) { if ("ConstraintError" !== i.name) throw i; console.warn('The database "' + t.name + '" has been upgraded from version ' + e.oldVersion + " to version " + e.newVersion + ', but the storage "' + t.storeName + '" already exists.') } }), o.onerror = function (t) { t.preventDefault(), n(o.error) }, o.onsuccess = function () { var e = o.result; e.onversionchange = function (t) { t.target.close() }, i(e), m(t) } })) } function b(t) { return y(t, !1) } function w(t) { return y(t, !0) } function x(t, e) { if (!t.db) return !0; var i = !t.db.objectStoreNames.contains(t.storeName), n = t.version < t.db.version, s = t.version > t.db.version; if (n && (t.version !== e && console.warn('The database "' + t.name + "\" can't be downgraded from version " + t.db.version + " to version " + t.version + "."), t.version = t.db.version), s || i) { if (i) { var r = t.db.version + 1; r > t.version && (t.version = r) } return !0 } return !1 } function E(t) { return r([function (t) { for (var e = t.length, i = new ArrayBuffer(e), n = new Uint8Array(i), s = 0; s < e; s++)n[s] = t.charCodeAt(s); return i }(atob(t.data))], { type: t.type }) } function S(t) { return t && t.__local_forage_encoded_blob } function N(t) { var e = this, i = e._initReady().then((function () { var t = d[e._dbInfo.name]; if (t && t.dbReady) return t.dbReady })); return h(i, t, t), i } function _(t, e, i, n) { void 0 === n && (n = 1); try { var s = t.db.transaction(t.storeName, e); i(null, s) } catch (s) { if (n > 0 && (!t.db || "InvalidStateError" === s.name || "NotFoundError" === s.name)) return o.resolve().then((function () { if (!t.db || "NotFoundError" === s.name && !t.db.objectStoreNames.contains(t.storeName) && t.version <= t.db.version) return t.db && (t.version = t.db.version + 1), w(t) })).then((function () { return function (t) { g(t); for (var e = d[t.name], i = e.forages, n = 0; n < i.length; n++) { var s = i[n]; s._dbInfo.db && (s._dbInfo.db.close(), s._dbInfo.db = null) } return t.db = null, b(t).then((function (e) { return t.db = e, x(t) ? w(t) : e })).then((function (n) { t.db = e.db = n; for (var s = 0; s < i.length; s++)i[s]._dbInfo.db = n })).catch((function (e) { throw v(t, e), e })) }(t).then((function () { _(t, e, i, n - 1) })) })).catch(i); i(s) } } var T = { _driver: "asyncStorage", _initStorage: function (t) { var e = this, i = { db: null }; if (t) for (var n in t) i[n] = t[n]; var s = d[i.name]; s || (s = { forages: [], db: null, dbReady: null, deferredOperations: [] }, d[i.name] = s), s.forages.push(e), e._initReady || (e._initReady = e.ready, e.ready = N); var r = []; function a() { return o.resolve() } for (var h = 0; h < s.forages.length; h++) { var l = s.forages[h]; l !== e && r.push(l._initReady().catch(a)) } var c = s.forages.slice(0); return o.all(r).then((function () { return i.db = s.db, b(i) })).then((function (t) { return i.db = t, x(i, e._defaultConfig.version) ? w(i) : t })).then((function (t) { i.db = s.db = t, e._dbInfo = i; for (var n = 0; n < c.length; n++) { var r = c[n]; r !== e && (r._dbInfo.db = i.db, r._dbInfo.version = i.version) } })) }, _support: function () { try { if (!s || !s.open) return !1; var t = "undefined" != typeof openDatabase && /(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent) && !/Chrome/.test(navigator.userAgent) && !/BlackBerry/.test(navigator.platform), e = "function" == typeof fetch && -1 !== fetch.toString().indexOf("[native code"); return (!t || e) && "undefined" != typeof indexedDB && "undefined" != typeof IDBKeyRange } catch (t) { return !1 } }(), iterate: function (t, e) { var i = this, n = new o((function (e, n) { i.ready().then((function () { _(i._dbInfo, "readonly", (function (s, r) { if (s) return n(s); try { var o = r.objectStore(i._dbInfo.storeName).openCursor(), a = 1; o.onsuccess = function () { var i = o.result; if (i) { var n = i.value; S(n) && (n = E(n)); var s = t(n, i.key, a++); void 0 !== s ? e(s) : i.continue() } else e() }, o.onerror = function () { n(o.error) } } catch (t) { n(t) } })) })).catch(n) })); return a(n, e), n }, getItem: function (t, e) { var i = this; t = l(t); var n = new o((function (e, n) { i.ready().then((function () { _(i._dbInfo, "readonly", (function (s, r) { if (s) return n(s); try { var o = r.objectStore(i._dbInfo.storeName).get(t); o.onsuccess = function () { var t = o.result; void 0 === t && (t = null), S(t) && (t = E(t)), e(t) }, o.onerror = function () { n(o.error) } } catch (t) { n(t) } })) })).catch(n) })); return a(n, e), n }, setItem: function (t, e, i) { var n = this; t = l(t); var s = new o((function (i, s) { var r; n.ready().then((function () { return r = n._dbInfo, "[object Blob]" === f.call(e) ? p(r.db).then((function (t) { return t ? e : (i = e, new o((function (t, e) { var n = new FileReader; n.onerror = e, n.onloadend = function (e) { var n = btoa(e.target.result || ""); t({ __local_forage_encoded_blob: !0, data: n, type: i.type }) }, n.readAsBinaryString(i) }))); var i })) : e })).then((function (e) { _(n._dbInfo, "readwrite", (function (r, o) { if (r) return s(r); try { var a = o.objectStore(n._dbInfo.storeName); null === e && (e = void 0); var h = a.put(e, t); o.oncomplete = function () { void 0 === e && (e = null), i(e) }, o.onabort = o.onerror = function () { var t = h.error ? h.error : h.transaction.error; s(t) } } catch (t) { s(t) } })) })).catch(s) })); return a(s, i), s }, removeItem: function (t, e) { var i = this; t = l(t); var n = new o((function (e, n) { i.ready().then((function () { _(i._dbInfo, "readwrite", (function (s, r) { if (s) return n(s); try { var o = r.objectStore(i._dbInfo.storeName).delete(t); r.oncomplete = function () { e() }, r.onerror = function () { n(o.error) }, r.onabort = function () { var t = o.error ? o.error : o.transaction.error; n(t) } } catch (t) { n(t) } })) })).catch(n) })); return a(n, e), n }, clear: function (t) { var e = this, i = new o((function (t, i) { e.ready().then((function () { _(e._dbInfo, "readwrite", (function (n, s) { if (n) return i(n); try { var r = s.objectStore(e._dbInfo.storeName).clear(); s.oncomplete = function () { t() }, s.onabort = s.onerror = function () { var t = r.error ? r.error : r.transaction.error; i(t) } } catch (t) { i(t) } })) })).catch(i) })); return a(i, t), i }, length: function (t) { var e = this, i = new o((function (t, i) { e.ready().then((function () { _(e._dbInfo, "readonly", (function (n, s) { if (n) return i(n); try { var r = s.objectStore(e._dbInfo.storeName).count(); r.onsuccess = function () { t(r.result) }, r.onerror = function () { i(r.error) } } catch (t) { i(t) } })) })).catch(i) })); return a(i, t), i }, key: function (t, e) { var i = this, n = new o((function (e, n) { t < 0 ? e(null) : i.ready().then((function () { _(i._dbInfo, "readonly", (function (s, r) { if (s) return n(s); try { var o = r.objectStore(i._dbInfo.storeName), a = !1, h = o.openKeyCursor(); h.onsuccess = function () { var i = h.result; i ? 0 === t || a ? e(i.key) : (a = !0, i.advance(t)) : e(null) }, h.onerror = function () { n(h.error) } } catch (t) { n(t) } })) })).catch(n) })); return a(n, e), n }, keys: function (t) { var e = this, i = new o((function (t, i) { e.ready().then((function () { _(e._dbInfo, "readonly", (function (n, s) { if (n) return i(n); try { var r = s.objectStore(e._dbInfo.storeName).openKeyCursor(), o = []; r.onsuccess = function () { var e = r.result; e ? (o.push(e.key), e.continue()) : t(o) }, r.onerror = function () { i(r.error) } } catch (t) { i(t) } })) })).catch(i) })); return a(i, t), i }, dropInstance: function (t, e) { e = c.apply(this, arguments); var i, n = this.config(); if ((t = "function" != typeof t && t || {}).name || (t.name = t.name || n.name, t.storeName = t.storeName || n.storeName), t.name) { var r = t.name === n.name && this._dbInfo.db ? o.resolve(this._dbInfo.db) : b(t).then((function (e) { var i = d[t.name], n = i.forages; i.db = e; for (var s = 0; s < n.length; s++)n[s]._dbInfo.db = e; return e })); i = t.storeName ? r.then((function (e) { if (e.objectStoreNames.contains(t.storeName)) { var i = e.version + 1; g(t); var n = d[t.name], r = n.forages; e.close(); for (var a = 0; a < r.length; a++) { var h = r[a]; h._dbInfo.db = null, h._dbInfo.version = i } return new o((function (e, n) { var r = s.open(t.name, i); r.onerror = function (t) { r.result.close(), n(t) }, r.onupgradeneeded = function () { r.result.deleteObjectStore(t.storeName) }, r.onsuccess = function () { var t = r.result; t.close(), e(t) } })).then((function (t) { n.db = t; for (var e = 0; e < r.length; e++) { var i = r[e]; i._dbInfo.db = t, m(i._dbInfo) } })).catch((function (e) { throw (v(t, e) || o.resolve()).catch((function () { })), e })) } })) : r.then((function (e) { g(t); var i = d[t.name], n = i.forages; e.close(); for (var r = 0; r < n.length; r++)n[r]._dbInfo.db = null; return new o((function (e, i) { var n = s.deleteDatabase(t.name); n.onerror = function () { var t = n.result; t && t.close(), i(n.error) }, n.onblocked = function () { console.warn('dropInstance blocked for database "' + t.name + '" until all open connections are closed') }, n.onsuccess = function () { var t = n.result; t && t.close(), e(t) } })).then((function (t) { i.db = t; for (var e = 0; e < n.length; e++)m(n[e]._dbInfo) })).catch((function (e) { throw (v(t, e) || o.resolve()).catch((function () { })), e })) })) } else i = o.reject("Invalid arguments"); return a(i, e), i } }, C = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", O = /^~~local_forage_type~([^~]+)~/, I = Object.prototype.toString; function R(t) { var e, i, n, s, r, o = .75 * t.length, a = t.length, h = 0; "=" === t[t.length - 1] && (o--, "=" === t[t.length - 2] && o--); var l = new ArrayBuffer(o), c = new Uint8Array(l); for (e = 0; e < a; e += 4)i = C.indexOf(t[e]), n = C.indexOf(t[e + 1]), s = C.indexOf(t[e + 2]), r = C.indexOf(t[e + 3]), c[h++] = i << 2 | n >> 4, c[h++] = (15 & n) << 4 | s >> 2, c[h++] = (3 & s) << 6 | 63 & r; return l } function k(t) { var e, i = new Uint8Array(t), n = ""; for (e = 0; e < i.length; e += 3)n += C[i[e] >> 2], n += C[(3 & i[e]) << 4 | i[e + 1] >> 4], n += C[(15 & i[e + 1]) << 2 | i[e + 2] >> 6], n += C[63 & i[e + 2]]; return i.length % 3 == 2 ? n = n.substring(0, n.length - 1) + "=" : i.length % 3 == 1 && (n = n.substring(0, n.length - 2) + "=="), n } var A = { serialize: function (t, e) { var i = ""; if (t && (i = I.call(t)), t && ("[object ArrayBuffer]" === i || t.buffer && "[object ArrayBuffer]" === I.call(t.buffer))) { var n, s = "__lfsc__:"; t instanceof ArrayBuffer ? (n = t, s += "arbf") : (n = t.buffer, "[object Int8Array]" === i ? s += "si08" : "[object Uint8Array]" === i ? s += "ui08" : "[object Uint8ClampedArray]" === i ? s += "uic8" : "[object Int16Array]" === i ? s += "si16" : "[object Uint16Array]" === i ? s += "ur16" : "[object Int32Array]" === i ? s += "si32" : "[object Uint32Array]" === i ? s += "ui32" : "[object Float32Array]" === i ? s += "fl32" : "[object Float64Array]" === i ? s += "fl64" : e(new Error("Failed to get type for BinaryArray"))), e(s + k(n)) } else if ("[object Blob]" === i) { var r = new FileReader; r.onload = function () { var i = "~~local_forage_type~" + t.type + "~" + k(this.result); e("__lfsc__:blob" + i) }, r.readAsArrayBuffer(t) } else try { e(JSON.stringify(t)) } catch (i) { console.error("Couldn't convert value into a JSON string: ", t), e(null, i) } }, deserialize: function (t) { if ("__lfsc__:" !== t.substring(0, 9)) return JSON.parse(t); var e, i = t.substring(13), n = t.substring(9, 13); if ("blob" === n && O.test(i)) { var s = i.match(O); e = s[1], i = i.substring(s[0].length) } var o = R(i); switch (n) { case "arbf": return o; case "blob": return r([o], { type: e }); case "si08": return new Int8Array(o); case "ui08": return new Uint8Array(o); case "uic8": return new Uint8ClampedArray(o); case "si16": return new Int16Array(o); case "ur16": return new Uint16Array(o); case "si32": return new Int32Array(o); case "ui32": return new Uint32Array(o); case "fl32": return new Float32Array(o); case "fl64": return new Float64Array(o); default: throw new Error("Unkown type: " + n) } }, stringToBuffer: R, bufferToString: k }; function L(t, e, i, n) { t.executeSql("CREATE TABLE IF NOT EXISTS " + e.storeName + " (id INTEGER PRIMARY KEY, key unique, value)", [], i, n) } function j(t, e, i, n, s, r) { t.executeSql(i, n, s, (function (t, o) { o.code === o.SYNTAX_ERR ? t.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?", [e.storeName], (function (t, a) { a.rows.length ? r(t, o) : L(t, e, (function () { t.executeSql(i, n, s, r) }), r) }), r) : r(t, o) }), r) } function D(t, e, i, n) { var s = this; t = l(t); var r = new o((function (r, o) { s.ready().then((function () { void 0 === e && (e = null); var a = e, h = s._dbInfo; h.serializer.serialize(e, (function (e, l) { l ? o(l) : h.db.transaction((function (i) { j(i, h, "INSERT OR REPLACE INTO " + h.storeName + " (key, value) VALUES (?, ?)", [t, e], (function () { r(a) }), (function (t, e) { o(e) })) }), (function (e) { if (e.code === e.QUOTA_ERR) { if (n > 0) return void r(D.apply(s, [t, a, i, n - 1])); o(e) } })) })) })).catch(o) })); return a(r, i), r } var P = { _driver: "webSQLStorage", _initStorage: function (t) { var e = this, i = { db: null }; if (t) for (var n in t) i[n] = "string" != typeof t[n] ? t[n].toString() : t[n]; var s = new o((function (t, n) { try { i.db = openDatabase(i.name, String(i.version), i.description, i.size) } catch (t) { return n(t) } i.db.transaction((function (s) { L(s, i, (function () { e._dbInfo = i, t() }), (function (t, e) { n(e) })) }), n) })); return i.serializer = A, s }, _support: "function" == typeof openDatabase, iterate: function (t, e) { var i = this, n = new o((function (e, n) { i.ready().then((function () { var s = i._dbInfo; s.db.transaction((function (i) { j(i, s, "SELECT * FROM " + s.storeName, [], (function (i, n) { for (var r = n.rows, o = r.length, a = 0; a < o; a++) { var h = r.item(a), l = h.value; if (l && (l = s.serializer.deserialize(l)), void 0 !== (l = t(l, h.key, a + 1))) return void e(l) } e() }), (function (t, e) { n(e) })) })) })).catch(n) })); return a(n, e), n }, getItem: function (t, e) { var i = this; t = l(t); var n = new o((function (e, n) { i.ready().then((function () { var s = i._dbInfo; s.db.transaction((function (i) { j(i, s, "SELECT * FROM " + s.storeName + " WHERE key = ? LIMIT 1", [t], (function (t, i) { var n = i.rows.length ? i.rows.item(0).value : null; n && (n = s.serializer.deserialize(n)), e(n) }), (function (t, e) { n(e) })) })) })).catch(n) })); return a(n, e), n }, setItem: function (t, e, i) { return D.apply(this, [t, e, i, 1]) }, removeItem: function (t, e) { var i = this; t = l(t); var n = new o((function (e, n) { i.ready().then((function () { var s = i._dbInfo; s.db.transaction((function (i) { j(i, s, "DELETE FROM " + s.storeName + " WHERE key = ?", [t], (function () { e() }), (function (t, e) { n(e) })) })) })).catch(n) })); return a(n, e), n }, clear: function (t) { var e = this, i = new o((function (t, i) { e.ready().then((function () { var n = e._dbInfo; n.db.transaction((function (e) { j(e, n, "DELETE FROM " + n.storeName, [], (function () { t() }), (function (t, e) { i(e) })) })) })).catch(i) })); return a(i, t), i }, length: function (t) { var e = this, i = new o((function (t, i) { e.ready().then((function () { var n = e._dbInfo; n.db.transaction((function (e) { j(e, n, "SELECT COUNT(key) as c FROM " + n.storeName, [], (function (e, i) { var n = i.rows.item(0).c; t(n) }), (function (t, e) { i(e) })) })) })).catch(i) })); return a(i, t), i }, key: function (t, e) { var i = this, n = new o((function (e, n) { i.ready().then((function () { var s = i._dbInfo; s.db.transaction((function (i) { j(i, s, "SELECT key FROM " + s.storeName + " WHERE id = ? LIMIT 1", [t + 1], (function (t, i) { var n = i.rows.length ? i.rows.item(0).key : null; e(n) }), (function (t, e) { n(e) })) })) })).catch(n) })); return a(n, e), n }, keys: function (t) { var e = this, i = new o((function (t, i) { e.ready().then((function () { var n = e._dbInfo; n.db.transaction((function (e) { j(e, n, "SELECT key FROM " + n.storeName, [], (function (e, i) { for (var n = [], s = 0; s < i.rows.length; s++)n.push(i.rows.item(s).key); t(n) }), (function (t, e) { i(e) })) })) })).catch(i) })); return a(i, t), i }, dropInstance: function (t, e) { e = c.apply(this, arguments); var i = this.config(); (t = "function" != typeof t && t || {}).name || (t.name = t.name || i.name, t.storeName = t.storeName || i.storeName); var n, s = this; return a(n = t.name ? new o((function (e) { var n; n = t.name === i.name ? s._dbInfo.db : openDatabase(t.name, "", "", 0), t.storeName ? e({ db: n, storeNames: [t.storeName] }) : e(function (t) { return new o((function (e, i) { t.transaction((function (n) { n.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'", [], (function (i, n) { for (var s = [], r = 0; r < n.rows.length; r++)s.push(n.rows.item(r).name); e({ db: t, storeNames: s }) }), (function (t, e) { i(e) })) }), (function (t) { i(t) })) })) }(n)) })).then((function (t) { return new o((function (e, i) { t.db.transaction((function (n) { function s(t) { return new o((function (e, i) { n.executeSql("DROP TABLE IF EXISTS " + t, [], (function () { e() }), (function (t, e) { i(e) })) })) } for (var r = [], a = 0, h = t.storeNames.length; a < h; a++)r.push(s(t.storeNames[a])); o.all(r).then((function () { e() })).catch((function (t) { i(t) })) }), (function (t) { i(t) })) })) })) : o.reject("Invalid arguments"), e), n } }; function M(t, e) { var i = t.name + "/"; return t.storeName !== e.storeName && (i += t.storeName + "/"), i } var z = { _driver: "localStorageWrapper", _initStorage: function (t) { var e = {}; if (t) for (var i in t) e[i] = t[i]; return e.keyPrefix = M(t, this._defaultConfig), !function () { try { return localStorage.setItem("_localforage_support_test", !0), localStorage.removeItem("_localforage_support_test"), !1 } catch (t) { return !0 } }() || localStorage.length > 0 ? (this._dbInfo = e, e.serializer = A, o.resolve()) : o.reject() }, _support: function () { try { return "undefined" != typeof localStorage && "setItem" in localStorage && !!localStorage.setItem } catch (t) { return !1 } }(), iterate: function (t, e) { var i = this, n = i.ready().then((function () { for (var e = i._dbInfo, n = e.keyPrefix, s = n.length, r = localStorage.length, o = 1, a = 0; a < r; a++) { var h = localStorage.key(a); if (0 === h.indexOf(n)) { var l = localStorage.getItem(h); if (l && (l = e.serializer.deserialize(l)), void 0 !== (l = t(l, h.substring(s), o++))) return l } } })); return a(n, e), n }, getItem: function (t, e) { var i = this; t = l(t); var n = i.ready().then((function () { var e = i._dbInfo, n = localStorage.getItem(e.keyPrefix + t); return n && (n = e.serializer.deserialize(n)), n })); return a(n, e), n }, setItem: function (t, e, i) { var n = this; t = l(t); var s = n.ready().then((function () { void 0 === e && (e = null); var i = e; return new o((function (s, r) { var o = n._dbInfo; o.serializer.serialize(e, (function (e, n) { if (n) r(n); else try { localStorage.setItem(o.keyPrefix + t, e), s(i) } catch (t) { "QuotaExceededError" !== t.name && "NS_ERROR_DOM_QUOTA_REACHED" !== t.name || r(t), r(t) } })) })) })); return a(s, i), s }, removeItem: function (t, e) { var i = this; t = l(t); var n = i.ready().then((function () { var e = i._dbInfo; localStorage.removeItem(e.keyPrefix + t) })); return a(n, e), n }, clear: function (t) { var e = this, i = e.ready().then((function () { for (var t = e._dbInfo.keyPrefix, i = localStorage.length - 1; i >= 0; i--) { var n = localStorage.key(i); 0 === n.indexOf(t) && localStorage.removeItem(n) } })); return a(i, t), i }, length: function (t) { var e = this.keys().then((function (t) { return t.length })); return a(e, t), e }, key: function (t, e) { var i = this, n = i.ready().then((function () { var e, n = i._dbInfo; try { e = localStorage.key(t) } catch (t) { e = null } return e && (e = e.substring(n.keyPrefix.length)), e })); return a(n, e), n }, keys: function (t) { var e = this, i = e.ready().then((function () { for (var t = e._dbInfo, i = localStorage.length, n = [], s = 0; s < i; s++) { var r = localStorage.key(s); 0 === r.indexOf(t.keyPrefix) && n.push(r.substring(t.keyPrefix.length)) } return n })); return a(i, t), i }, dropInstance: function (t, e) { if (e = c.apply(this, arguments), !(t = "function" != typeof t && t || {}).name) { var i = this.config(); t.name = t.name || i.name, t.storeName = t.storeName || i.storeName } var n, s = this; return a(n = t.name ? new o((function (e) { t.storeName ? e(M(t, s._defaultConfig)) : e(t.name + "/") })).then((function (t) { for (var e = localStorage.length - 1; e >= 0; e--) { var i = localStorage.key(e); 0 === i.indexOf(t) && localStorage.removeItem(i) } })) : o.reject("Invalid arguments"), e), n } }, B = function (t, e) { for (var i, n, s = t.length, r = 0; r < s;) { if ((i = t[r]) === (n = e) || "number" == typeof i && "number" == typeof n && isNaN(i) && isNaN(n)) return !0; r++ } return !1 }, q = Array.isArray || function (t) { return "[object Array]" === Object.prototype.toString.call(t) }, F = {}, U = {}, W = { INDEXEDDB: T, WEBSQL: P, LOCALSTORAGE: z }, H = [W.INDEXEDDB._driver, W.WEBSQL._driver, W.LOCALSTORAGE._driver], V = ["dropInstance"], X = ["clear", "getItem", "iterate", "key", "keys", "length", "removeItem", "setItem"].concat(V), G = { description: "", driver: H.slice(), name: "localforage", size: 4980736, storeName: "keyvaluepairs", version: 1 }; function Y(t, e) { t[e] = function () { var i = arguments; return t.ready().then((function () { return t[e].apply(t, i) })) } } function $() { for (var t = 1; t < arguments.length; t++) { var e = arguments[t]; if (e) for (var i in e) e.hasOwnProperty(i) && (q(e[i]) ? arguments[0][i] = e[i].slice() : arguments[0][i] = e[i]) } return arguments[0] } var K = new (function () { function t(e) { for (var i in function (t, e) { if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function") }(this, t), W) if (W.hasOwnProperty(i)) { var n = W[i], s = n._driver; this[i] = s, F[s] || this.defineDriver(n) } this._defaultConfig = $({}, G), this._config = $({}, this._defaultConfig, e), this._driverSet = null, this._initDriver = null, this._ready = !1, this._dbInfo = null, this._wrapLibraryMethodsWithReady(), this.setDriver(this._config.driver).catch((function () { })) } return t.prototype.config = function (t) { if ("object" === (void 0 === t ? "undefined" : n(t))) { if (this._ready) return new Error("Can't call config() after localforage has been used."); for (var e in t) { if ("storeName" === e && (t[e] = t[e].replace(/\W/g, "_")), "version" === e && "number" != typeof t[e]) return new Error("Database version must be a number."); this._config[e] = t[e] } return !("driver" in t) || !t.driver || this.setDriver(this._config.driver) } return "string" == typeof t ? this._config[t] : this._config }, t.prototype.defineDriver = function (t, e, i) { var n = new o((function (e, i) { try { var n = t._driver, s = new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver"); if (!t._driver) return void i(s); for (var r = X.concat("_initStorage"), h = 0, l = r.length; h < l; h++) { var c = r[h]; if ((!B(V, c) || t[c]) && "function" != typeof t[c]) return void i(s) } !function () { for (var e = function (t) { return function () { var e = new Error("Method " + t + " is not implemented by the current driver"), i = o.reject(e); return a(i, arguments[arguments.length - 1]), i } }, i = 0, n = V.length; i < n; i++) { var s = V[i]; t[s] || (t[s] = e(s)) } }(); var u = function (i) { F[n] && console.info("Redefining LocalForage driver: " + n), F[n] = t, U[n] = i, e() }; "_support" in t ? t._support && "function" == typeof t._support ? t._support().then(u, i) : u(!!t._support) : u(!0) } catch (t) { i(t) } })); return h(n, e, i), n }, t.prototype.driver = function () { return this._driver || null }, t.prototype.getDriver = function (t, e, i) { var n = F[t] ? o.resolve(F[t]) : o.reject(new Error("Driver not found.")); return h(n, e, i), n }, t.prototype.getSerializer = function (t) { var e = o.resolve(A); return h(e, t), e }, t.prototype.ready = function (t) { var e = this, i = e._driverSet.then((function () { return null === e._ready && (e._ready = e._initDriver()), e._ready })); return h(i, t, t), i }, t.prototype.setDriver = function (t, e, i) { var n = this; q(t) || (t = [t]); var s = this._getSupportedDrivers(t); function r() { n._config.driver = n.driver() } function a(t) { return n._extend(t), r(), n._ready = n._initStorage(n._config), n._ready } var l = null !== this._driverSet ? this._driverSet.catch((function () { return o.resolve() })) : o.resolve(); return this._driverSet = l.then((function () { var t = s[0]; return n._dbInfo = null, n._ready = null, n.getDriver(t).then((function (t) { n._driver = t._driver, r(), n._wrapLibraryMethodsWithReady(), n._initDriver = function (t) { return function () { var e = 0; return function i() { for (; e < t.length;) { var s = t[e]; return e++, n._dbInfo = null, n._ready = null, n.getDriver(s).then(a).catch(i) } r(); var h = new Error("No available storage method found."); return n._driverSet = o.reject(h), n._driverSet }() } }(s) })) })).catch((function () { r(); var t = new Error("No available storage method found."); return n._driverSet = o.reject(t), n._driverSet })), h(this._driverSet, e, i), this._driverSet }, t.prototype.supports = function (t) { return !!U[t] }, t.prototype._extend = function (t) { $(this, t) }, t.prototype._getSupportedDrivers = function (t) { for (var e = [], i = 0, n = t.length; i < n; i++) { var s = t[i]; this.supports(s) && e.push(s) } return e }, t.prototype._wrapLibraryMethodsWithReady = function () { for (var t = 0, e = X.length; t < e; t++)Y(this, X[t]) }, t.prototype.createInstance = function (e) { return new t(e) }, t }()); e.exports = K }, { 3: 3 }] }, {}, [4])(4) }).call(this, i(17)) }, function (t, e, i) { "use strict"; var n = i(3), s = i.n(n), r = i(0), o = i(5), a = i(4), h = i(2), l = i(6), c = i(8), u = function (t, e, i, n) { var s, o = "undefined" != typeof window && window.URL, h = o ? "blob" : "arraybuffer", l = new r.defer, c = new XMLHttpRequest, u = XMLHttpRequest.prototype; for (s in "overrideMimeType" in u || Object.defineProperty(u, "overrideMimeType", { value: function () { } }), i && (c.withCredentials = !0), c.onreadystatechange = function () { if (this.readyState === XMLHttpRequest.DONE) { var t = !1; if ("" !== this.responseType && "document" !== this.responseType || (t = this.responseXML), 200 === this.status || 0 === this.status || t) { var i; if (!this.response && !t) return l.reject({ status: this.status, message: "Empty Response", stack: (new Error).stack }), l.promise; if (403 === this.status) return l.reject({ status: this.status, response: this.response, message: "Forbidden", stack: (new Error).stack }), l.promise; i = t ? this.responseXML : Object(r.isXml)(e) ? Object(r.parse)(this.response, "text/xml") : "xhtml" == e ? Object(r.parse)(this.response, "application/xhtml+xml") : "html" == e || "htm" == e ? Object(r.parse)(this.response, "text/html") : "json" == e ? JSON.parse(this.response) : "blob" == e ? o ? this.response : new Blob([this.response]) : this.response, l.resolve(i) } else l.reject({ status: this.status, message: this.response, stack: (new Error).stack }) } }, c.onerror = function (t) { l.reject(t) }, c.open("GET", t, !0), n) c.setRequestHeader(s, n[s]); return "json" == e && c.setRequestHeader("Accept", "application/json"), e || (e = new a.a(t).extension), "blob" == e && (c.responseType = h), Object(r.isXml)(e) && c.overrideMimeType("text/xml"), "binary" == e && (c.responseType = "arraybuffer"), c.send(), l.promise }, d = i(15), f = class { constructor(t, e) { this.idref = t.idref, this.linear = "yes" === t.linear, this.properties = t.properties, this.index = t.index, this.href = t.href, this.url = t.url, this.canonical = t.canonical, this.next = t.next, this.prev = t.prev, this.cfiBase = t.cfiBase, e ? this.hooks = e : (this.hooks = {}, this.hooks.serialize = new l.a(this), this.hooks.content = new l.a(this)), this.document = void 0, this.contents = void 0, this.output = void 0 } load(t) { var e = t || this.request || u, i = new r.defer, n = i.promise; return this.contents ? i.resolve(this.contents) : e(this.url).then(function (t) { return this.document = t, this.contents = t.documentElement, this.hooks.content.trigger(this.document, this) }.bind(this)).then(function () { i.resolve(this.contents) }.bind(this)).catch((function (t) { i.reject(t) })), n } base() { return Object(c.a)(this.document, this) } render(t) { var e = new r.defer, i = e.promise; return this.output, this.load(t).then(function (t) { var e = ("undefined" != typeof navigator && navigator.userAgent || "").indexOf("Trident") >= 0, i = new ("undefined" == typeof XMLSerializer || e ? d.DOMParser : XMLSerializer); return this.output = i.serializeToString(t), this.output }.bind(this)).then(function () { return this.hooks.serialize.trigger(this.output, this) }.bind(this)).then(function () { e.resolve(this.output) }.bind(this)).catch((function (t) { e.reject(t) })), i } find(t) { var e = this, i = [], n = t.toLowerCase(); return Object(r.sprint)(e.document, (function (t) { !function (t) { for (var s, r, o, a = t.textContent.toLowerCase(), h = e.document.createRange(), l = -1; -1 != r;)-1 != (r = a.indexOf(n, l + 1)) && ((h = e.document.createRange()).setStart(t, r), h.setEnd(t, r + n.length), s = e.cfiFromRange(h), o = t.textContent.length < 150 ? t.textContent : "..." + (o = t.textContent.substring(r - 75, r + 75)) + "...", i.push({ cfi: s, excerpt: o })), l = r }(t) })), i } search(t, e = 5) { if (void 0 === document.createTreeWalker) return this.find(t); let i = []; const n = this, s = t.toLowerCase(), r = function (t) { const e = t.reduce(((t, e) => t + e.textContent), "").toLowerCase().indexOf(s); if (-1 != e) { const r = 0, o = e + s.length; let a = 0, h = 0; if (e < t[r].length) { let s; for (; a < t.length - 1 && (h += t[a].length, !(o <= h));)a += 1; let l = t[r], c = t[a], u = n.document.createRange(); u.setStart(l, e); let d = t.slice(0, a).reduce(((t, e) => t + e.textContent.length), 0); u.setEnd(c, d > o ? o : o - d), s = n.cfiFromRange(u); let f = t.slice(0, a + 1).reduce(((t, e) => t + e.textContent), ""); f.length > 150 && (f = f.substring(e - 75, e + 75), f = "..." + f + "..."), i.push({ cfi: s, excerpt: f }) } } }, o = document.createTreeWalker(n.document, NodeFilter.SHOW_TEXT, null, !1); let a, h = []; for (; a = o.nextNode();)h.push(a), h.length == e && (r(h.slice(0, e)), h = h.slice(1, e)); return h.length > 0 && r(h), i } reconcileLayoutSettings(t) { var e = { layout: t.layout, spread: t.spread, orientation: t.orientation }; return this.properties.forEach((function (t) { var i, n, s = t.replace("rendition:", ""), r = s.indexOf("-"); -1 != r && (i = s.slice(0, r), n = s.slice(r + 1), e[i] = n) })), e } cfiFromRange(t) { return new h.a(t, this.cfiBase).toString() } cfiFromElement(t) { return new h.a(t, this.cfiBase).toString() } unload() { this.document = void 0, this.contents = void 0, this.output = void 0 } destroy() { this.unload(), this.hooks.serialize.clear(), this.hooks.content.clear(), this.hooks = void 0, this.idref = void 0, this.linear = void 0, this.properties = void 0, this.index = void 0, this.href = void 0, this.url = void 0, this.next = void 0, this.prev = void 0, this.cfiBase = void 0 } }, p = class { constructor() { this.spineItems = [], this.spineByHref = {}, this.spineById = {}, this.hooks = {}, this.hooks.serialize = new l.a, this.hooks.content = new l.a, this.hooks.content.register(c.a), this.hooks.content.register(c.b), this.hooks.content.register(c.d), this.epubcfi = new h.a, this.loaded = !1, this.items = void 0, this.manifest = void 0, this.spineNodeIndex = void 0, this.baseUrl = void 0, this.length = void 0 } unpack(t, e, i) { this.items = t.spine, this.manifest = t.manifest, this.spineNodeIndex = t.spineNodeIndex, this.baseUrl = t.baseUrl || t.basePath || "", this.length = this.items.length, this.items.forEach(((t, n) => { var s, r = this.manifest[t.idref]; t.index = n, t.cfiBase = this.epubcfi.generateChapterComponent(this.spineNodeIndex, t.index, t.id), t.href && (t.url = e(t.href, !0), t.canonical = i(t.href)), r && (t.href = r.href, t.url = e(t.href, !0), t.canonical = i(t.href), r.properties.length && t.properties.push.apply(t.properties, r.properties)), "yes" === t.linear ? (t.prev = function () { let e = t.index; for (; e > 0;) { let t = this.get(e - 1); if (t && t.linear) return t; e -= 1 } }.bind(this), t.next = function () { let e = t.index; for (; e < this.spineItems.length - 1;) { let t = this.get(e + 1); if (t && t.linear) return t; e += 1 } }.bind(this)) : (t.prev = function () { }, t.next = function () { }), s = new f(t, this.hooks), this.append(s) })), this.loaded = !0 } get(t) { var e = 0; if (void 0 === t) for (; e < this.spineItems.length;) { let t = this.spineItems[e]; if (t && t.linear) break; e += 1 } else this.epubcfi.isCfiString(t) ? e = new h.a(t).spinePos : "number" == typeof t || !1 === isNaN(t) ? e = t : "string" == typeof t && 0 === t.indexOf("#") ? e = this.spineById[t.substring(1)] : "string" == typeof t && (t = t.split("#")[0], e = this.spineByHref[t] || this.spineByHref[encodeURI(t)]); return this.spineItems[e] || null } append(t) { var e = this.spineItems.length; return t.index = e, this.spineItems.push(t), this.spineByHref[decodeURI(t.href)] = e, this.spineByHref[encodeURI(t.href)] = e, this.spineByHref[t.href] = e, this.spineById[t.idref] = e, e } prepend(t) { return this.spineByHref[t.href] = 0, this.spineById[t.idref] = 0, this.spineItems.forEach((function (t, e) { t.index = e })), 0 } remove(t) { var e = this.spineItems.indexOf(t); if (e > -1) return delete this.spineByHref[t.href], delete this.spineById[t.idref], this.spineItems.splice(e, 1) } each() { return this.spineItems.forEach.apply(this.spineItems, arguments) } first() { let t = 0; do { let e = this.get(t); if (e && e.linear) return e; t += 1 } while (t < this.spineItems.length) } last() { let t = this.spineItems.length - 1; do { let e = this.get(t); if (e && e.linear) return e; t -= 1 } while (t >= 0) } destroy() { this.each((t => t.destroy())), this.spineItems = void 0, this.spineByHref = void 0, this.spineById = void 0, this.hooks.serialize.clear(), this.hooks.content.clear(), this.hooks = void 0, this.epubcfi = void 0, this.loaded = !1, this.items = void 0, this.manifest = void 0, this.spineNodeIndex = void 0, this.baseUrl = void 0, this.length = void 0 } }, g = i(9), m = i(1); class v { constructor(t, e, i) { this.spine = t, this.request = e, this.pause = i || 100, this.q = new g.a(this), this.epubcfi = new h.a, this._locations = [], this._locationsWords = [], this.total = 0, this.break = 150, this._current = 0, this._wordCounter = 0, this.currentLocation = "", this._currentCfi = "", this.processingTimeout = void 0 } generate(t) { return t && (this.break = t), this.q.pause(), this.spine.each(function (t) { t.linear && this.q.enqueue(this.process.bind(this), t) }.bind(this)), this.q.run().then(function () { return this.total = this._locations.length - 1, this._currentCfi && (this.currentLocation = this._currentCfi), this._locations }.bind(this)) } createRange() { return { startContainer: void 0, startOffset: void 0, endContainer: void 0, endOffset: void 0 } } process(t) { return t.load(this.request).then(function (e) { var i = new r.defer, n = this.parse(e, t.cfiBase); return this._locations = this._locations.concat(n), t.unload(), this.processingTimeout = setTimeout((() => i.resolve(n)), this.pause), i.promise }.bind(this)) } parse(t, e, i) { var n, s, o = [], a = t.ownerDocument, l = Object(r.qs)(a, "body"), c = 0, u = i || this.break; if (Object(r.sprint)(l, function (t) { var i, r = t.length, a = 0; if (0 === t.textContent.trim().length) return !1; for (0 == c && ((n = this.createRange()).startContainer = t, n.startOffset = 0), (i = u - c) > r && (c += r, a = r); a < r;)if (i = u - c, 0 === c && (a += 1, (n = this.createRange()).startContainer = t, n.startOffset = a), a + i >= r) c += r - a, a = r; else { a += i, n.endContainer = t, n.endOffset = a; let s = new h.a(n, e).toString(); o.push(s), c = 0 } s = t }.bind(this)), n && n.startContainer && s) { n.endContainer = s, n.endOffset = s.length; let t = new h.a(n, e).toString(); o.push(t), c = 0 } return o } generateFromWords(t, e, i) { var n = t ? new h.a(t) : void 0; return this.q.pause(), this._locationsWords = [], this._wordCounter = 0, this.spine.each(function (t) { t.linear && (n ? t.index >= n.spinePos && this.q.enqueue(this.processWords.bind(this), t, e, n, i) : this.q.enqueue(this.processWords.bind(this), t, e, n, i)) }.bind(this)), this.q.run().then(function () { return this._currentCfi && (this.currentLocation = this._currentCfi), this._locationsWords }.bind(this)) } processWords(t, e, i, n) { return n && this._locationsWords.length >= n ? Promise.resolve() : t.load(this.request).then(function (s) { var o = new r.defer, a = this.parseWords(s, t, e, i), h = n - this._locationsWords.length; return this._locationsWords = this._locationsWords.concat(a.length >= n ? a.slice(0, h) : a), t.unload(), this.processingTimeout = setTimeout((() => o.resolve(a)), this.pause), o.promise }.bind(this)) } countWords(t) { return (t = (t = (t = t.replace(/(^\s*)|(\s*$)/gi, "")).replace(/[ ]{2,}/gi, " ")).replace(/\n /, "\n")).split(" ").length } parseWords(t, e, i, n) { var s, o = e.cfiBase, a = [], l = t.ownerDocument, c = Object(r.qs)(l, "body"), u = i, d = !n || n.spinePos !== e.index; return n && e.index === n.spinePos && (s = n.findNode(n.range ? n.path.steps.concat(n.start.steps) : n.path.steps, t.ownerDocument)), Object(r.sprint)(c, function (t) { if (!d) { if (t !== s) return !1; d = !0 } if (t.textContent.length < 10 && 0 === t.textContent.trim().length) return !1; var e, i = this.countWords(t.textContent), n = 0; if (0 === i) return !1; for ((e = u - this._wordCounter) > i && (this._wordCounter += i, n = i); n < i;)if (n + (e = u - this._wordCounter) >= i) this._wordCounter += i - n, n = i; else { n += e; let i = new h.a(t, o); a.push({ cfi: i.toString(), wordCount: this._wordCounter }), this._wordCounter = 0 } }.bind(this)), a } locationFromCfi(t) { let e; return h.a.prototype.isCfiString(t) && (t = new h.a(t)), 0 === this._locations.length ? -1 : (e = Object(r.locationOf)(t, this._locations, this.epubcfi.compare), e > this.total ? this.total : e) } percentageFromCfi(t) { if (0 === this._locations.length) return null; var e = this.locationFromCfi(t); return this.percentageFromLocation(e) } percentageFromLocation(t) { return t && this.total ? t / this.total : 0 } cfiFromLocation(t) { var e = -1; return "number" != typeof t && (t = parseInt(t)), t >= 0 && t < this._locations.length && (e = this._locations[t]), e } cfiFromPercentage(t) { let e; if (t > 1 && console.warn("Normalize cfiFromPercentage value to between 0 - 1"), t >= 1) { let t = new h.a(this._locations[this.total]); return t.collapse(), t.toString() } return e = Math.ceil(this.total * t), this.cfiFromLocation(e) } load(t) { return this._locations = "string" == typeof t ? JSON.parse(t) : t, this.total = this._locations.length - 1, this._locations } save() { return JSON.stringify(this._locations) } getCurrent() { return this._current } setCurrent(t) { var e; if ("string" == typeof t) this._currentCfi = t; else { if ("number" != typeof t) return; this._current = t } 0 !== this._locations.length && ("string" == typeof t ? (e = this.locationFromCfi(t), this._current = e) : e = t, this.emit(m.c.LOCATIONS.CHANGED, { percentage: this.percentageFromLocation(e) })) } get currentLocation() { return this._current } set currentLocation(t) { this.setCurrent(t) } length() { return this._locations.length } destroy() { this.spine = void 0, this.request = void 0, this.pause = void 0, this.q.stop(), this.q = void 0, this.epubcfi = void 0, this._locations = void 0, this.total = void 0, this.break = void 0, this._current = void 0, this.currentLocation = void 0, this._currentCfi = void 0, clearTimeout(this.processingTimeout) } } s()(v.prototype); var y = v, b = i(7), w = i.n(b), x = class { constructor(t) { this.packagePath = "", this.directory = "", this.encoding = "", t && this.parse(t) } parse(t) { var e; if (!t) throw new Error("Container File Not Found"); if (!(e = Object(r.qs)(t, "rootfile"))) throw new Error("No RootFile Found"); this.packagePath = e.getAttribute("full-path"), this.directory = w.a.dirname(this.packagePath), this.encoding = t.xmlEncoding } destroy() { this.packagePath = void 0, this.directory = void 0, this.encoding = void 0 } }, E = class { constructor(t) { this.manifest = {}, this.navPath = "", this.ncxPath = "", this.coverPath = "", this.spineNodeIndex = 0, this.spine = [], this.metadata = {}, t && this.parse(t) } parse(t) { var e, i, n; if (!t) throw new Error("Package File Not Found"); if (!(e = Object(r.qs)(t, "metadata"))) throw new Error("No Metadata Found"); if (!(i = Object(r.qs)(t, "manifest"))) throw new Error("No Manifest Found"); if (!(n = Object(r.qs)(t, "spine"))) throw new Error("No Spine Found"); return this.manifest = this.parseManifest(i), this.navPath = this.findNavPath(i), this.ncxPath = this.findNcxPath(i, n), this.coverPath = this.findCoverPath(t), this.spineNodeIndex = Object(r.indexOfElementNode)(n), this.spine = this.parseSpine(n, this.manifest), this.uniqueIdentifier = this.findUniqueIdentifier(t), this.metadata = this.parseMetadata(e), this.metadata.direction = n.getAttribute("page-progression-direction"), { metadata: this.metadata, spine: this.spine, manifest: this.manifest, navPath: this.navPath, ncxPath: this.ncxPath, coverPath: this.coverPath, spineNodeIndex: this.spineNodeIndex } } parseMetadata(t) { var e = {}; return e.title = this.getElementText(t, "title"), e.creator = this.getElementText(t, "creator"), e.description = this.getElementText(t, "description"), e.pubdate = this.getElementText(t, "date"), e.publisher = this.getElementText(t, "publisher"), e.identifier = this.getElementText(t, "identifier"), e.language = this.getElementText(t, "language"), e.rights = this.getElementText(t, "rights"), e.modified_date = this.getPropertyText(t, "dcterms:modified"), e.layout = this.getPropertyText(t, "rendition:layout"), e.orientation = this.getPropertyText(t, "rendition:orientation"), e.flow = this.getPropertyText(t, "rendition:flow"), e.viewport = this.getPropertyText(t, "rendition:viewport"), e.media_active_class = this.getPropertyText(t, "media:active-class"), e.spread = this.getPropertyText(t, "rendition:spread"), e } parseManifest(t) { var e = {}, i = Object(r.qsa)(t, "item"); return Array.prototype.slice.call(i).forEach((function (t) { var i = t.getAttribute("id"), n = t.getAttribute("href") || "", s = t.getAttribute("media-type") || "", r = t.getAttribute("media-overlay") || "", o = t.getAttribute("properties") || ""; e[i] = { href: n, type: s, overlay: r, properties: o.length ? o.split(" ") : [] } })), e } parseSpine(t, e) { var i = [], n = Object(r.qsa)(t, "itemref"); return Array.prototype.slice.call(n).forEach((function (t, e) { var n = t.getAttribute("idref"), s = t.getAttribute("properties") || "", r = s.length ? s.split(" ") : [], o = { id: t.getAttribute("id"), idref: n, linear: t.getAttribute("linear") || "yes", properties: r, index: e }; i.push(o) })), i } findUniqueIdentifier(t) { var e = t.documentElement.getAttribute("unique-identifier"); if (!e) return ""; var i = t.getElementById(e); return i && "identifier" === i.localName && "http://purl.org/dc/elements/1.1/" === i.namespaceURI && i.childNodes.length > 0 ? i.childNodes[0].nodeValue.trim() : "" } findNavPath(t) { var e = Object(r.qsp)(t, "item", { properties: "nav" }); return !!e && e.getAttribute("href") } findNcxPath(t, e) { var i, n = Object(r.qsp)(t, "item", { "media-type": "application/x-dtbncx+xml" }); return n || (i = e.getAttribute("toc")) && (n = t.querySelector("#" + i)), !!n && n.getAttribute("href") } findCoverPath(t) { Object(r.qs)(t, "package").getAttribute("version"); var e = Object(r.qsp)(t, "item", { properties: "cover-image" }); if (e) return e.getAttribute("href"); var i = Object(r.qsp)(t, "meta", { name: "cover" }); if (i) { var n = i.getAttribute("content"), s = t.getElementById(n); return s ? s.getAttribute("href") : "" } return !1 } getElementText(t, e) { var i, n = t.getElementsByTagNameNS("http://purl.org/dc/elements/1.1/", e); return n && 0 !== n.length && (i = n[0]).childNodes.length ? i.childNodes[0].nodeValue : "" } getPropertyText(t, e) { var i = Object(r.qsp)(t, "meta", { property: e }); return i && i.childNodes.length ? i.childNodes[0].nodeValue : "" } load(t) { this.metadata = t.metadata; let e = t.readingOrder || t.spine; return this.spine = e.map(((t, e) => (t.index = e, t.linear = t.linear || "yes", t))), t.resources.forEach(((t, e) => { this.manifest[e] = t, t.rel && "cover" === t.rel[0] && (this.coverPath = t.href) })), this.spineNodeIndex = 0, this.toc = t.toc.map(((t, e) => (t.label = t.title, t))), { metadata: this.metadata, spine: this.spine, manifest: this.manifest, navPath: this.navPath, ncxPath: this.ncxPath, coverPath: this.coverPath, spineNodeIndex: this.spineNodeIndex, toc: this.toc } } destroy() { this.manifest = void 0, this.navPath = void 0, this.ncxPath = void 0, this.coverPath = void 0, this.spineNodeIndex = void 0, this.spine = void 0, this.metadata = void 0 } }, S = class { constructor(t) { this.toc = [], this.tocByHref = {}, this.tocById = {}, this.landmarks = [], this.landmarksByType = {}, this.length = 0, t && this.parse(t) } parse(t) { let e, i, n = t.nodeType; n && (e = Object(r.qs)(t, "html"), i = Object(r.qs)(t, "ncx")), n ? e ? (this.toc = this.parseNav(t), this.landmarks = this.parseLandmarks(t)) : i && (this.toc = this.parseNcx(t)) : this.toc = this.load(t), this.length = 0, this.unpack(this.toc) } unpack(t) { for (var e, i = 0; i < t.length; i++)(e = t[i]).href && (this.tocByHref[e.href] = i), e.id && (this.tocById[e.id] = i), this.length++, e.subitems.length && this.unpack(e.subitems) } get(t) { var e; return t ? (0 === t.indexOf("#") ? e = this.tocById[t.substring(1)] : t in this.tocByHref && (e = this.tocByHref[t]), this.getByIndex(t, e, this.toc)) : this.toc } getByIndex(t, e, i) { if (0 === i.length) return; const n = i[e]; if (!n || t !== n.id && t !== n.href) { let n; for (let s = 0; s < i.length && (n = this.getByIndex(t, e, i[s].subitems), !n); ++s); return n } return n } landmark(t) { var e; return t ? (e = this.landmarksByType[t], this.landmarks[e]) : this.landmarks } parseNav(t) { var e = Object(r.querySelectorByType)(t, "nav", "toc"), i = []; if (!e) return i; let n = Object(r.filterChildren)(e, "ol", !0); return n ? i = this.parseNavList(n) : i } parseNavList(t, e) { const i = []; if (!t) return i; if (!t.children) return i; for (let n = 0; n < t.children.length; n++) { const s = this.navItem(t.children[n], e); s && i.push(s) } return i } navItem(t, e) { let i = t.getAttribute("id") || void 0, n = Object(r.filterChildren)(t, "a", !0) || Object(r.filterChildren)(t, "span", !0); if (!n) return; let s = n.getAttribute("href") || ""; i || (i = s); let o = n.textContent || "", a = [], h = Object(r.filterChildren)(t, "ol", !0); return h && (a = this.parseNavList(h, i)), { id: i, href: s, label: o, subitems: a, parent: e } } parseLandmarks(t) { var e, i, n = Object(r.querySelectorByType)(t, "nav", "landmarks"), s = n ? Object(r.qsa)(n, "li") : [], o = s.length, a = []; if (!s || 0 === o) return a; for (e = 0; e < o; ++e)(i = this.landmarkItem(s[e])) && (a.push(i), this.landmarksByType[i.type] = e); return a } landmarkItem(t) { let e = Object(r.filterChildren)(t, "a", !0); if (!e) return; let i = e.getAttributeNS("http://www.idpf.org/2007/ops", "type") || void 0; return { href: e.getAttribute("href") || "", label: e.textContent || "", type: i } } parseNcx(t) { var e, i, n = Object(r.qsa)(t, "navPoint"), s = n.length, o = {}, a = []; if (!n || 0 === s) return a; for (e = 0; e < s; ++e)o[(i = this.ncxItem(n[e])).id] = i, i.parent ? o[i.parent].subitems.push(i) : a.push(i); return a } ncxItem(t) { var e, i = t.getAttribute("id") || !1, n = Object(r.qs)(t, "content").getAttribute("src"), s = Object(r.qs)(t, "navLabel"), o = s.textContent ? s.textContent : "", a = t.parentNode; return !a || "navPoint" !== a.nodeName && "navPoint" !== a.nodeName.split(":").slice(-1)[0] || (e = a.getAttribute("id")), { id: i, href: n, label: o, subitems: [], parent: e } } load(t) { return t.map((t => (t.label = t.title, t.subitems = t.children ? this.load(t.children) : [], t))) } forEach(t) { return this.toc.forEach(t) } }, N = { application: { ecmascript: ["es", "ecma"], javascript: "js", ogg: "ogx", pdf: "pdf", postscript: ["ps", "ai", "eps", "epsi", "epsf", "eps2", "eps3"], "rdf+xml": "rdf", smil: ["smi", "smil"], "xhtml+xml": ["xhtml", "xht"], xml: ["xml", "xsl", "xsd", "opf", "ncx"], zip: "zip", "x-httpd-eruby": "rhtml", "x-latex": "latex", "x-maker": ["frm", "maker", "frame", "fm", "fb", "book", "fbdoc"], "x-object": "o", "x-shockwave-flash": ["swf", "swfl"], "x-silverlight": "scr", "epub+zip": "epub", "font-tdpfr": "pfr", "inkml+xml": ["ink", "inkml"], json: "json", "jsonml+json": "jsonml", "mathml+xml": "mathml", "metalink+xml": "metalink", mp4: "mp4s", "omdoc+xml": "omdoc", oxps: "oxps", "vnd.amazon.ebook": "azw", widget: "wgt", "x-dtbook+xml": "dtb", "x-dtbresource+xml": "res", "x-font-bdf": "bdf", "x-font-ghostscript": "gsf", "x-font-linux-psf": "psf", "x-font-otf": "otf", "x-font-pcf": "pcf", "x-font-snf": "snf", "x-font-ttf": ["ttf", "ttc"], "x-font-type1": ["pfa", "pfb", "pfm", "afm"], "x-font-woff": "woff", "x-mobipocket-ebook": ["prc", "mobi"], "x-mspublisher": "pub", "x-nzb": "nzb", "x-tgif": "obj", "xaml+xml": "xaml", "xml-dtd": "dtd", "xproc+xml": "xpl", "xslt+xml": "xslt", "internet-property-stream": "acx", "x-compress": "z", "x-compressed": "tgz", "x-gzip": "gz" }, audio: { flac: "flac", midi: ["mid", "midi", "kar", "rmi"], mpeg: ["mpga", "mpega", "mp2", "mp3", "m4a", "mp2a", "m2a", "m3a"], mpegurl: "m3u", ogg: ["oga", "ogg", "spx"], "x-aiff": ["aif", "aiff", "aifc"], "x-ms-wma": "wma", "x-wav": "wav", adpcm: "adp", mp4: "mp4a", webm: "weba", "x-aac": "aac", "x-caf": "caf", "x-matroska": "mka", "x-pn-realaudio-plugin": "rmp", xm: "xm", mid: ["mid", "rmi"] }, image: { gif: "gif", ief: "ief", jpeg: ["jpeg", "jpg", "jpe"], pcx: "pcx", png: "png", "svg+xml": ["svg", "svgz"], tiff: ["tiff", "tif"], "x-icon": "ico", bmp: "bmp", webp: "webp", "x-pict": ["pic", "pct"], "x-tga": "tga", "cis-cod": "cod" }, text: { "cache-manifest": ["manifest", "appcache"], css: "css", csv: "csv", html: ["html", "htm", "shtml", "stm"], mathml: "mml", plain: ["txt", "text", "brf", "conf", "def", "list", "log", "in", "bas"], richtext: "rtx", "tab-separated-values": "tsv", "x-bibtex": "bib" }, video: { mpeg: ["mpeg", "mpg", "mpe", "m1v", "m2v", "mp2", "mpa", "mpv2"], mp4: ["mp4", "mp4v", "mpg4"], quicktime: ["qt", "mov"], ogg: "ogv", "vnd.mpegurl": ["mxu", "m4u"], "x-flv": "flv", "x-la-asf": ["lsf", "lsx"], "x-mng": "mng", "x-ms-asf": ["asf", "asx", "asr"], "x-ms-wm": "wm", "x-ms-wmv": "wmv", "x-ms-wmx": "wmx", "x-ms-wvx": "wvx", "x-msvideo": "avi", "x-sgi-movie": "movie", "x-matroska": ["mpv", "mkv", "mk3d", "mks"], "3gpp2": "3g2", h261: "h261", h263: "h263", h264: "h264", jpeg: "jpgv", jpm: ["jpm", "jpgm"], mj2: ["mj2", "mjp2"], "vnd.ms-playready.media.pyv": "pyv", "vnd.uvvu.mp4": ["uvu", "uvvu"], "vnd.vivo": "viv", webm: "webm", "x-f4v": "f4v", "x-m4v": "m4v", "x-ms-vob": "vob", "x-smv": "smv" } }, _ = function () { var t, e, i, n, s = {}; for (t in N) if (N.hasOwnProperty(t)) for (e in N[t]) if (N[t].hasOwnProperty(e)) if ("string" == typeof (i = N[t][e])) s[i] = t + "/" + e; else for (n = 0; n < i.length; n++)s[i[n]] = t + "/" + e; return s }(), T = function (t) { return t && _[t.split(".").pop().toLowerCase()] || "text/plain" }, C = class { constructor(t, e) { this.settings = { replacements: e && e.replacements || "base64", archive: e && e.archive, resolver: e && e.resolver, request: e && e.request }, this.process(t) } process(t) { this.manifest = t, this.resources = Object.keys(t).map((function (e) { return t[e] })), this.replacementUrls = [], this.html = [], this.assets = [], this.css = [], this.urls = [], this.cssUrls = [], this.split(), this.splitUrls() } split() { this.html = this.resources.filter((function (t) { if ("application/xhtml+xml" === t.type || "text/html" === t.type) return !0 })), this.assets = this.resources.filter((function (t) { if ("application/xhtml+xml" !== t.type && "text/html" !== t.type) return !0 })), this.css = this.resources.filter((function (t) { if ("text/css" === t.type) return !0 })) } splitUrls() { this.urls = this.assets.map(function (t) { return t.href }.bind(this)), this.cssUrls = this.css.map((function (t) { return t.href })) } createUrl(t) { var e = new o.a(t), i = T(e.filename); return this.settings.archive ? this.settings.archive.createUrl(t, { base64: "base64" === this.settings.replacements }) : "base64" === this.settings.replacements ? this.settings.request(t, "blob").then((t => Object(r.blob2base64)(t))).then((t => Object(r.createBase64Url)(t, i))) : this.settings.request(t, "blob").then((t => Object(r.createBlobUrl)(t, i))) } replacements() { if ("none" === this.settings.replacements) return new Promise(function (t) { t(this.urls) }.bind(this)); var t = this.urls.map((t => { var e = this.settings.resolver(t); return this.createUrl(e).catch((t => (console.error(t), null))) })); return Promise.all(t).then((t => (this.replacementUrls = t.filter((t => "string" == typeof t)), t))) } replaceCss(t, e) { var i = []; return t = t || this.settings.archive, e = e || this.settings.resolver, this.cssUrls.forEach(function (n) { var s = this.createCssFile(n, t, e).then(function (t) { var e = this.urls.indexOf(n); e > -1 && (this.replacementUrls[e] = t) }.bind(this)); i.push(s) }.bind(this)), Promise.all(i) } createCssFile(t) { if (w.a.isAbsolute(t)) return new Promise((function (t) { t() })); var e, i = this.settings.resolver(t); e = this.settings.archive ? this.settings.archive.getText(i) : this.settings.request(i, "text"); var n = this.urls.map((t => { var e = this.settings.resolver(t); return new a.a(i).relative(e) })); return e ? e.then((t => (t = Object(c.e)(t, n, this.replacementUrls), "base64" === this.settings.replacements ? Object(r.createBase64Url)(t, "text/css") : Object(r.createBlobUrl)(t, "text/css"))), (t => new Promise((function (t) { t() })))) : new Promise((function (t) { t() })) } relativeTo(t, e) { return e = e || this.settings.resolver, this.urls.map(function (i) { var n = e(i); return new a.a(t).relative(n) }.bind(this)) } get(t) { var e = this.urls.indexOf(t); if (-1 !== e) return this.replacementUrls.length ? new Promise(function (t, i) { t(this.replacementUrls[e]) }.bind(this)) : this.createUrl(t) } substitute(t, e) { var i; return i = e ? this.relativeTo(e) : this.urls, Object(c.e)(t, i, this.replacementUrls) } destroy() { this.settings = void 0, this.manifest = void 0, this.resources = void 0, this.replacementUrls = void 0, this.html = void 0, this.assets = void 0, this.css = void 0, this.urls = void 0, this.cssUrls = void 0 } }, O = class { constructor(t) { this.pages = [], this.locations = [], this.epubcfi = new h.a, this.firstPage = 0, this.lastPage = 0, this.totalPages = 0, this.toc = void 0, this.ncx = void 0, t && (this.pageList = this.parse(t)), this.pageList && this.pageList.length && this.process(this.pageList) } parse(t) { var e = Object(r.qs)(t, "html"), i = Object(r.qs)(t, "ncx"); return e ? this.parseNav(t) : i ? this.parseNcx(t) : void 0 } parseNav(t) { var e, i, n = Object(r.querySelectorByType)(t, "nav", "page-list"), s = n ? Object(r.qsa)(n, "li") : [], o = s.length, a = []; if (!s || 0 === o) return a; for (e = 0; e < o; ++e)i = this.item(s[e]), a.push(i); return a } parseNcx(t) { var e, i, n, s, o = [], a = 0; if (!(i = Object(r.qs)(t, "pageList"))) return o; if (s = (n = Object(r.qsa)(i, "pageTarget")).length, !n || 0 === n.length) return o; for (a = 0; a < s; ++a)e = this.ncxItem(n[a]), o.push(e); return o } ncxItem(t) { var e = Object(r.qs)(t, "navLabel"), i = Object(r.qs)(e, "text").textContent; return { href: Object(r.qs)(t, "content").getAttribute("src"), page: parseInt(i, 10) } } item(t) { var e, i, n = Object(r.qs)(t, "a"), s = n.getAttribute("href") || "", o = n.textContent || "", a = parseInt(o); return -1 != s.indexOf("epubcfi") ? (i = (e = s.split("#"))[0], { cfi: e.length > 1 && e[1], href: s, packageUrl: i, page: a }) : { href: s, page: a } } process(t) { t.forEach((function (t) { this.pages.push(t.page), t.cfi && this.locations.push(t.cfi) }), this), this.firstPage = parseInt(this.pages[0]), this.lastPage = parseInt(this.pages[this.pages.length - 1]), this.totalPages = this.lastPage - this.firstPage } pageFromCfi(t) { var e = -1; if (0 === this.locations.length) return -1; var i = Object(r.indexOfSorted)(t, this.locations, this.epubcfi.compare); return -1 != i ? e = this.pages[i] : void 0 !== (e = (i = Object(r.locationOf)(t, this.locations, this.epubcfi.compare)) - 1 >= 0 ? this.pages[i - 1] : this.pages[0]) || (e = -1), e } cfiFromPage(t) { var e = -1; "number" != typeof t && (t = parseInt(t)); var i = this.pages.indexOf(t); return -1 != i && (e = this.locations[i]), e } pageFromPercentage(t) { return Math.round(this.totalPages * t) } percentageFromPage(t) { var e = (t - this.firstPage) / this.totalPages; return Math.round(1e3 * e) / 1e3 } percentageFromCfi(t) { var e = this.pageFromCfi(t); return this.percentageFromPage(e) } destroy() { this.pages = void 0, this.locations = void 0, this.epubcfi = void 0, this.pageList = void 0, this.toc = void 0, this.ncx = void 0 } }, I = i(16), R = i(29), k = i.n(R), A = class { constructor() { this.zip = void 0, this.urlCache = {}, this.checkRequirements() } checkRequirements() { try { this.zip = new k.a } catch (t) { throw new Error("JSZip lib not loaded") } } open(t, e) { return this.zip.loadAsync(t, { base64: e }) } openUrl(t, e) { return u(t, "binary").then(function (t) { return this.zip.loadAsync(t, { base64: e }) }.bind(this)) } request(t, e) { var i, n = new r.defer, s = new a.a(t); return e || (e = s.extension), (i = "blob" == e ? this.getBlob(t) : this.getText(t)) ? i.then(function (t) { let i = this.handleResponse(t, e); n.resolve(i) }.bind(this)) : n.reject({ message: "File not found in the epub: " + t, stack: (new Error).stack }), n.promise } handleResponse(t, e) { return "json" == e ? JSON.parse(t) : Object(r.isXml)(e) ? Object(r.parse)(t, "text/xml") : "xhtml" == e ? Object(r.parse)(t, "application/xhtml+xml") : "html" == e || "htm" == e ? Object(r.parse)(t, "text/html") : t } getBlob(t, e) { var i = window.decodeURIComponent(t.substr(1)), n = this.zip.file(i); if (n) return e = e || T(n.name), n.async("uint8array").then((function (t) { return new Blob([t], { type: e }) })) } getText(t, e) { var i = window.decodeURIComponent(t.substr(1)), n = this.zip.file(i); if (n) return n.async("string").then((function (t) { return t })) } getBase64(t, e) { var i = window.decodeURIComponent(t.substr(1)), n = this.zip.file(i); if (n) return e = e || T(n.name), n.async("base64").then((function (t) { return "data:" + e + ";base64," + t })) } createUrl(t, e) { var i, n, s = new r.defer, o = window.URL || window.webkitURL || window.mozURL, a = e && e.base64; return t in this.urlCache ? (s.resolve(this.urlCache[t]), s.promise) : (a ? (n = this.getBase64(t)) && n.then(function (e) { this.urlCache[t] = e, s.resolve(e) }.bind(this)) : (n = this.getBlob(t)) && n.then(function (e) { i = o.createObjectURL(e), this.urlCache[t] = i, s.resolve(i) }.bind(this)), n || s.reject({ message: "File not found in the epub: " + t, stack: (new Error).stack }), s.promise) } revokeUrl(t) { var e = window.URL || window.webkitURL || window.mozURL, i = this.urlCache[t]; i && e.revokeObjectURL(i) } destroy() { var t = window.URL || window.webkitURL || window.mozURL; for (let e in this.urlCache) t.revokeObjectURL(e); this.zip = void 0, this.urlCache = {} } }, L = i(23), j = i.n(L); class D { constructor(t, e, i) { this.urlCache = {}, this.storage = void 0, this.name = t, this.requester = e || u, this.resolver = i, this.online = !0, this.checkRequirements(), this.addListeners() } checkRequirements() { try { let t; void 0 === j.a && (t = j.a), this.storage = t.createInstance({ name: this.name }) } catch (t) { throw new Error("localForage lib not loaded") } } addListeners() { this._status = this.status.bind(this), window.addEventListener("online", this._status), window.addEventListener("offline", this._status) } removeListeners() { window.removeEventListener("online", this._status), window.removeEventListener("offline", this._status), this._status = void 0 } status(t) { let e = navigator.onLine; this.online = e, e ? this.emit("online", this) : this.emit("offline", this) } add(t, e) { let i = t.resources.map((t => { let { href: i } = t, n = this.resolver(i), s = window.encodeURIComponent(n); return this.storage.getItem(s).then((t => !t || e ? this.requester(n, "binary").then((t => this.storage.setItem(s, t))) : t)) })); return Promise.all(i) } put(t, e, i) { let n = window.encodeURIComponent(t); return this.storage.getItem(n).then((s => s || this.requester(t, "binary", e, i).then((t => this.storage.setItem(n, t))))) } request(t, e, i, n) { return this.online ? this.requester(t, e, i, n).then((e => (this.put(t), e))) : this.retrieve(t, e) } retrieve(t, e) { new r.defer; var i = new a.a(t); return e || (e = i.extension), ("blob" == e ? this.getBlob(t) : this.getText(t)).then((i => { var n, s = new r.defer; return i ? (n = this.handleResponse(i, e), s.resolve(n)) : s.reject({ message: "File not found in storage: " + t, stack: (new Error).stack }), s.promise })) } handleResponse(t, e) { return "json" == e ? JSON.parse(t) : Object(r.isXml)(e) ? Object(r.parse)(t, "text/xml") : "xhtml" == e ? Object(r.parse)(t, "application/xhtml+xml") : "html" == e || "htm" == e ? Object(r.parse)(t, "text/html") : t } getBlob(t, e) { let i = window.encodeURIComponent(t); return this.storage.getItem(i).then((function (i) { if (i) return e = e || T(t), new Blob([i], { type: e }) })) } getText(t, e) { let i = window.encodeURIComponent(t); return e = e || T(t), this.storage.getItem(i).then((function (t) { var i, n = new r.defer, s = new FileReader; if (t) return i = new Blob([t], { type: e }), s.addEventListener("loadend", (() => { n.resolve(s.result) })), s.readAsText(i, e), n.promise })) } getBase64(t, e) { let i = window.encodeURIComponent(t); return e = e || T(t), this.storage.getItem(i).then((t => { var i, n = new r.defer, s = new FileReader; if (t) return i = new Blob([t], { type: e }), s.addEventListener("loadend", (() => { n.resolve(s.result) })), s.readAsDataURL(i, e), n.promise })) } createUrl(t, e) { var i, n, s = new r.defer, o = window.URL || window.webkitURL || window.mozURL, a = e && e.base64; return t in this.urlCache ? (s.resolve(this.urlCache[t]), s.promise) : (a ? (n = this.getBase64(t)) && n.then(function (e) { this.urlCache[t] = e, s.resolve(e) }.bind(this)) : (n = this.getBlob(t)) && n.then(function (e) { i = o.createObjectURL(e), this.urlCache[t] = i, s.resolve(i) }.bind(this)), n || s.reject({ message: "File not found in storage: " + t, stack: (new Error).stack }), s.promise) } revokeUrl(t) { var e = window.URL || window.webkitURL || window.mozURL, i = this.urlCache[t]; i && e.revokeObjectURL(i) } destroy() { var t = window.URL || window.webkitURL || window.mozURL; for (let e in this.urlCache) t.revokeObjectURL(e); this.urlCache = {}, this.removeListeners() } } s()(D.prototype); var P = D, M = class { constructor(t) { this.interactive = "", this.fixedLayout = "", this.openToSpread = "", this.orientationLock = "", t && this.parse(t) } parse(t) { if (!t) return this; const e = Object(r.qs)(t, "display_options"); return e ? (Object(r.qsa)(e, "option").forEach((t => { let e = ""; switch (t.childNodes.length && (e = t.childNodes[0].nodeValue), t.attributes.name.value) { case "interactive": this.interactive = e; break; case "fixed-layout": this.fixedLayout = e; break; case "open-to-spread": this.openToSpread = e; break; case "orientation-lock": this.orientationLock = e } })), this) : this } destroy() { this.interactive = void 0, this.fixedLayout = void 0, this.openToSpread = void 0, this.orientationLock = void 0 } }; const z = "binary", B = "base64", q = "epub", F = "json"; class U { constructor(t, e) { void 0 === e && "string" != typeof t && t instanceof Blob == 0 && t instanceof ArrayBuffer == 0 && (e = t, t = void 0), this.settings = Object(r.extend)(this.settings || {}, { requestMethod: void 0, requestCredentials: void 0, requestHeaders: void 0, encoding: void 0, replacements: void 0, canonical: void 0, openAs: void 0, store: void 0 }), Object(r.extend)(this.settings, e), this.opening = new r.defer, this.opened = this.opening.promise, this.isOpen = !1, this.loading = { manifest: new r.defer, spine: new r.defer, metadata: new r.defer, cover: new r.defer, navigation: new r.defer, pageList: new r.defer, resources: new r.defer, displayOptions: new r.defer }, this.loaded = { manifest: this.loading.manifest.promise, spine: this.loading.spine.promise, metadata: this.loading.metadata.promise, cover: this.loading.cover.promise, navigation: this.loading.navigation.promise, pageList: this.loading.pageList.promise, resources: this.loading.resources.promise, displayOptions: this.loading.displayOptions.promise }, this.ready = Promise.all([this.loaded.manifest, this.loaded.spine, this.loaded.metadata, this.loaded.cover, this.loaded.navigation, this.loaded.resources, this.loaded.displayOptions]), this.isRendered = !1, this.request = this.settings.requestMethod || u, this.spine = new p, this.locations = new y(this.spine, this.load.bind(this)), this.navigation = void 0, this.pageList = void 0, this.url = void 0, this.path = void 0, this.archived = !1, this.archive = void 0, this.storage = void 0, this.resources = void 0, this.rendition = void 0, this.container = void 0, this.packaging = void 0, this.displayOptions = void 0, this.settings.store && this.store(this.settings.store), t && this.open(t, this.settings.openAs).catch((e => { var i = new Error("Cannot load book at " + t); this.emit(m.c.BOOK.OPEN_FAILED, i) })) } open(t, e) { var i, n = e || this.determineType(t); return n === z ? (this.archived = !0, this.url = new o.a("/", ""), i = this.openEpub(t)) : n === B ? (this.archived = !0, this.url = new o.a("/", ""), i = this.openEpub(t, n)) : n === q ? (this.archived = !0, this.url = new o.a("/", ""), i = this.request(t, "binary", this.settings.requestCredentials, this.settings.requestHeaders).then(this.openEpub.bind(this))) : "opf" == n ? (this.url = new o.a(t), i = this.openPackaging(this.url.Path.toString())) : n == F ? (this.url = new o.a(t), i = this.openManifest(this.url.Path.toString())) : (this.url = new o.a(t), i = this.openContainer("META-INF/container.xml").then(this.openPackaging.bind(this))), i } openEpub(t, e) { return this.unarchive(t, e || this.settings.encoding).then((() => this.openContainer("META-INF/container.xml"))).then((t => this.openPackaging(t))) } openContainer(t) { return this.load(t).then((t => (this.container = new x(t), this.resolve(this.container.packagePath)))) } openPackaging(t) { return this.path = new a.a(t), this.load(t).then((t => (this.packaging = new E(t), this.unpack(this.packaging)))) } openManifest(t) { return this.path = new a.a(t), this.load(t).then((t => (this.packaging = new E, this.packaging.load(t), this.unpack(this.packaging)))) } load(t) { var e = this.resolve(t); return this.archived ? this.archive.request(e) : this.request(e, null, this.settings.requestCredentials, this.settings.requestHeaders) } resolve(t, e) { if (t) { var i = t; return t.indexOf("://") > -1 ? t : (this.path && (i = this.path.resolve(t)), 0 != e && this.url && (i = this.url.resolve(i)), i) } } canonical(t) { return t ? this.settings.canonical ? this.settings.canonical(t) : this.resolve(t, !0) : "" } determineType(t) { var e; return "base64" === this.settings.encoding ? B : "string" != typeof t ? z : ((e = new o.a(t).path().extension) && (e = e.replace(/\?.*$/, "")), e ? "epub" === e ? q : "opf" === e ? "opf" : "json" === e ? F : void 0 : "directory") } unpack(t) { this.package = t, "" === this.packaging.metadata.layout ? this.load(this.url.resolve("META-INF/com.apple.ibooks.display-options.xml")).then((t => { this.displayOptions = new M(t), this.loading.displayOptions.resolve(this.displayOptions) })).catch((t => { this.displayOptions = new M, this.loading.displayOptions.resolve(this.displayOptions) })) : (this.displayOptions = new M, this.loading.displayOptions.resolve(this.displayOptions)), this.spine.unpack(this.packaging, this.resolve.bind(this), this.canonical.bind(this)), this.resources = new C(this.packaging.manifest, { archive: this.archive, resolver: this.resolve.bind(this), request: this.request.bind(this), replacements: this.settings.replacements || (this.archived ? "blobUrl" : "base64") }), this.loadNavigation(this.packaging).then((() => { this.loading.navigation.resolve(this.navigation) })), this.packaging.coverPath && (this.cover = this.resolve(this.packaging.coverPath)), this.loading.manifest.resolve(this.packaging.manifest), this.loading.metadata.resolve(this.packaging.metadata), this.loading.spine.resolve(this.spine), this.loading.cover.resolve(this.cover), this.loading.resources.resolve(this.resources), this.loading.pageList.resolve(this.pageList), this.isOpen = !0, this.archived || this.settings.replacements && "none" != this.settings.replacements ? this.replacements().then((() => { this.loaded.displayOptions.then((() => { this.opening.resolve(this) })) })).catch((t => { console.error(t) })) : this.loaded.displayOptions.then((() => { this.opening.resolve(this) })) } loadNavigation(t) { let e = t.navPath || t.ncxPath, i = t.toc; return i ? new Promise(((e, n) => { this.navigation = new S(i), t.pageList && (this.pageList = new O(t.pageList)), e(this.navigation) })) : e ? this.load(e, "xml").then((t => (this.navigation = new S(t), this.pageList = new O(t), this.navigation))) : new Promise(((t, e) => { this.navigation = new S, this.pageList = new O, t(this.navigation) })) } section(t) { return this.spine.get(t) } renderTo(t, e) { return this.rendition = new I.a(this, e), this.rendition.attachTo(t), this.rendition } setRequestCredentials(t) { this.settings.requestCredentials = t } setRequestHeaders(t) { this.settings.requestHeaders = t } unarchive(t, e) { return this.archive = new A, this.archive.open(t, e) } store(t) { let e = this.settings.replacements && "none" !== this.settings.replacements, i = this.url, n = this.settings.requestMethod || u.bind(this); return this.storage = new P(t, n, this.resolve.bind(this)), this.request = this.storage.request.bind(this.storage), this.opened.then((() => { this.archived && (this.storage.requester = this.archive.request.bind(this.archive)); let t = (t, e) => { e.output = this.resources.substitute(t, e.url) }; this.resources.settings.replacements = e || "blobUrl", this.resources.replacements().then((() => this.resources.replaceCss())), this.storage.on("offline", (() => { this.url = new o.a("/", ""), this.spine.hooks.serialize.register(t) })), this.storage.on("online", (() => { this.url = i, this.spine.hooks.serialize.deregister(t) })) })), this.storage } coverUrl() { return this.loaded.cover.then((() => this.cover ? this.archived ? this.archive.createUrl(this.cover) : this.cover : null)) } replacements() { return this.spine.hooks.serialize.register(((t, e) => { e.output = this.resources.substitute(t, e.url) })), this.resources.replacements().then((() => this.resources.replaceCss())) } getRange(t) { var e = new h.a(t), i = this.spine.get(e.spinePos), n = this.load.bind(this); return i ? i.load(n).then((function (t) { return e.toRange(i.document) })) : new Promise(((t, e) => { e("CFI could not be found") })) } key(t) { var e = t || this.packaging.metadata.identifier || this.url.filename; return `epubjs:${m.b}:${e}` } destroy() { this.opened = void 0, this.loading = void 0, this.loaded = void 0, this.ready = void 0, this.isOpen = !1, this.isRendered = !1, this.spine && this.spine.destroy(), this.locations && this.locations.destroy(), this.pageList && this.pageList.destroy(), this.archive && this.archive.destroy(), this.resources && this.resources.destroy(), this.container && this.container.destroy(), this.packaging && this.packaging.destroy(), this.rendition && this.rendition.destroy(), this.displayOptions && this.displayOptions.destroy(), this.spine = void 0, this.locations = void 0, this.pageList = void 0, this.archive = void 0, this.resources = void 0, this.container = void 0, this.packaging = void 0, this.rendition = void 0, this.navigation = void 0, this.url = void 0, this.path = void 0, this.archived = !1 } } s()(U.prototype), e.a = U }, function (t, e, i) { var n = i(14).NAMESPACE; function s(t) { return "" !== t } function r(t, e) { return t.hasOwnProperty(e) || (t[e] = !0), t } function o(t) { if (!t) return []; var e = function (t) { return t ? t.split(/[\t\n\f\r ]+/).filter(s) : [] }(t); return Object.keys(e.reduce(r, {})) } function a(t, e) { for (var i in t) e[i] = t[i] } function h(t, e) { var i = t.prototype; if (!(i instanceof e)) { function n() { } n.prototype = e.prototype, a(i, n = new n), t.prototype = i = n } i.constructor != t && ("function" != typeof t && console.error("unknown Class:" + t), i.constructor = t) } var l = {}, c = l.ELEMENT_NODE = 1, u = l.ATTRIBUTE_NODE = 2, d = l.TEXT_NODE = 3, f = l.CDATA_SECTION_NODE = 4, p = l.ENTITY_REFERENCE_NODE = 5, g = l.ENTITY_NODE = 6, m = l.PROCESSING_INSTRUCTION_NODE = 7, v = l.COMMENT_NODE = 8, y = l.DOCUMENT_NODE = 9, b = l.DOCUMENT_TYPE_NODE = 10, w = l.DOCUMENT_FRAGMENT_NODE = 11, x = l.NOTATION_NODE = 12, E = {}, S = {}, N = (E.INDEX_SIZE_ERR = (S[1] = "Index size error", 1), E.DOMSTRING_SIZE_ERR = (S[2] = "DOMString size error", 2), E.HIERARCHY_REQUEST_ERR = (S[3] = "Hierarchy request error", 3)), _ = (E.WRONG_DOCUMENT_ERR = (S[4] = "Wrong document", 4), E.INVALID_CHARACTER_ERR = (S[5] = "Invalid character", 5), E.NO_DATA_ALLOWED_ERR = (S[6] = "No data allowed", 6), E.NO_MODIFICATION_ALLOWED_ERR = (S[7] = "No modification allowed", 7), E.NOT_FOUND_ERR = (S[8] = "Not found", 8)), T = (E.NOT_SUPPORTED_ERR = (S[9] = "Not supported", 9), E.INUSE_ATTRIBUTE_ERR = (S[10] = "Attribute in use", 10)); function C(t, e) { if (e instanceof Error) var i = e; else i = this, Error.call(this, S[t]), this.message = S[t], Error.captureStackTrace && Error.captureStackTrace(this, C); return i.code = t, e && (this.message = this.message + ": " + e), i } function O() { } function I(t, e) { this._node = t, this._refresh = e, R(this) } function R(t) { var e = t._node._inc || t._node.ownerDocument._inc; if (t._inc != e) { var i = t._refresh(t._node); at(t, "length", i.length), a(i, t), t._inc = e } } function k() { } function A(t, e) { for (var i = t.length; i--;)if (t[i] === e) return i } function L(t, e, i, s) { if (s ? e[A(e, s)] = i : e[e.length++] = i, t) { i.ownerElement = t; var r = t.ownerDocument; r && (s && q(r, t, s), function (t, e, i) { t && t._inc++, i.namespaceURI === n.XMLNS && (e._nsMap[i.prefix ? i.localName : ""] = i.value) }(r, t, i)) } } function j(t, e, i) { var n = A(e, i); if (!(n >= 0)) throw C(_, new Error(t.tagName + "@" + i)); for (var s = e.length - 1; n < s;)e[n] = e[++n]; if (e.length = s, t) { var r = t.ownerDocument; r && (q(r, t, i), i.ownerElement = null) } } function D() { } function P() { } function M(t) { return ("<" == t ? "<" : ">" == t && ">") || "&" == t && "&" || '"' == t && """ || "&#" + t.charCodeAt() + ";" } function z(t, e) { if (e(t)) return !0; if (t = t.firstChild) do { if (z(t, e)) return !0 } while (t = t.nextSibling) } function B() { } function q(t, e, i, s) { t && t._inc++, i.namespaceURI === n.XMLNS && delete e._nsMap[i.prefix ? i.localName : ""] } function F(t, e, i) { if (t && t._inc) { t._inc++; var n = e.childNodes; if (i) n[n.length++] = i; else { for (var s = e.firstChild, r = 0; s;)n[r++] = s, s = s.nextSibling; n.length = r } } } function U(t, e) { var i = e.previousSibling, n = e.nextSibling; return i ? i.nextSibling = n : t.firstChild = n, n ? n.previousSibling = i : t.lastChild = i, F(t.ownerDocument, t), e } function W(t, e, i) { var n = e.parentNode; if (n && n.removeChild(e), e.nodeType === w) { var s = e.firstChild; if (null == s) return e; var r = e.lastChild } else s = r = e; var o = i ? i.previousSibling : t.lastChild; s.previousSibling = o, r.nextSibling = i, o ? o.nextSibling = s : t.firstChild = s, null == i ? t.lastChild = r : i.previousSibling = r; do { s.parentNode = t } while (s !== r && (s = s.nextSibling)); return F(t.ownerDocument || t, t), e.nodeType == w && (e.firstChild = e.lastChild = null), e } function H() { this._nsMap = {} } function V() { } function X() { } function G() { } function Y() { } function $() { } function K() { } function Z() { } function J() { } function Q() { } function tt() { } function et() { } function it() { } function nt(t, e) { var i = [], n = 9 == this.nodeType && this.documentElement || this, s = n.prefix, r = n.namespaceURI; if (r && null == s && null == (s = n.lookupPrefix(r))) var o = [{ namespace: r, prefix: null }]; return ot(this, i, t, e, o), i.join("") } function st(t, e, i) { var s = t.prefix || "", r = t.namespaceURI; if (!r) return !1; if ("xml" === s && r === n.XML || r === n.XMLNS) return !1; for (var o = i.length; o--;) { var a = i[o]; if (a.prefix === s) return a.namespace !== r } return !0 } function rt(t, e, i) { t.push(" ", e, '="', i.replace(/[<&"]/g, M), '"') } function ot(t, e, i, s, r) { if (r || (r = []), s) { if (!(t = s(t))) return; if ("string" == typeof t) return void e.push(t) } switch (t.nodeType) { case c: var o = t.attributes, a = o.length, h = t.firstChild, l = t.tagName, g = l; if (!(i = n.isHTML(t.namespaceURI) || i) && !t.prefix && t.namespaceURI) { for (var x, E = 0; E < o.length; E++)if ("xmlns" === o.item(E).name) { x = o.item(E).value; break } if (!x) for (var S = r.length - 1; S >= 0; S--)if ("" === (N = r[S]).prefix && N.namespace === t.namespaceURI) { x = N.namespace; break } if (x !== t.namespaceURI) for (S = r.length - 1; S >= 0; S--) { var N; if ((N = r[S]).namespace === t.namespaceURI) { N.prefix && (g = N.prefix + ":" + l); break } } } e.push("<", g); for (var _ = 0; _ < a; _++)"xmlns" == (T = o.item(_)).prefix ? r.push({ prefix: T.localName, namespace: T.value }) : "xmlns" == T.nodeName && r.push({ prefix: "", namespace: T.value }); for (_ = 0; _ < a; _++) { var T, C, O; st(T = o.item(_), 0, r) && (rt(e, (C = T.prefix || "") ? "xmlns:" + C : "xmlns", O = T.namespaceURI), r.push({ prefix: C, namespace: O })), ot(T, e, i, s, r) } if (l === g && st(t, 0, r) && (rt(e, (C = t.prefix || "") ? "xmlns:" + C : "xmlns", O = t.namespaceURI), r.push({ prefix: C, namespace: O })), h || i && !/^(?:meta|link|img|br|hr|input)$/i.test(l)) { if (e.push(">"), i && /^script$/i.test(l)) for (; h;)h.data ? e.push(h.data) : ot(h, e, i, s, r.slice()), h = h.nextSibling; else for (; h;)ot(h, e, i, s, r.slice()), h = h.nextSibling; e.push("") } else e.push("/>"); return; case y: case w: for (h = t.firstChild; h;)ot(h, e, i, s, r.slice()), h = h.nextSibling; return; case u: return rt(e, t.name, t.value); case d: return e.push(t.data.replace(/[<&]/g, M).replace(/]]>/g, "]]>")); case f: return e.push(""); case v: return e.push("\x3c!--", t.data, "--\x3e"); case b: var I = t.publicId, R = t.systemId; if (e.push(""); else if (R && "." != R) e.push(" SYSTEM ", R, ">"); else { var k = t.internalSubset; k && e.push(" [", k, "]"), e.push(">") } return; case m: return e.push(""); case p: return e.push("&", t.nodeName, ";"); default: e.push("??", t.nodeName) } } function at(t, e, i) { t[e] = i } E.INVALID_STATE_ERR = (S[11] = "Invalid state", 11), E.SYNTAX_ERR = (S[12] = "Syntax error", 12), E.INVALID_MODIFICATION_ERR = (S[13] = "Invalid modification", 13), E.NAMESPACE_ERR = (S[14] = "Invalid namespace", 14), E.INVALID_ACCESS_ERR = (S[15] = "Invalid access", 15), C.prototype = Error.prototype, a(E, C), O.prototype = { length: 0, item: function (t) { return this[t] || null }, toString: function (t, e) { for (var i = [], n = 0; n < this.length; n++)ot(this[n], i, t, e); return i.join("") } }, I.prototype.item = function (t) { return R(this), this[t] }, h(I, O), k.prototype = { length: 0, item: O.prototype.item, getNamedItem: function (t) { for (var e = this.length; e--;) { var i = this[e]; if (i.nodeName == t) return i } }, setNamedItem: function (t) { var e = t.ownerElement; if (e && e != this._ownerElement) throw new C(T); var i = this.getNamedItem(t.nodeName); return L(this._ownerElement, this, t, i), i }, setNamedItemNS: function (t) { var e, i = t.ownerElement; if (i && i != this._ownerElement) throw new C(T); return e = this.getNamedItemNS(t.namespaceURI, t.localName), L(this._ownerElement, this, t, e), e }, removeNamedItem: function (t) { var e = this.getNamedItem(t); return j(this._ownerElement, this, e), e }, removeNamedItemNS: function (t, e) { var i = this.getNamedItemNS(t, e); return j(this._ownerElement, this, i), i }, getNamedItemNS: function (t, e) { for (var i = this.length; i--;) { var n = this[i]; if (n.localName == e && n.namespaceURI == t) return n } return null } }, D.prototype = { hasFeature: function (t, e) { return !0 }, createDocument: function (t, e, i) { var n = new B; if (n.implementation = this, n.childNodes = new O, n.doctype = i || null, i && n.appendChild(i), e) { var s = n.createElementNS(t, e); n.appendChild(s) } return n }, createDocumentType: function (t, e, i) { var n = new K; return n.name = t, n.nodeName = t, n.publicId = e || "", n.systemId = i || "", n } }, P.prototype = { firstChild: null, lastChild: null, previousSibling: null, nextSibling: null, attributes: null, parentNode: null, childNodes: null, ownerDocument: null, nodeValue: null, namespaceURI: null, prefix: null, localName: null, insertBefore: function (t, e) { return W(this, t, e) }, replaceChild: function (t, e) { this.insertBefore(t, e), e && this.removeChild(e) }, removeChild: function (t) { return U(this, t) }, appendChild: function (t) { return this.insertBefore(t, null) }, hasChildNodes: function () { return null != this.firstChild }, cloneNode: function (t) { return function t(e, i, n) { var s = new i.constructor; for (var r in i) { var o = i[r]; "object" != typeof o && o != s[r] && (s[r] = o) } switch (i.childNodes && (s.childNodes = new O), s.ownerDocument = e, s.nodeType) { case c: var a = i.attributes, h = s.attributes = new k, l = a.length; h._ownerElement = s; for (var d = 0; d < l; d++)s.setAttributeNode(t(e, a.item(d), !0)); break; case u: n = !0 }if (n) for (var f = i.firstChild; f;)s.appendChild(t(e, f, n)), f = f.nextSibling; return s }(this.ownerDocument || this, this, t) }, normalize: function () { for (var t = this.firstChild; t;) { var e = t.nextSibling; e && e.nodeType == d && t.nodeType == d ? (this.removeChild(e), t.appendData(e.data)) : (t.normalize(), t = e) } }, isSupported: function (t, e) { return this.ownerDocument.implementation.hasFeature(t, e) }, hasAttributes: function () { return this.attributes.length > 0 }, lookupPrefix: function (t) { for (var e = this; e;) { var i = e._nsMap; if (i) for (var n in i) if (i[n] == t) return n; e = e.nodeType == u ? e.ownerDocument : e.parentNode } return null }, lookupNamespaceURI: function (t) { for (var e = this; e;) { var i = e._nsMap; if (i && t in i) return i[t]; e = e.nodeType == u ? e.ownerDocument : e.parentNode } return null }, isDefaultNamespace: function (t) { return null == this.lookupPrefix(t) } }, a(l, P), a(l, P.prototype), B.prototype = { nodeName: "#document", nodeType: y, doctype: null, documentElement: null, _inc: 1, insertBefore: function (t, e) { if (t.nodeType == w) { for (var i = t.firstChild; i;) { var n = i.nextSibling; this.insertBefore(i, e), i = n } return t } return null == this.documentElement && t.nodeType == c && (this.documentElement = t), W(this, t, e), t.ownerDocument = this, t }, removeChild: function (t) { return this.documentElement == t && (this.documentElement = null), U(this, t) }, importNode: function (t, e) { return function t(e, i, n) { var s; switch (i.nodeType) { case c: (s = i.cloneNode(!1)).ownerDocument = e; case w: break; case u: n = !0 }if (s || (s = i.cloneNode(!1)), s.ownerDocument = e, s.parentNode = null, n) for (var r = i.firstChild; r;)s.appendChild(t(e, r, n)), r = r.nextSibling; return s }(this, t, e) }, getElementById: function (t) { var e = null; return z(this.documentElement, (function (i) { if (i.nodeType == c && i.getAttribute("id") == t) return e = i, !0 })), e }, getElementsByClassName: function (t) { var e = o(t); return new I(this, (function (i) { var n = []; return e.length > 0 && z(i.documentElement, (function (s) { if (s !== i && s.nodeType === c) { var r = s.getAttribute("class"); if (r) { var a = t === r; if (!a) { var h = o(r); a = e.every((l = h, function (t) { return l && -1 !== l.indexOf(t) })) } a && n.push(s) } } var l })), n })) }, createElement: function (t) { var e = new H; return e.ownerDocument = this, e.nodeName = t, e.tagName = t, e.localName = t, e.childNodes = new O, (e.attributes = new k)._ownerElement = e, e }, createDocumentFragment: function () { var t = new tt; return t.ownerDocument = this, t.childNodes = new O, t }, createTextNode: function (t) { var e = new G; return e.ownerDocument = this, e.appendData(t), e }, createComment: function (t) { var e = new Y; return e.ownerDocument = this, e.appendData(t), e }, createCDATASection: function (t) { var e = new $; return e.ownerDocument = this, e.appendData(t), e }, createProcessingInstruction: function (t, e) { var i = new et; return i.ownerDocument = this, i.tagName = i.target = t, i.nodeValue = i.data = e, i }, createAttribute: function (t) { var e = new V; return e.ownerDocument = this, e.name = t, e.nodeName = t, e.localName = t, e.specified = !0, e }, createEntityReference: function (t) { var e = new Q; return e.ownerDocument = this, e.nodeName = t, e }, createElementNS: function (t, e) { var i = new H, n = e.split(":"), s = i.attributes = new k; return i.childNodes = new O, i.ownerDocument = this, i.nodeName = e, i.tagName = e, i.namespaceURI = t, 2 == n.length ? (i.prefix = n[0], i.localName = n[1]) : i.localName = e, s._ownerElement = i, i }, createAttributeNS: function (t, e) { var i = new V, n = e.split(":"); return i.ownerDocument = this, i.nodeName = e, i.name = e, i.namespaceURI = t, i.specified = !0, 2 == n.length ? (i.prefix = n[0], i.localName = n[1]) : i.localName = e, i } }, h(B, P), H.prototype = { nodeType: c, hasAttribute: function (t) { return null != this.getAttributeNode(t) }, getAttribute: function (t) { var e = this.getAttributeNode(t); return e && e.value || "" }, getAttributeNode: function (t) { return this.attributes.getNamedItem(t) }, setAttribute: function (t, e) { var i = this.ownerDocument.createAttribute(t); i.value = i.nodeValue = "" + e, this.setAttributeNode(i) }, removeAttribute: function (t) { var e = this.getAttributeNode(t); e && this.removeAttributeNode(e) }, appendChild: function (t) { return t.nodeType === w ? this.insertBefore(t, null) : function (t, e) { var i = e.parentNode; if (i) { var n = t.lastChild; i.removeChild(e), n = t.lastChild } return n = t.lastChild, e.parentNode = t, e.previousSibling = n, e.nextSibling = null, n ? n.nextSibling = e : t.firstChild = e, t.lastChild = e, F(t.ownerDocument, t, e), e }(this, t) }, setAttributeNode: function (t) { return this.attributes.setNamedItem(t) }, setAttributeNodeNS: function (t) { return this.attributes.setNamedItemNS(t) }, removeAttributeNode: function (t) { return this.attributes.removeNamedItem(t.nodeName) }, removeAttributeNS: function (t, e) { var i = this.getAttributeNodeNS(t, e); i && this.removeAttributeNode(i) }, hasAttributeNS: function (t, e) { return null != this.getAttributeNodeNS(t, e) }, getAttributeNS: function (t, e) { var i = this.getAttributeNodeNS(t, e); return i && i.value || "" }, setAttributeNS: function (t, e, i) { var n = this.ownerDocument.createAttributeNS(t, e); n.value = n.nodeValue = "" + i, this.setAttributeNode(n) }, getAttributeNodeNS: function (t, e) { return this.attributes.getNamedItemNS(t, e) }, getElementsByTagName: function (t) { return new I(this, (function (e) { var i = []; return z(e, (function (n) { n === e || n.nodeType != c || "*" !== t && n.tagName != t || i.push(n) })), i })) }, getElementsByTagNameNS: function (t, e) { return new I(this, (function (i) { var n = []; return z(i, (function (s) { s === i || s.nodeType !== c || "*" !== t && s.namespaceURI !== t || "*" !== e && s.localName != e || n.push(s) })), n })) } }, B.prototype.getElementsByTagName = H.prototype.getElementsByTagName, B.prototype.getElementsByTagNameNS = H.prototype.getElementsByTagNameNS, h(H, P), V.prototype.nodeType = u, h(V, P), X.prototype = { data: "", substringData: function (t, e) { return this.data.substring(t, t + e) }, appendData: function (t) { t = this.data + t, this.nodeValue = this.data = t, this.length = t.length }, insertData: function (t, e) { this.replaceData(t, 0, e) }, appendChild: function (t) { throw new Error(S[N]) }, deleteData: function (t, e) { this.replaceData(t, e, "") }, replaceData: function (t, e, i) { i = this.data.substring(0, t) + i + this.data.substring(t + e), this.nodeValue = this.data = i, this.length = i.length } }, h(X, P), G.prototype = { nodeName: "#text", nodeType: d, splitText: function (t) { var e = this.data, i = e.substring(t); e = e.substring(0, t), this.data = this.nodeValue = e, this.length = e.length; var n = this.ownerDocument.createTextNode(i); return this.parentNode && this.parentNode.insertBefore(n, this.nextSibling), n } }, h(G, X), Y.prototype = { nodeName: "#comment", nodeType: v }, h(Y, X), $.prototype = { nodeName: "#cdata-section", nodeType: f }, h($, X), K.prototype.nodeType = b, h(K, P), Z.prototype.nodeType = x, h(Z, P), J.prototype.nodeType = g, h(J, P), Q.prototype.nodeType = p, h(Q, P), tt.prototype.nodeName = "#document-fragment", tt.prototype.nodeType = w, h(tt, P), et.prototype.nodeType = m, h(et, P), it.prototype.serializeToString = function (t, e, i) { return nt.call(t, e, i) }, P.prototype.toString = nt; try { Object.defineProperty && (Object.defineProperty(I.prototype, "length", { get: function () { return R(this), this.$$length } }), Object.defineProperty(P.prototype, "textContent", { get: function () { return function t(e) { switch (e.nodeType) { case c: case w: var i = []; for (e = e.firstChild; e;)7 !== e.nodeType && 8 !== e.nodeType && i.push(t(e)), e = e.nextSibling; return i.join(""); default: return e.nodeValue } }(this) }, set: function (t) { switch (this.nodeType) { case c: case w: for (; this.firstChild;)this.removeChild(this.firstChild); (t || String(t)) && this.appendChild(this.ownerDocument.createTextNode(t)); break; default: this.data = t, this.value = t, this.nodeValue = t } } }), at = function (t, e, i) { t["$$" + e] = i }) } catch (t) { } e.DocumentType = K, e.DOMException = C, e.DOMImplementation = D, e.Element = H, e.Node = P, e.NodeList = O, e.XMLSerializer = it }, function (t, e, i) { var n = i(52), s = "object" == typeof self && self && self.Object === Object && self, r = n || s || Function("return this")(); t.exports = r }, function (t, e, i) { var n = i(26).Symbol; t.exports = n }, function (t, e, i) { var n = i(21), s = i(19); t.exports = function (t, e, i) { var r = !0, o = !0; if ("function" != typeof t) throw new TypeError("Expected a function"); return s(i) && (r = "leading" in i ? !!i.leading : r, o = "trailing" in i ? !!i.trailing : o), n(t, e, { leading: r, maxWait: e, trailing: o }) } }, function (e, i) { e.exports = t }, function (t, e, i) { "use strict"; i.r(e), function (t) { var n = i(24), s = i(16), r = i(2), o = i(12), a = i(0), h = i(1); function l(t, e) { return new n.a(t, e) } i(20), i(10), i(22), l.VERSION = h.b, void 0 !== t && (t.EPUBJS_VERSION = h.b), l.Book = n.a, l.Rendition = s.a, l.Contents = o.a, l.CFI = r.a, l.utils = a, e.default = l }.call(this, i(17)) }, function (t, e, i) { "use strict"; var n = i(32), s = i(40), r = i(41), o = i(42); (t.exports = function (t, e) { var i, r, a, h, l; return arguments.length < 2 || "string" != typeof t ? (h = e, e = t, t = null) : h = arguments[2], null == t ? (i = a = !0, r = !1) : (i = o.call(t, "c"), r = o.call(t, "e"), a = o.call(t, "w")), l = { value: e, configurable: i, enumerable: r, writable: a }, h ? n(s(h), l) : l }).gs = function (t, e, i) { var a, h, l, c; return "string" != typeof t ? (l = i, i = e, e = t, t = null) : l = arguments[3], null == e ? e = void 0 : r(e) ? null == i ? i = void 0 : r(i) || (l = i, i = void 0) : (l = e, e = i = void 0), null == t ? (a = !0, h = !1) : (a = o.call(t, "c"), h = o.call(t, "e")), c = { get: e, set: i, configurable: a, enumerable: h }, l ? n(s(l), c) : c } }, function (t, e, i) { "use strict"; t.exports = i(33)() ? Object.assign : i(34) }, function (t, e, i) { "use strict"; t.exports = function () { var t, e = Object.assign; return "function" == typeof e && (e(t = { foo: "raz" }, { bar: "dwa" }, { trzy: "trzy" }), t.foo + t.bar + t.trzy === "razdwatrzy") } }, function (t, e, i) { "use strict"; var n = i(35), s = i(39), r = Math.max; t.exports = function (t, e) { var i, o, a, h = r(arguments.length, 2); for (t = Object(s(t)), a = function (n) { try { t[n] = e[n] } catch (t) { i || (i = t) } }, o = 1; o < h; ++o)n(e = arguments[o]).forEach(a); if (void 0 !== i) throw i; return t } }, function (t, e, i) { "use strict"; t.exports = i(36)() ? Object.keys : i(37) }, function (t, e, i) { "use strict"; t.exports = function () { try { return Object.keys("primitive"), !0 } catch (t) { return !1 } } }, function (t, e, i) { "use strict"; var n = i(18), s = Object.keys; t.exports = function (t) { return s(n(t) ? Object(t) : t) } }, function (t, e, i) { "use strict"; t.exports = function () { } }, function (t, e, i) { "use strict"; var n = i(18); t.exports = function (t) { if (!n(t)) throw new TypeError("Cannot use null or undefined"); return t } }, function (t, e, i) { "use strict"; var n = i(18), s = Array.prototype.forEach, r = Object.create; t.exports = function (t) { var e = r(null); return s.call(arguments, (function (t) { n(t) && function (t, e) { var i; for (i in t) e[i] = t[i] }(Object(t), e) })), e } }, function (t, e, i) { "use strict"; t.exports = function (t) { return "function" == typeof t } }, function (t, e, i) { "use strict"; t.exports = i(43)() ? String.prototype.contains : i(44) }, function (t, e, i) { "use strict"; var n = "razdwatrzy"; t.exports = function () { return "function" == typeof n.contains && !0 === n.contains("dwa") && !1 === n.contains("foo") } }, function (t, e, i) { "use strict"; var n = String.prototype.indexOf; t.exports = function (t) { return n.call(this, t, arguments[1]) > -1 } }, function (t, e, i) { "use strict"; t.exports = function (t) { if ("function" != typeof t) throw new TypeError(t + " is not a function"); return t } }, function (t, e, i) { var n = i(14), s = i(25), r = i(47), o = i(48), a = s.DOMImplementation, h = n.NAMESPACE, l = o.ParseError, c = o.XMLReader; function u(t) { this.options = t || { locator: {} } } function d() { this.cdata = !1 } function f(t, e) { e.lineNumber = t.lineNumber, e.columnNumber = t.columnNumber } function p(t) { if (t) return "\n@" + (t.systemId || "") + "#[line:" + t.lineNumber + ",col:" + t.columnNumber + "]" } function g(t, e, i) { return "string" == typeof t ? t.substr(e, i) : t.length >= e + i || e ? new java.lang.String(t, e, i) + "" : t } function m(t, e) { t.currentElement ? t.currentElement.appendChild(e) : t.doc.appendChild(e) } u.prototype.parseFromString = function (t, e) { var i = this.options, n = new c, s = i.domBuilder || new d, o = i.errorHandler, a = i.locator, l = i.xmlns || {}, u = /\/x?html?$/.test(e), f = u ? r.HTML_ENTITIES : r.XML_ENTITIES; return a && s.setDocumentLocator(a), n.errorHandler = function (t, e, i) { if (!t) { if (e instanceof d) return e; t = e } var n = {}, s = t instanceof Function; function r(e) { var r = t[e]; !r && s && (r = 2 == t.length ? function (i) { t(e, i) } : t), n[e] = r && function (t) { r("[xmldom " + e + "]\t" + t + p(i)) } || function () { } } return i = i || {}, r("warning"), r("error"), r("fatalError"), n }(o, s, a), n.domBuilder = i.domBuilder || s, u && (l[""] = h.HTML), l.xml = l.xml || h.XML, t && "string" == typeof t ? n.parse(t, l, f) : n.errorHandler.error("invalid doc source"), s.doc }, d.prototype = { startDocument: function () { this.doc = (new a).createDocument(null, null, null), this.locator && (this.doc.documentURI = this.locator.systemId) }, startElement: function (t, e, i, n) { var s = this.doc, r = s.createElementNS(t, i || e), o = n.length; m(this, r), this.currentElement = r, this.locator && f(this.locator, r); for (var a = 0; a < o; a++) { t = n.getURI(a); var h = n.getValue(a), l = (i = n.getQName(a), s.createAttributeNS(t, i)); this.locator && f(n.getLocator(a), l), l.value = l.nodeValue = h, r.setAttributeNode(l) } }, endElement: function (t, e, i) { var n = this.currentElement; n.tagName, this.currentElement = n.parentNode }, startPrefixMapping: function (t, e) { }, endPrefixMapping: function (t) { }, processingInstruction: function (t, e) { var i = this.doc.createProcessingInstruction(t, e); this.locator && f(this.locator, i), m(this, i) }, ignorableWhitespace: function (t, e, i) { }, characters: function (t, e, i) { if (t = g.apply(this, arguments)) { if (this.cdata) var n = this.doc.createCDATASection(t); else n = this.doc.createTextNode(t); this.currentElement ? this.currentElement.appendChild(n) : /^\s*$/.test(t) && this.doc.appendChild(n), this.locator && f(this.locator, n) } }, skippedEntity: function (t) { }, endDocument: function () { this.doc.normalize() }, setDocumentLocator: function (t) { (this.locator = t) && (t.lineNumber = 0) }, comment: function (t, e, i) { t = g.apply(this, arguments); var n = this.doc.createComment(t); this.locator && f(this.locator, n), m(this, n) }, startCDATA: function () { this.cdata = !0 }, endCDATA: function () { this.cdata = !1 }, startDTD: function (t, e, i) { var n = this.doc.implementation; if (n && n.createDocumentType) { var s = n.createDocumentType(t, e, i); this.locator && f(this.locator, s), m(this, s), this.doc.doctype = s } }, warning: function (t) { console.warn("[xmldom warning]\t" + t, p(this.locator)) }, error: function (t) { console.error("[xmldom error]\t" + t, p(this.locator)) }, fatalError: function (t) { throw new l(t, this.locator) } }, "endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g, (function (t) { d.prototype[t] = function () { return null } })), e.__DOMHandler = d, e.DOMParser = u, e.DOMImplementation = s.DOMImplementation, e.XMLSerializer = s.XMLSerializer }, function (t, e, i) { var n = i(14).freeze; e.XML_ENTITIES = n({ amp: "&", apos: "'", gt: ">", lt: "<", quot: '"' }), e.HTML_ENTITIES = n({ lt: "<", gt: ">", amp: "&", quot: '"', apos: "'", Agrave: "À", Aacute: "Á", Acirc: "Â", Atilde: "Ã", Auml: "Ä", Aring: "Å", AElig: "Æ", Ccedil: "Ç", Egrave: "È", Eacute: "É", Ecirc: "Ê", Euml: "Ë", Igrave: "Ì", Iacute: "Í", Icirc: "Î", Iuml: "Ï", ETH: "Ð", Ntilde: "Ñ", Ograve: "Ò", Oacute: "Ó", Ocirc: "Ô", Otilde: "Õ", Ouml: "Ö", Oslash: "Ø", Ugrave: "Ù", Uacute: "Ú", Ucirc: "Û", Uuml: "Ü", Yacute: "Ý", THORN: "Þ", szlig: "ß", agrave: "à", aacute: "á", acirc: "â", atilde: "ã", auml: "ä", aring: "å", aelig: "æ", ccedil: "ç", egrave: "è", eacute: "é", ecirc: "ê", euml: "ë", igrave: "ì", iacute: "í", icirc: "î", iuml: "ï", eth: "ð", ntilde: "ñ", ograve: "ò", oacute: "ó", ocirc: "ô", otilde: "õ", ouml: "ö", oslash: "ø", ugrave: "ù", uacute: "ú", ucirc: "û", uuml: "ü", yacute: "ý", thorn: "þ", yuml: "ÿ", nbsp: " ", iexcl: "¡", cent: "¢", pound: "£", curren: "¤", yen: "¥", brvbar: "¦", sect: "§", uml: "¨", copy: "©", ordf: "ª", laquo: "«", not: "¬", shy: "­­", reg: "®", macr: "¯", deg: "°", plusmn: "±", sup2: "²", sup3: "³", acute: "´", micro: "µ", para: "¶", middot: "·", cedil: "¸", sup1: "¹", ordm: "º", raquo: "»", frac14: "¼", frac12: "½", frac34: "¾", iquest: "¿", times: "×", divide: "÷", forall: "∀", part: "∂", exist: "∃", empty: "∅", nabla: "∇", isin: "∈", notin: "∉", ni: "∋", prod: "∏", sum: "∑", minus: "−", lowast: "∗", radic: "√", prop: "∝", infin: "∞", ang: "∠", and: "∧", or: "∨", cap: "∩", cup: "∪", int: "∫", there4: "∴", sim: "∼", cong: "≅", asymp: "≈", ne: "≠", equiv: "≡", le: "≤", ge: "≥", sub: "⊂", sup: "⊃", nsub: "⊄", sube: "⊆", supe: "⊇", oplus: "⊕", otimes: "⊗", perp: "⊥", sdot: "⋅", Alpha: "Α", Beta: "Β", Gamma: "Γ", Delta: "Δ", Epsilon: "Ε", Zeta: "Ζ", Eta: "Η", Theta: "Θ", Iota: "Ι", Kappa: "Κ", Lambda: "Λ", Mu: "Μ", Nu: "Ν", Xi: "Ξ", Omicron: "Ο", Pi: "Π", Rho: "Ρ", Sigma: "Σ", Tau: "Τ", Upsilon: "Υ", Phi: "Φ", Chi: "Χ", Psi: "Ψ", Omega: "Ω", alpha: "α", beta: "β", gamma: "γ", delta: "δ", epsilon: "ε", zeta: "ζ", eta: "η", theta: "θ", iota: "ι", kappa: "κ", lambda: "λ", mu: "μ", nu: "ν", xi: "ξ", omicron: "ο", pi: "π", rho: "ρ", sigmaf: "ς", sigma: "σ", tau: "τ", upsilon: "υ", phi: "φ", chi: "χ", psi: "ψ", omega: "ω", thetasym: "ϑ", upsih: "ϒ", piv: "ϖ", OElig: "Œ", oelig: "œ", Scaron: "Š", scaron: "š", Yuml: "Ÿ", fnof: "ƒ", circ: "ˆ", tilde: "˜", ensp: " ", emsp: " ", thinsp: " ", zwnj: "‌", zwj: "‍", lrm: "‎", rlm: "‏", ndash: "–", mdash: "—", lsquo: "‘", rsquo: "’", sbquo: "‚", ldquo: "“", rdquo: "”", bdquo: "„", dagger: "†", Dagger: "‡", bull: "•", hellip: "…", permil: "‰", prime: "′", Prime: "″", lsaquo: "‹", rsaquo: "›", oline: "‾", euro: "€", trade: "™", larr: "←", uarr: "↑", rarr: "→", darr: "↓", harr: "↔", crarr: "↵", lceil: "⌈", rceil: "⌉", lfloor: "⌊", rfloor: "⌋", loz: "◊", spades: "♠", clubs: "♣", hearts: "♥", diams: "♦" }), e.entityMap = e.HTML_ENTITIES }, function (t, e, i) { var n = i(14).NAMESPACE, s = /[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/, r = new RegExp("[\\-\\.0-9" + s.source.slice(1, -1) + "\\u00B7\\u0300-\\u036F\\u203F-\\u2040]"), o = new RegExp("^" + s.source + r.source + "*(?::" + s.source + r.source + "*)?$"); function a(t, e) { this.message = t, this.locator = e, Error.captureStackTrace && Error.captureStackTrace(this, a) } function h() { } function l(t, e) { return e.lineNumber = t.lineNumber, e.columnNumber = t.columnNumber, e } function c(t, e, i, s, r, o) { function a(t, e, n) { i.attributeNames.hasOwnProperty(t) && o.fatalError("Attribute " + t + " redefined"), i.addValue(t, e, n) } for (var h, l = ++e, c = 0; ;) { var u = t.charAt(l); switch (u) { case "=": if (1 === c) h = t.slice(e, l), c = 3; else { if (2 !== c) throw new Error("attribute equal must after attrName"); c = 3 } break; case "'": case '"': if (3 === c || 1 === c) { if (1 === c && (o.warning('attribute value must after "="'), h = t.slice(e, l)), e = l + 1, !((l = t.indexOf(u, e)) > 0)) throw new Error("attribute value no end '" + u + "' match"); a(h, d = t.slice(e, l).replace(/&#?\w+;/g, r), e - 1), c = 5 } else { if (4 != c) throw new Error('attribute value must after "="'); a(h, d = t.slice(e, l).replace(/&#?\w+;/g, r), e), o.warning('attribute "' + h + '" missed start quot(' + u + ")!!"), e = l + 1, c = 5 } break; case "/": switch (c) { case 0: i.setTagName(t.slice(e, l)); case 5: case 6: case 7: c = 7, i.closed = !0; case 4: case 1: case 2: break; default: throw new Error("attribute invalid close char('/')") }break; case "": return o.error("unexpected end of input"), 0 == c && i.setTagName(t.slice(e, l)), l; case ">": switch (c) { case 0: i.setTagName(t.slice(e, l)); case 5: case 6: case 7: break; case 4: case 1: "/" === (d = t.slice(e, l)).slice(-1) && (i.closed = !0, d = d.slice(0, -1)); case 2: 2 === c && (d = h), 4 == c ? (o.warning('attribute "' + d + '" missed quot(")!'), a(h, d.replace(/&#?\w+;/g, r), e)) : (n.isHTML(s[""]) && d.match(/^(?:disabled|checked|selected)$/i) || o.warning('attribute "' + d + '" missed value!! "' + d + '" instead!!'), a(d, d, e)); break; case 3: throw new Error("attribute value missed!!") }return l; case "€": u = " "; default: if (u <= " ") switch (c) { case 0: i.setTagName(t.slice(e, l)), c = 6; break; case 1: h = t.slice(e, l), c = 2; break; case 4: var d = t.slice(e, l).replace(/&#?\w+;/g, r); o.warning('attribute "' + d + '" missed quot(")!!'), a(h, d, e); case 5: c = 6 } else switch (c) { case 2: i.tagName, n.isHTML(s[""]) && h.match(/^(?:disabled|checked|selected)$/i) || o.warning('attribute "' + h + '" missed value!! "' + h + '" instead2!!'), a(h, h, e), e = l, c = 1; break; case 5: o.warning('attribute space is required"' + h + '"!!'); case 6: c = 1, e = l; break; case 3: c = 4, e = l; break; case 7: throw new Error("elements closed character '/' and '>' must be connected to") } }l++ } } function u(t, e, i) { for (var s = t.tagName, r = null, o = t.length; o--;) { var a = t[o], h = a.qName, l = a.value; if ((f = h.indexOf(":")) > 0) var c = a.prefix = h.slice(0, f), u = h.slice(f + 1), d = "xmlns" === c && u; else u = h, c = null, d = "xmlns" === h && ""; a.localName = u, !1 !== d && (null == r && (r = {}, p(i, i = {})), i[d] = r[d] = l, a.uri = n.XMLNS, e.startPrefixMapping(d, l)) } for (o = t.length; o--;)(c = (a = t[o]).prefix) && ("xml" === c && (a.uri = n.XML), "xmlns" !== c && (a.uri = i[c || ""])); var f; (f = s.indexOf(":")) > 0 ? (c = t.prefix = s.slice(0, f), u = t.localName = s.slice(f + 1)) : (c = null, u = t.localName = s); var g = t.uri = i[c || ""]; if (e.startElement(g, u, s, t), !t.closed) return t.currentNSMap = i, t.localNSMap = r, !0; if (e.endElement(g, u, s), r) for (c in r) e.endPrefixMapping(c) } function d(t, e, i, n, s) { if (/^(?:script|textarea)$/i.test(i)) { var r = t.indexOf("", e), o = t.substring(e + 1, r); if (/[&<]/.test(o)) return /^script$/i.test(i) ? (s.characters(o, 0, o.length), r) : (o = o.replace(/&#?\w+;/g, n), s.characters(o, 0, o.length), r) } return e + 1 } function f(t, e, i, n) { var s = n[i]; return null == s && ((s = t.lastIndexOf("")) < e && (s = t.lastIndexOf(" e ? (i.comment(t, e + 4, s - e - 4), s + 3) : (n.error("Unclosed comment"), -1) : -1; if ("CDATA[" == t.substr(e + 3, 6)) { var s = t.indexOf("]]>", e + 9); return i.startCDATA(), i.characters(t, e + 9, s - e - 9), i.endCDATA(), s + 3 } var r = function (t, e) { var i, n = [], s = /'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g; for (s.lastIndex = e, s.exec(t); i = s.exec(t);)if (n.push(i), i[1]) return n }(t, e), o = r.length; if (o > 1 && /!doctype/i.test(r[0][0])) { var a = r[1][0], h = !1, l = !1; o > 3 && (/^public$/i.test(r[2][0]) ? (h = r[3][0], l = o > 4 && r[4][0]) : /^system$/i.test(r[2][0]) && (l = r[3][0])); var c = r[o - 1]; return i.startDTD(a, h, l), i.endDTD(), c.index + c[0].length } return -1 } function m(t, e, i) { var n = t.indexOf("?>", e); if (n) { var s = t.substring(e, n).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/); return s ? (s[0].length, i.processingInstruction(s[1], s[2]), n + 2) : -1 } return -1 } function v() { this.attributeNames = {} } a.prototype = new Error, a.prototype.name = a.name, h.prototype = { parse: function (t, e, i) { var s = this.domBuilder; s.startDocument(), p(e, e = {}), function (t, e, i, s, r) { function o(t) { var e = t.slice(1, -1); return e in i ? i[e] : "#" === e.charAt(0) ? function (t) { if (t > 65535) { var e = 55296 + ((t -= 65536) >> 10), i = 56320 + (1023 & t); return String.fromCharCode(e, i) } return String.fromCharCode(t) }(parseInt(e.substr(1).replace("x", "0x"))) : (r.error("entity not found:" + t), t) } function h(e) { if (e > N) { var i = t.substring(N, e).replace(/&#?\w+;/g, o); x && p(N), s.characters(i, 0, e - N), N = e } } function p(e, i) { for (; e >= b && (i = w.exec(t));)y = i.index, b = y + i[0].length, x.lineNumber++; x.columnNumber = e - y + 1 } for (var y = 0, b = 0, w = /.*(?:\r\n?|\n)|.*$/g, x = s.locator, E = [{ currentNSMap: e }], S = {}, N = 0; ;) { try { var _ = t.indexOf("<", N); if (_ < 0) { if (!t.substr(N).match(/^\s*$/)) { var T = s.doc, C = T.createTextNode(t.substr(N)); T.appendChild(C), s.currentElement = C } return } switch (_ > N && h(_), t.charAt(_ + 1)) { case "/": var O = t.indexOf(">", _ + 3), I = t.substring(_ + 2, O).replace(/[ \t\n\r]+$/g, ""), R = E.pop(); O < 0 ? (I = t.substring(_ + 2).replace(/[\s<].*/, ""), r.error("end tag name: " + I + " is not complete:" + R.tagName), O = _ + 1 + I.length) : I.match(/\s N ? N = O : h(Math.max(_, N) + 1) } }(t, e, i, s, this.errorHandler), s.endDocument() } }, v.prototype = { setTagName: function (t) { if (!o.test(t)) throw new Error("invalid tagName:" + t); this.tagName = t }, addValue: function (t, e, i) { if (!o.test(t)) throw new Error("invalid attribute:" + t); this.attributeNames[t] = this.length, this[this.length++] = { qName: t, value: e, offset: i } }, length: 0, getLocalName: function (t) { return this[t].localName }, getLocator: function (t) { return this[t].locator }, getQName: function (t) { return this[t].qName }, getURI: function (t) { return this[t].uri }, getValue: function (t) { return this[t].value } }, e.XMLReader = h, e.ParseError = a }, function (t, e, i) { "use strict"; function n(t) { return document.createElementNS("http://www.w3.org/2000/svg", t) } Object.defineProperty(e, "__esModule", { value: !0 }), e.createElement = n, e.default = { createElement: n } }, function (t, e, i) { "use strict"; function n(t, e) { function i(i) { for (var n = e.length - 1; n >= 0; n--) { var o = e[n], a = i.clientX, h = i.clientY; if (i.touches && i.touches.length && (a = i.touches[0].clientX, h = i.touches[0].clientY), r(o, t, a, h)) { o.dispatchEvent(s(i)); break } } } if ("iframe" === t.nodeName || "IFRAME" === t.nodeName) try { this.target = t.contentDocument } catch (e) { this.target = t } else this.target = t; for (var n = ["mouseup", "mousedown", "click", "touchstart"], o = 0; o < n.length; o++) { var a = n[o]; this.target.addEventListener(a, (function (t) { return i(t) }), !1) } } function s(t) { var e = Object.assign({}, t, { bubbles: !1 }); try { return new MouseEvent(t.type, e) } catch (n) { var i = document.createEvent("MouseEvents"); return i.initMouseEvent(t.type, !1, e.cancelable, e.view, e.detail, e.screenX, e.screenY, e.clientX, e.clientY, e.ctrlKey, e.altKey, e.shiftKey, e.metaKey, e.button, e.relatedTarget), i } } function r(t, e, i, n) { var s = e.getBoundingClientRect(); function r(t, e, i) { var n = t.top - s.top, r = t.left - s.left, o = n + t.height, a = r + t.width; return n <= i && r <= e && o > i && a > e } if (!r(t.getBoundingClientRect(), i, n)) return !1; for (var o = t.getClientRects(), a = 0, h = o.length; a < h; a++)if (r(o[a], i, n)) return !0; return !1 } Object.defineProperty(e, "__esModule", { value: !0 }), e.proxyMouse = n, e.clone = s, e.default = { proxyMouse: n } }, function (t, e, i) { var n = i(26); t.exports = function () { return n.Date.now() } }, function (t, e, i) { (function (e) { var i = "object" == typeof e && e && e.Object === Object && e; t.exports = i }).call(this, i(17)) }, function (t, e, i) { var n = i(54), s = i(19), r = i(56), o = /^[-+]0x[0-9a-f]+$/i, a = /^0b[01]+$/i, h = /^0o[0-7]+$/i, l = parseInt; t.exports = function (t) { if ("number" == typeof t) return t; if (r(t)) return NaN; if (s(t)) { var e = "function" == typeof t.valueOf ? t.valueOf() : t; t = s(e) ? e + "" : e } if ("string" != typeof t) return 0 === t ? t : +t; t = n(t); var i = a.test(t); return i || h.test(t) ? l(t.slice(2), i ? 2 : 8) : o.test(t) ? NaN : +t } }, function (t, e, i) { var n = i(55), s = /^\s+/; t.exports = function (t) { return t ? t.slice(0, n(t) + 1).replace(s, "") : t } }, function (t, e) { var i = /\s/; t.exports = function (t) { for (var e = t.length; e-- && i.test(t.charAt(e));); return e } }, function (t, e, i) { var n = i(57), s = i(60); t.exports = function (t) { return "symbol" == typeof t || s(t) && "[object Symbol]" == n(t) } }, function (t, e, i) { var n = i(27), s = i(58), r = i(59), o = n ? n.toStringTag : void 0; t.exports = function (t) { return null == t ? void 0 === t ? "[object Undefined]" : "[object Null]" : o && o in Object(t) ? s(t) : r(t) } }, function (t, e, i) { var n = i(27), s = Object.prototype, r = s.hasOwnProperty, o = s.toString, a = n ? n.toStringTag : void 0; t.exports = function (t) { var e = r.call(t, a), i = t[a]; try { t[a] = void 0; var n = !0 } catch (t) { } var s = o.call(t); return n && (e ? t[a] = i : delete t[a]), s } }, function (t, e) { var i = Object.prototype.toString; t.exports = function (t) { return i.call(t) } }, function (t, e) { t.exports = function (t) { return null != t && "object" == typeof t } }]).default })); \ No newline at end of file diff --git a/dist/js/libs/jszip.min.js b/dist/js/libs/jszip.min.js index 022ef9a..94cc32e 100644 --- a/dist/js/libs/jszip.min.js +++ b/dist/js/libs/jszip.min.js @@ -1,2 +1,2 @@ /*! For license information please see jszip.min.js.LICENSE.txt */ -!function(e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).JSZip=e()}((function(){return function e(t,r,n){function i(a,o){if(!r[a]){if(!t[a]){var h="function"==typeof require&&require;if(!o&&h)return h(a,!0);if(s)return s(a,!0);var u=new Error("Cannot find module '"+a+"'");throw u.code="MODULE_NOT_FOUND",u}var l=r[a]={exports:{}};t[a][0].call(l.exports,(function(e){return i(t[a][1][e]||e)}),l,l.exports,e,t,r,n)}return r[a].exports}for(var s="function"==typeof require&&require,a=0;a>2,o=(3&t)<<4|r>>4,h=1>6:64,u=2>4,r=(15&a)<<4|(o=s.indexOf(e.charAt(u++)))>>2,n=(3&o)<<6|(h=s.indexOf(e.charAt(u++))),f[l++]=t,64!==o&&(f[l++]=r),64!==h&&(f[l++]=n);return f}},{"./support":30,"./utils":32}],2:[function(e,t,r){"use strict";var n=e("./external"),i=e("./stream/DataWorker"),s=e("./stream/Crc32Probe"),a=e("./stream/DataLengthProbe");function o(e,t,r,n,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=r,this.compression=n,this.compressedContent=i}o.prototype={getContentWorker:function(){var e=new i(n.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new a("data_length")),t=this;return e.on("end",(function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")})),e},getCompressedWorker:function(){return new i(n.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},o.createWorkerFrom=function(e,t,r){return e.pipe(new s).pipe(new a("uncompressedSize")).pipe(t.compressWorker(r)).pipe(new a("compressedSize")).withStreamInfo("compression",t)},t.exports=o},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,r){"use strict";var n=e("./stream/GenericWorker");r.STORE={magic:"\0\0",compressWorker:function(){return new n("STORE compression")},uncompressWorker:function(){return new n("STORE decompression")}},r.DEFLATE=e("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,r){"use strict";var n=e("./utils"),i=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();t.exports=function(e,t){return void 0!==e&&e.length?"string"!==n.getTypeOf(e)?function(e,t,r){var n=i,s=0+r;e^=-1;for(var a=0;a>>8^n[255&(e^t[a])];return~e}(0|t,e,e.length):function(e,t,r){var n=i,s=0+r;e^=-1;for(var a=0;a>>8^n[255&(e^t.charCodeAt(a))];return~e}(0|t,e,e.length):0}},{"./utils":32}],5:[function(e,t,r){"use strict";r.base64=!1,r.binary=!1,r.dir=!1,r.createFolders=!0,r.date=null,r.compression=null,r.compressionOptions=null,r.comment=null,r.unixPermissions=null,r.dosPermissions=null},{}],6:[function(e,t,r){"use strict";var n;n="undefined"!=typeof Promise?Promise:e("lie"),t.exports={Promise:n}},{lie:37}],7:[function(e,t,r){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,i=e("pako"),s=e("./utils"),a=e("./stream/GenericWorker"),o=n?"uint8array":"array";function h(e,t){a.call(this,"FlateWorker/"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}r.magic="\b\0",s.inherits(h,a),h.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(s.transformTo(o,e.data),!1)},h.prototype.flush=function(){a.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},h.prototype.cleanUp=function(){a.prototype.cleanUp.call(this),this._pako=null},h.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},r.compressWorker=function(e){return new h("Deflate",e)},r.uncompressWorker=function(){return new h("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,r){"use strict";function n(e,t){var r,n="";for(r=0;r>>=8;return n}function i(e,t,r,i,a,l){var f,c,d=e.file,p=e.compression,m=l!==o.utf8encode,_=s.transformTo("string",l(d.name)),g=s.transformTo("string",o.utf8encode(d.name)),b=d.comment,v=s.transformTo("string",l(b)),y=s.transformTo("string",o.utf8encode(b)),w=g.length!==d.name.length,k=y.length!==b.length,x="",S="",z="",C=d.dir,E=d.date,A={crc32:0,compressedSize:0,uncompressedSize:0};t&&!r||(A.crc32=e.crc32,A.compressedSize=e.compressedSize,A.uncompressedSize=e.uncompressedSize);var I=0;t&&(I|=8),m||!w&&!k||(I|=2048);var O=0,B=0;C&&(O|=16),"UNIX"===a?(B=798,O|=function(e,t){var r=e;return e||(r=t?16893:33204),(65535&r)<<16}(d.unixPermissions,C)):(B=20,O|=function(e){return 63&(e||0)}(d.dosPermissions)),f=E.getUTCHours(),f<<=6,f|=E.getUTCMinutes(),f<<=5,f|=E.getUTCSeconds()/2,c=E.getUTCFullYear()-1980,c<<=4,c|=E.getUTCMonth()+1,c<<=5,c|=E.getUTCDate(),w&&(S=n(1,1)+n(h(_),4)+g,x+="up"+n(S.length,2)+S),k&&(z=n(1,1)+n(h(v),4)+y,x+="uc"+n(z.length,2)+z);var R="";return R+="\n\0",R+=n(I,2),R+=p.magic,R+=n(f,2),R+=n(c,2),R+=n(A.crc32,4),R+=n(A.compressedSize,4),R+=n(A.uncompressedSize,4),R+=n(_.length,2),R+=n(x.length,2),{fileRecord:u.LOCAL_FILE_HEADER+R+_+x,dirRecord:u.CENTRAL_FILE_HEADER+n(B,2)+R+n(v.length,2)+"\0\0\0\0"+n(O,4)+n(i,4)+_+x+v}}var s=e("../utils"),a=e("../stream/GenericWorker"),o=e("../utf8"),h=e("../crc32"),u=e("../signature");function l(e,t,r,n){a.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=r,this.encodeFileName=n,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}s.inherits(l,a),l.prototype.push=function(e){var t=e.meta.percent||0,r=this.entriesCount,n=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,a.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:r?(t+100*(r-n-1))/r:100}}))},l.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var r=i(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:r.fileRecord,meta:{percent:0}})}else this.accumulate=!0},l.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,r=i(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(r.dirRecord),t)this.push({data:function(e){return u.DATA_DESCRIPTOR+n(e.crc32,4)+n(e.compressedSize,4)+n(e.uncompressedSize,4)}(e),meta:{percent:100}});else for(this.push({data:r.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},l.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t=this.index;t--)r=(r<<8)+this.byteAt(t);return this.index+=e,r},readString:function(e){return n.transformTo("string",this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},t.exports=i},{"../utils":32}],19:[function(e,t,r){"use strict";var n=e("./Uint8ArrayReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(e,t,r){"use strict";var n=e("./DataReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],21:[function(e,t,r){"use strict";var n=e("./ArrayReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./ArrayReader":17}],22:[function(e,t,r){"use strict";var n=e("../utils"),i=e("../support"),s=e("./ArrayReader"),a=e("./StringReader"),o=e("./NodeBufferReader"),h=e("./Uint8ArrayReader");t.exports=function(e){var t=n.getTypeOf(e);return n.checkSupport(t),"string"!==t||i.uint8array?"nodebuffer"===t?new o(e):i.uint8array?new h(n.transformTo("uint8array",e)):new s(n.transformTo("array",e)):new a(e)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,t,r){"use strict";r.LOCAL_FILE_HEADER="PK",r.CENTRAL_FILE_HEADER="PK",r.CENTRAL_DIRECTORY_END="PK",r.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",r.ZIP64_CENTRAL_DIRECTORY_END="PK",r.DATA_DESCRIPTOR="PK\b"},{}],24:[function(e,t,r){"use strict";var n=e("./GenericWorker"),i=e("../utils");function s(e){n.call(this,"ConvertWorker to "+e),this.destType=e}i.inherits(s,n),s.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},t.exports=s},{"../utils":32,"./GenericWorker":28}],25:[function(e,t,r){"use strict";var n=e("./GenericWorker"),i=e("../crc32");function s(){n.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}e("../utils").inherits(s,n),s.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=s},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./GenericWorker");function s(e){i.call(this,"DataLengthProbe for "+e),this.propName=e,this.withStreamInfo(e,0)}n.inherits(s,i),s.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},t.exports=s},{"../utils":32,"./GenericWorker":28}],27:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./GenericWorker");function s(e){i.call(this,"DataWorker");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,e.then((function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=n.getTypeOf(e),t.isPaused||t._tickAndRepeat()}),(function(e){t.error(e)}))}n.inherits(s,i),s.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},s.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,n.delay(this._tickAndRepeat,[],this)),!0)},s.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(n.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},s.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":e=this.data.substring(this.index,t);break;case"uint8array":e=this.data.subarray(this.index,t);break;case"array":case"nodebuffer":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=s},{"../utils":32,"./GenericWorker":28}],28:[function(e,t,r){"use strict";function n(e){this.name=e||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}n.prototype={push:function(e){this.emit("data",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit("error",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit("error",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var r=0;r "+e:e}},t.exports=n},{}],29:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./ConvertWorker"),s=e("./GenericWorker"),a=e("../base64"),o=e("../support"),h=e("../external"),u=null;if(o.nodestream)try{u=e("../nodejs/NodejsStreamOutputAdapter")}catch(e){}function l(e,t,r){var a=t;switch(t){case"blob":case"arraybuffer":a="uint8array";break;case"base64":a="string"}try{this._internalType=a,this._outputType=t,this._mimeType=r,n.checkSupport(a),this._worker=e.pipe(new i(a)),e.lock()}catch(e){this._worker=new s("error"),this._worker.error(e)}}l.prototype={accumulate:function(e){return function(e,t){return new h.Promise((function(r,i){var s=[],o=e._internalType,h=e._outputType,u=e._mimeType;e.on("data",(function(e,r){s.push(e),t&&t(r)})).on("error",(function(e){s=[],i(e)})).on("end",(function(){try{var e=function(e,t,r){switch(e){case"blob":return n.newBlob(n.transformTo("arraybuffer",t),r);case"base64":return a.encode(t);default:return n.transformTo(e,t)}}(h,function(e,t){var r,n=0,i=null,s=0;for(r=0;r>>6:(r<65536?t[a++]=224|r>>>12:(t[a++]=240|r>>>18,t[a++]=128|r>>>12&63),t[a++]=128|r>>>6&63),t[a++]=128|63&r);return t}(e)},r.utf8decode=function(e){return i.nodebuffer?n.transformTo("nodebuffer",e).toString("utf-8"):function(e){var t,r,i,s,a=e.length,h=new Array(2*a);for(t=r=0;t>10&1023,h[r++]=56320|1023&i)}return h.length!==r&&(h.subarray?h=h.subarray(0,r):h.length=r),n.applyFromCharCode(h)}(e=n.transformTo(i.uint8array?"uint8array":"array",e))},n.inherits(u,a),u.prototype.processChunk=function(e){var t=n.transformTo(i.uint8array?"uint8array":"array",e.data);if(this.leftOver&&this.leftOver.length){if(i.uint8array){var s=t;(t=new Uint8Array(s.length+this.leftOver.length)).set(this.leftOver,0),t.set(s,this.leftOver.length)}else t=this.leftOver.concat(t);this.leftOver=null}var a=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;0<=r&&128==(192&e[r]);)r--;return r<0||0===r?t:r+o[e[r]]>t?r:t}(t),h=t;a!==t.length&&(i.uint8array?(h=t.subarray(0,a),this.leftOver=t.subarray(a,t.length)):(h=t.slice(0,a),this.leftOver=t.slice(a,t.length))),this.push({data:r.utf8decode(h),meta:e.meta})},u.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:r.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},r.Utf8DecodeWorker=u,n.inherits(l,a),l.prototype.processChunk=function(e){this.push({data:r.utf8encode(e.data),meta:e.meta})},r.Utf8EncodeWorker=l},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,r){"use strict";var n=e("./support"),i=e("./base64"),s=e("./nodejsUtils"),a=e("./external");function o(e){return e}function h(e,t){for(var r=0;r>8;this.dir=!!(16&this.externalFileAttributes),0==e&&(this.dosPermissions=63&this.externalFileAttributes),3==e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=n(this.extraFields[1].value);this.uncompressedSize===i.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===i.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===i.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===i.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,r,n,i=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4>>6:(r<65536?t[a++]=224|r>>>12:(t[a++]=240|r>>>18,t[a++]=128|r>>>12&63),t[a++]=128|r>>>6&63),t[a++]=128|63&r);return t},r.buf2binstring=function(e){return h(e,e.length)},r.binstring2buf=function(e){for(var t=new n.Buf8(e.length),r=0,i=t.length;r>10&1023,u[n++]=56320|1023&i)}return h(u,n)},r.utf8border=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;0<=r&&128==(192&e[r]);)r--;return r<0||0===r?t:r+a[e[r]]>t?r:t}},{"./common":41}],43:[function(e,t,r){"use strict";t.exports=function(e,t,r,n){for(var i=65535&e,s=e>>>16&65535,a=0;0!==r;){for(r-=a=2e3>>1:e>>>1;t[r]=e}return t}();t.exports=function(e,t,r,i){var s=n,a=i+r;e^=-1;for(var o=i;o>>8^s[255&(e^t[o])];return~e}},{}],46:[function(e,t,r){"use strict";var n,i=e("../utils/common"),s=e("./trees"),a=e("./adler32"),o=e("./crc32"),h=e("./messages"),u=-2,l=258,f=262,c=113;function d(e,t){return e.msg=h[t],t}function p(e){return(e<<1)-(4e.avail_out&&(r=e.avail_out),0!==r&&(i.arraySet(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))}function g(e,t){s._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,_(e.strm)}function b(e,t){e.pending_buf[e.pending++]=t}function v(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function y(e,t){var r,n,i=e.max_chain_length,s=e.strstart,a=e.prev_length,o=e.nice_match,h=e.strstart>e.w_size-f?e.strstart-(e.w_size-f):0,u=e.window,c=e.w_mask,d=e.prev,p=e.strstart+l,m=u[s+a-1],_=u[s+a];e.prev_length>=e.good_match&&(i>>=2),o>e.lookahead&&(o=e.lookahead);do{if(u[(r=t)+a]===_&&u[r+a-1]===m&&u[r]===u[s]&&u[++r]===u[s+1]){s+=2,r++;do{}while(u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&sh&&0!=--i);return a<=e.lookahead?a:e.lookahead}function w(e){var t,r,n,s,h,u,l,c,d,p,m=e.w_size;do{if(s=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-f)){for(i.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,t=r=e.hash_size;n=e.head[--t],e.head[t]=m<=n?n-m:0,--r;);for(t=r=m;n=e.prev[--t],e.prev[t]=m<=n?n-m:0,--r;);s+=m}if(0===e.strm.avail_in)break;if(u=e.strm,l=e.window,c=e.strstart+e.lookahead,p=void 0,(d=s)<(p=u.avail_in)&&(p=d),r=0===p?0:(u.avail_in-=p,i.arraySet(l,u.input,u.next_in,p,c),1===u.state.wrap?u.adler=a(u.adler,l,p,c):2===u.state.wrap&&(u.adler=o(u.adler,l,p,c)),u.next_in+=p,u.total_in+=p,p),e.lookahead+=r,e.lookahead+e.insert>=3)for(h=e.strstart-e.insert,e.ins_h=e.window[h],e.ins_h=(e.ins_h<=3&&(e.ins_h=(e.ins_h<=3)if(n=s._tr_tally(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<=3&&(e.ins_h=(e.ins_h<=3&&e.match_length<=e.prev_length){for(i=e.strstart+e.lookahead-3,n=s._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=i&&(e.ins_h=(e.ins_h<e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(w(e),0===e.lookahead&&0===t)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,g(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-f&&(g(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(g(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(g(e,!1),e.strm.avail_out),1)})),new S(4,4,8,4,k),new S(4,5,16,8,k),new S(4,6,32,32,k),new S(4,4,16,16,x),new S(8,16,32,32,x),new S(8,16,128,128,x),new S(8,32,128,256,x),new S(32,128,258,1024,x),new S(32,258,258,4096,x)],r.deflateInit=function(e,t){return A(e,t,8,15,8,0)},r.deflateInit2=A,r.deflateReset=E,r.deflateResetKeep=C,r.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?u:(e.state.gzhead=t,0):u},r.deflate=function(e,t){var r,i,a,h;if(!e||!e.state||5>8&255),b(i,i.gzhead.time>>16&255),b(i,i.gzhead.time>>24&255),b(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),b(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(b(i,255&i.gzhead.extra.length),b(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=o(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(b(i,0),b(i,0),b(i,0),b(i,0),b(i,0),b(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),b(i,3),i.status=c);else{var f=8+(i.w_bits-8<<4)<<8;f|=(2<=i.strategy||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(f|=32),f+=31-f%31,i.status=c,v(i,f),0!==i.strstart&&(v(i,e.adler>>>16),v(i,65535&e.adler)),e.adler=1}if(69===i.status)if(i.gzhead.extra){for(a=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),_(e),a=i.pending,i.pending!==i.pending_buf_size));)b(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(73===i.status)if(i.gzhead.name){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),_(e),a=i.pending,i.pending===i.pending_buf_size)){h=1;break}h=i.gzindexa&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),0===h&&(i.gzindex=0,i.status=91)}else i.status=91;if(91===i.status)if(i.gzhead.comment){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),_(e),a=i.pending,i.pending===i.pending_buf_size)){h=1;break}h=i.gzindexa&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),0===h&&(i.status=103)}else i.status=103;if(103===i.status&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&_(e),i.pending+2<=i.pending_buf_size&&(b(i,255&e.adler),b(i,e.adler>>8&255),e.adler=0,i.status=c)):i.status=c),0!==i.pending){if(_(e),0===e.avail_out)return i.last_flush=-1,0}else if(0===e.avail_in&&p(t)<=p(r)&&4!==t)return d(e,-5);if(666===i.status&&0!==e.avail_in)return d(e,-5);if(0!==e.avail_in||0!==i.lookahead||0!==t&&666!==i.status){var y=2===i.strategy?function(e,t){for(var r;;){if(0===e.lookahead&&(w(e),0===e.lookahead)){if(0===t)return 1;break}if(e.match_length=0,r=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(g(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(g(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(g(e,!1),0===e.strm.avail_out)?1:2}(i,t):3===i.strategy?function(e,t){for(var r,n,i,a,o=e.window;;){if(e.lookahead<=l){if(w(e),e.lookahead<=l&&0===t)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&0e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=3?(r=s._tr_tally(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(g(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(g(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(g(e,!1),0===e.strm.avail_out)?1:2}(i,t):n[i.level].func(i,t);if(3!==y&&4!==y||(i.status=666),1===y||3===y)return 0===e.avail_out&&(i.last_flush=-1),0;if(2===y&&(1===t?s._tr_align(i):5!==t&&(s._tr_stored_block(i,0,0,!1),3===t&&(m(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),_(e),0===e.avail_out))return i.last_flush=-1,0}return 4!==t?0:i.wrap<=0?1:(2===i.wrap?(b(i,255&e.adler),b(i,e.adler>>8&255),b(i,e.adler>>16&255),b(i,e.adler>>24&255),b(i,255&e.total_in),b(i,e.total_in>>8&255),b(i,e.total_in>>16&255),b(i,e.total_in>>24&255)):(v(i,e.adler>>>16),v(i,65535&e.adler)),_(e),0=r.w_size&&(0===o&&(m(r.head),r.strstart=0,r.block_start=0,r.insert=0),c=new i.Buf8(r.w_size),i.arraySet(c,t,d-r.w_size,r.w_size,0),t=c,d=r.w_size),h=e.avail_in,l=e.next_in,f=e.input,e.avail_in=d,e.next_in=0,e.input=t,w(r);r.lookahead>=3;){for(n=r.strstart,s=r.lookahead-2;r.ins_h=(r.ins_h<>>=y=v>>>24,p-=y,0==(y=v>>>16&255))C[s++]=65535&v;else{if(!(16&y)){if(!(64&y)){v=m[(65535&v)+(d&(1<>>=y,p-=y),p<15&&(d+=z[n++]<>>=y=v>>>24,p-=y,!(16&(y=v>>>16&255))){if(!(64&y)){v=_[(65535&v)+(d&(1<>>=y,p-=y,(y=s-a)>3,d&=(1<<(p-=w<<3))-1,e.next_in=n,e.next_out=s,e.avail_in=n>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function l(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new n.Buf16(320),this.work=new n.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function f(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=1,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new n.Buf32(852),t.distcode=t.distdyn=new n.Buf32(592),t.sane=1,t.back=-1,0):h}function c(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,f(e)):h}function d(e,t){var r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15=a.wsize?(n.arraySet(a.window,t,r-a.wsize,a.wsize,0),a.wnext=0,a.whave=a.wsize):(i<(s=a.wsize-a.wnext)&&(s=i),n.arraySet(a.window,t,r-i,s,a.wnext),(i-=s)?(n.arraySet(a.window,t,r-i,i,0),a.wnext=i,a.whave=a.wsize):(a.wnext+=s,a.wnext===a.wsize&&(a.wnext=0),a.whave>>8&255,r.check=s(r.check,N,2,0),g=_=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&_)<<8)+(_>>8))%31){e.msg="incorrect header check",r.mode=30;break}if(8!=(15&_)){e.msg="unknown compression method",r.mode=30;break}if(g-=4,B=8+(15&(_>>>=4)),0===r.wbits)r.wbits=B;else if(B>r.wbits){e.msg="invalid window size",r.mode=30;break}r.dmax=1<>8&1),512&r.flags&&(N[0]=255&_,N[1]=_>>>8&255,r.check=s(r.check,N,2,0)),g=_=0,r.mode=3;case 3:for(;g<32;){if(0===p)break e;p--,_+=l[c++]<>>8&255,N[2]=_>>>16&255,N[3]=_>>>24&255,r.check=s(r.check,N,4,0)),g=_=0,r.mode=4;case 4:for(;g<16;){if(0===p)break e;p--,_+=l[c++]<>8),512&r.flags&&(N[0]=255&_,N[1]=_>>>8&255,r.check=s(r.check,N,2,0)),g=_=0,r.mode=5;case 5:if(1024&r.flags){for(;g<16;){if(0===p)break e;p--,_+=l[c++]<>>8&255,r.check=s(r.check,N,2,0)),g=_=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&(p<(k=r.length)&&(k=p),k&&(r.head&&(B=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),n.arraySet(r.head.extra,l,c,k,B)),512&r.flags&&(r.check=s(r.check,l,k,c)),p-=k,c+=k,r.length-=k),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===p)break e;for(k=0;B=l[c+k++],r.head&&B&&r.length<65536&&(r.head.name+=String.fromCharCode(B)),B&&k>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=12;break;case 10:for(;g<32;){if(0===p)break e;p--,_+=l[c++]<>>=7&g,g-=7&g,r.mode=27;break}for(;g<3;){if(0===p)break e;p--,_+=l[c++]<>>=1)){case 0:r.mode=14;break;case 1:if(b(r),r.mode=20,6!==t)break;_>>>=2,g-=2;break e;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=30}_>>>=2,g-=2;break;case 14:for(_>>>=7&g,g-=7&g;g<32;){if(0===p)break e;p--,_+=l[c++]<>>16^65535)){e.msg="invalid stored block lengths",r.mode=30;break}if(r.length=65535&_,g=_=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(k=r.length){if(p>>=5,g-=5,r.ndist=1+(31&_),_>>>=5,g-=5,r.ncode=4+(15&_),_>>>=4,g-=4,286>>=3,g-=3}for(;r.have<19;)r.lens[U[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,T={bits:r.lenbits},R=o(0,r.lens,0,19,r.lencode,0,r.work,T),r.lenbits=T.bits,R){e.msg="invalid code lengths set",r.mode=30;break}r.have=0,r.mode=19;case 19:for(;r.have>>16&255,E=65535&F,!((z=F>>>24)<=g);){if(0===p)break e;p--,_+=l[c++]<>>=z,g-=z,r.lens[r.have++]=E;else{if(16===E){for(D=z+2;g>>=z,g-=z,0===r.have){e.msg="invalid bit length repeat",r.mode=30;break}B=r.lens[r.have-1],k=3+(3&_),_>>>=2,g-=2}else if(17===E){for(D=z+3;g>>=z)),_>>>=3,g-=3}else{for(D=z+7;g>>=z)),_>>>=7,g-=7}if(r.have+k>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=30;break}for(;k--;)r.lens[r.have++]=B}}if(30===r.mode)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=30;break}if(r.lenbits=9,T={bits:r.lenbits},R=o(1,r.lens,0,r.nlen,r.lencode,0,r.work,T),r.lenbits=T.bits,R){e.msg="invalid literal/lengths set",r.mode=30;break}if(r.distbits=6,r.distcode=r.distdyn,T={bits:r.distbits},R=o(2,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,T),r.distbits=T.bits,R){e.msg="invalid distances set",r.mode=30;break}if(r.mode=20,6===t)break e;case 20:r.mode=21;case 21:if(6<=p&&258<=m){e.next_out=d,e.avail_out=m,e.next_in=c,e.avail_in=p,r.hold=_,r.bits=g,a(e,w),d=e.next_out,f=e.output,m=e.avail_out,c=e.next_in,l=e.input,p=e.avail_in,_=r.hold,g=r.bits,12===r.mode&&(r.back=-1);break}for(r.back=0;C=(F=r.lencode[_&(1<>>16&255,E=65535&F,!((z=F>>>24)<=g);){if(0===p)break e;p--,_+=l[c++]<>A)])>>>16&255,E=65535&F,!(A+(z=F>>>24)<=g);){if(0===p)break e;p--,_+=l[c++]<>>=A,g-=A,r.back+=A}if(_>>>=z,g-=z,r.back+=z,r.length=E,0===C){r.mode=26;break}if(32&C){r.back=-1,r.mode=12;break}if(64&C){e.msg="invalid literal/length code",r.mode=30;break}r.extra=15&C,r.mode=22;case 22:if(r.extra){for(D=r.extra;g>>=r.extra,g-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;C=(F=r.distcode[_&(1<>>16&255,E=65535&F,!((z=F>>>24)<=g);){if(0===p)break e;p--,_+=l[c++]<>A)])>>>16&255,E=65535&F,!(A+(z=F>>>24)<=g);){if(0===p)break e;p--,_+=l[c++]<>>=A,g-=A,r.back+=A}if(_>>>=z,g-=z,r.back+=z,64&C){e.msg="invalid distance code",r.mode=30;break}r.offset=E,r.extra=15&C,r.mode=24;case 24:if(r.extra){for(D=r.extra;g>>=r.extra,g-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=30;break}r.mode=25;case 25:if(0===m)break e;if(k=w-m,r.offset>k){if((k=r.offset-k)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=30;break}x=k>r.wnext?(k-=r.wnext,r.wsize-k):r.wnext-k,k>r.length&&(k=r.length),S=r.window}else S=f,x=d-r.offset,k=r.length;for(mb?(y=U[P+f[S]],T[D+f[S]]):(y=96,0),d=1<>I)+(p-=d)]=v<<24|y<<16|w,0!==p;);for(d=1<>=1;if(0!==d?(R&=d-1,R+=d):R=0,S++,0==--F[x]){if(x===C)break;x=t[r+f[S]]}if(E>>7)]}function w(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function k(e,t,r){e.bi_valid>16-r?(e.bi_buf|=t<>16-e.bi_valid,e.bi_valid+=r-16):(e.bi_buf|=t<>>=1,r<<=1,0<--t;);return r>>>1}function z(e,t,r){var n,i,s=new Array(16),a=0;for(n=1;n<=15;n++)s[n]=a=a+r[n-1]<<1;for(i=0;i<=t;i++){var o=e[2*i+1];0!==o&&(e[2*i]=S(s[o]++,o))}}function C(e){var t;for(t=0;t<286;t++)e.dyn_ltree[2*t]=0;for(t=0;t<30;t++)e.dyn_dtree[2*t]=0;for(t=0;t<19;t++)e.bl_tree[2*t]=0;e.dyn_ltree[512]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function E(e){8>1;1<=r;r--)I(e,s,r);for(i=h;r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],I(e,s,1),n=e.heap[1],e.heap[--e.heap_max]=r,e.heap[--e.heap_max]=n,s[2*i]=s[2*r]+s[2*n],e.depth[i]=(e.depth[r]>=e.depth[n]?e.depth[r]:e.depth[n])+1,s[2*r+1]=s[2*n+1]=i,e.heap[1]=i++,I(e,s,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,t){var r,n,i,s,a,o,h=t.dyn_tree,u=t.max_code,l=t.stat_desc.static_tree,f=t.stat_desc.has_stree,c=t.stat_desc.extra_bits,d=t.stat_desc.extra_base,p=t.stat_desc.max_length,m=0;for(s=0;s<=15;s++)e.bl_count[s]=0;for(h[2*e.heap[e.heap_max]+1]=0,r=e.heap_max+1;r<573;r++)p<(s=h[2*h[2*(n=e.heap[r])+1]+1]+1)&&(s=p,m++),h[2*n+1]=s,u>=7;n<30;n++)for(g[n]=i<<7,e=0;e<1<>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;t<256;t++)if(0!==e.dyn_ltree[2*t])return 1;return 0}(e)),B(e,e.l_desc),B(e,e.d_desc),a=function(e){var t;for(R(e,e.dyn_ltree,e.l_desc.max_code),R(e,e.dyn_dtree,e.d_desc.max_code),B(e,e.bl_desc),t=18;3<=t&&0===e.bl_tree[2*h[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),i=e.opt_len+3+7>>>3,(s=e.static_len+3+7>>>3)<=i&&(i=s)):i=s=r+5,r+4<=i&&-1!==t?F(e,t,r,n):4===e.strategy||s===i?(k(e,2+(n?1:0),3),O(e,u,l)):(k(e,4+(n?1:0),3),function(e,t,r,n){var i;for(k(e,t-257,5),k(e,r-1,5),k(e,n-4,4),i=0;i>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(c[r]+256+1)]++,e.dyn_dtree[2*y(t)]++),e.last_lit===e.lit_bufsize-1},r._tr_align=function(e){k(e,2,3),x(e,256,u),function(e){16===e.bi_valid?(w(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{"../utils/common":41}],53:[function(e,t,r){"use strict";t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,r){(function(e){!function(e){"use strict";if(!e.setImmediate){var t,r,n,i,s=1,a={},o=!1,h=e.document,u=Object.getPrototypeOf&&Object.getPrototypeOf(e);u=u&&u.setTimeout?u:e,t="[object process]"==={}.toString.call(e.process)?function(e){process.nextTick((function(){f(e)}))}:function(){if(e.postMessage&&!e.importScripts){var t=!0,r=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=r,t}}()?(i="setImmediate$"+Math.random()+"$",e.addEventListener?e.addEventListener("message",c,!1):e.attachEvent("onmessage",c),function(t){e.postMessage(i+t,"*")}):e.MessageChannel?((n=new MessageChannel).port1.onmessage=function(e){f(e.data)},function(e){n.port2.postMessage(e)}):h&&"onreadystatechange"in h.createElement("script")?(r=h.documentElement,function(e){var t=h.createElement("script");t.onreadystatechange=function(){f(e),t.onreadystatechange=null,r.removeChild(t),t=null},r.appendChild(t)}):function(e){setTimeout(f,0,e)},u.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var r=new Array(arguments.length-1),n=0;n> 2, o = (3 & t) << 4 | r >> 4, h = 1 < d ? (15 & r) << 2 | i >> 6 : 64, u = 2 < d ? 63 & i : 64, l.push(s.charAt(a) + s.charAt(o) + s.charAt(h) + s.charAt(u)); return l.join("") }, r.decode = function (e) { var t, r, n, a, o, h, u = 0, l = 0; if ("data:" === e.substr(0, 5)) throw new Error("Invalid base64 input, it looks like a data url."); var f, c = 3 * (e = e.replace(/[^A-Za-z0-9+/=]/g, "")).length / 4; if (e.charAt(e.length - 1) === s.charAt(64) && c--, e.charAt(e.length - 2) === s.charAt(64) && c--, c % 1 != 0) throw new Error("Invalid base64 input, bad content length."); for (f = i.uint8array ? new Uint8Array(0 | c) : new Array(0 | c); u < e.length;)t = s.indexOf(e.charAt(u++)) << 2 | (a = s.indexOf(e.charAt(u++))) >> 4, r = (15 & a) << 4 | (o = s.indexOf(e.charAt(u++))) >> 2, n = (3 & o) << 6 | (h = s.indexOf(e.charAt(u++))), f[l++] = t, 64 !== o && (f[l++] = r), 64 !== h && (f[l++] = n); return f } }, { "./support": 30, "./utils": 32 }], 2: [function (e, t, r) { "use strict"; var n = e("./external"), i = e("./stream/DataWorker"), s = e("./stream/Crc32Probe"), a = e("./stream/DataLengthProbe"); function o(e, t, r, n, i) { this.compressedSize = e, this.uncompressedSize = t, this.crc32 = r, this.compression = n, this.compressedContent = i } o.prototype = { getContentWorker: function () { var e = new i(n.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new a("data_length")), t = this; return e.on("end", (function () { if (this.streamInfo.data_length !== t.uncompressedSize) throw new Error("Bug : uncompressed data size mismatch") })), e }, getCompressedWorker: function () { return new i(n.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize", this.compressedSize).withStreamInfo("uncompressedSize", this.uncompressedSize).withStreamInfo("crc32", this.crc32).withStreamInfo("compression", this.compression) } }, o.createWorkerFrom = function (e, t, r) { return e.pipe(new s).pipe(new a("uncompressedSize")).pipe(t.compressWorker(r)).pipe(new a("compressedSize")).withStreamInfo("compression", t) }, t.exports = o }, { "./external": 6, "./stream/Crc32Probe": 25, "./stream/DataLengthProbe": 26, "./stream/DataWorker": 27 }], 3: [function (e, t, r) { "use strict"; var n = e("./stream/GenericWorker"); r.STORE = { magic: "\0\0", compressWorker: function () { return new n("STORE compression") }, uncompressWorker: function () { return new n("STORE decompression") } }, r.DEFLATE = e("./flate") }, { "./flate": 7, "./stream/GenericWorker": 28 }], 4: [function (e, t, r) { "use strict"; var n = e("./utils"), i = function () { for (var e, t = [], r = 0; r < 256; r++) { e = r; for (var n = 0; n < 8; n++)e = 1 & e ? 3988292384 ^ e >>> 1 : e >>> 1; t[r] = e } return t }(); t.exports = function (e, t) { return void 0 !== e && e.length ? "string" !== n.getTypeOf(e) ? function (e, t, r) { var n = i, s = 0 + r; e ^= -1; for (var a = 0; a < s; a++)e = e >>> 8 ^ n[255 & (e ^ t[a])]; return ~e }(0 | t, e, e.length) : function (e, t, r) { var n = i, s = 0 + r; e ^= -1; for (var a = 0; a < s; a++)e = e >>> 8 ^ n[255 & (e ^ t.charCodeAt(a))]; return ~e }(0 | t, e, e.length) : 0 } }, { "./utils": 32 }], 5: [function (e, t, r) { "use strict"; r.base64 = !1, r.binary = !1, r.dir = !1, r.createFolders = !0, r.date = null, r.compression = null, r.compressionOptions = null, r.comment = null, r.unixPermissions = null, r.dosPermissions = null }, {}], 6: [function (e, t, r) { "use strict"; var n; n = "undefined" != typeof Promise ? Promise : e("lie"), t.exports = { Promise: n } }, { lie: 37 }], 7: [function (e, t, r) { "use strict"; var n = "undefined" != typeof Uint8Array && "undefined" != typeof Uint16Array && "undefined" != typeof Uint32Array, i = e("pako"), s = e("./utils"), a = e("./stream/GenericWorker"), o = n ? "uint8array" : "array"; function h(e, t) { a.call(this, "FlateWorker/" + e), this._pako = null, this._pakoAction = e, this._pakoOptions = t, this.meta = {} } r.magic = "\b\0", s.inherits(h, a), h.prototype.processChunk = function (e) { this.meta = e.meta, null === this._pako && this._createPako(), this._pako.push(s.transformTo(o, e.data), !1) }, h.prototype.flush = function () { a.prototype.flush.call(this), null === this._pako && this._createPako(), this._pako.push([], !0) }, h.prototype.cleanUp = function () { a.prototype.cleanUp.call(this), this._pako = null }, h.prototype._createPako = function () { this._pako = new i[this._pakoAction]({ raw: !0, level: this._pakoOptions.level || -1 }); var e = this; this._pako.onData = function (t) { e.push({ data: t, meta: e.meta }) } }, r.compressWorker = function (e) { return new h("Deflate", e) }, r.uncompressWorker = function () { return new h("Inflate", {}) } }, { "./stream/GenericWorker": 28, "./utils": 32, pako: 38 }], 8: [function (e, t, r) { "use strict"; function n(e, t) { var r, n = ""; for (r = 0; r < t; r++)n += String.fromCharCode(255 & e), e >>>= 8; return n } function i(e, t, r, i, a, l) { var f, c, d = e.file, p = e.compression, m = l !== o.utf8encode, _ = s.transformTo("string", l(d.name)), g = s.transformTo("string", o.utf8encode(d.name)), b = d.comment, v = s.transformTo("string", l(b)), y = s.transformTo("string", o.utf8encode(b)), w = g.length !== d.name.length, k = y.length !== b.length, x = "", S = "", z = "", C = d.dir, E = d.date, A = { crc32: 0, compressedSize: 0, uncompressedSize: 0 }; t && !r || (A.crc32 = e.crc32, A.compressedSize = e.compressedSize, A.uncompressedSize = e.uncompressedSize); var I = 0; t && (I |= 8), m || !w && !k || (I |= 2048); var O = 0, B = 0; C && (O |= 16), "UNIX" === a ? (B = 798, O |= function (e, t) { var r = e; return e || (r = t ? 16893 : 33204), (65535 & r) << 16 }(d.unixPermissions, C)) : (B = 20, O |= function (e) { return 63 & (e || 0) }(d.dosPermissions)), f = E.getUTCHours(), f <<= 6, f |= E.getUTCMinutes(), f <<= 5, f |= E.getUTCSeconds() / 2, c = E.getUTCFullYear() - 1980, c <<= 4, c |= E.getUTCMonth() + 1, c <<= 5, c |= E.getUTCDate(), w && (S = n(1, 1) + n(h(_), 4) + g, x += "up" + n(S.length, 2) + S), k && (z = n(1, 1) + n(h(v), 4) + y, x += "uc" + n(z.length, 2) + z); var R = ""; return R += "\n\0", R += n(I, 2), R += p.magic, R += n(f, 2), R += n(c, 2), R += n(A.crc32, 4), R += n(A.compressedSize, 4), R += n(A.uncompressedSize, 4), R += n(_.length, 2), R += n(x.length, 2), { fileRecord: u.LOCAL_FILE_HEADER + R + _ + x, dirRecord: u.CENTRAL_FILE_HEADER + n(B, 2) + R + n(v.length, 2) + "\0\0\0\0" + n(O, 4) + n(i, 4) + _ + x + v } } var s = e("../utils"), a = e("../stream/GenericWorker"), o = e("../utf8"), h = e("../crc32"), u = e("../signature"); function l(e, t, r, n) { a.call(this, "ZipFileWorker"), this.bytesWritten = 0, this.zipComment = t, this.zipPlatform = r, this.encodeFileName = n, this.streamFiles = e, this.accumulate = !1, this.contentBuffer = [], this.dirRecords = [], this.currentSourceOffset = 0, this.entriesCount = 0, this.currentFile = null, this._sources = [] } s.inherits(l, a), l.prototype.push = function (e) { var t = e.meta.percent || 0, r = this.entriesCount, n = this._sources.length; this.accumulate ? this.contentBuffer.push(e) : (this.bytesWritten += e.data.length, a.prototype.push.call(this, { data: e.data, meta: { currentFile: this.currentFile, percent: r ? (t + 100 * (r - n - 1)) / r : 100 } })) }, l.prototype.openedSource = function (e) { this.currentSourceOffset = this.bytesWritten, this.currentFile = e.file.name; var t = this.streamFiles && !e.file.dir; if (t) { var r = i(e, t, !1, this.currentSourceOffset, this.zipPlatform, this.encodeFileName); this.push({ data: r.fileRecord, meta: { percent: 0 } }) } else this.accumulate = !0 }, l.prototype.closedSource = function (e) { this.accumulate = !1; var t = this.streamFiles && !e.file.dir, r = i(e, t, !0, this.currentSourceOffset, this.zipPlatform, this.encodeFileName); if (this.dirRecords.push(r.dirRecord), t) this.push({ data: function (e) { return u.DATA_DESCRIPTOR + n(e.crc32, 4) + n(e.compressedSize, 4) + n(e.uncompressedSize, 4) }(e), meta: { percent: 100 } }); else for (this.push({ data: r.fileRecord, meta: { percent: 0 } }); this.contentBuffer.length;)this.push(this.contentBuffer.shift()); this.currentFile = null }, l.prototype.flush = function () { for (var e = this.bytesWritten, t = 0; t < this.dirRecords.length; t++)this.push({ data: this.dirRecords[t], meta: { percent: 100 } }); var r = this.bytesWritten - e, i = function (e, t, r, i, a) { var o = s.transformTo("string", a(i)); return u.CENTRAL_DIRECTORY_END + "\0\0\0\0" + n(e, 2) + n(e, 2) + n(t, 4) + n(r, 4) + n(o.length, 2) + o }(this.dirRecords.length, r, e, this.zipComment, this.encodeFileName); this.push({ data: i, meta: { percent: 100 } }) }, l.prototype.prepareNextSource = function () { this.previous = this._sources.shift(), this.openedSource(this.previous.streamInfo), this.isPaused ? this.previous.pause() : this.previous.resume() }, l.prototype.registerPrevious = function (e) { this._sources.push(e); var t = this; return e.on("data", (function (e) { t.processChunk(e) })), e.on("end", (function () { t.closedSource(t.previous.streamInfo), t._sources.length ? t.prepareNextSource() : t.end() })), e.on("error", (function (e) { t.error(e) })), this }, l.prototype.resume = function () { return !!a.prototype.resume.call(this) && (!this.previous && this._sources.length ? (this.prepareNextSource(), !0) : this.previous || this._sources.length || this.generatedError ? void 0 : (this.end(), !0)) }, l.prototype.error = function (e) { var t = this._sources; if (!a.prototype.error.call(this, e)) return !1; for (var r = 0; r < t.length; r++)try { t[r].error(e) } catch (e) { } return !0 }, l.prototype.lock = function () { a.prototype.lock.call(this); for (var e = this._sources, t = 0; t < e.length; t++)e[t].lock() }, t.exports = l }, { "../crc32": 4, "../signature": 23, "../stream/GenericWorker": 28, "../utf8": 31, "../utils": 32 }], 9: [function (e, t, r) { "use strict"; var n = e("../compressions"), i = e("./ZipFileWorker"); r.generateWorker = function (e, t, r) { var s = new i(t.streamFiles, r, t.platform, t.encodeFileName), a = 0; try { e.forEach((function (e, r) { a++; var i = function (e, t) { var r = e || t, i = n[r]; if (!i) throw new Error(r + " is not a valid compression method !"); return i }(r.options.compression, t.compression), o = r.options.compressionOptions || t.compressionOptions || {}, h = r.dir, u = r.date; r._compressWorker(i, o).withStreamInfo("file", { name: e, dir: h, date: u, comment: r.comment || "", unixPermissions: r.unixPermissions, dosPermissions: r.dosPermissions }).pipe(s) })), s.entriesCount = a } catch (e) { s.error(e) } return s } }, { "../compressions": 3, "./ZipFileWorker": 8 }], 10: [function (e, t, r) { "use strict"; function n() { if (!(this instanceof n)) return new n; if (arguments.length) throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide."); this.files = Object.create(null), this.comment = null, this.root = "", this.clone = function () { var e = new n; for (var t in this) "function" != typeof this[t] && (e[t] = this[t]); return e } } (n.prototype = e("./object")).loadAsync = e("./load"), n.support = e("./support"), n.defaults = e("./defaults"), n.version = "3.10.1", n.loadAsync = function (e, t) { return (new n).loadAsync(e, t) }, n.external = e("./external"), t.exports = n }, { "./defaults": 5, "./external": 6, "./load": 11, "./object": 15, "./support": 30 }], 11: [function (e, t, r) { "use strict"; var n = e("./utils"), i = e("./external"), s = e("./utf8"), a = e("./zipEntries"), o = e("./stream/Crc32Probe"), h = e("./nodejsUtils"); function u(e) { return new i.Promise((function (t, r) { var n = e.decompressed.getContentWorker().pipe(new o); n.on("error", (function (e) { r(e) })).on("end", (function () { n.streamInfo.crc32 !== e.decompressed.crc32 ? r(new Error("Corrupted zip : CRC32 mismatch")) : t() })).resume() })) } t.exports = function (e, t) { var r = this; return t = n.extend(t || {}, { base64: !1, checkCRC32: !1, optimizedBinaryString: !1, createFolders: !1, decodeFileName: s.utf8decode }), h.isNode && h.isStream(e) ? i.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")) : n.prepareContent("the loaded zip file", e, !0, t.optimizedBinaryString, t.base64).then((function (e) { var r = new a(t); return r.load(e), r })).then((function (e) { var r = [i.Promise.resolve(e)], n = e.files; if (t.checkCRC32) for (var s = 0; s < n.length; s++)r.push(u(n[s])); return i.Promise.all(r) })).then((function (e) { for (var i = e.shift(), s = i.files, a = 0; a < s.length; a++) { var o = s[a], h = o.fileNameStr, u = n.resolve(o.fileNameStr); r.file(u, o.decompressed, { binary: !0, optimizedBinaryString: !0, date: o.date, dir: o.dir, comment: o.fileCommentStr.length ? o.fileCommentStr : null, unixPermissions: o.unixPermissions, dosPermissions: o.dosPermissions, createFolders: t.createFolders }), o.dir || (r.file(u).unsafeOriginalName = h) } return i.zipComment.length && (r.comment = i.zipComment), r })) } }, { "./external": 6, "./nodejsUtils": 14, "./stream/Crc32Probe": 25, "./utf8": 31, "./utils": 32, "./zipEntries": 33 }], 12: [function (e, t, r) { "use strict"; var n = e("../utils"), i = e("../stream/GenericWorker"); function s(e, t) { i.call(this, "Nodejs stream input adapter for " + e), this._upstreamEnded = !1, this._bindStream(t) } n.inherits(s, i), s.prototype._bindStream = function (e) { var t = this; (this._stream = e).pause(), e.on("data", (function (e) { t.push({ data: e, meta: { percent: 0 } }) })).on("error", (function (e) { t.isPaused ? this.generatedError = e : t.error(e) })).on("end", (function () { t.isPaused ? t._upstreamEnded = !0 : t.end() })) }, s.prototype.pause = function () { return !!i.prototype.pause.call(this) && (this._stream.pause(), !0) }, s.prototype.resume = function () { return !!i.prototype.resume.call(this) && (this._upstreamEnded ? this.end() : this._stream.resume(), !0) }, t.exports = s }, { "../stream/GenericWorker": 28, "../utils": 32 }], 13: [function (e, t, r) { "use strict"; var n = e("readable-stream").Readable; function i(e, t, r) { n.call(this, t), this._helper = e; var i = this; e.on("data", (function (e, t) { i.push(e) || i._helper.pause(), r && r(t) })).on("error", (function (e) { i.emit("error", e) })).on("end", (function () { i.push(null) })) } e("../utils").inherits(i, n), i.prototype._read = function () { this._helper.resume() }, t.exports = i }, { "../utils": 32, "readable-stream": 16 }], 14: [function (e, t, r) { "use strict"; t.exports = { isNode: "undefined" != typeof Buffer, newBufferFrom: function (e, t) { if (Buffer.from && Buffer.from !== Uint8Array.from) return Buffer.from(e, t); if ("number" == typeof e) throw new Error('The "data" argument must not be a number'); return new Buffer(e, t) }, allocBuffer: function (e) { if (Buffer.alloc) return Buffer.alloc(e); var t = new Buffer(e); return t.fill(0), t }, isBuffer: function (e) { return Buffer.isBuffer(e) }, isStream: function (e) { return e && "function" == typeof e.on && "function" == typeof e.pause && "function" == typeof e.resume } } }, {}], 15: [function (e, t, r) { "use strict"; function n(e, t, r) { var n, i = s.getTypeOf(t), o = s.extend(r || {}, h); o.date = o.date || new Date, null !== o.compression && (o.compression = o.compression.toUpperCase()), "string" == typeof o.unixPermissions && (o.unixPermissions = parseInt(o.unixPermissions, 8)), o.unixPermissions && 16384 & o.unixPermissions && (o.dir = !0), o.dosPermissions && 16 & o.dosPermissions && (o.dir = !0), o.dir && (e = m(e)), o.createFolders && (n = p(e)) && _.call(this, n, !0); var f, g = "string" === i && !1 === o.binary && !1 === o.base64; r && void 0 !== r.binary || (o.binary = !g), (t instanceof u && 0 === t.uncompressedSize || o.dir || !t || 0 === t.length) && (o.base64 = !1, o.binary = !0, t = "", o.compression = "STORE", i = "string"), f = t instanceof u || t instanceof a ? t : c.isNode && c.isStream(t) ? new d(e, t) : s.prepareContent(e, t, o.binary, o.optimizedBinaryString, o.base64); var b = new l(e, f, o); this.files[e] = b } var i = e("./utf8"), s = e("./utils"), a = e("./stream/GenericWorker"), o = e("./stream/StreamHelper"), h = e("./defaults"), u = e("./compressedObject"), l = e("./zipObject"), f = e("./generate"), c = e("./nodejsUtils"), d = e("./nodejs/NodejsStreamInputAdapter"), p = function (e) { "/" === e.slice(-1) && (e = e.substring(0, e.length - 1)); var t = e.lastIndexOf("/"); return 0 < t ? e.substring(0, t) : "" }, m = function (e) { return "/" !== e.slice(-1) && (e += "/"), e }, _ = function (e, t) { return t = void 0 !== t ? t : h.createFolders, e = m(e), this.files[e] || n.call(this, e, null, { dir: !0, createFolders: t }), this.files[e] }; function g(e) { return "[object RegExp]" === Object.prototype.toString.call(e) } var b = { load: function () { throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.") }, forEach: function (e) { var t, r, n; for (t in this.files) n = this.files[t], (r = t.slice(this.root.length, t.length)) && t.slice(0, this.root.length) === this.root && e(r, n) }, filter: function (e) { var t = []; return this.forEach((function (r, n) { e(r, n) && t.push(n) })), t }, file: function (e, t, r) { if (1 !== arguments.length) return e = this.root + e, n.call(this, e, t, r), this; if (g(e)) { var i = e; return this.filter((function (e, t) { return !t.dir && i.test(e) })) } var s = this.files[this.root + e]; return s && !s.dir ? s : null }, folder: function (e) { if (!e) return this; if (g(e)) return this.filter((function (t, r) { return r.dir && e.test(t) })); var t = this.root + e, r = _.call(this, t), n = this.clone(); return n.root = r.name, n }, remove: function (e) { e = this.root + e; var t = this.files[e]; if (t || ("/" !== e.slice(-1) && (e += "/"), t = this.files[e]), t && !t.dir) delete this.files[e]; else for (var r = this.filter((function (t, r) { return r.name.slice(0, e.length) === e })), n = 0; n < r.length; n++)delete this.files[r[n].name]; return this }, generate: function () { throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.") }, generateInternalStream: function (e) { var t, r = {}; try { if ((r = s.extend(e || {}, { streamFiles: !1, compression: "STORE", compressionOptions: null, type: "", platform: "DOS", comment: null, mimeType: "application/zip", encodeFileName: i.utf8encode })).type = r.type.toLowerCase(), r.compression = r.compression.toUpperCase(), "binarystring" === r.type && (r.type = "string"), !r.type) throw new Error("No output type specified."); s.checkSupport(r.type), "darwin" !== r.platform && "freebsd" !== r.platform && "linux" !== r.platform && "sunos" !== r.platform || (r.platform = "UNIX"), "win32" === r.platform && (r.platform = "DOS"); var n = r.comment || this.comment || ""; t = f.generateWorker(this, r, n) } catch (e) { (t = new a("error")).error(e) } return new o(t, r.type || "string", r.mimeType) }, generateAsync: function (e, t) { return this.generateInternalStream(e).accumulate(t) }, generateNodeStream: function (e, t) { return (e = e || {}).type || (e.type = "nodebuffer"), this.generateInternalStream(e).toNodejsStream(t) } }; t.exports = b }, { "./compressedObject": 2, "./defaults": 5, "./generate": 9, "./nodejs/NodejsStreamInputAdapter": 12, "./nodejsUtils": 14, "./stream/GenericWorker": 28, "./stream/StreamHelper": 29, "./utf8": 31, "./utils": 32, "./zipObject": 35 }], 16: [function (e, t, r) { "use strict"; t.exports = e("stream") }, { stream: void 0 }], 17: [function (e, t, r) { "use strict"; var n = e("./DataReader"); function i(e) { n.call(this, e); for (var t = 0; t < this.data.length; t++)e[t] = 255 & e[t] } e("../utils").inherits(i, n), i.prototype.byteAt = function (e) { return this.data[this.zero + e] }, i.prototype.lastIndexOfSignature = function (e) { for (var t = e.charCodeAt(0), r = e.charCodeAt(1), n = e.charCodeAt(2), i = e.charCodeAt(3), s = this.length - 4; 0 <= s; --s)if (this.data[s] === t && this.data[s + 1] === r && this.data[s + 2] === n && this.data[s + 3] === i) return s - this.zero; return -1 }, i.prototype.readAndCheckSignature = function (e) { var t = e.charCodeAt(0), r = e.charCodeAt(1), n = e.charCodeAt(2), i = e.charCodeAt(3), s = this.readData(4); return t === s[0] && r === s[1] && n === s[2] && i === s[3] }, i.prototype.readData = function (e) { if (this.checkOffset(e), 0 === e) return []; var t = this.data.slice(this.zero + this.index, this.zero + this.index + e); return this.index += e, t }, t.exports = i }, { "../utils": 32, "./DataReader": 18 }], 18: [function (e, t, r) { "use strict"; var n = e("../utils"); function i(e) { this.data = e, this.length = e.length, this.index = 0, this.zero = 0 } i.prototype = { checkOffset: function (e) { this.checkIndex(this.index + e) }, checkIndex: function (e) { if (this.length < this.zero + e || e < 0) throw new Error("End of data reached (data length = " + this.length + ", asked index = " + e + "). Corrupted zip ?") }, setIndex: function (e) { this.checkIndex(e), this.index = e }, skip: function (e) { this.setIndex(this.index + e) }, byteAt: function () { }, readInt: function (e) { var t, r = 0; for (this.checkOffset(e), t = this.index + e - 1; t >= this.index; t--)r = (r << 8) + this.byteAt(t); return this.index += e, r }, readString: function (e) { return n.transformTo("string", this.readData(e)) }, readData: function () { }, lastIndexOfSignature: function () { }, readAndCheckSignature: function () { }, readDate: function () { var e = this.readInt(4); return new Date(Date.UTC(1980 + (e >> 25 & 127), (e >> 21 & 15) - 1, e >> 16 & 31, e >> 11 & 31, e >> 5 & 63, (31 & e) << 1)) } }, t.exports = i }, { "../utils": 32 }], 19: [function (e, t, r) { "use strict"; var n = e("./Uint8ArrayReader"); function i(e) { n.call(this, e) } e("../utils").inherits(i, n), i.prototype.readData = function (e) { this.checkOffset(e); var t = this.data.slice(this.zero + this.index, this.zero + this.index + e); return this.index += e, t }, t.exports = i }, { "../utils": 32, "./Uint8ArrayReader": 21 }], 20: [function (e, t, r) { "use strict"; var n = e("./DataReader"); function i(e) { n.call(this, e) } e("../utils").inherits(i, n), i.prototype.byteAt = function (e) { return this.data.charCodeAt(this.zero + e) }, i.prototype.lastIndexOfSignature = function (e) { return this.data.lastIndexOf(e) - this.zero }, i.prototype.readAndCheckSignature = function (e) { return e === this.readData(4) }, i.prototype.readData = function (e) { this.checkOffset(e); var t = this.data.slice(this.zero + this.index, this.zero + this.index + e); return this.index += e, t }, t.exports = i }, { "../utils": 32, "./DataReader": 18 }], 21: [function (e, t, r) { "use strict"; var n = e("./ArrayReader"); function i(e) { n.call(this, e) } e("../utils").inherits(i, n), i.prototype.readData = function (e) { if (this.checkOffset(e), 0 === e) return new Uint8Array(0); var t = this.data.subarray(this.zero + this.index, this.zero + this.index + e); return this.index += e, t }, t.exports = i }, { "../utils": 32, "./ArrayReader": 17 }], 22: [function (e, t, r) { "use strict"; var n = e("../utils"), i = e("../support"), s = e("./ArrayReader"), a = e("./StringReader"), o = e("./NodeBufferReader"), h = e("./Uint8ArrayReader"); t.exports = function (e) { var t = n.getTypeOf(e); return n.checkSupport(t), "string" !== t || i.uint8array ? "nodebuffer" === t ? new o(e) : i.uint8array ? new h(n.transformTo("uint8array", e)) : new s(n.transformTo("array", e)) : new a(e) } }, { "../support": 30, "../utils": 32, "./ArrayReader": 17, "./NodeBufferReader": 19, "./StringReader": 20, "./Uint8ArrayReader": 21 }], 23: [function (e, t, r) { "use strict"; r.LOCAL_FILE_HEADER = "PK", r.CENTRAL_FILE_HEADER = "PK", r.CENTRAL_DIRECTORY_END = "PK", r.ZIP64_CENTRAL_DIRECTORY_LOCATOR = "PK", r.ZIP64_CENTRAL_DIRECTORY_END = "PK", r.DATA_DESCRIPTOR = "PK\b" }, {}], 24: [function (e, t, r) { "use strict"; var n = e("./GenericWorker"), i = e("../utils"); function s(e) { n.call(this, "ConvertWorker to " + e), this.destType = e } i.inherits(s, n), s.prototype.processChunk = function (e) { this.push({ data: i.transformTo(this.destType, e.data), meta: e.meta }) }, t.exports = s }, { "../utils": 32, "./GenericWorker": 28 }], 25: [function (e, t, r) { "use strict"; var n = e("./GenericWorker"), i = e("../crc32"); function s() { n.call(this, "Crc32Probe"), this.withStreamInfo("crc32", 0) } e("../utils").inherits(s, n), s.prototype.processChunk = function (e) { this.streamInfo.crc32 = i(e.data, this.streamInfo.crc32 || 0), this.push(e) }, t.exports = s }, { "../crc32": 4, "../utils": 32, "./GenericWorker": 28 }], 26: [function (e, t, r) { "use strict"; var n = e("../utils"), i = e("./GenericWorker"); function s(e) { i.call(this, "DataLengthProbe for " + e), this.propName = e, this.withStreamInfo(e, 0) } n.inherits(s, i), s.prototype.processChunk = function (e) { if (e) { var t = this.streamInfo[this.propName] || 0; this.streamInfo[this.propName] = t + e.data.length } i.prototype.processChunk.call(this, e) }, t.exports = s }, { "../utils": 32, "./GenericWorker": 28 }], 27: [function (e, t, r) { "use strict"; var n = e("../utils"), i = e("./GenericWorker"); function s(e) { i.call(this, "DataWorker"); var t = this; this.dataIsReady = !1, this.index = 0, this.max = 0, this.data = null, this.type = "", this._tickScheduled = !1, e.then((function (e) { t.dataIsReady = !0, t.data = e, t.max = e && e.length || 0, t.type = n.getTypeOf(e), t.isPaused || t._tickAndRepeat() }), (function (e) { t.error(e) })) } n.inherits(s, i), s.prototype.cleanUp = function () { i.prototype.cleanUp.call(this), this.data = null }, s.prototype.resume = function () { return !!i.prototype.resume.call(this) && (!this._tickScheduled && this.dataIsReady && (this._tickScheduled = !0, n.delay(this._tickAndRepeat, [], this)), !0) }, s.prototype._tickAndRepeat = function () { this._tickScheduled = !1, this.isPaused || this.isFinished || (this._tick(), this.isFinished || (n.delay(this._tickAndRepeat, [], this), this._tickScheduled = !0)) }, s.prototype._tick = function () { if (this.isPaused || this.isFinished) return !1; var e = null, t = Math.min(this.max, this.index + 16384); if (this.index >= this.max) return this.end(); switch (this.type) { case "string": e = this.data.substring(this.index, t); break; case "uint8array": e = this.data.subarray(this.index, t); break; case "array": case "nodebuffer": e = this.data.slice(this.index, t) }return this.index = t, this.push({ data: e, meta: { percent: this.max ? this.index / this.max * 100 : 0 } }) }, t.exports = s }, { "../utils": 32, "./GenericWorker": 28 }], 28: [function (e, t, r) { "use strict"; function n(e) { this.name = e || "default", this.streamInfo = {}, this.generatedError = null, this.extraStreamInfo = {}, this.isPaused = !0, this.isFinished = !1, this.isLocked = !1, this._listeners = { data: [], end: [], error: [] }, this.previous = null } n.prototype = { push: function (e) { this.emit("data", e) }, end: function () { if (this.isFinished) return !1; this.flush(); try { this.emit("end"), this.cleanUp(), this.isFinished = !0 } catch (e) { this.emit("error", e) } return !0 }, error: function (e) { return !this.isFinished && (this.isPaused ? this.generatedError = e : (this.isFinished = !0, this.emit("error", e), this.previous && this.previous.error(e), this.cleanUp()), !0) }, on: function (e, t) { return this._listeners[e].push(t), this }, cleanUp: function () { this.streamInfo = this.generatedError = this.extraStreamInfo = null, this._listeners = [] }, emit: function (e, t) { if (this._listeners[e]) for (var r = 0; r < this._listeners[e].length; r++)this._listeners[e][r].call(this, t) }, pipe: function (e) { return e.registerPrevious(this) }, registerPrevious: function (e) { if (this.isLocked) throw new Error("The stream '" + this + "' has already been used."); this.streamInfo = e.streamInfo, this.mergeStreamInfo(), this.previous = e; var t = this; return e.on("data", (function (e) { t.processChunk(e) })), e.on("end", (function () { t.end() })), e.on("error", (function (e) { t.error(e) })), this }, pause: function () { return !this.isPaused && !this.isFinished && (this.isPaused = !0, this.previous && this.previous.pause(), !0) }, resume: function () { if (!this.isPaused || this.isFinished) return !1; var e = this.isPaused = !1; return this.generatedError && (this.error(this.generatedError), e = !0), this.previous && this.previous.resume(), !e }, flush: function () { }, processChunk: function (e) { this.push(e) }, withStreamInfo: function (e, t) { return this.extraStreamInfo[e] = t, this.mergeStreamInfo(), this }, mergeStreamInfo: function () { for (var e in this.extraStreamInfo) Object.prototype.hasOwnProperty.call(this.extraStreamInfo, e) && (this.streamInfo[e] = this.extraStreamInfo[e]) }, lock: function () { if (this.isLocked) throw new Error("The stream '" + this + "' has already been used."); this.isLocked = !0, this.previous && this.previous.lock() }, toString: function () { var e = "Worker " + this.name; return this.previous ? this.previous + " -> " + e : e } }, t.exports = n }, {}], 29: [function (e, t, r) { "use strict"; var n = e("../utils"), i = e("./ConvertWorker"), s = e("./GenericWorker"), a = e("../base64"), o = e("../support"), h = e("../external"), u = null; if (o.nodestream) try { u = e("../nodejs/NodejsStreamOutputAdapter") } catch (e) { } function l(e, t, r) { var a = t; switch (t) { case "blob": case "arraybuffer": a = "uint8array"; break; case "base64": a = "string" }try { this._internalType = a, this._outputType = t, this._mimeType = r, n.checkSupport(a), this._worker = e.pipe(new i(a)), e.lock() } catch (e) { this._worker = new s("error"), this._worker.error(e) } } l.prototype = { accumulate: function (e) { return function (e, t) { return new h.Promise((function (r, i) { var s = [], o = e._internalType, h = e._outputType, u = e._mimeType; e.on("data", (function (e, r) { s.push(e), t && t(r) })).on("error", (function (e) { s = [], i(e) })).on("end", (function () { try { var e = function (e, t, r) { switch (e) { case "blob": return n.newBlob(n.transformTo("arraybuffer", t), r); case "base64": return a.encode(t); default: return n.transformTo(e, t) } }(h, function (e, t) { var r, n = 0, i = null, s = 0; for (r = 0; r < t.length; r++)s += t[r].length; switch (e) { case "string": return t.join(""); case "array": return Array.prototype.concat.apply([], t); case "uint8array": for (i = new Uint8Array(s), r = 0; r < t.length; r++)i.set(t[r], n), n += t[r].length; return i; case "nodebuffer": return Buffer.concat(t); default: throw new Error("concat : unsupported type '" + e + "'") } }(o, s), u); r(e) } catch (e) { i(e) } s = [] })).resume() })) }(this, e) }, on: function (e, t) { var r = this; return "data" === e ? this._worker.on(e, (function (e) { t.call(r, e.data, e.meta) })) : this._worker.on(e, (function () { n.delay(t, arguments, r) })), this }, resume: function () { return n.delay(this._worker.resume, [], this._worker), this }, pause: function () { return this._worker.pause(), this }, toNodejsStream: function (e) { if (n.checkSupport("nodestream"), "nodebuffer" !== this._outputType) throw new Error(this._outputType + " is not supported by this method"); return new u(this, { objectMode: "nodebuffer" !== this._outputType }, e) } }, t.exports = l }, { "../base64": 1, "../external": 6, "../nodejs/NodejsStreamOutputAdapter": 13, "../support": 30, "../utils": 32, "./ConvertWorker": 24, "./GenericWorker": 28 }], 30: [function (e, t, r) { "use strict"; if (r.base64 = !0, r.array = !0, r.string = !0, r.arraybuffer = "undefined" != typeof ArrayBuffer && "undefined" != typeof Uint8Array, r.nodebuffer = "undefined" != typeof Buffer, r.uint8array = "undefined" != typeof Uint8Array, "undefined" == typeof ArrayBuffer) r.blob = !1; else { var n = new ArrayBuffer(0); try { r.blob = 0 === new Blob([n], { type: "application/zip" }).size } catch (e) { try { var i = new (self.BlobBuilder || self.WebKitBlobBuilder || self.MozBlobBuilder || self.MSBlobBuilder); i.append(n), r.blob = 0 === i.getBlob("application/zip").size } catch (e) { r.blob = !1 } } } try { r.nodestream = !!e("readable-stream").Readable } catch (e) { r.nodestream = !1 } }, { "readable-stream": 16 }], 31: [function (e, t, r) { "use strict"; for (var n = e("./utils"), i = e("./support"), s = e("./nodejsUtils"), a = e("./stream/GenericWorker"), o = new Array(256), h = 0; h < 256; h++)o[h] = 252 <= h ? 6 : 248 <= h ? 5 : 240 <= h ? 4 : 224 <= h ? 3 : 192 <= h ? 2 : 1; function u() { a.call(this, "utf-8 decode"), this.leftOver = null } function l() { a.call(this, "utf-8 encode") } o[254] = o[254] = 1, r.utf8encode = function (e) { return i.nodebuffer ? s.newBufferFrom(e, "utf-8") : function (e) { var t, r, n, s, a, o = e.length, h = 0; for (s = 0; s < o; s++)55296 == (64512 & (r = e.charCodeAt(s))) && s + 1 < o && 56320 == (64512 & (n = e.charCodeAt(s + 1))) && (r = 65536 + (r - 55296 << 10) + (n - 56320), s++), h += r < 128 ? 1 : r < 2048 ? 2 : r < 65536 ? 3 : 4; for (t = i.uint8array ? new Uint8Array(h) : new Array(h), s = a = 0; a < h; s++)55296 == (64512 & (r = e.charCodeAt(s))) && s + 1 < o && 56320 == (64512 & (n = e.charCodeAt(s + 1))) && (r = 65536 + (r - 55296 << 10) + (n - 56320), s++), r < 128 ? t[a++] = r : (r < 2048 ? t[a++] = 192 | r >>> 6 : (r < 65536 ? t[a++] = 224 | r >>> 12 : (t[a++] = 240 | r >>> 18, t[a++] = 128 | r >>> 12 & 63), t[a++] = 128 | r >>> 6 & 63), t[a++] = 128 | 63 & r); return t }(e) }, r.utf8decode = function (e) { return i.nodebuffer ? n.transformTo("nodebuffer", e).toString("utf-8") : function (e) { var t, r, i, s, a = e.length, h = new Array(2 * a); for (t = r = 0; t < a;)if ((i = e[t++]) < 128) h[r++] = i; else if (4 < (s = o[i])) h[r++] = 65533, t += s - 1; else { for (i &= 2 === s ? 31 : 3 === s ? 15 : 7; 1 < s && t < a;)i = i << 6 | 63 & e[t++], s--; 1 < s ? h[r++] = 65533 : i < 65536 ? h[r++] = i : (i -= 65536, h[r++] = 55296 | i >> 10 & 1023, h[r++] = 56320 | 1023 & i) } return h.length !== r && (h.subarray ? h = h.subarray(0, r) : h.length = r), n.applyFromCharCode(h) }(e = n.transformTo(i.uint8array ? "uint8array" : "array", e)) }, n.inherits(u, a), u.prototype.processChunk = function (e) { var t = n.transformTo(i.uint8array ? "uint8array" : "array", e.data); if (this.leftOver && this.leftOver.length) { if (i.uint8array) { var s = t; (t = new Uint8Array(s.length + this.leftOver.length)).set(this.leftOver, 0), t.set(s, this.leftOver.length) } else t = this.leftOver.concat(t); this.leftOver = null } var a = function (e, t) { var r; for ((t = t || e.length) > e.length && (t = e.length), r = t - 1; 0 <= r && 128 == (192 & e[r]);)r--; return r < 0 || 0 === r ? t : r + o[e[r]] > t ? r : t }(t), h = t; a !== t.length && (i.uint8array ? (h = t.subarray(0, a), this.leftOver = t.subarray(a, t.length)) : (h = t.slice(0, a), this.leftOver = t.slice(a, t.length))), this.push({ data: r.utf8decode(h), meta: e.meta }) }, u.prototype.flush = function () { this.leftOver && this.leftOver.length && (this.push({ data: r.utf8decode(this.leftOver), meta: {} }), this.leftOver = null) }, r.Utf8DecodeWorker = u, n.inherits(l, a), l.prototype.processChunk = function (e) { this.push({ data: r.utf8encode(e.data), meta: e.meta }) }, r.Utf8EncodeWorker = l }, { "./nodejsUtils": 14, "./stream/GenericWorker": 28, "./support": 30, "./utils": 32 }], 32: [function (e, t, r) { "use strict"; var n = e("./support"), i = e("./base64"), s = e("./nodejsUtils"), a = e("./external"); function o(e) { return e } function h(e, t) { for (var r = 0; r < e.length; ++r)t[r] = 255 & e.charCodeAt(r); return t } e("setimmediate"), r.newBlob = function (e, t) { r.checkSupport("blob"); try { return new Blob([e], { type: t }) } catch (r) { try { var n = new (self.BlobBuilder || self.WebKitBlobBuilder || self.MozBlobBuilder || self.MSBlobBuilder); return n.append(e), n.getBlob(t) } catch (e) { throw new Error("Bug : can't construct the Blob.") } } }; var u = { stringifyByChunk: function (e, t, r) { var n = [], i = 0, s = e.length; if (s <= r) return String.fromCharCode.apply(null, e); for (; i < s;)"array" === t || "nodebuffer" === t ? n.push(String.fromCharCode.apply(null, e.slice(i, Math.min(i + r, s)))) : n.push(String.fromCharCode.apply(null, e.subarray(i, Math.min(i + r, s)))), i += r; return n.join("") }, stringifyByChar: function (e) { for (var t = "", r = 0; r < e.length; r++)t += String.fromCharCode(e[r]); return t }, applyCanBeUsed: { uint8array: function () { try { return n.uint8array && 1 === String.fromCharCode.apply(null, new Uint8Array(1)).length } catch (e) { return !1 } }(), nodebuffer: function () { try { return n.nodebuffer && 1 === String.fromCharCode.apply(null, s.allocBuffer(1)).length } catch (e) { return !1 } }() } }; function l(e) { var t = 65536, n = r.getTypeOf(e), i = !0; if ("uint8array" === n ? i = u.applyCanBeUsed.uint8array : "nodebuffer" === n && (i = u.applyCanBeUsed.nodebuffer), i) for (; 1 < t;)try { return u.stringifyByChunk(e, n, t) } catch (e) { t = Math.floor(t / 2) } return u.stringifyByChar(e) } function f(e, t) { for (var r = 0; r < e.length; r++)t[r] = e[r]; return t } r.applyFromCharCode = l; var c = {}; c.string = { string: o, array: function (e) { return h(e, new Array(e.length)) }, arraybuffer: function (e) { return c.string.uint8array(e).buffer }, uint8array: function (e) { return h(e, new Uint8Array(e.length)) }, nodebuffer: function (e) { return h(e, s.allocBuffer(e.length)) } }, c.array = { string: l, array: o, arraybuffer: function (e) { return new Uint8Array(e).buffer }, uint8array: function (e) { return new Uint8Array(e) }, nodebuffer: function (e) { return s.newBufferFrom(e) } }, c.arraybuffer = { string: function (e) { return l(new Uint8Array(e)) }, array: function (e) { return f(new Uint8Array(e), new Array(e.byteLength)) }, arraybuffer: o, uint8array: function (e) { return new Uint8Array(e) }, nodebuffer: function (e) { return s.newBufferFrom(new Uint8Array(e)) } }, c.uint8array = { string: l, array: function (e) { return f(e, new Array(e.length)) }, arraybuffer: function (e) { return e.buffer }, uint8array: o, nodebuffer: function (e) { return s.newBufferFrom(e) } }, c.nodebuffer = { string: l, array: function (e) { return f(e, new Array(e.length)) }, arraybuffer: function (e) { return c.nodebuffer.uint8array(e).buffer }, uint8array: function (e) { return f(e, new Uint8Array(e.length)) }, nodebuffer: o }, r.transformTo = function (e, t) { if (t = t || "", !e) return t; r.checkSupport(e); var n = r.getTypeOf(t); return c[n][e](t) }, r.resolve = function (e) { for (var t = e.split("/"), r = [], n = 0; n < t.length; n++) { var i = t[n]; "." === i || "" === i && 0 !== n && n !== t.length - 1 || (".." === i ? r.pop() : r.push(i)) } return r.join("/") }, r.getTypeOf = function (e) { return "string" == typeof e ? "string" : "[object Array]" === Object.prototype.toString.call(e) ? "array" : n.nodebuffer && s.isBuffer(e) ? "nodebuffer" : n.uint8array && e instanceof Uint8Array ? "uint8array" : n.arraybuffer && e instanceof ArrayBuffer ? "arraybuffer" : void 0 }, r.checkSupport = function (e) { if (!n[e.toLowerCase()]) throw new Error(e + " is not supported by this platform") }, r.MAX_VALUE_16BITS = 65535, r.MAX_VALUE_32BITS = -1, r.pretty = function (e) { var t, r, n = ""; for (r = 0; r < (e || "").length; r++)n += "\\x" + ((t = e.charCodeAt(r)) < 16 ? "0" : "") + t.toString(16).toUpperCase(); return n }, r.delay = function (e, t, r) { setImmediate((function () { e.apply(r || null, t || []) })) }, r.inherits = function (e, t) { function r() { } r.prototype = t.prototype, e.prototype = new r }, r.extend = function () { var e, t, r = {}; for (e = 0; e < arguments.length; e++)for (t in arguments[e]) Object.prototype.hasOwnProperty.call(arguments[e], t) && void 0 === r[t] && (r[t] = arguments[e][t]); return r }, r.prepareContent = function (e, t, s, o, u) { return a.Promise.resolve(t).then((function (e) { return n.blob && (e instanceof Blob || -1 !== ["[object File]", "[object Blob]"].indexOf(Object.prototype.toString.call(e))) && "undefined" != typeof FileReader ? new a.Promise((function (t, r) { var n = new FileReader; n.onload = function (e) { t(e.target.result) }, n.onerror = function (e) { r(e.target.error) }, n.readAsArrayBuffer(e) })) : e })).then((function (t) { var l = r.getTypeOf(t); return l ? ("arraybuffer" === l ? t = r.transformTo("uint8array", t) : "string" === l && (u ? t = i.decode(t) : s && !0 !== o && (t = function (e) { return h(e, n.uint8array ? new Uint8Array(e.length) : new Array(e.length)) }(t))), t) : a.Promise.reject(new Error("Can't read the data of '" + e + "'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?")) })) } }, { "./base64": 1, "./external": 6, "./nodejsUtils": 14, "./support": 30, setimmediate: 54 }], 33: [function (e, t, r) { "use strict"; var n = e("./reader/readerFor"), i = e("./utils"), s = e("./signature"), a = e("./zipEntry"), o = e("./support"); function h(e) { this.files = [], this.loadOptions = e } h.prototype = { checkSignature: function (e) { if (!this.reader.readAndCheckSignature(e)) { this.reader.index -= 4; var t = this.reader.readString(4); throw new Error("Corrupted zip or bug: unexpected signature (" + i.pretty(t) + ", expected " + i.pretty(e) + ")") } }, isSignature: function (e, t) { var r = this.reader.index; this.reader.setIndex(e); var n = this.reader.readString(4) === t; return this.reader.setIndex(r), n }, readBlockEndOfCentral: function () { this.diskNumber = this.reader.readInt(2), this.diskWithCentralDirStart = this.reader.readInt(2), this.centralDirRecordsOnThisDisk = this.reader.readInt(2), this.centralDirRecords = this.reader.readInt(2), this.centralDirSize = this.reader.readInt(4), this.centralDirOffset = this.reader.readInt(4), this.zipCommentLength = this.reader.readInt(2); var e = this.reader.readData(this.zipCommentLength), t = o.uint8array ? "uint8array" : "array", r = i.transformTo(t, e); this.zipComment = this.loadOptions.decodeFileName(r) }, readBlockZip64EndOfCentral: function () { this.zip64EndOfCentralSize = this.reader.readInt(8), this.reader.skip(4), this.diskNumber = this.reader.readInt(4), this.diskWithCentralDirStart = this.reader.readInt(4), this.centralDirRecordsOnThisDisk = this.reader.readInt(8), this.centralDirRecords = this.reader.readInt(8), this.centralDirSize = this.reader.readInt(8), this.centralDirOffset = this.reader.readInt(8), this.zip64ExtensibleData = {}; for (var e, t, r, n = this.zip64EndOfCentralSize - 44; 0 < n;)e = this.reader.readInt(2), t = this.reader.readInt(4), r = this.reader.readData(t), this.zip64ExtensibleData[e] = { id: e, length: t, value: r } }, readBlockZip64EndOfCentralLocator: function () { if (this.diskWithZip64CentralDirStart = this.reader.readInt(4), this.relativeOffsetEndOfZip64CentralDir = this.reader.readInt(8), this.disksCount = this.reader.readInt(4), 1 < this.disksCount) throw new Error("Multi-volumes zip are not supported") }, readLocalFiles: function () { var e, t; for (e = 0; e < this.files.length; e++)t = this.files[e], this.reader.setIndex(t.localHeaderOffset), this.checkSignature(s.LOCAL_FILE_HEADER), t.readLocalPart(this.reader), t.handleUTF8(), t.processAttributes() }, readCentralDir: function () { var e; for (this.reader.setIndex(this.centralDirOffset); this.reader.readAndCheckSignature(s.CENTRAL_FILE_HEADER);)(e = new a({ zip64: this.zip64 }, this.loadOptions)).readCentralPart(this.reader), this.files.push(e); if (this.centralDirRecords !== this.files.length && 0 !== this.centralDirRecords && 0 === this.files.length) throw new Error("Corrupted zip or bug: expected " + this.centralDirRecords + " records in central dir, got " + this.files.length) }, readEndOfCentral: function () { var e = this.reader.lastIndexOfSignature(s.CENTRAL_DIRECTORY_END); if (e < 0) throw this.isSignature(0, s.LOCAL_FILE_HEADER) ? new Error("Corrupted zip: can't find end of central directory") : new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html"); this.reader.setIndex(e); var t = e; if (this.checkSignature(s.CENTRAL_DIRECTORY_END), this.readBlockEndOfCentral(), this.diskNumber === i.MAX_VALUE_16BITS || this.diskWithCentralDirStart === i.MAX_VALUE_16BITS || this.centralDirRecordsOnThisDisk === i.MAX_VALUE_16BITS || this.centralDirRecords === i.MAX_VALUE_16BITS || this.centralDirSize === i.MAX_VALUE_32BITS || this.centralDirOffset === i.MAX_VALUE_32BITS) { if (this.zip64 = !0, (e = this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR)) < 0) throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator"); if (this.reader.setIndex(e), this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR), this.readBlockZip64EndOfCentralLocator(), !this.isSignature(this.relativeOffsetEndOfZip64CentralDir, s.ZIP64_CENTRAL_DIRECTORY_END) && (this.relativeOffsetEndOfZip64CentralDir = this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_END), this.relativeOffsetEndOfZip64CentralDir < 0)) throw new Error("Corrupted zip: can't find the ZIP64 end of central directory"); this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir), this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_END), this.readBlockZip64EndOfCentral() } var r = this.centralDirOffset + this.centralDirSize; this.zip64 && (r += 20, r += 12 + this.zip64EndOfCentralSize); var n = t - r; if (0 < n) this.isSignature(t, s.CENTRAL_FILE_HEADER) || (this.reader.zero = n); else if (n < 0) throw new Error("Corrupted zip: missing " + Math.abs(n) + " bytes.") }, prepareReader: function (e) { this.reader = n(e) }, load: function (e) { this.prepareReader(e), this.readEndOfCentral(), this.readCentralDir(), this.readLocalFiles() } }, t.exports = h }, { "./reader/readerFor": 22, "./signature": 23, "./support": 30, "./utils": 32, "./zipEntry": 34 }], 34: [function (e, t, r) { "use strict"; var n = e("./reader/readerFor"), i = e("./utils"), s = e("./compressedObject"), a = e("./crc32"), o = e("./utf8"), h = e("./compressions"), u = e("./support"); function l(e, t) { this.options = e, this.loadOptions = t } l.prototype = { isEncrypted: function () { return !(1 & ~this.bitFlag) }, useUTF8: function () { return !(2048 & ~this.bitFlag) }, readLocalPart: function (e) { var t, r; if (e.skip(22), this.fileNameLength = e.readInt(2), r = e.readInt(2), this.fileName = e.readData(this.fileNameLength), e.skip(r), -1 === this.compressedSize || -1 === this.uncompressedSize) throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)"); if (null === (t = function (e) { for (var t in h) if (Object.prototype.hasOwnProperty.call(h, t) && h[t].magic === e) return h[t]; return null }(this.compressionMethod))) throw new Error("Corrupted zip : compression " + i.pretty(this.compressionMethod) + " unknown (inner file : " + i.transformTo("string", this.fileName) + ")"); this.decompressed = new s(this.compressedSize, this.uncompressedSize, this.crc32, t, e.readData(this.compressedSize)) }, readCentralPart: function (e) { this.versionMadeBy = e.readInt(2), e.skip(2), this.bitFlag = e.readInt(2), this.compressionMethod = e.readString(2), this.date = e.readDate(), this.crc32 = e.readInt(4), this.compressedSize = e.readInt(4), this.uncompressedSize = e.readInt(4); var t = e.readInt(2); if (this.extraFieldsLength = e.readInt(2), this.fileCommentLength = e.readInt(2), this.diskNumberStart = e.readInt(2), this.internalFileAttributes = e.readInt(2), this.externalFileAttributes = e.readInt(4), this.localHeaderOffset = e.readInt(4), this.isEncrypted()) throw new Error("Encrypted zip are not supported"); e.skip(t), this.readExtraFields(e), this.parseZIP64ExtraField(e), this.fileComment = e.readData(this.fileCommentLength) }, processAttributes: function () { this.unixPermissions = null, this.dosPermissions = null; var e = this.versionMadeBy >> 8; this.dir = !!(16 & this.externalFileAttributes), 0 == e && (this.dosPermissions = 63 & this.externalFileAttributes), 3 == e && (this.unixPermissions = this.externalFileAttributes >> 16 & 65535), this.dir || "/" !== this.fileNameStr.slice(-1) || (this.dir = !0) }, parseZIP64ExtraField: function () { if (this.extraFields[1]) { var e = n(this.extraFields[1].value); this.uncompressedSize === i.MAX_VALUE_32BITS && (this.uncompressedSize = e.readInt(8)), this.compressedSize === i.MAX_VALUE_32BITS && (this.compressedSize = e.readInt(8)), this.localHeaderOffset === i.MAX_VALUE_32BITS && (this.localHeaderOffset = e.readInt(8)), this.diskNumberStart === i.MAX_VALUE_32BITS && (this.diskNumberStart = e.readInt(4)) } }, readExtraFields: function (e) { var t, r, n, i = e.index + this.extraFieldsLength; for (this.extraFields || (this.extraFields = {}); e.index + 4 < i;)t = e.readInt(2), r = e.readInt(2), n = e.readData(r), this.extraFields[t] = { id: t, length: r, value: n }; e.setIndex(i) }, handleUTF8: function () { var e = u.uint8array ? "uint8array" : "array"; if (this.useUTF8()) this.fileNameStr = o.utf8decode(this.fileName), this.fileCommentStr = o.utf8decode(this.fileComment); else { var t = this.findExtraFieldUnicodePath(); if (null !== t) this.fileNameStr = t; else { var r = i.transformTo(e, this.fileName); this.fileNameStr = this.loadOptions.decodeFileName(r) } var n = this.findExtraFieldUnicodeComment(); if (null !== n) this.fileCommentStr = n; else { var s = i.transformTo(e, this.fileComment); this.fileCommentStr = this.loadOptions.decodeFileName(s) } } }, findExtraFieldUnicodePath: function () { var e = this.extraFields[28789]; if (e) { var t = n(e.value); return 1 !== t.readInt(1) || a(this.fileName) !== t.readInt(4) ? null : o.utf8decode(t.readData(e.length - 5)) } return null }, findExtraFieldUnicodeComment: function () { var e = this.extraFields[25461]; if (e) { var t = n(e.value); return 1 !== t.readInt(1) || a(this.fileComment) !== t.readInt(4) ? null : o.utf8decode(t.readData(e.length - 5)) } return null } }, t.exports = l }, { "./compressedObject": 2, "./compressions": 3, "./crc32": 4, "./reader/readerFor": 22, "./support": 30, "./utf8": 31, "./utils": 32 }], 35: [function (e, t, r) { "use strict"; function n(e, t, r) { this.name = e, this.dir = r.dir, this.date = r.date, this.comment = r.comment, this.unixPermissions = r.unixPermissions, this.dosPermissions = r.dosPermissions, this._data = t, this._dataBinary = r.binary, this.options = { compression: r.compression, compressionOptions: r.compressionOptions } } var i = e("./stream/StreamHelper"), s = e("./stream/DataWorker"), a = e("./utf8"), o = e("./compressedObject"), h = e("./stream/GenericWorker"); n.prototype = { internalStream: function (e) { var t = null, r = "string"; try { if (!e) throw new Error("No output type specified."); var n = "string" === (r = e.toLowerCase()) || "text" === r; "binarystring" !== r && "text" !== r || (r = "string"), t = this._decompressWorker(); var s = !this._dataBinary; s && !n && (t = t.pipe(new a.Utf8EncodeWorker)), !s && n && (t = t.pipe(new a.Utf8DecodeWorker)) } catch (e) { (t = new h("error")).error(e) } return new i(t, r, "") }, async: function (e, t) { return this.internalStream(e).accumulate(t) }, nodeStream: function (e, t) { return this.internalStream(e || "nodebuffer").toNodejsStream(t) }, _compressWorker: function (e, t) { if (this._data instanceof o && this._data.compression.magic === e.magic) return this._data.getCompressedWorker(); var r = this._decompressWorker(); return this._dataBinary || (r = r.pipe(new a.Utf8EncodeWorker)), o.createWorkerFrom(r, e, t) }, _decompressWorker: function () { return this._data instanceof o ? this._data.getContentWorker() : this._data instanceof h ? this._data : new s(this._data) } }; for (var u = ["asText", "asBinary", "asNodeBuffer", "asUint8Array", "asArrayBuffer"], l = function () { throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.") }, f = 0; f < u.length; f++)n.prototype[u[f]] = l; t.exports = n }, { "./compressedObject": 2, "./stream/DataWorker": 27, "./stream/GenericWorker": 28, "./stream/StreamHelper": 29, "./utf8": 31 }], 36: [function (e, t, r) { (function (e) { "use strict"; var r, n, i = e.MutationObserver || e.WebKitMutationObserver; if (i) { var s = 0, a = new i(l), o = e.document.createTextNode(""); a.observe(o, { characterData: !0 }), r = function () { o.data = s = ++s % 2 } } else if (e.setImmediate || void 0 === e.MessageChannel) r = "document" in e && "onreadystatechange" in e.document.createElement("script") ? function () { var t = e.document.createElement("script"); t.onreadystatechange = function () { l(), t.onreadystatechange = null, t.parentNode.removeChild(t), t = null }, e.document.documentElement.appendChild(t) } : function () { setTimeout(l, 0) }; else { var h = new e.MessageChannel; h.port1.onmessage = l, r = function () { h.port2.postMessage(0) } } var u = []; function l() { var e, t; n = !0; for (var r = u.length; r;) { for (t = u, u = [], e = -1; ++e < r;)t[e](); r = u.length } n = !1 } t.exports = function (e) { 1 !== u.push(e) || n || r() } }).call(this, "undefined" != typeof global ? global : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {}) }, {}], 37: [function (e, t, r) { "use strict"; var n = e("immediate"); function i() { } var s = {}, a = ["REJECTED"], o = ["FULFILLED"], h = ["PENDING"]; function u(e) { if ("function" != typeof e) throw new TypeError("resolver must be a function"); this.state = h, this.queue = [], this.outcome = void 0, e !== i && d(this, e) } function l(e, t, r) { this.promise = e, "function" == typeof t && (this.onFulfilled = t, this.callFulfilled = this.otherCallFulfilled), "function" == typeof r && (this.onRejected = r, this.callRejected = this.otherCallRejected) } function f(e, t, r) { n((function () { var n; try { n = t(r) } catch (n) { return s.reject(e, n) } n === e ? s.reject(e, new TypeError("Cannot resolve promise with itself")) : s.resolve(e, n) })) } function c(e) { var t = e && e.then; if (e && ("object" == typeof e || "function" == typeof e) && "function" == typeof t) return function () { t.apply(e, arguments) } } function d(e, t) { var r = !1; function n(t) { r || (r = !0, s.reject(e, t)) } function i(t) { r || (r = !0, s.resolve(e, t)) } var a = p((function () { t(i, n) })); "error" === a.status && n(a.value) } function p(e, t) { var r = {}; try { r.value = e(t), r.status = "success" } catch (e) { r.status = "error", r.value = e } return r } (t.exports = u).prototype.finally = function (e) { if ("function" != typeof e) return this; var t = this.constructor; return this.then((function (r) { return t.resolve(e()).then((function () { return r })) }), (function (r) { return t.resolve(e()).then((function () { throw r })) })) }, u.prototype.catch = function (e) { return this.then(null, e) }, u.prototype.then = function (e, t) { if ("function" != typeof e && this.state === o || "function" != typeof t && this.state === a) return this; var r = new this.constructor(i); return this.state !== h ? f(r, this.state === o ? e : t, this.outcome) : this.queue.push(new l(r, e, t)), r }, l.prototype.callFulfilled = function (e) { s.resolve(this.promise, e) }, l.prototype.otherCallFulfilled = function (e) { f(this.promise, this.onFulfilled, e) }, l.prototype.callRejected = function (e) { s.reject(this.promise, e) }, l.prototype.otherCallRejected = function (e) { f(this.promise, this.onRejected, e) }, s.resolve = function (e, t) { var r = p(c, t); if ("error" === r.status) return s.reject(e, r.value); var n = r.value; if (n) d(e, n); else { e.state = o, e.outcome = t; for (var i = -1, a = e.queue.length; ++i < a;)e.queue[i].callFulfilled(t) } return e }, s.reject = function (e, t) { e.state = a, e.outcome = t; for (var r = -1, n = e.queue.length; ++r < n;)e.queue[r].callRejected(t); return e }, u.resolve = function (e) { return e instanceof this ? e : s.resolve(new this(i), e) }, u.reject = function (e) { var t = new this(i); return s.reject(t, e) }, u.all = function (e) { var t = this; if ("[object Array]" !== Object.prototype.toString.call(e)) return this.reject(new TypeError("must be an array")); var r = e.length, n = !1; if (!r) return this.resolve([]); for (var a = new Array(r), o = 0, h = -1, u = new this(i); ++h < r;)l(e[h], h); return u; function l(e, i) { t.resolve(e).then((function (e) { a[i] = e, ++o !== r || n || (n = !0, s.resolve(u, a)) }), (function (e) { n || (n = !0, s.reject(u, e)) })) } }, u.race = function (e) { if ("[object Array]" !== Object.prototype.toString.call(e)) return this.reject(new TypeError("must be an array")); var t = e.length, r = !1; if (!t) return this.resolve([]); for (var n, a = -1, o = new this(i); ++a < t;)n = e[a], this.resolve(n).then((function (e) { r || (r = !0, s.resolve(o, e)) }), (function (e) { r || (r = !0, s.reject(o, e)) })); return o } }, { immediate: 36 }], 38: [function (e, t, r) { "use strict"; var n = {}; (0, e("./lib/utils/common").assign)(n, e("./lib/deflate"), e("./lib/inflate"), e("./lib/zlib/constants")), t.exports = n }, { "./lib/deflate": 39, "./lib/inflate": 40, "./lib/utils/common": 41, "./lib/zlib/constants": 44 }], 39: [function (e, t, r) { "use strict"; var n = e("./zlib/deflate"), i = e("./utils/common"), s = e("./utils/strings"), a = e("./zlib/messages"), o = e("./zlib/zstream"), h = Object.prototype.toString; function u(e) { if (!(this instanceof u)) return new u(e); this.options = i.assign({ level: -1, method: 8, chunkSize: 16384, windowBits: 15, memLevel: 8, strategy: 0, to: "" }, e || {}); var t = this.options; t.raw && 0 < t.windowBits ? t.windowBits = -t.windowBits : t.gzip && 0 < t.windowBits && t.windowBits < 16 && (t.windowBits += 16), this.err = 0, this.msg = "", this.ended = !1, this.chunks = [], this.strm = new o, this.strm.avail_out = 0; var r = n.deflateInit2(this.strm, t.level, t.method, t.windowBits, t.memLevel, t.strategy); if (0 !== r) throw new Error(a[r]); if (t.header && n.deflateSetHeader(this.strm, t.header), t.dictionary) { var l; if (l = "string" == typeof t.dictionary ? s.string2buf(t.dictionary) : "[object ArrayBuffer]" === h.call(t.dictionary) ? new Uint8Array(t.dictionary) : t.dictionary, 0 !== (r = n.deflateSetDictionary(this.strm, l))) throw new Error(a[r]); this._dict_set = !0 } } function l(e, t) { var r = new u(t); if (r.push(e, !0), r.err) throw r.msg || a[r.err]; return r.result } u.prototype.push = function (e, t) { var r, a, o = this.strm, u = this.options.chunkSize; if (this.ended) return !1; a = t === ~~t ? t : !0 === t ? 4 : 0, "string" == typeof e ? o.input = s.string2buf(e) : "[object ArrayBuffer]" === h.call(e) ? o.input = new Uint8Array(e) : o.input = e, o.next_in = 0, o.avail_in = o.input.length; do { if (0 === o.avail_out && (o.output = new i.Buf8(u), o.next_out = 0, o.avail_out = u), 1 !== (r = n.deflate(o, a)) && 0 !== r) return this.onEnd(r), !(this.ended = !0); 0 !== o.avail_out && (0 !== o.avail_in || 4 !== a && 2 !== a) || ("string" === this.options.to ? this.onData(s.buf2binstring(i.shrinkBuf(o.output, o.next_out))) : this.onData(i.shrinkBuf(o.output, o.next_out))) } while ((0 < o.avail_in || 0 === o.avail_out) && 1 !== r); return 4 === a ? (r = n.deflateEnd(this.strm), this.onEnd(r), this.ended = !0, 0 === r) : 2 !== a || (this.onEnd(0), !(o.avail_out = 0)) }, u.prototype.onData = function (e) { this.chunks.push(e) }, u.prototype.onEnd = function (e) { 0 === e && ("string" === this.options.to ? this.result = this.chunks.join("") : this.result = i.flattenChunks(this.chunks)), this.chunks = [], this.err = e, this.msg = this.strm.msg }, r.Deflate = u, r.deflate = l, r.deflateRaw = function (e, t) { return (t = t || {}).raw = !0, l(e, t) }, r.gzip = function (e, t) { return (t = t || {}).gzip = !0, l(e, t) } }, { "./utils/common": 41, "./utils/strings": 42, "./zlib/deflate": 46, "./zlib/messages": 51, "./zlib/zstream": 53 }], 40: [function (e, t, r) { "use strict"; var n = e("./zlib/inflate"), i = e("./utils/common"), s = e("./utils/strings"), a = e("./zlib/constants"), o = e("./zlib/messages"), h = e("./zlib/zstream"), u = e("./zlib/gzheader"), l = Object.prototype.toString; function f(e) { if (!(this instanceof f)) return new f(e); this.options = i.assign({ chunkSize: 16384, windowBits: 0, to: "" }, e || {}); var t = this.options; t.raw && 0 <= t.windowBits && t.windowBits < 16 && (t.windowBits = -t.windowBits, 0 === t.windowBits && (t.windowBits = -15)), !(0 <= t.windowBits && t.windowBits < 16) || e && e.windowBits || (t.windowBits += 32), 15 < t.windowBits && t.windowBits < 48 && !(15 & t.windowBits) && (t.windowBits |= 15), this.err = 0, this.msg = "", this.ended = !1, this.chunks = [], this.strm = new h, this.strm.avail_out = 0; var r = n.inflateInit2(this.strm, t.windowBits); if (r !== a.Z_OK) throw new Error(o[r]); this.header = new u, n.inflateGetHeader(this.strm, this.header) } function c(e, t) { var r = new f(t); if (r.push(e, !0), r.err) throw r.msg || o[r.err]; return r.result } f.prototype.push = function (e, t) { var r, o, h, u, f, c, d = this.strm, p = this.options.chunkSize, m = this.options.dictionary, _ = !1; if (this.ended) return !1; o = t === ~~t ? t : !0 === t ? a.Z_FINISH : a.Z_NO_FLUSH, "string" == typeof e ? d.input = s.binstring2buf(e) : "[object ArrayBuffer]" === l.call(e) ? d.input = new Uint8Array(e) : d.input = e, d.next_in = 0, d.avail_in = d.input.length; do { if (0 === d.avail_out && (d.output = new i.Buf8(p), d.next_out = 0, d.avail_out = p), (r = n.inflate(d, a.Z_NO_FLUSH)) === a.Z_NEED_DICT && m && (c = "string" == typeof m ? s.string2buf(m) : "[object ArrayBuffer]" === l.call(m) ? new Uint8Array(m) : m, r = n.inflateSetDictionary(this.strm, c)), r === a.Z_BUF_ERROR && !0 === _ && (r = a.Z_OK, _ = !1), r !== a.Z_STREAM_END && r !== a.Z_OK) return this.onEnd(r), !(this.ended = !0); d.next_out && (0 !== d.avail_out && r !== a.Z_STREAM_END && (0 !== d.avail_in || o !== a.Z_FINISH && o !== a.Z_SYNC_FLUSH) || ("string" === this.options.to ? (h = s.utf8border(d.output, d.next_out), u = d.next_out - h, f = s.buf2string(d.output, h), d.next_out = u, d.avail_out = p - u, u && i.arraySet(d.output, d.output, h, u, 0), this.onData(f)) : this.onData(i.shrinkBuf(d.output, d.next_out)))), 0 === d.avail_in && 0 === d.avail_out && (_ = !0) } while ((0 < d.avail_in || 0 === d.avail_out) && r !== a.Z_STREAM_END); return r === a.Z_STREAM_END && (o = a.Z_FINISH), o === a.Z_FINISH ? (r = n.inflateEnd(this.strm), this.onEnd(r), this.ended = !0, r === a.Z_OK) : o !== a.Z_SYNC_FLUSH || (this.onEnd(a.Z_OK), !(d.avail_out = 0)) }, f.prototype.onData = function (e) { this.chunks.push(e) }, f.prototype.onEnd = function (e) { e === a.Z_OK && ("string" === this.options.to ? this.result = this.chunks.join("") : this.result = i.flattenChunks(this.chunks)), this.chunks = [], this.err = e, this.msg = this.strm.msg }, r.Inflate = f, r.inflate = c, r.inflateRaw = function (e, t) { return (t = t || {}).raw = !0, c(e, t) }, r.ungzip = c }, { "./utils/common": 41, "./utils/strings": 42, "./zlib/constants": 44, "./zlib/gzheader": 47, "./zlib/inflate": 49, "./zlib/messages": 51, "./zlib/zstream": 53 }], 41: [function (e, t, r) { "use strict"; var n = "undefined" != typeof Uint8Array && "undefined" != typeof Uint16Array && "undefined" != typeof Int32Array; r.assign = function (e) { for (var t = Array.prototype.slice.call(arguments, 1); t.length;) { var r = t.shift(); if (r) { if ("object" != typeof r) throw new TypeError(r + "must be non-object"); for (var n in r) r.hasOwnProperty(n) && (e[n] = r[n]) } } return e }, r.shrinkBuf = function (e, t) { return e.length === t ? e : e.subarray ? e.subarray(0, t) : (e.length = t, e) }; var i = { arraySet: function (e, t, r, n, i) { if (t.subarray && e.subarray) e.set(t.subarray(r, r + n), i); else for (var s = 0; s < n; s++)e[i + s] = t[r + s] }, flattenChunks: function (e) { var t, r, n, i, s, a; for (t = n = 0, r = e.length; t < r; t++)n += e[t].length; for (a = new Uint8Array(n), t = i = 0, r = e.length; t < r; t++)s = e[t], a.set(s, i), i += s.length; return a } }, s = { arraySet: function (e, t, r, n, i) { for (var s = 0; s < n; s++)e[i + s] = t[r + s] }, flattenChunks: function (e) { return [].concat.apply([], e) } }; r.setTyped = function (e) { e ? (r.Buf8 = Uint8Array, r.Buf16 = Uint16Array, r.Buf32 = Int32Array, r.assign(r, i)) : (r.Buf8 = Array, r.Buf16 = Array, r.Buf32 = Array, r.assign(r, s)) }, r.setTyped(n) }, {}], 42: [function (e, t, r) { "use strict"; var n = e("./common"), i = !0, s = !0; try { String.fromCharCode.apply(null, [0]) } catch (e) { i = !1 } try { String.fromCharCode.apply(null, new Uint8Array(1)) } catch (e) { s = !1 } for (var a = new n.Buf8(256), o = 0; o < 256; o++)a[o] = 252 <= o ? 6 : 248 <= o ? 5 : 240 <= o ? 4 : 224 <= o ? 3 : 192 <= o ? 2 : 1; function h(e, t) { if (t < 65537 && (e.subarray && s || !e.subarray && i)) return String.fromCharCode.apply(null, n.shrinkBuf(e, t)); for (var r = "", a = 0; a < t; a++)r += String.fromCharCode(e[a]); return r } a[254] = a[254] = 1, r.string2buf = function (e) { var t, r, i, s, a, o = e.length, h = 0; for (s = 0; s < o; s++)55296 == (64512 & (r = e.charCodeAt(s))) && s + 1 < o && 56320 == (64512 & (i = e.charCodeAt(s + 1))) && (r = 65536 + (r - 55296 << 10) + (i - 56320), s++), h += r < 128 ? 1 : r < 2048 ? 2 : r < 65536 ? 3 : 4; for (t = new n.Buf8(h), s = a = 0; a < h; s++)55296 == (64512 & (r = e.charCodeAt(s))) && s + 1 < o && 56320 == (64512 & (i = e.charCodeAt(s + 1))) && (r = 65536 + (r - 55296 << 10) + (i - 56320), s++), r < 128 ? t[a++] = r : (r < 2048 ? t[a++] = 192 | r >>> 6 : (r < 65536 ? t[a++] = 224 | r >>> 12 : (t[a++] = 240 | r >>> 18, t[a++] = 128 | r >>> 12 & 63), t[a++] = 128 | r >>> 6 & 63), t[a++] = 128 | 63 & r); return t }, r.buf2binstring = function (e) { return h(e, e.length) }, r.binstring2buf = function (e) { for (var t = new n.Buf8(e.length), r = 0, i = t.length; r < i; r++)t[r] = e.charCodeAt(r); return t }, r.buf2string = function (e, t) { var r, n, i, s, o = t || e.length, u = new Array(2 * o); for (r = n = 0; r < o;)if ((i = e[r++]) < 128) u[n++] = i; else if (4 < (s = a[i])) u[n++] = 65533, r += s - 1; else { for (i &= 2 === s ? 31 : 3 === s ? 15 : 7; 1 < s && r < o;)i = i << 6 | 63 & e[r++], s--; 1 < s ? u[n++] = 65533 : i < 65536 ? u[n++] = i : (i -= 65536, u[n++] = 55296 | i >> 10 & 1023, u[n++] = 56320 | 1023 & i) } return h(u, n) }, r.utf8border = function (e, t) { var r; for ((t = t || e.length) > e.length && (t = e.length), r = t - 1; 0 <= r && 128 == (192 & e[r]);)r--; return r < 0 || 0 === r ? t : r + a[e[r]] > t ? r : t } }, { "./common": 41 }], 43: [function (e, t, r) { "use strict"; t.exports = function (e, t, r, n) { for (var i = 65535 & e, s = e >>> 16 & 65535, a = 0; 0 !== r;) { for (r -= a = 2e3 < r ? 2e3 : r; s = s + (i = i + t[n++] | 0) | 0, --a;); i %= 65521, s %= 65521 } return i | s << 16 } }, {}], 44: [function (e, t, r) { "use strict"; t.exports = { Z_NO_FLUSH: 0, Z_PARTIAL_FLUSH: 1, Z_SYNC_FLUSH: 2, Z_FULL_FLUSH: 3, Z_FINISH: 4, Z_BLOCK: 5, Z_TREES: 6, Z_OK: 0, Z_STREAM_END: 1, Z_NEED_DICT: 2, Z_ERRNO: -1, Z_STREAM_ERROR: -2, Z_DATA_ERROR: -3, Z_BUF_ERROR: -5, Z_NO_COMPRESSION: 0, Z_BEST_SPEED: 1, Z_BEST_COMPRESSION: 9, Z_DEFAULT_COMPRESSION: -1, Z_FILTERED: 1, Z_HUFFMAN_ONLY: 2, Z_RLE: 3, Z_FIXED: 4, Z_DEFAULT_STRATEGY: 0, Z_BINARY: 0, Z_TEXT: 1, Z_UNKNOWN: 2, Z_DEFLATED: 8 } }, {}], 45: [function (e, t, r) { "use strict"; var n = function () { for (var e, t = [], r = 0; r < 256; r++) { e = r; for (var n = 0; n < 8; n++)e = 1 & e ? 3988292384 ^ e >>> 1 : e >>> 1; t[r] = e } return t }(); t.exports = function (e, t, r, i) { var s = n, a = i + r; e ^= -1; for (var o = i; o < a; o++)e = e >>> 8 ^ s[255 & (e ^ t[o])]; return ~e } }, {}], 46: [function (e, t, r) { "use strict"; var n, i = e("../utils/common"), s = e("./trees"), a = e("./adler32"), o = e("./crc32"), h = e("./messages"), u = -2, l = 258, f = 262, c = 113; function d(e, t) { return e.msg = h[t], t } function p(e) { return (e << 1) - (4 < e ? 9 : 0) } function m(e) { for (var t = e.length; 0 <= --t;)e[t] = 0 } function _(e) { var t = e.state, r = t.pending; r > e.avail_out && (r = e.avail_out), 0 !== r && (i.arraySet(e.output, t.pending_buf, t.pending_out, r, e.next_out), e.next_out += r, t.pending_out += r, e.total_out += r, e.avail_out -= r, t.pending -= r, 0 === t.pending && (t.pending_out = 0)) } function g(e, t) { s._tr_flush_block(e, 0 <= e.block_start ? e.block_start : -1, e.strstart - e.block_start, t), e.block_start = e.strstart, _(e.strm) } function b(e, t) { e.pending_buf[e.pending++] = t } function v(e, t) { e.pending_buf[e.pending++] = t >>> 8 & 255, e.pending_buf[e.pending++] = 255 & t } function y(e, t) { var r, n, i = e.max_chain_length, s = e.strstart, a = e.prev_length, o = e.nice_match, h = e.strstart > e.w_size - f ? e.strstart - (e.w_size - f) : 0, u = e.window, c = e.w_mask, d = e.prev, p = e.strstart + l, m = u[s + a - 1], _ = u[s + a]; e.prev_length >= e.good_match && (i >>= 2), o > e.lookahead && (o = e.lookahead); do { if (u[(r = t) + a] === _ && u[r + a - 1] === m && u[r] === u[s] && u[++r] === u[s + 1]) { s += 2, r++; do { } while (u[++s] === u[++r] && u[++s] === u[++r] && u[++s] === u[++r] && u[++s] === u[++r] && u[++s] === u[++r] && u[++s] === u[++r] && u[++s] === u[++r] && u[++s] === u[++r] && s < p); if (n = l - (p - s), s = p - l, a < n) { if (e.match_start = t, o <= (a = n)) break; m = u[s + a - 1], _ = u[s + a] } } } while ((t = d[t & c]) > h && 0 != --i); return a <= e.lookahead ? a : e.lookahead } function w(e) { var t, r, n, s, h, u, l, c, d, p, m = e.w_size; do { if (s = e.window_size - e.lookahead - e.strstart, e.strstart >= m + (m - f)) { for (i.arraySet(e.window, e.window, m, m, 0), e.match_start -= m, e.strstart -= m, e.block_start -= m, t = r = e.hash_size; n = e.head[--t], e.head[t] = m <= n ? n - m : 0, --r;); for (t = r = m; n = e.prev[--t], e.prev[t] = m <= n ? n - m : 0, --r;); s += m } if (0 === e.strm.avail_in) break; if (u = e.strm, l = e.window, c = e.strstart + e.lookahead, p = void 0, (d = s) < (p = u.avail_in) && (p = d), r = 0 === p ? 0 : (u.avail_in -= p, i.arraySet(l, u.input, u.next_in, p, c), 1 === u.state.wrap ? u.adler = a(u.adler, l, p, c) : 2 === u.state.wrap && (u.adler = o(u.adler, l, p, c)), u.next_in += p, u.total_in += p, p), e.lookahead += r, e.lookahead + e.insert >= 3) for (h = e.strstart - e.insert, e.ins_h = e.window[h], e.ins_h = (e.ins_h << e.hash_shift ^ e.window[h + 1]) & e.hash_mask; e.insert && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[h + 3 - 1]) & e.hash_mask, e.prev[h & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = h, h++, e.insert--, !(e.lookahead + e.insert < 3));); } while (e.lookahead < f && 0 !== e.strm.avail_in) } function k(e, t) { for (var r, n; ;) { if (e.lookahead < f) { if (w(e), e.lookahead < f && 0 === t) return 1; if (0 === e.lookahead) break } if (r = 0, e.lookahead >= 3 && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + 3 - 1]) & e.hash_mask, r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart), 0 !== r && e.strstart - r <= e.w_size - f && (e.match_length = y(e, r)), e.match_length >= 3) if (n = s._tr_tally(e, e.strstart - e.match_start, e.match_length - 3), e.lookahead -= e.match_length, e.match_length <= e.max_lazy_match && e.lookahead >= 3) { for (e.match_length--; e.strstart++, e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + 3 - 1]) & e.hash_mask, r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart, 0 != --e.match_length;); e.strstart++ } else e.strstart += e.match_length, e.match_length = 0, e.ins_h = e.window[e.strstart], e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + 1]) & e.hash_mask; else n = s._tr_tally(e, 0, e.window[e.strstart]), e.lookahead--, e.strstart++; if (n && (g(e, !1), 0 === e.strm.avail_out)) return 1 } return e.insert = e.strstart < 2 ? e.strstart : 2, 4 === t ? (g(e, !0), 0 === e.strm.avail_out ? 3 : 4) : e.last_lit && (g(e, !1), 0 === e.strm.avail_out) ? 1 : 2 } function x(e, t) { for (var r, n, i; ;) { if (e.lookahead < f) { if (w(e), e.lookahead < f && 0 === t) return 1; if (0 === e.lookahead) break } if (r = 0, e.lookahead >= 3 && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + 3 - 1]) & e.hash_mask, r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart), e.prev_length = e.match_length, e.prev_match = e.match_start, e.match_length = 2, 0 !== r && e.prev_length < e.max_lazy_match && e.strstart - r <= e.w_size - f && (e.match_length = y(e, r), e.match_length <= 5 && (1 === e.strategy || 3 === e.match_length && 4096 < e.strstart - e.match_start) && (e.match_length = 2)), e.prev_length >= 3 && e.match_length <= e.prev_length) { for (i = e.strstart + e.lookahead - 3, n = s._tr_tally(e, e.strstart - 1 - e.prev_match, e.prev_length - 3), e.lookahead -= e.prev_length - 1, e.prev_length -= 2; ++e.strstart <= i && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + 3 - 1]) & e.hash_mask, r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart), 0 != --e.prev_length;); if (e.match_available = 0, e.match_length = 2, e.strstart++, n && (g(e, !1), 0 === e.strm.avail_out)) return 1 } else if (e.match_available) { if ((n = s._tr_tally(e, 0, e.window[e.strstart - 1])) && g(e, !1), e.strstart++, e.lookahead--, 0 === e.strm.avail_out) return 1 } else e.match_available = 1, e.strstart++, e.lookahead-- } return e.match_available && (n = s._tr_tally(e, 0, e.window[e.strstart - 1]), e.match_available = 0), e.insert = e.strstart < 2 ? e.strstart : 2, 4 === t ? (g(e, !0), 0 === e.strm.avail_out ? 3 : 4) : e.last_lit && (g(e, !1), 0 === e.strm.avail_out) ? 1 : 2 } function S(e, t, r, n, i) { this.good_length = e, this.max_lazy = t, this.nice_length = r, this.max_chain = n, this.func = i } function z() { this.strm = null, this.status = 0, this.pending_buf = null, this.pending_buf_size = 0, this.pending_out = 0, this.pending = 0, this.wrap = 0, this.gzhead = null, this.gzindex = 0, this.method = 8, this.last_flush = -1, this.w_size = 0, this.w_bits = 0, this.w_mask = 0, this.window = null, this.window_size = 0, this.prev = null, this.head = null, this.ins_h = 0, this.hash_size = 0, this.hash_bits = 0, this.hash_mask = 0, this.hash_shift = 0, this.block_start = 0, this.match_length = 0, this.prev_match = 0, this.match_available = 0, this.strstart = 0, this.match_start = 0, this.lookahead = 0, this.prev_length = 0, this.max_chain_length = 0, this.max_lazy_match = 0, this.level = 0, this.strategy = 0, this.good_match = 0, this.nice_match = 0, this.dyn_ltree = new i.Buf16(1146), this.dyn_dtree = new i.Buf16(122), this.bl_tree = new i.Buf16(78), m(this.dyn_ltree), m(this.dyn_dtree), m(this.bl_tree), this.l_desc = null, this.d_desc = null, this.bl_desc = null, this.bl_count = new i.Buf16(16), this.heap = new i.Buf16(573), m(this.heap), this.heap_len = 0, this.heap_max = 0, this.depth = new i.Buf16(573), m(this.depth), this.l_buf = 0, this.lit_bufsize = 0, this.last_lit = 0, this.d_buf = 0, this.opt_len = 0, this.static_len = 0, this.matches = 0, this.insert = 0, this.bi_buf = 0, this.bi_valid = 0 } function C(e) { var t; return e && e.state ? (e.total_in = e.total_out = 0, e.data_type = 2, (t = e.state).pending = 0, t.pending_out = 0, t.wrap < 0 && (t.wrap = -t.wrap), t.status = t.wrap ? 42 : c, e.adler = 2 === t.wrap ? 0 : 1, t.last_flush = 0, s._tr_init(t), 0) : d(e, u) } function E(e) { var t = C(e); return 0 === t && function (e) { e.window_size = 2 * e.w_size, m(e.head), e.max_lazy_match = n[e.level].max_lazy, e.good_match = n[e.level].good_length, e.nice_match = n[e.level].nice_length, e.max_chain_length = n[e.level].max_chain, e.strstart = 0, e.block_start = 0, e.lookahead = 0, e.insert = 0, e.match_length = e.prev_length = 2, e.match_available = 0, e.ins_h = 0 }(e.state), t } function A(e, t, r, n, s, a) { if (!e) return u; var o = 1; if (-1 === t && (t = 6), n < 0 ? (o = 0, n = -n) : 15 < n && (o = 2, n -= 16), s < 1 || 9 < s || 8 !== r || n < 8 || 15 < n || t < 0 || 9 < t || a < 0 || 4 < a) return d(e, u); 8 === n && (n = 9); var h = new z; return (e.state = h).strm = e, h.wrap = o, h.gzhead = null, h.w_bits = n, h.w_size = 1 << h.w_bits, h.w_mask = h.w_size - 1, h.hash_bits = s + 7, h.hash_size = 1 << h.hash_bits, h.hash_mask = h.hash_size - 1, h.hash_shift = ~~((h.hash_bits + 3 - 1) / 3), h.window = new i.Buf8(2 * h.w_size), h.head = new i.Buf16(h.hash_size), h.prev = new i.Buf16(h.w_size), h.lit_bufsize = 1 << s + 6, h.pending_buf_size = 4 * h.lit_bufsize, h.pending_buf = new i.Buf8(h.pending_buf_size), h.d_buf = 1 * h.lit_bufsize, h.l_buf = 3 * h.lit_bufsize, h.level = t, h.strategy = a, h.method = r, E(e) } n = [new S(0, 0, 0, 0, (function (e, t) { var r = 65535; for (r > e.pending_buf_size - 5 && (r = e.pending_buf_size - 5); ;) { if (e.lookahead <= 1) { if (w(e), 0 === e.lookahead && 0 === t) return 1; if (0 === e.lookahead) break } e.strstart += e.lookahead, e.lookahead = 0; var n = e.block_start + r; if ((0 === e.strstart || e.strstart >= n) && (e.lookahead = e.strstart - n, e.strstart = n, g(e, !1), 0 === e.strm.avail_out)) return 1; if (e.strstart - e.block_start >= e.w_size - f && (g(e, !1), 0 === e.strm.avail_out)) return 1 } return e.insert = 0, 4 === t ? (g(e, !0), 0 === e.strm.avail_out ? 3 : 4) : (e.strstart > e.block_start && (g(e, !1), e.strm.avail_out), 1) })), new S(4, 4, 8, 4, k), new S(4, 5, 16, 8, k), new S(4, 6, 32, 32, k), new S(4, 4, 16, 16, x), new S(8, 16, 32, 32, x), new S(8, 16, 128, 128, x), new S(8, 32, 128, 256, x), new S(32, 128, 258, 1024, x), new S(32, 258, 258, 4096, x)], r.deflateInit = function (e, t) { return A(e, t, 8, 15, 8, 0) }, r.deflateInit2 = A, r.deflateReset = E, r.deflateResetKeep = C, r.deflateSetHeader = function (e, t) { return e && e.state ? 2 !== e.state.wrap ? u : (e.state.gzhead = t, 0) : u }, r.deflate = function (e, t) { var r, i, a, h; if (!e || !e.state || 5 < t || t < 0) return e ? d(e, u) : u; if (i = e.state, !e.output || !e.input && 0 !== e.avail_in || 666 === i.status && 4 !== t) return d(e, 0 === e.avail_out ? -5 : u); if (i.strm = e, r = i.last_flush, i.last_flush = t, 42 === i.status) if (2 === i.wrap) e.adler = 0, b(i, 31), b(i, 139), b(i, 8), i.gzhead ? (b(i, (i.gzhead.text ? 1 : 0) + (i.gzhead.hcrc ? 2 : 0) + (i.gzhead.extra ? 4 : 0) + (i.gzhead.name ? 8 : 0) + (i.gzhead.comment ? 16 : 0)), b(i, 255 & i.gzhead.time), b(i, i.gzhead.time >> 8 & 255), b(i, i.gzhead.time >> 16 & 255), b(i, i.gzhead.time >> 24 & 255), b(i, 9 === i.level ? 2 : 2 <= i.strategy || i.level < 2 ? 4 : 0), b(i, 255 & i.gzhead.os), i.gzhead.extra && i.gzhead.extra.length && (b(i, 255 & i.gzhead.extra.length), b(i, i.gzhead.extra.length >> 8 & 255)), i.gzhead.hcrc && (e.adler = o(e.adler, i.pending_buf, i.pending, 0)), i.gzindex = 0, i.status = 69) : (b(i, 0), b(i, 0), b(i, 0), b(i, 0), b(i, 0), b(i, 9 === i.level ? 2 : 2 <= i.strategy || i.level < 2 ? 4 : 0), b(i, 3), i.status = c); else { var f = 8 + (i.w_bits - 8 << 4) << 8; f |= (2 <= i.strategy || i.level < 2 ? 0 : i.level < 6 ? 1 : 6 === i.level ? 2 : 3) << 6, 0 !== i.strstart && (f |= 32), f += 31 - f % 31, i.status = c, v(i, f), 0 !== i.strstart && (v(i, e.adler >>> 16), v(i, 65535 & e.adler)), e.adler = 1 } if (69 === i.status) if (i.gzhead.extra) { for (a = i.pending; i.gzindex < (65535 & i.gzhead.extra.length) && (i.pending !== i.pending_buf_size || (i.gzhead.hcrc && i.pending > a && (e.adler = o(e.adler, i.pending_buf, i.pending - a, a)), _(e), a = i.pending, i.pending !== i.pending_buf_size));)b(i, 255 & i.gzhead.extra[i.gzindex]), i.gzindex++; i.gzhead.hcrc && i.pending > a && (e.adler = o(e.adler, i.pending_buf, i.pending - a, a)), i.gzindex === i.gzhead.extra.length && (i.gzindex = 0, i.status = 73) } else i.status = 73; if (73 === i.status) if (i.gzhead.name) { a = i.pending; do { if (i.pending === i.pending_buf_size && (i.gzhead.hcrc && i.pending > a && (e.adler = o(e.adler, i.pending_buf, i.pending - a, a)), _(e), a = i.pending, i.pending === i.pending_buf_size)) { h = 1; break } h = i.gzindex < i.gzhead.name.length ? 255 & i.gzhead.name.charCodeAt(i.gzindex++) : 0, b(i, h) } while (0 !== h); i.gzhead.hcrc && i.pending > a && (e.adler = o(e.adler, i.pending_buf, i.pending - a, a)), 0 === h && (i.gzindex = 0, i.status = 91) } else i.status = 91; if (91 === i.status) if (i.gzhead.comment) { a = i.pending; do { if (i.pending === i.pending_buf_size && (i.gzhead.hcrc && i.pending > a && (e.adler = o(e.adler, i.pending_buf, i.pending - a, a)), _(e), a = i.pending, i.pending === i.pending_buf_size)) { h = 1; break } h = i.gzindex < i.gzhead.comment.length ? 255 & i.gzhead.comment.charCodeAt(i.gzindex++) : 0, b(i, h) } while (0 !== h); i.gzhead.hcrc && i.pending > a && (e.adler = o(e.adler, i.pending_buf, i.pending - a, a)), 0 === h && (i.status = 103) } else i.status = 103; if (103 === i.status && (i.gzhead.hcrc ? (i.pending + 2 > i.pending_buf_size && _(e), i.pending + 2 <= i.pending_buf_size && (b(i, 255 & e.adler), b(i, e.adler >> 8 & 255), e.adler = 0, i.status = c)) : i.status = c), 0 !== i.pending) { if (_(e), 0 === e.avail_out) return i.last_flush = -1, 0 } else if (0 === e.avail_in && p(t) <= p(r) && 4 !== t) return d(e, -5); if (666 === i.status && 0 !== e.avail_in) return d(e, -5); if (0 !== e.avail_in || 0 !== i.lookahead || 0 !== t && 666 !== i.status) { var y = 2 === i.strategy ? function (e, t) { for (var r; ;) { if (0 === e.lookahead && (w(e), 0 === e.lookahead)) { if (0 === t) return 1; break } if (e.match_length = 0, r = s._tr_tally(e, 0, e.window[e.strstart]), e.lookahead--, e.strstart++, r && (g(e, !1), 0 === e.strm.avail_out)) return 1 } return e.insert = 0, 4 === t ? (g(e, !0), 0 === e.strm.avail_out ? 3 : 4) : e.last_lit && (g(e, !1), 0 === e.strm.avail_out) ? 1 : 2 }(i, t) : 3 === i.strategy ? function (e, t) { for (var r, n, i, a, o = e.window; ;) { if (e.lookahead <= l) { if (w(e), e.lookahead <= l && 0 === t) return 1; if (0 === e.lookahead) break } if (e.match_length = 0, e.lookahead >= 3 && 0 < e.strstart && (n = o[i = e.strstart - 1]) === o[++i] && n === o[++i] && n === o[++i]) { a = e.strstart + l; do { } while (n === o[++i] && n === o[++i] && n === o[++i] && n === o[++i] && n === o[++i] && n === o[++i] && n === o[++i] && n === o[++i] && i < a); e.match_length = l - (a - i), e.match_length > e.lookahead && (e.match_length = e.lookahead) } if (e.match_length >= 3 ? (r = s._tr_tally(e, 1, e.match_length - 3), e.lookahead -= e.match_length, e.strstart += e.match_length, e.match_length = 0) : (r = s._tr_tally(e, 0, e.window[e.strstart]), e.lookahead--, e.strstart++), r && (g(e, !1), 0 === e.strm.avail_out)) return 1 } return e.insert = 0, 4 === t ? (g(e, !0), 0 === e.strm.avail_out ? 3 : 4) : e.last_lit && (g(e, !1), 0 === e.strm.avail_out) ? 1 : 2 }(i, t) : n[i.level].func(i, t); if (3 !== y && 4 !== y || (i.status = 666), 1 === y || 3 === y) return 0 === e.avail_out && (i.last_flush = -1), 0; if (2 === y && (1 === t ? s._tr_align(i) : 5 !== t && (s._tr_stored_block(i, 0, 0, !1), 3 === t && (m(i.head), 0 === i.lookahead && (i.strstart = 0, i.block_start = 0, i.insert = 0))), _(e), 0 === e.avail_out)) return i.last_flush = -1, 0 } return 4 !== t ? 0 : i.wrap <= 0 ? 1 : (2 === i.wrap ? (b(i, 255 & e.adler), b(i, e.adler >> 8 & 255), b(i, e.adler >> 16 & 255), b(i, e.adler >> 24 & 255), b(i, 255 & e.total_in), b(i, e.total_in >> 8 & 255), b(i, e.total_in >> 16 & 255), b(i, e.total_in >> 24 & 255)) : (v(i, e.adler >>> 16), v(i, 65535 & e.adler)), _(e), 0 < i.wrap && (i.wrap = -i.wrap), 0 !== i.pending ? 0 : 1) }, r.deflateEnd = function (e) { var t; return e && e.state ? 42 !== (t = e.state.status) && 69 !== t && 73 !== t && 91 !== t && 103 !== t && t !== c && 666 !== t ? d(e, u) : (e.state = null, t === c ? d(e, -3) : 0) : u }, r.deflateSetDictionary = function (e, t) { var r, n, s, o, h, l, f, c, d = t.length; if (!e || !e.state) return u; if (2 === (o = (r = e.state).wrap) || 1 === o && 42 !== r.status || r.lookahead) return u; for (1 === o && (e.adler = a(e.adler, t, d, 0)), r.wrap = 0, d >= r.w_size && (0 === o && (m(r.head), r.strstart = 0, r.block_start = 0, r.insert = 0), c = new i.Buf8(r.w_size), i.arraySet(c, t, d - r.w_size, r.w_size, 0), t = c, d = r.w_size), h = e.avail_in, l = e.next_in, f = e.input, e.avail_in = d, e.next_in = 0, e.input = t, w(r); r.lookahead >= 3;) { for (n = r.strstart, s = r.lookahead - 2; r.ins_h = (r.ins_h << r.hash_shift ^ r.window[n + 3 - 1]) & r.hash_mask, r.prev[n & r.w_mask] = r.head[r.ins_h], r.head[r.ins_h] = n, n++, --s;); r.strstart = n, r.lookahead = 2, w(r) } return r.strstart += r.lookahead, r.block_start = r.strstart, r.insert = r.lookahead, r.lookahead = 0, r.match_length = r.prev_length = 2, r.match_available = 0, e.next_in = l, e.input = f, e.avail_in = h, r.wrap = o, 0 }, r.deflateInfo = "pako deflate (from Nodeca project)" }, { "../utils/common": 41, "./adler32": 43, "./crc32": 45, "./messages": 51, "./trees": 52 }], 47: [function (e, t, r) { "use strict"; t.exports = function () { this.text = 0, this.time = 0, this.xflags = 0, this.os = 0, this.extra = null, this.extra_len = 0, this.name = "", this.comment = "", this.hcrc = 0, this.done = !1 } }, {}], 48: [function (e, t, r) { "use strict"; t.exports = function (e, t) { var r, n, i, s, a, o, h, u, l, f, c, d, p, m, _, g, b, v, y, w, k, x, S, z, C; r = e.state, n = e.next_in, z = e.input, i = n + (e.avail_in - 5), s = e.next_out, C = e.output, a = s - (t - e.avail_out), o = s + (e.avail_out - 257), h = r.dmax, u = r.wsize, l = r.whave, f = r.wnext, c = r.window, d = r.hold, p = r.bits, m = r.lencode, _ = r.distcode, g = (1 << r.lenbits) - 1, b = (1 << r.distbits) - 1; e: do { p < 15 && (d += z[n++] << p, p += 8, d += z[n++] << p, p += 8), v = m[d & g]; t: for (; ;) { if (d >>>= y = v >>> 24, p -= y, 0 == (y = v >>> 16 & 255)) C[s++] = 65535 & v; else { if (!(16 & y)) { if (!(64 & y)) { v = m[(65535 & v) + (d & (1 << y) - 1)]; continue t } if (32 & y) { r.mode = 12; break e } e.msg = "invalid literal/length code", r.mode = 30; break e } w = 65535 & v, (y &= 15) && (p < y && (d += z[n++] << p, p += 8), w += d & (1 << y) - 1, d >>>= y, p -= y), p < 15 && (d += z[n++] << p, p += 8, d += z[n++] << p, p += 8), v = _[d & b]; r: for (; ;) { if (d >>>= y = v >>> 24, p -= y, !(16 & (y = v >>> 16 & 255))) { if (!(64 & y)) { v = _[(65535 & v) + (d & (1 << y) - 1)]; continue r } e.msg = "invalid distance code", r.mode = 30; break e } if (k = 65535 & v, p < (y &= 15) && (d += z[n++] << p, (p += 8) < y && (d += z[n++] << p, p += 8)), h < (k += d & (1 << y) - 1)) { e.msg = "invalid distance too far back", r.mode = 30; break e } if (d >>>= y, p -= y, (y = s - a) < k) { if (l < (y = k - y) && r.sane) { e.msg = "invalid distance too far back", r.mode = 30; break e } if (S = c, (x = 0) === f) { if (x += u - y, y < w) { for (w -= y; C[s++] = c[x++], --y;); x = s - k, S = C } } else if (f < y) { if (x += u + f - y, (y -= f) < w) { for (w -= y; C[s++] = c[x++], --y;); if (x = 0, f < w) { for (w -= y = f; C[s++] = c[x++], --y;); x = s - k, S = C } } } else if (x += f - y, y < w) { for (w -= y; C[s++] = c[x++], --y;); x = s - k, S = C } for (; 2 < w;)C[s++] = S[x++], C[s++] = S[x++], C[s++] = S[x++], w -= 3; w && (C[s++] = S[x++], 1 < w && (C[s++] = S[x++])) } else { for (x = s - k; C[s++] = C[x++], C[s++] = C[x++], C[s++] = C[x++], 2 < (w -= 3);); w && (C[s++] = C[x++], 1 < w && (C[s++] = C[x++])) } break } } break } } while (n < i && s < o); n -= w = p >> 3, d &= (1 << (p -= w << 3)) - 1, e.next_in = n, e.next_out = s, e.avail_in = n < i ? i - n + 5 : 5 - (n - i), e.avail_out = s < o ? o - s + 257 : 257 - (s - o), r.hold = d, r.bits = p } }, {}], 49: [function (e, t, r) { "use strict"; var n = e("../utils/common"), i = e("./adler32"), s = e("./crc32"), a = e("./inffast"), o = e("./inftrees"), h = -2; function u(e) { return (e >>> 24 & 255) + (e >>> 8 & 65280) + ((65280 & e) << 8) + ((255 & e) << 24) } function l() { this.mode = 0, this.last = !1, this.wrap = 0, this.havedict = !1, this.flags = 0, this.dmax = 0, this.check = 0, this.total = 0, this.head = null, this.wbits = 0, this.wsize = 0, this.whave = 0, this.wnext = 0, this.window = null, this.hold = 0, this.bits = 0, this.length = 0, this.offset = 0, this.extra = 0, this.lencode = null, this.distcode = null, this.lenbits = 0, this.distbits = 0, this.ncode = 0, this.nlen = 0, this.ndist = 0, this.have = 0, this.next = null, this.lens = new n.Buf16(320), this.work = new n.Buf16(288), this.lendyn = null, this.distdyn = null, this.sane = 0, this.back = 0, this.was = 0 } function f(e) { var t; return e && e.state ? (t = e.state, e.total_in = e.total_out = t.total = 0, e.msg = "", t.wrap && (e.adler = 1 & t.wrap), t.mode = 1, t.last = 0, t.havedict = 0, t.dmax = 32768, t.head = null, t.hold = 0, t.bits = 0, t.lencode = t.lendyn = new n.Buf32(852), t.distcode = t.distdyn = new n.Buf32(592), t.sane = 1, t.back = -1, 0) : h } function c(e) { var t; return e && e.state ? ((t = e.state).wsize = 0, t.whave = 0, t.wnext = 0, f(e)) : h } function d(e, t) { var r, n; return e && e.state ? (n = e.state, t < 0 ? (r = 0, t = -t) : (r = 1 + (t >> 4), t < 48 && (t &= 15)), t && (t < 8 || 15 < t) ? h : (null !== n.window && n.wbits !== t && (n.window = null), n.wrap = r, n.wbits = t, c(e))) : h } function p(e, t) { var r, n; return e ? (n = new l, (e.state = n).window = null, 0 !== (r = d(e, t)) && (e.state = null), r) : h } var m, _, g = !0; function b(e) { if (g) { var t; for (m = new n.Buf32(512), _ = new n.Buf32(32), t = 0; t < 144;)e.lens[t++] = 8; for (; t < 256;)e.lens[t++] = 9; for (; t < 280;)e.lens[t++] = 7; for (; t < 288;)e.lens[t++] = 8; for (o(1, e.lens, 0, 288, m, 0, e.work, { bits: 9 }), t = 0; t < 32;)e.lens[t++] = 5; o(2, e.lens, 0, 32, _, 0, e.work, { bits: 5 }), g = !1 } e.lencode = m, e.lenbits = 9, e.distcode = _, e.distbits = 5 } function v(e, t, r, i) { var s, a = e.state; return null === a.window && (a.wsize = 1 << a.wbits, a.wnext = 0, a.whave = 0, a.window = new n.Buf8(a.wsize)), i >= a.wsize ? (n.arraySet(a.window, t, r - a.wsize, a.wsize, 0), a.wnext = 0, a.whave = a.wsize) : (i < (s = a.wsize - a.wnext) && (s = i), n.arraySet(a.window, t, r - i, s, a.wnext), (i -= s) ? (n.arraySet(a.window, t, r - i, i, 0), a.wnext = i, a.whave = a.wsize) : (a.wnext += s, a.wnext === a.wsize && (a.wnext = 0), a.whave < a.wsize && (a.whave += s))), 0 } r.inflateReset = c, r.inflateReset2 = d, r.inflateResetKeep = f, r.inflateInit = function (e) { return p(e, 15) }, r.inflateInit2 = p, r.inflate = function (e, t) { var r, l, f, c, d, p, m, _, g, y, w, k, x, S, z, C, E, A, I, O, B, R, T, D, F = 0, N = new n.Buf8(4), U = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]; if (!e || !e.state || !e.output || !e.input && 0 !== e.avail_in) return h; 12 === (r = e.state).mode && (r.mode = 13), d = e.next_out, f = e.output, m = e.avail_out, c = e.next_in, l = e.input, p = e.avail_in, _ = r.hold, g = r.bits, y = p, w = m, R = 0; e: for (; ;)switch (r.mode) { case 1: if (0 === r.wrap) { r.mode = 13; break } for (; g < 16;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (2 & r.wrap && 35615 === _) { N[r.check = 0] = 255 & _, N[1] = _ >>> 8 & 255, r.check = s(r.check, N, 2, 0), g = _ = 0, r.mode = 2; break } if (r.flags = 0, r.head && (r.head.done = !1), !(1 & r.wrap) || (((255 & _) << 8) + (_ >> 8)) % 31) { e.msg = "incorrect header check", r.mode = 30; break } if (8 != (15 & _)) { e.msg = "unknown compression method", r.mode = 30; break } if (g -= 4, B = 8 + (15 & (_ >>>= 4)), 0 === r.wbits) r.wbits = B; else if (B > r.wbits) { e.msg = "invalid window size", r.mode = 30; break } r.dmax = 1 << B, e.adler = r.check = 1, r.mode = 512 & _ ? 10 : 12, g = _ = 0; break; case 2: for (; g < 16;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (r.flags = _, 8 != (255 & r.flags)) { e.msg = "unknown compression method", r.mode = 30; break } if (57344 & r.flags) { e.msg = "unknown header flags set", r.mode = 30; break } r.head && (r.head.text = _ >> 8 & 1), 512 & r.flags && (N[0] = 255 & _, N[1] = _ >>> 8 & 255, r.check = s(r.check, N, 2, 0)), g = _ = 0, r.mode = 3; case 3: for (; g < 32;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } r.head && (r.head.time = _), 512 & r.flags && (N[0] = 255 & _, N[1] = _ >>> 8 & 255, N[2] = _ >>> 16 & 255, N[3] = _ >>> 24 & 255, r.check = s(r.check, N, 4, 0)), g = _ = 0, r.mode = 4; case 4: for (; g < 16;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } r.head && (r.head.xflags = 255 & _, r.head.os = _ >> 8), 512 & r.flags && (N[0] = 255 & _, N[1] = _ >>> 8 & 255, r.check = s(r.check, N, 2, 0)), g = _ = 0, r.mode = 5; case 5: if (1024 & r.flags) { for (; g < 16;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } r.length = _, r.head && (r.head.extra_len = _), 512 & r.flags && (N[0] = 255 & _, N[1] = _ >>> 8 & 255, r.check = s(r.check, N, 2, 0)), g = _ = 0 } else r.head && (r.head.extra = null); r.mode = 6; case 6: if (1024 & r.flags && (p < (k = r.length) && (k = p), k && (r.head && (B = r.head.extra_len - r.length, r.head.extra || (r.head.extra = new Array(r.head.extra_len)), n.arraySet(r.head.extra, l, c, k, B)), 512 & r.flags && (r.check = s(r.check, l, k, c)), p -= k, c += k, r.length -= k), r.length)) break e; r.length = 0, r.mode = 7; case 7: if (2048 & r.flags) { if (0 === p) break e; for (k = 0; B = l[c + k++], r.head && B && r.length < 65536 && (r.head.name += String.fromCharCode(B)), B && k < p;); if (512 & r.flags && (r.check = s(r.check, l, k, c)), p -= k, c += k, B) break e } else r.head && (r.head.name = null); r.length = 0, r.mode = 8; case 8: if (4096 & r.flags) { if (0 === p) break e; for (k = 0; B = l[c + k++], r.head && B && r.length < 65536 && (r.head.comment += String.fromCharCode(B)), B && k < p;); if (512 & r.flags && (r.check = s(r.check, l, k, c)), p -= k, c += k, B) break e } else r.head && (r.head.comment = null); r.mode = 9; case 9: if (512 & r.flags) { for (; g < 16;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (_ !== (65535 & r.check)) { e.msg = "header crc mismatch", r.mode = 30; break } g = _ = 0 } r.head && (r.head.hcrc = r.flags >> 9 & 1, r.head.done = !0), e.adler = r.check = 0, r.mode = 12; break; case 10: for (; g < 32;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } e.adler = r.check = u(_), g = _ = 0, r.mode = 11; case 11: if (0 === r.havedict) return e.next_out = d, e.avail_out = m, e.next_in = c, e.avail_in = p, r.hold = _, r.bits = g, 2; e.adler = r.check = 1, r.mode = 12; case 12: if (5 === t || 6 === t) break e; case 13: if (r.last) { _ >>>= 7 & g, g -= 7 & g, r.mode = 27; break } for (; g < 3;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } switch (r.last = 1 & _, g -= 1, 3 & (_ >>>= 1)) { case 0: r.mode = 14; break; case 1: if (b(r), r.mode = 20, 6 !== t) break; _ >>>= 2, g -= 2; break e; case 2: r.mode = 17; break; case 3: e.msg = "invalid block type", r.mode = 30 }_ >>>= 2, g -= 2; break; case 14: for (_ >>>= 7 & g, g -= 7 & g; g < 32;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if ((65535 & _) != (_ >>> 16 ^ 65535)) { e.msg = "invalid stored block lengths", r.mode = 30; break } if (r.length = 65535 & _, g = _ = 0, r.mode = 15, 6 === t) break e; case 15: r.mode = 16; case 16: if (k = r.length) { if (p < k && (k = p), m < k && (k = m), 0 === k) break e; n.arraySet(f, l, c, k, d), p -= k, c += k, m -= k, d += k, r.length -= k; break } r.mode = 12; break; case 17: for (; g < 14;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (r.nlen = 257 + (31 & _), _ >>>= 5, g -= 5, r.ndist = 1 + (31 & _), _ >>>= 5, g -= 5, r.ncode = 4 + (15 & _), _ >>>= 4, g -= 4, 286 < r.nlen || 30 < r.ndist) { e.msg = "too many length or distance symbols", r.mode = 30; break } r.have = 0, r.mode = 18; case 18: for (; r.have < r.ncode;) { for (; g < 3;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } r.lens[U[r.have++]] = 7 & _, _ >>>= 3, g -= 3 } for (; r.have < 19;)r.lens[U[r.have++]] = 0; if (r.lencode = r.lendyn, r.lenbits = 7, T = { bits: r.lenbits }, R = o(0, r.lens, 0, 19, r.lencode, 0, r.work, T), r.lenbits = T.bits, R) { e.msg = "invalid code lengths set", r.mode = 30; break } r.have = 0, r.mode = 19; case 19: for (; r.have < r.nlen + r.ndist;) { for (; C = (F = r.lencode[_ & (1 << r.lenbits) - 1]) >>> 16 & 255, E = 65535 & F, !((z = F >>> 24) <= g);) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (E < 16) _ >>>= z, g -= z, r.lens[r.have++] = E; else { if (16 === E) { for (D = z + 2; g < D;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (_ >>>= z, g -= z, 0 === r.have) { e.msg = "invalid bit length repeat", r.mode = 30; break } B = r.lens[r.have - 1], k = 3 + (3 & _), _ >>>= 2, g -= 2 } else if (17 === E) { for (D = z + 3; g < D;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } g -= z, B = 0, k = 3 + (7 & (_ >>>= z)), _ >>>= 3, g -= 3 } else { for (D = z + 7; g < D;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } g -= z, B = 0, k = 11 + (127 & (_ >>>= z)), _ >>>= 7, g -= 7 } if (r.have + k > r.nlen + r.ndist) { e.msg = "invalid bit length repeat", r.mode = 30; break } for (; k--;)r.lens[r.have++] = B } } if (30 === r.mode) break; if (0 === r.lens[256]) { e.msg = "invalid code -- missing end-of-block", r.mode = 30; break } if (r.lenbits = 9, T = { bits: r.lenbits }, R = o(1, r.lens, 0, r.nlen, r.lencode, 0, r.work, T), r.lenbits = T.bits, R) { e.msg = "invalid literal/lengths set", r.mode = 30; break } if (r.distbits = 6, r.distcode = r.distdyn, T = { bits: r.distbits }, R = o(2, r.lens, r.nlen, r.ndist, r.distcode, 0, r.work, T), r.distbits = T.bits, R) { e.msg = "invalid distances set", r.mode = 30; break } if (r.mode = 20, 6 === t) break e; case 20: r.mode = 21; case 21: if (6 <= p && 258 <= m) { e.next_out = d, e.avail_out = m, e.next_in = c, e.avail_in = p, r.hold = _, r.bits = g, a(e, w), d = e.next_out, f = e.output, m = e.avail_out, c = e.next_in, l = e.input, p = e.avail_in, _ = r.hold, g = r.bits, 12 === r.mode && (r.back = -1); break } for (r.back = 0; C = (F = r.lencode[_ & (1 << r.lenbits) - 1]) >>> 16 & 255, E = 65535 & F, !((z = F >>> 24) <= g);) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (C && !(240 & C)) { for (A = z, I = C, O = E; C = (F = r.lencode[O + ((_ & (1 << A + I) - 1) >> A)]) >>> 16 & 255, E = 65535 & F, !(A + (z = F >>> 24) <= g);) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } _ >>>= A, g -= A, r.back += A } if (_ >>>= z, g -= z, r.back += z, r.length = E, 0 === C) { r.mode = 26; break } if (32 & C) { r.back = -1, r.mode = 12; break } if (64 & C) { e.msg = "invalid literal/length code", r.mode = 30; break } r.extra = 15 & C, r.mode = 22; case 22: if (r.extra) { for (D = r.extra; g < D;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } r.length += _ & (1 << r.extra) - 1, _ >>>= r.extra, g -= r.extra, r.back += r.extra } r.was = r.length, r.mode = 23; case 23: for (; C = (F = r.distcode[_ & (1 << r.distbits) - 1]) >>> 16 & 255, E = 65535 & F, !((z = F >>> 24) <= g);) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (!(240 & C)) { for (A = z, I = C, O = E; C = (F = r.distcode[O + ((_ & (1 << A + I) - 1) >> A)]) >>> 16 & 255, E = 65535 & F, !(A + (z = F >>> 24) <= g);) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } _ >>>= A, g -= A, r.back += A } if (_ >>>= z, g -= z, r.back += z, 64 & C) { e.msg = "invalid distance code", r.mode = 30; break } r.offset = E, r.extra = 15 & C, r.mode = 24; case 24: if (r.extra) { for (D = r.extra; g < D;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } r.offset += _ & (1 << r.extra) - 1, _ >>>= r.extra, g -= r.extra, r.back += r.extra } if (r.offset > r.dmax) { e.msg = "invalid distance too far back", r.mode = 30; break } r.mode = 25; case 25: if (0 === m) break e; if (k = w - m, r.offset > k) { if ((k = r.offset - k) > r.whave && r.sane) { e.msg = "invalid distance too far back", r.mode = 30; break } x = k > r.wnext ? (k -= r.wnext, r.wsize - k) : r.wnext - k, k > r.length && (k = r.length), S = r.window } else S = f, x = d - r.offset, k = r.length; for (m < k && (k = m), m -= k, r.length -= k; f[d++] = S[x++], --k;); 0 === r.length && (r.mode = 21); break; case 26: if (0 === m) break e; f[d++] = r.length, m--, r.mode = 21; break; case 27: if (r.wrap) { for (; g < 32;) { if (0 === p) break e; p--, _ |= l[c++] << g, g += 8 } if (w -= m, e.total_out += w, r.total += w, w && (e.adler = r.check = r.flags ? s(r.check, f, w, d - w) : i(r.check, f, w, d - w)), w = m, (r.flags ? _ : u(_)) !== r.check) { e.msg = "incorrect data check", r.mode = 30; break } g = _ = 0 } r.mode = 28; case 28: if (r.wrap && r.flags) { for (; g < 32;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (_ !== (4294967295 & r.total)) { e.msg = "incorrect length check", r.mode = 30; break } g = _ = 0 } r.mode = 29; case 29: R = 1; break e; case 30: R = -3; break e; case 31: return -4; default: return h }return e.next_out = d, e.avail_out = m, e.next_in = c, e.avail_in = p, r.hold = _, r.bits = g, (r.wsize || w !== e.avail_out && r.mode < 30 && (r.mode < 27 || 4 !== t)) && v(e, e.output, e.next_out, w - e.avail_out) ? (r.mode = 31, -4) : (y -= e.avail_in, w -= e.avail_out, e.total_in += y, e.total_out += w, r.total += w, r.wrap && w && (e.adler = r.check = r.flags ? s(r.check, f, w, e.next_out - w) : i(r.check, f, w, e.next_out - w)), e.data_type = r.bits + (r.last ? 64 : 0) + (12 === r.mode ? 128 : 0) + (20 === r.mode || 15 === r.mode ? 256 : 0), (0 == y && 0 === w || 4 === t) && 0 === R && (R = -5), R) }, r.inflateEnd = function (e) { if (!e || !e.state) return h; var t = e.state; return t.window && (t.window = null), e.state = null, 0 }, r.inflateGetHeader = function (e, t) { var r; return e && e.state && 2 & (r = e.state).wrap ? ((r.head = t).done = !1, 0) : h }, r.inflateSetDictionary = function (e, t) { var r, n = t.length; return e && e.state ? 0 !== (r = e.state).wrap && 11 !== r.mode ? h : 11 === r.mode && i(1, t, n, 0) !== r.check ? -3 : v(e, t, n, n) ? (r.mode = 31, -4) : (r.havedict = 1, 0) : h }, r.inflateInfo = "pako inflate (from Nodeca project)" }, { "../utils/common": 41, "./adler32": 43, "./crc32": 45, "./inffast": 48, "./inftrees": 50 }], 50: [function (e, t, r) { "use strict"; var n = e("../utils/common"), i = [3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0], s = [16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78], a = [1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0], o = [16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64]; t.exports = function (e, t, r, h, u, l, f, c) { var d, p, m, _, g, b, v, y, w, k = c.bits, x = 0, S = 0, z = 0, C = 0, E = 0, A = 0, I = 0, O = 0, B = 0, R = 0, T = null, D = 0, F = new n.Buf16(16), N = new n.Buf16(16), U = null, P = 0; for (x = 0; x <= 15; x++)F[x] = 0; for (S = 0; S < h; S++)F[t[r + S]]++; for (E = k, C = 15; 1 <= C && 0 === F[C]; C--); if (C < E && (E = C), 0 === C) return u[l++] = 20971520, u[l++] = 20971520, c.bits = 1, 0; for (z = 1; z < C && 0 === F[z]; z++); for (E < z && (E = z), x = O = 1; x <= 15; x++)if (O <<= 1, (O -= F[x]) < 0) return -1; if (0 < O && (0 === e || 1 !== C)) return -1; for (N[1] = 0, x = 1; x < 15; x++)N[x + 1] = N[x] + F[x]; for (S = 0; S < h; S++)0 !== t[r + S] && (f[N[t[r + S]]++] = S); if (b = 0 === e ? (T = U = f, 19) : 1 === e ? (T = i, D -= 257, U = s, P -= 257, 256) : (T = a, U = o, -1), x = z, g = l, I = S = R = 0, m = -1, _ = (B = 1 << (A = E)) - 1, 1 === e && 852 < B || 2 === e && 592 < B) return 1; for (; ;) { for (v = x - I, w = f[S] < b ? (y = 0, f[S]) : f[S] > b ? (y = U[P + f[S]], T[D + f[S]]) : (y = 96, 0), d = 1 << x - I, z = p = 1 << A; u[g + (R >> I) + (p -= d)] = v << 24 | y << 16 | w, 0 !== p;); for (d = 1 << x - 1; R & d;)d >>= 1; if (0 !== d ? (R &= d - 1, R += d) : R = 0, S++, 0 == --F[x]) { if (x === C) break; x = t[r + f[S]] } if (E < x && (R & _) !== m) { for (0 === I && (I = E), g += z, O = 1 << (A = x - I); A + I < C && !((O -= F[A + I]) <= 0);)A++, O <<= 1; if (B += 1 << A, 1 === e && 852 < B || 2 === e && 592 < B) return 1; u[m = R & _] = E << 24 | A << 16 | g - l } } return 0 !== R && (u[g + R] = x - I << 24 | 64 << 16), c.bits = E, 0 } }, { "../utils/common": 41 }], 51: [function (e, t, r) { "use strict"; t.exports = { 2: "need dictionary", 1: "stream end", 0: "", "-1": "file error", "-2": "stream error", "-3": "data error", "-4": "insufficient memory", "-5": "buffer error", "-6": "incompatible version" } }, {}], 52: [function (e, t, r) { "use strict"; var n = e("../utils/common"); function i(e) { for (var t = e.length; 0 <= --t;)e[t] = 0 } var s = [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0], a = [0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13], o = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7], h = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15], u = new Array(576); i(u); var l = new Array(60); i(l); var f = new Array(512); i(f); var c = new Array(256); i(c); var d = new Array(29); i(d); var p, m, _, g = new Array(30); function b(e, t, r, n, i) { this.static_tree = e, this.extra_bits = t, this.extra_base = r, this.elems = n, this.max_length = i, this.has_stree = e && e.length } function v(e, t) { this.dyn_tree = e, this.max_code = 0, this.stat_desc = t } function y(e) { return e < 256 ? f[e] : f[256 + (e >>> 7)] } function w(e, t) { e.pending_buf[e.pending++] = 255 & t, e.pending_buf[e.pending++] = t >>> 8 & 255 } function k(e, t, r) { e.bi_valid > 16 - r ? (e.bi_buf |= t << e.bi_valid & 65535, w(e, e.bi_buf), e.bi_buf = t >> 16 - e.bi_valid, e.bi_valid += r - 16) : (e.bi_buf |= t << e.bi_valid & 65535, e.bi_valid += r) } function x(e, t, r) { k(e, r[2 * t], r[2 * t + 1]) } function S(e, t) { for (var r = 0; r |= 1 & e, e >>>= 1, r <<= 1, 0 < --t;); return r >>> 1 } function z(e, t, r) { var n, i, s = new Array(16), a = 0; for (n = 1; n <= 15; n++)s[n] = a = a + r[n - 1] << 1; for (i = 0; i <= t; i++) { var o = e[2 * i + 1]; 0 !== o && (e[2 * i] = S(s[o]++, o)) } } function C(e) { var t; for (t = 0; t < 286; t++)e.dyn_ltree[2 * t] = 0; for (t = 0; t < 30; t++)e.dyn_dtree[2 * t] = 0; for (t = 0; t < 19; t++)e.bl_tree[2 * t] = 0; e.dyn_ltree[512] = 1, e.opt_len = e.static_len = 0, e.last_lit = e.matches = 0 } function E(e) { 8 < e.bi_valid ? w(e, e.bi_buf) : 0 < e.bi_valid && (e.pending_buf[e.pending++] = e.bi_buf), e.bi_buf = 0, e.bi_valid = 0 } function A(e, t, r, n) { var i = 2 * t, s = 2 * r; return e[i] < e[s] || e[i] === e[s] && n[t] <= n[r] } function I(e, t, r) { for (var n = e.heap[r], i = r << 1; i <= e.heap_len && (i < e.heap_len && A(t, e.heap[i + 1], e.heap[i], e.depth) && i++, !A(t, n, e.heap[i], e.depth));)e.heap[r] = e.heap[i], r = i, i <<= 1; e.heap[r] = n } function O(e, t, r) { var n, i, o, h, u = 0; if (0 !== e.last_lit) for (; n = e.pending_buf[e.d_buf + 2 * u] << 8 | e.pending_buf[e.d_buf + 2 * u + 1], i = e.pending_buf[e.l_buf + u], u++, 0 === n ? x(e, i, t) : (x(e, (o = c[i]) + 256 + 1, t), 0 !== (h = s[o]) && k(e, i -= d[o], h), x(e, o = y(--n), r), 0 !== (h = a[o]) && k(e, n -= g[o], h)), u < e.last_lit;); x(e, 256, t) } function B(e, t) { var r, n, i, s = t.dyn_tree, a = t.stat_desc.static_tree, o = t.stat_desc.has_stree, h = t.stat_desc.elems, u = -1; for (e.heap_len = 0, e.heap_max = 573, r = 0; r < h; r++)0 !== s[2 * r] ? (e.heap[++e.heap_len] = u = r, e.depth[r] = 0) : s[2 * r + 1] = 0; for (; e.heap_len < 2;)s[2 * (i = e.heap[++e.heap_len] = u < 2 ? ++u : 0)] = 1, e.depth[i] = 0, e.opt_len--, o && (e.static_len -= a[2 * i + 1]); for (t.max_code = u, r = e.heap_len >> 1; 1 <= r; r--)I(e, s, r); for (i = h; r = e.heap[1], e.heap[1] = e.heap[e.heap_len--], I(e, s, 1), n = e.heap[1], e.heap[--e.heap_max] = r, e.heap[--e.heap_max] = n, s[2 * i] = s[2 * r] + s[2 * n], e.depth[i] = (e.depth[r] >= e.depth[n] ? e.depth[r] : e.depth[n]) + 1, s[2 * r + 1] = s[2 * n + 1] = i, e.heap[1] = i++, I(e, s, 1), 2 <= e.heap_len;); e.heap[--e.heap_max] = e.heap[1], function (e, t) { var r, n, i, s, a, o, h = t.dyn_tree, u = t.max_code, l = t.stat_desc.static_tree, f = t.stat_desc.has_stree, c = t.stat_desc.extra_bits, d = t.stat_desc.extra_base, p = t.stat_desc.max_length, m = 0; for (s = 0; s <= 15; s++)e.bl_count[s] = 0; for (h[2 * e.heap[e.heap_max] + 1] = 0, r = e.heap_max + 1; r < 573; r++)p < (s = h[2 * h[2 * (n = e.heap[r]) + 1] + 1] + 1) && (s = p, m++), h[2 * n + 1] = s, u < n || (e.bl_count[s]++, a = 0, d <= n && (a = c[n - d]), o = h[2 * n], e.opt_len += o * (s + a), f && (e.static_len += o * (l[2 * n + 1] + a))); if (0 !== m) { do { for (s = p - 1; 0 === e.bl_count[s];)s--; e.bl_count[s]--, e.bl_count[s + 1] += 2, e.bl_count[p]--, m -= 2 } while (0 < m); for (s = p; 0 !== s; s--)for (n = e.bl_count[s]; 0 !== n;)u < (i = e.heap[--r]) || (h[2 * i + 1] !== s && (e.opt_len += (s - h[2 * i + 1]) * h[2 * i], h[2 * i + 1] = s), n--) } }(e, t), z(s, u, e.bl_count) } function R(e, t, r) { var n, i, s = -1, a = t[1], o = 0, h = 7, u = 4; for (0 === a && (h = 138, u = 3), t[2 * (r + 1) + 1] = 65535, n = 0; n <= r; n++)i = a, a = t[2 * (n + 1) + 1], ++o < h && i === a || (o < u ? e.bl_tree[2 * i] += o : 0 !== i ? (i !== s && e.bl_tree[2 * i]++, e.bl_tree[32]++) : o <= 10 ? e.bl_tree[34]++ : e.bl_tree[36]++, s = i, u = (o = 0) === a ? (h = 138, 3) : i === a ? (h = 6, 3) : (h = 7, 4)) } function T(e, t, r) { var n, i, s = -1, a = t[1], o = 0, h = 7, u = 4; for (0 === a && (h = 138, u = 3), n = 0; n <= r; n++)if (i = a, a = t[2 * (n + 1) + 1], !(++o < h && i === a)) { if (o < u) for (; x(e, i, e.bl_tree), 0 != --o;); else 0 !== i ? (i !== s && (x(e, i, e.bl_tree), o--), x(e, 16, e.bl_tree), k(e, o - 3, 2)) : o <= 10 ? (x(e, 17, e.bl_tree), k(e, o - 3, 3)) : (x(e, 18, e.bl_tree), k(e, o - 11, 7)); s = i, u = (o = 0) === a ? (h = 138, 3) : i === a ? (h = 6, 3) : (h = 7, 4) } } i(g); var D = !1; function F(e, t, r, i) { k(e, 0 + (i ? 1 : 0), 3), function (e, t, r) { E(e), w(e, r), w(e, ~r), n.arraySet(e.pending_buf, e.window, t, r, e.pending), e.pending += r }(e, t, r) } r._tr_init = function (e) { D || (function () { var e, t, r, n, i, h = new Array(16); for (n = r = 0; n < 28; n++)for (d[n] = r, e = 0; e < 1 << s[n]; e++)c[r++] = n; for (c[r - 1] = n, n = i = 0; n < 16; n++)for (g[n] = i, e = 0; e < 1 << a[n]; e++)f[i++] = n; for (i >>= 7; n < 30; n++)for (g[n] = i << 7, e = 0; e < 1 << a[n] - 7; e++)f[256 + i++] = n; for (t = 0; t <= 15; t++)h[t] = 0; for (e = 0; e <= 143;)u[2 * e + 1] = 8, e++, h[8]++; for (; e <= 255;)u[2 * e + 1] = 9, e++, h[9]++; for (; e <= 279;)u[2 * e + 1] = 7, e++, h[7]++; for (; e <= 287;)u[2 * e + 1] = 8, e++, h[8]++; for (z(u, 287, h), e = 0; e < 30; e++)l[2 * e + 1] = 5, l[2 * e] = S(e, 5); p = new b(u, s, 257, 286, 15), m = new b(l, a, 0, 30, 15), _ = new b(new Array(0), o, 0, 19, 7) }(), D = !0), e.l_desc = new v(e.dyn_ltree, p), e.d_desc = new v(e.dyn_dtree, m), e.bl_desc = new v(e.bl_tree, _), e.bi_buf = 0, e.bi_valid = 0, C(e) }, r._tr_stored_block = F, r._tr_flush_block = function (e, t, r, n) { var i, s, a = 0; 0 < e.level ? (2 === e.strm.data_type && (e.strm.data_type = function (e) { var t, r = 4093624447; for (t = 0; t <= 31; t++, r >>>= 1)if (1 & r && 0 !== e.dyn_ltree[2 * t]) return 0; if (0 !== e.dyn_ltree[18] || 0 !== e.dyn_ltree[20] || 0 !== e.dyn_ltree[26]) return 1; for (t = 32; t < 256; t++)if (0 !== e.dyn_ltree[2 * t]) return 1; return 0 }(e)), B(e, e.l_desc), B(e, e.d_desc), a = function (e) { var t; for (R(e, e.dyn_ltree, e.l_desc.max_code), R(e, e.dyn_dtree, e.d_desc.max_code), B(e, e.bl_desc), t = 18; 3 <= t && 0 === e.bl_tree[2 * h[t] + 1]; t--); return e.opt_len += 3 * (t + 1) + 5 + 5 + 4, t }(e), i = e.opt_len + 3 + 7 >>> 3, (s = e.static_len + 3 + 7 >>> 3) <= i && (i = s)) : i = s = r + 5, r + 4 <= i && -1 !== t ? F(e, t, r, n) : 4 === e.strategy || s === i ? (k(e, 2 + (n ? 1 : 0), 3), O(e, u, l)) : (k(e, 4 + (n ? 1 : 0), 3), function (e, t, r, n) { var i; for (k(e, t - 257, 5), k(e, r - 1, 5), k(e, n - 4, 4), i = 0; i < n; i++)k(e, e.bl_tree[2 * h[i] + 1], 3); T(e, e.dyn_ltree, t - 1), T(e, e.dyn_dtree, r - 1) }(e, e.l_desc.max_code + 1, e.d_desc.max_code + 1, a + 1), O(e, e.dyn_ltree, e.dyn_dtree)), C(e), n && E(e) }, r._tr_tally = function (e, t, r) { return e.pending_buf[e.d_buf + 2 * e.last_lit] = t >>> 8 & 255, e.pending_buf[e.d_buf + 2 * e.last_lit + 1] = 255 & t, e.pending_buf[e.l_buf + e.last_lit] = 255 & r, e.last_lit++, 0 === t ? e.dyn_ltree[2 * r]++ : (e.matches++, t--, e.dyn_ltree[2 * (c[r] + 256 + 1)]++, e.dyn_dtree[2 * y(t)]++), e.last_lit === e.lit_bufsize - 1 }, r._tr_align = function (e) { k(e, 2, 3), x(e, 256, u), function (e) { 16 === e.bi_valid ? (w(e, e.bi_buf), e.bi_buf = 0, e.bi_valid = 0) : 8 <= e.bi_valid && (e.pending_buf[e.pending++] = 255 & e.bi_buf, e.bi_buf >>= 8, e.bi_valid -= 8) }(e) } }, { "../utils/common": 41 }], 53: [function (e, t, r) { "use strict"; t.exports = function () { this.input = null, this.next_in = 0, this.avail_in = 0, this.total_in = 0, this.output = null, this.next_out = 0, this.avail_out = 0, this.total_out = 0, this.msg = "", this.state = null, this.data_type = 2, this.adler = 0 } }, {}], 54: [function (e, t, r) { (function (e) { !function (e) { "use strict"; if (!e.setImmediate) { var t, r, n, i, s = 1, a = {}, o = !1, h = e.document, u = Object.getPrototypeOf && Object.getPrototypeOf(e); u = u && u.setTimeout ? u : e, t = "[object process]" === {}.toString.call(e.process) ? function (e) { process.nextTick((function () { f(e) })) } : function () { if (e.postMessage && !e.importScripts) { var t = !0, r = e.onmessage; return e.onmessage = function () { t = !1 }, e.postMessage("", "*"), e.onmessage = r, t } }() ? (i = "setImmediate$" + Math.random() + "$", e.addEventListener ? e.addEventListener("message", c, !1) : e.attachEvent("onmessage", c), function (t) { e.postMessage(i + t, "*") }) : e.MessageChannel ? ((n = new MessageChannel).port1.onmessage = function (e) { f(e.data) }, function (e) { n.port2.postMessage(e) }) : h && "onreadystatechange" in h.createElement("script") ? (r = h.documentElement, function (e) { var t = h.createElement("script"); t.onreadystatechange = function () { f(e), t.onreadystatechange = null, r.removeChild(t), t = null }, r.appendChild(t) }) : function (e) { setTimeout(f, 0, e) }, u.setImmediate = function (e) { "function" != typeof e && (e = new Function("" + e)); for (var r = new Array(arguments.length - 1), n = 0; n < r.length; n++)r[n] = arguments[n + 1]; var i = { callback: e, args: r }; return a[s] = i, t(s), s++ }, u.clearImmediate = l } function l(e) { delete a[e] } function f(e) { if (o) setTimeout(f, 0, e); else { var t = a[e]; if (t) { o = !0; try { !function (e) { var t = e.callback, r = e.args; switch (r.length) { case 0: t(); break; case 1: t(r[0]); break; case 2: t(r[0], r[1]); break; case 3: t(r[0], r[1], r[2]); break; default: t.apply(void 0, r) } }(t) } finally { l(e), o = !1 } } } } function c(t) { t.source === e && "string" == typeof t.data && 0 === t.data.indexOf(i) && f(+t.data.slice(i.length)) } }("undefined" == typeof self ? void 0 === e ? this : e : self) }).call(this, "undefined" != typeof global ? global : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {}) }, {}] }, {}, [10])(10) })); \ No newline at end of file diff --git a/dist/js/libs/md5.min.js b/dist/js/libs/md5.min.js index a3e3b23..187dcd4 100644 --- a/dist/js/libs/md5.min.js +++ b/dist/js/libs/md5.min.js @@ -1,2 +1,2 @@ /*! For license information please see md5.min.js.LICENSE.txt */ -!function(){"use strict";function t(t){if(t)d[0]=d[16]=d[1]=d[2]=d[3]=d[4]=d[5]=d[6]=d[7]=d[8]=d[9]=d[10]=d[11]=d[12]=d[13]=d[14]=d[15]=0,this.blocks=d,this.buffer8=l;else if(a){var r=new ArrayBuffer(68);this.buffer8=new Uint8Array(r),this.blocks=new Uint32Array(r)}else this.blocks=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.h0=this.h1=this.h2=this.h3=this.start=this.bytes=this.hBytes=0,this.finalized=this.hashed=!1,this.first=!0}var r="input is invalid type",e="object"==typeof window,i=e?window:{};i.JS_MD5_NO_WINDOW&&(e=!1);var s=!e&&"object"==typeof self,h=!i.JS_MD5_NO_NODE_JS&&"object"==typeof process&&process.versions&&process.versions.node;h?i=global:s&&(i=self);var f=!i.JS_MD5_NO_COMMON_JS&&"object"==typeof module&&module.exports,o="function"==typeof define&&define.amd,a=!i.JS_MD5_NO_ARRAY_BUFFER&&"undefined"!=typeof ArrayBuffer,n="0123456789abcdef".split(""),u=[128,32768,8388608,-2147483648],y=[0,8,16,24],c=["hex","array","digest","buffer","arrayBuffer","base64"],p="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),d=[],l;if(a){var A=new ArrayBuffer(68);l=new Uint8Array(A),d=new Uint32Array(A)}!i.JS_MD5_NO_NODE_JS&&Array.isArray||(Array.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)}),!a||!i.JS_MD5_NO_ARRAY_BUFFER_IS_VIEW&&ArrayBuffer.isView||(ArrayBuffer.isView=function(t){return"object"==typeof t&&t.buffer&&t.buffer.constructor===ArrayBuffer});var b=function(r){return function(e){return new t(!0).update(e)[r]()}},v=function(){var r=b("hex");h&&(r=w(r)),r.create=function(){return new t},r.update=function(t){return r.create().update(t)};for(var e=0;e>2]|=t[n]<>6,u[h++]=128|63&s):s<55296||s>=57344?(u[h++]=224|s>>12,u[h++]=128|s>>6&63,u[h++]=128|63&s):(s=65536+((1023&s)<<10|1023&t.charCodeAt(++n)),u[h++]=240|s>>18,u[h++]=128|s>>12&63,u[h++]=128|s>>6&63,u[h++]=128|63&s);else for(h=this.start;n>2]|=s<>2]|=(192|s>>6)<>2]|=(128|63&s)<=57344?(o[h>>2]|=(224|s>>12)<>2]|=(128|s>>6&63)<>2]|=(128|63&s)<>2]|=(240|s>>18)<>2]|=(128|s>>12&63)<>2]|=(128|s>>6&63)<>2]|=(128|63&s)<=64?(this.start=h-64,this.hash(),this.hashed=!0):this.start=h}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296|0,this.bytes=this.bytes%4294967296),this}},t.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var t=this.blocks,r=this.lastByteIndex;t[r>>2]|=u[3&r],r>=56&&(this.hashed||this.hash(),t[0]=t[16],t[16]=t[1]=t[2]=t[3]=t[4]=t[5]=t[6]=t[7]=t[8]=t[9]=t[10]=t[11]=t[12]=t[13]=t[14]=t[15]=0),t[14]=this.bytes<<3,t[15]=this.hBytes<<3|this.bytes>>>29,this.hash()}},t.prototype.hash=function(){var t,r,e,i,s,h,n=this.blocks;this.first?r=((r=((t=((t=n[0]-680876937)<<7|t>>>25)-271733879|0)^(e=((e=(-271733879^(i=((i=(-1732584194^2004318071&t)+n[1]-117830708)<<12|i>>>20)+t|0)&(-271733879^t))+n[2]-1126478375)<<17|e>>>15)+i|0)&(i^t))+n[3]-1316259209)<<22|r>>>10)+e|0:(t=this.h0,r=this.h1,e=this.h2,r=((r+=((t=((t+=((i=this.h3)^r&(e^i))+n[0]-680876936)<<7|t>>>25)+r|0)^(e=((e+=(r^(i=((i+=(e^t&(r^e))+n[1]-389564586)<<12|i>>>20)+t|0)&(t^r))+n[2]+606105819)<<17|e>>>15)+i|0)&(i^t))+n[3]-1044525330)<<22|r>>>10)+e|0),r=((r+=((t=((t+=(i^r&(e^i))+n[4]-176418897)<<7|t>>>25)+r|0)^(e=((e+=(r^(i=((i+=(e^t&(r^e))+n[5]+1200080426)<<12|i>>>20)+t|0)&(t^r))+n[6]-1473231341)<<17|e>>>15)+i|0)&(i^t))+n[7]-45705983)<<22|r>>>10)+e|0,r=((r+=((t=((t+=(i^r&(e^i))+n[8]+1770035416)<<7|t>>>25)+r|0)^(e=((e+=(r^(i=((i+=(e^t&(r^e))+n[9]-1958414417)<<12|i>>>20)+t|0)&(t^r))+n[10]-42063)<<17|e>>>15)+i|0)&(i^t))+n[11]-1990404162)<<22|r>>>10)+e|0,r=((r+=((t=((t+=(i^r&(e^i))+n[12]+1804603682)<<7|t>>>25)+r|0)^(e=((e+=(r^(i=((i+=(e^t&(r^e))+n[13]-40341101)<<12|i>>>20)+t|0)&(t^r))+n[14]-1502002290)<<17|e>>>15)+i|0)&(i^t))+n[15]+1236535329)<<22|r>>>10)+e|0,r=((r+=((i=((i+=(r^e&((t=((t+=(e^i&(r^e))+n[1]-165796510)<<5|t>>>27)+r|0)^r))+n[6]-1069501632)<<9|i>>>23)+t|0)^t&((e=((e+=(t^r&(i^t))+n[11]+643717713)<<14|e>>>18)+i|0)^i))+n[0]-373897302)<<20|r>>>12)+e|0,r=((r+=((i=((i+=(r^e&((t=((t+=(e^i&(r^e))+n[5]-701558691)<<5|t>>>27)+r|0)^r))+n[10]+38016083)<<9|i>>>23)+t|0)^t&((e=((e+=(t^r&(i^t))+n[15]-660478335)<<14|e>>>18)+i|0)^i))+n[4]-405537848)<<20|r>>>12)+e|0,r=((r+=((i=((i+=(r^e&((t=((t+=(e^i&(r^e))+n[9]+568446438)<<5|t>>>27)+r|0)^r))+n[14]-1019803690)<<9|i>>>23)+t|0)^t&((e=((e+=(t^r&(i^t))+n[3]-187363961)<<14|e>>>18)+i|0)^i))+n[8]+1163531501)<<20|r>>>12)+e|0,r=((r+=((i=((i+=(r^e&((t=((t+=(e^i&(r^e))+n[13]-1444681467)<<5|t>>>27)+r|0)^r))+n[2]-51403784)<<9|i>>>23)+t|0)^t&((e=((e+=(t^r&(i^t))+n[7]+1735328473)<<14|e>>>18)+i|0)^i))+n[12]-1926607734)<<20|r>>>12)+e|0,r=((r+=((h=(i=((i+=((s=r^e)^(t=((t+=(s^i)+n[5]-378558)<<4|t>>>28)+r|0))+n[8]-2022574463)<<11|i>>>21)+t|0)^t)^(e=((e+=(h^r)+n[11]+1839030562)<<16|e>>>16)+i|0))+n[14]-35309556)<<23|r>>>9)+e|0,r=((r+=((h=(i=((i+=((s=r^e)^(t=((t+=(s^i)+n[1]-1530992060)<<4|t>>>28)+r|0))+n[4]+1272893353)<<11|i>>>21)+t|0)^t)^(e=((e+=(h^r)+n[7]-155497632)<<16|e>>>16)+i|0))+n[10]-1094730640)<<23|r>>>9)+e|0,r=((r+=((h=(i=((i+=((s=r^e)^(t=((t+=(s^i)+n[13]+681279174)<<4|t>>>28)+r|0))+n[0]-358537222)<<11|i>>>21)+t|0)^t)^(e=((e+=(h^r)+n[3]-722521979)<<16|e>>>16)+i|0))+n[6]+76029189)<<23|r>>>9)+e|0,r=((r+=((h=(i=((i+=((s=r^e)^(t=((t+=(s^i)+n[9]-640364487)<<4|t>>>28)+r|0))+n[12]-421815835)<<11|i>>>21)+t|0)^t)^(e=((e+=(h^r)+n[15]+530742520)<<16|e>>>16)+i|0))+n[2]-995338651)<<23|r>>>9)+e|0,r=((r+=((i=((i+=(r^((t=((t+=(e^(r|~i))+n[0]-198630844)<<6|t>>>26)+r|0)|~e))+n[7]+1126891415)<<10|i>>>22)+t|0)^((e=((e+=(t^(i|~r))+n[14]-1416354905)<<15|e>>>17)+i|0)|~t))+n[5]-57434055)<<21|r>>>11)+e|0,r=((r+=((i=((i+=(r^((t=((t+=(e^(r|~i))+n[12]+1700485571)<<6|t>>>26)+r|0)|~e))+n[3]-1894986606)<<10|i>>>22)+t|0)^((e=((e+=(t^(i|~r))+n[10]-1051523)<<15|e>>>17)+i|0)|~t))+n[1]-2054922799)<<21|r>>>11)+e|0,r=((r+=((i=((i+=(r^((t=((t+=(e^(r|~i))+n[8]+1873313359)<<6|t>>>26)+r|0)|~e))+n[15]-30611744)<<10|i>>>22)+t|0)^((e=((e+=(t^(i|~r))+n[6]-1560198380)<<15|e>>>17)+i|0)|~t))+n[13]+1309151649)<<21|r>>>11)+e|0,r=((r+=((i=((i+=(r^((t=((t+=(e^(r|~i))+n[4]-145523070)<<6|t>>>26)+r|0)|~e))+n[11]-1120210379)<<10|i>>>22)+t|0)^((e=((e+=(t^(i|~r))+n[2]+718787259)<<15|e>>>17)+i|0)|~t))+n[9]-343485551)<<21|r>>>11)+e|0,this.first?(this.h0=t+1732584193|0,this.h1=r-271733879|0,this.h2=e-1732584194|0,this.h3=i+271733878|0,this.first=!1):(this.h0=this.h0+t|0,this.h1=this.h1+r|0,this.h2=this.h2+e|0,this.h3=this.h3+i|0)},t.prototype.hex=function(){this.finalize();var t=this.h0,r=this.h1,e=this.h2,i=this.h3;return n[t>>4&15]+n[15&t]+n[t>>12&15]+n[t>>8&15]+n[t>>20&15]+n[t>>16&15]+n[t>>28&15]+n[t>>24&15]+n[r>>4&15]+n[15&r]+n[r>>12&15]+n[r>>8&15]+n[r>>20&15]+n[r>>16&15]+n[r>>28&15]+n[r>>24&15]+n[e>>4&15]+n[15&e]+n[e>>12&15]+n[e>>8&15]+n[e>>20&15]+n[e>>16&15]+n[e>>28&15]+n[e>>24&15]+n[i>>4&15]+n[15&i]+n[i>>12&15]+n[i>>8&15]+n[i>>20&15]+n[i>>16&15]+n[i>>28&15]+n[i>>24&15]},t.prototype.toString=t.prototype.hex,t.prototype.digest=function(){this.finalize();var t=this.h0,r=this.h1,e=this.h2,i=this.h3;return[255&t,t>>8&255,t>>16&255,t>>24&255,255&r,r>>8&255,r>>16&255,r>>24&255,255&e,e>>8&255,e>>16&255,e>>24&255,255&i,i>>8&255,i>>16&255,i>>24&255]},t.prototype.array=t.prototype.digest,t.prototype.arrayBuffer=function(){this.finalize();var t=new ArrayBuffer(16),r=new Uint32Array(t);return r[0]=this.h0,r[1]=this.h1,r[2]=this.h2,r[3]=this.h3,t},t.prototype.buffer=t.prototype.arrayBuffer,t.prototype.base64=function(){for(var t,r,e,i="",s=this.array(),h=0;h<15;)t=s[h++],r=s[h++],e=s[h++],i+=p[t>>>2]+p[63&(t<<4|r>>>4)]+p[63&(r<<2|e>>>6)]+p[63&e];return t=s[h],i+(p[t>>>2]+p[t<<4&63]+"==")};var _=v();f?module.exports=_:(i.md5=_,o&&define((function(){return _})))}(); \ No newline at end of file +!function () { "use strict"; function t(t) { if (t) d[0] = d[16] = d[1] = d[2] = d[3] = d[4] = d[5] = d[6] = d[7] = d[8] = d[9] = d[10] = d[11] = d[12] = d[13] = d[14] = d[15] = 0, this.blocks = d, this.buffer8 = l; else if (a) { var r = new ArrayBuffer(68); this.buffer8 = new Uint8Array(r), this.blocks = new Uint32Array(r) } else this.blocks = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; this.h0 = this.h1 = this.h2 = this.h3 = this.start = this.bytes = this.hBytes = 0, this.finalized = this.hashed = !1, this.first = !0 } var r = "input is invalid type", e = "object" == typeof window, i = e ? window : {}; i.JS_MD5_NO_WINDOW && (e = !1); var s = !e && "object" == typeof self, h = !i.JS_MD5_NO_NODE_JS && "object" == typeof process && process.versions && process.versions.node; h ? i = global : s && (i = self); var f = !i.JS_MD5_NO_COMMON_JS && "object" == typeof module && module.exports, o = "function" == typeof define && define.amd, a = !i.JS_MD5_NO_ARRAY_BUFFER && "undefined" != typeof ArrayBuffer, n = "0123456789abcdef".split(""), u = [128, 32768, 8388608, -2147483648], y = [0, 8, 16, 24], c = ["hex", "array", "digest", "buffer", "arrayBuffer", "base64"], p = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""), d = [], l; if (a) { var A = new ArrayBuffer(68); l = new Uint8Array(A), d = new Uint32Array(A) } !i.JS_MD5_NO_NODE_JS && Array.isArray || (Array.isArray = function (t) { return "[object Array]" === Object.prototype.toString.call(t) }), !a || !i.JS_MD5_NO_ARRAY_BUFFER_IS_VIEW && ArrayBuffer.isView || (ArrayBuffer.isView = function (t) { return "object" == typeof t && t.buffer && t.buffer.constructor === ArrayBuffer }); var b = function (r) { return function (e) { return new t(!0).update(e)[r]() } }, v = function () { var r = b("hex"); h && (r = w(r)), r.create = function () { return new t }, r.update = function (t) { return r.create().update(t) }; for (var e = 0; e < c.length; ++e) { var i = c[e]; r[i] = b(i) } return r }, w = function (t) { var e = eval("require('crypto')"), i = eval("require('buffer').Buffer"), s = function (s) { if ("string" == typeof s) return e.createHash("md5").update(s, "utf8").digest("hex"); if (null == s) throw r; return s.constructor === ArrayBuffer && (s = new Uint8Array(s)), Array.isArray(s) || ArrayBuffer.isView(s) || s.constructor === i ? e.createHash("md5").update(new i(s)).digest("hex") : t(s) }; return s }; t.prototype.update = function (t) { if (!this.finalized) { var e, i = typeof t; if ("string" !== i) { if ("object" !== i) throw r; if (null === t) throw r; if (a && t.constructor === ArrayBuffer) t = new Uint8Array(t); else if (!(Array.isArray(t) || a && ArrayBuffer.isView(t))) throw r; e = !0 } for (var s, h, n = 0, f = t.length, o = this.blocks, u = this.buffer8; n < f;) { if (this.hashed && (this.hashed = !1, o[0] = o[16], o[16] = o[1] = o[2] = o[3] = o[4] = o[5] = o[6] = o[7] = o[8] = o[9] = o[10] = o[11] = o[12] = o[13] = o[14] = o[15] = 0), e) if (a) for (h = this.start; n < f && h < 64; ++n)u[h++] = t[n]; else for (h = this.start; n < f && h < 64; ++n)o[h >> 2] |= t[n] << y[3 & h++]; else if (a) for (h = this.start; n < f && h < 64; ++n)(s = t.charCodeAt(n)) < 128 ? u[h++] = s : s < 2048 ? (u[h++] = 192 | s >> 6, u[h++] = 128 | 63 & s) : s < 55296 || s >= 57344 ? (u[h++] = 224 | s >> 12, u[h++] = 128 | s >> 6 & 63, u[h++] = 128 | 63 & s) : (s = 65536 + ((1023 & s) << 10 | 1023 & t.charCodeAt(++n)), u[h++] = 240 | s >> 18, u[h++] = 128 | s >> 12 & 63, u[h++] = 128 | s >> 6 & 63, u[h++] = 128 | 63 & s); else for (h = this.start; n < f && h < 64; ++n)(s = t.charCodeAt(n)) < 128 ? o[h >> 2] |= s << y[3 & h++] : s < 2048 ? (o[h >> 2] |= (192 | s >> 6) << y[3 & h++], o[h >> 2] |= (128 | 63 & s) << y[3 & h++]) : s < 55296 || s >= 57344 ? (o[h >> 2] |= (224 | s >> 12) << y[3 & h++], o[h >> 2] |= (128 | s >> 6 & 63) << y[3 & h++], o[h >> 2] |= (128 | 63 & s) << y[3 & h++]) : (s = 65536 + ((1023 & s) << 10 | 1023 & t.charCodeAt(++n)), o[h >> 2] |= (240 | s >> 18) << y[3 & h++], o[h >> 2] |= (128 | s >> 12 & 63) << y[3 & h++], o[h >> 2] |= (128 | s >> 6 & 63) << y[3 & h++], o[h >> 2] |= (128 | 63 & s) << y[3 & h++]); this.lastByteIndex = h, this.bytes += h - this.start, h >= 64 ? (this.start = h - 64, this.hash(), this.hashed = !0) : this.start = h } return this.bytes > 4294967295 && (this.hBytes += this.bytes / 4294967296 | 0, this.bytes = this.bytes % 4294967296), this } }, t.prototype.finalize = function () { if (!this.finalized) { this.finalized = !0; var t = this.blocks, r = this.lastByteIndex; t[r >> 2] |= u[3 & r], r >= 56 && (this.hashed || this.hash(), t[0] = t[16], t[16] = t[1] = t[2] = t[3] = t[4] = t[5] = t[6] = t[7] = t[8] = t[9] = t[10] = t[11] = t[12] = t[13] = t[14] = t[15] = 0), t[14] = this.bytes << 3, t[15] = this.hBytes << 3 | this.bytes >>> 29, this.hash() } }, t.prototype.hash = function () { var t, r, e, i, s, h, n = this.blocks; this.first ? r = ((r = ((t = ((t = n[0] - 680876937) << 7 | t >>> 25) - 271733879 | 0) ^ (e = ((e = (-271733879 ^ (i = ((i = (-1732584194 ^ 2004318071 & t) + n[1] - 117830708) << 12 | i >>> 20) + t | 0) & (-271733879 ^ t)) + n[2] - 1126478375) << 17 | e >>> 15) + i | 0) & (i ^ t)) + n[3] - 1316259209) << 22 | r >>> 10) + e | 0 : (t = this.h0, r = this.h1, e = this.h2, r = ((r += ((t = ((t += ((i = this.h3) ^ r & (e ^ i)) + n[0] - 680876936) << 7 | t >>> 25) + r | 0) ^ (e = ((e += (r ^ (i = ((i += (e ^ t & (r ^ e)) + n[1] - 389564586) << 12 | i >>> 20) + t | 0) & (t ^ r)) + n[2] + 606105819) << 17 | e >>> 15) + i | 0) & (i ^ t)) + n[3] - 1044525330) << 22 | r >>> 10) + e | 0), r = ((r += ((t = ((t += (i ^ r & (e ^ i)) + n[4] - 176418897) << 7 | t >>> 25) + r | 0) ^ (e = ((e += (r ^ (i = ((i += (e ^ t & (r ^ e)) + n[5] + 1200080426) << 12 | i >>> 20) + t | 0) & (t ^ r)) + n[6] - 1473231341) << 17 | e >>> 15) + i | 0) & (i ^ t)) + n[7] - 45705983) << 22 | r >>> 10) + e | 0, r = ((r += ((t = ((t += (i ^ r & (e ^ i)) + n[8] + 1770035416) << 7 | t >>> 25) + r | 0) ^ (e = ((e += (r ^ (i = ((i += (e ^ t & (r ^ e)) + n[9] - 1958414417) << 12 | i >>> 20) + t | 0) & (t ^ r)) + n[10] - 42063) << 17 | e >>> 15) + i | 0) & (i ^ t)) + n[11] - 1990404162) << 22 | r >>> 10) + e | 0, r = ((r += ((t = ((t += (i ^ r & (e ^ i)) + n[12] + 1804603682) << 7 | t >>> 25) + r | 0) ^ (e = ((e += (r ^ (i = ((i += (e ^ t & (r ^ e)) + n[13] - 40341101) << 12 | i >>> 20) + t | 0) & (t ^ r)) + n[14] - 1502002290) << 17 | e >>> 15) + i | 0) & (i ^ t)) + n[15] + 1236535329) << 22 | r >>> 10) + e | 0, r = ((r += ((i = ((i += (r ^ e & ((t = ((t += (e ^ i & (r ^ e)) + n[1] - 165796510) << 5 | t >>> 27) + r | 0) ^ r)) + n[6] - 1069501632) << 9 | i >>> 23) + t | 0) ^ t & ((e = ((e += (t ^ r & (i ^ t)) + n[11] + 643717713) << 14 | e >>> 18) + i | 0) ^ i)) + n[0] - 373897302) << 20 | r >>> 12) + e | 0, r = ((r += ((i = ((i += (r ^ e & ((t = ((t += (e ^ i & (r ^ e)) + n[5] - 701558691) << 5 | t >>> 27) + r | 0) ^ r)) + n[10] + 38016083) << 9 | i >>> 23) + t | 0) ^ t & ((e = ((e += (t ^ r & (i ^ t)) + n[15] - 660478335) << 14 | e >>> 18) + i | 0) ^ i)) + n[4] - 405537848) << 20 | r >>> 12) + e | 0, r = ((r += ((i = ((i += (r ^ e & ((t = ((t += (e ^ i & (r ^ e)) + n[9] + 568446438) << 5 | t >>> 27) + r | 0) ^ r)) + n[14] - 1019803690) << 9 | i >>> 23) + t | 0) ^ t & ((e = ((e += (t ^ r & (i ^ t)) + n[3] - 187363961) << 14 | e >>> 18) + i | 0) ^ i)) + n[8] + 1163531501) << 20 | r >>> 12) + e | 0, r = ((r += ((i = ((i += (r ^ e & ((t = ((t += (e ^ i & (r ^ e)) + n[13] - 1444681467) << 5 | t >>> 27) + r | 0) ^ r)) + n[2] - 51403784) << 9 | i >>> 23) + t | 0) ^ t & ((e = ((e += (t ^ r & (i ^ t)) + n[7] + 1735328473) << 14 | e >>> 18) + i | 0) ^ i)) + n[12] - 1926607734) << 20 | r >>> 12) + e | 0, r = ((r += ((h = (i = ((i += ((s = r ^ e) ^ (t = ((t += (s ^ i) + n[5] - 378558) << 4 | t >>> 28) + r | 0)) + n[8] - 2022574463) << 11 | i >>> 21) + t | 0) ^ t) ^ (e = ((e += (h ^ r) + n[11] + 1839030562) << 16 | e >>> 16) + i | 0)) + n[14] - 35309556) << 23 | r >>> 9) + e | 0, r = ((r += ((h = (i = ((i += ((s = r ^ e) ^ (t = ((t += (s ^ i) + n[1] - 1530992060) << 4 | t >>> 28) + r | 0)) + n[4] + 1272893353) << 11 | i >>> 21) + t | 0) ^ t) ^ (e = ((e += (h ^ r) + n[7] - 155497632) << 16 | e >>> 16) + i | 0)) + n[10] - 1094730640) << 23 | r >>> 9) + e | 0, r = ((r += ((h = (i = ((i += ((s = r ^ e) ^ (t = ((t += (s ^ i) + n[13] + 681279174) << 4 | t >>> 28) + r | 0)) + n[0] - 358537222) << 11 | i >>> 21) + t | 0) ^ t) ^ (e = ((e += (h ^ r) + n[3] - 722521979) << 16 | e >>> 16) + i | 0)) + n[6] + 76029189) << 23 | r >>> 9) + e | 0, r = ((r += ((h = (i = ((i += ((s = r ^ e) ^ (t = ((t += (s ^ i) + n[9] - 640364487) << 4 | t >>> 28) + r | 0)) + n[12] - 421815835) << 11 | i >>> 21) + t | 0) ^ t) ^ (e = ((e += (h ^ r) + n[15] + 530742520) << 16 | e >>> 16) + i | 0)) + n[2] - 995338651) << 23 | r >>> 9) + e | 0, r = ((r += ((i = ((i += (r ^ ((t = ((t += (e ^ (r | ~i)) + n[0] - 198630844) << 6 | t >>> 26) + r | 0) | ~e)) + n[7] + 1126891415) << 10 | i >>> 22) + t | 0) ^ ((e = ((e += (t ^ (i | ~r)) + n[14] - 1416354905) << 15 | e >>> 17) + i | 0) | ~t)) + n[5] - 57434055) << 21 | r >>> 11) + e | 0, r = ((r += ((i = ((i += (r ^ ((t = ((t += (e ^ (r | ~i)) + n[12] + 1700485571) << 6 | t >>> 26) + r | 0) | ~e)) + n[3] - 1894986606) << 10 | i >>> 22) + t | 0) ^ ((e = ((e += (t ^ (i | ~r)) + n[10] - 1051523) << 15 | e >>> 17) + i | 0) | ~t)) + n[1] - 2054922799) << 21 | r >>> 11) + e | 0, r = ((r += ((i = ((i += (r ^ ((t = ((t += (e ^ (r | ~i)) + n[8] + 1873313359) << 6 | t >>> 26) + r | 0) | ~e)) + n[15] - 30611744) << 10 | i >>> 22) + t | 0) ^ ((e = ((e += (t ^ (i | ~r)) + n[6] - 1560198380) << 15 | e >>> 17) + i | 0) | ~t)) + n[13] + 1309151649) << 21 | r >>> 11) + e | 0, r = ((r += ((i = ((i += (r ^ ((t = ((t += (e ^ (r | ~i)) + n[4] - 145523070) << 6 | t >>> 26) + r | 0) | ~e)) + n[11] - 1120210379) << 10 | i >>> 22) + t | 0) ^ ((e = ((e += (t ^ (i | ~r)) + n[2] + 718787259) << 15 | e >>> 17) + i | 0) | ~t)) + n[9] - 343485551) << 21 | r >>> 11) + e | 0, this.first ? (this.h0 = t + 1732584193 | 0, this.h1 = r - 271733879 | 0, this.h2 = e - 1732584194 | 0, this.h3 = i + 271733878 | 0, this.first = !1) : (this.h0 = this.h0 + t | 0, this.h1 = this.h1 + r | 0, this.h2 = this.h2 + e | 0, this.h3 = this.h3 + i | 0) }, t.prototype.hex = function () { this.finalize(); var t = this.h0, r = this.h1, e = this.h2, i = this.h3; return n[t >> 4 & 15] + n[15 & t] + n[t >> 12 & 15] + n[t >> 8 & 15] + n[t >> 20 & 15] + n[t >> 16 & 15] + n[t >> 28 & 15] + n[t >> 24 & 15] + n[r >> 4 & 15] + n[15 & r] + n[r >> 12 & 15] + n[r >> 8 & 15] + n[r >> 20 & 15] + n[r >> 16 & 15] + n[r >> 28 & 15] + n[r >> 24 & 15] + n[e >> 4 & 15] + n[15 & e] + n[e >> 12 & 15] + n[e >> 8 & 15] + n[e >> 20 & 15] + n[e >> 16 & 15] + n[e >> 28 & 15] + n[e >> 24 & 15] + n[i >> 4 & 15] + n[15 & i] + n[i >> 12 & 15] + n[i >> 8 & 15] + n[i >> 20 & 15] + n[i >> 16 & 15] + n[i >> 28 & 15] + n[i >> 24 & 15] }, t.prototype.toString = t.prototype.hex, t.prototype.digest = function () { this.finalize(); var t = this.h0, r = this.h1, e = this.h2, i = this.h3; return [255 & t, t >> 8 & 255, t >> 16 & 255, t >> 24 & 255, 255 & r, r >> 8 & 255, r >> 16 & 255, r >> 24 & 255, 255 & e, e >> 8 & 255, e >> 16 & 255, e >> 24 & 255, 255 & i, i >> 8 & 255, i >> 16 & 255, i >> 24 & 255] }, t.prototype.array = t.prototype.digest, t.prototype.arrayBuffer = function () { this.finalize(); var t = new ArrayBuffer(16), r = new Uint32Array(t); return r[0] = this.h0, r[1] = this.h1, r[2] = this.h2, r[3] = this.h3, t }, t.prototype.buffer = t.prototype.arrayBuffer, t.prototype.base64 = function () { for (var t, r, e, i = "", s = this.array(), h = 0; h < 15;)t = s[h++], r = s[h++], e = s[h++], i += p[t >>> 2] + p[63 & (t << 4 | r >>> 4)] + p[63 & (r << 2 | e >>> 6)] + p[63 & e]; return t = s[h], i + (p[t >>> 2] + p[t << 4 & 63] + "==") }; var _ = v(); f ? module.exports = _ : (i.md5 = _, o && define((function () { return _ }))) }(); \ No newline at end of file diff --git a/src/sidebar/settings.js b/src/sidebar/settings.js index 51e2422..820a645 100644 --- a/src/sidebar/settings.js +++ b/src/sidebar/settings.js @@ -44,7 +44,7 @@ export class SettingsPanel extends UIPanel { fontSize: parseInt(e.target.value) }); }; - fontSize.setId("fontsize") + fontSize.setId("fontsize"); fontSizeRow.add(fontSizeLabel); fontSizeRow.add(fontSize); From 7900f0974350062b646c80af4728c9a82b95fdc5 Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Tue, 14 Jan 2025 16:05:38 +0700 Subject: [PATCH 02/21] :fire: add Vietnamese language for setting --- src/strings.js | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/src/strings.js b/src/strings.js index d2adf0e..1d3825b 100644 --- a/src/strings.js +++ b/src/strings.js @@ -12,6 +12,7 @@ export class Strings { "toolbar/openbook/error": "Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.", "toolbar/bookmark": "Add this page to bookmarks", "toolbar/fullscreen": "Fullscreen", + "toolbar/background": "Change background", "sidebar/close": "Close Sidebar", "sidebar/contents": "Contents", @@ -60,6 +61,7 @@ export class Strings { "toolbar/openbook/error": "Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.", "toolbar/bookmark": "Insérer un marque page ici", "toolbar/fullscreen": "Plein écran", + "toolbar/background": "Changer l'arrière-plan", "sidebar/close": "???", "sidebar/contents": "Sommaire", @@ -108,6 +110,7 @@ export class Strings { "toolbar/openbook/error": "ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。", "toolbar/bookmark": "このページに栞を設定する", "toolbar/fullscreen": "フルスクリーン", + "toolbar/background": "背景を変更する", "sidebar/close": "???", "sidebar/contents": "目次", @@ -156,6 +159,7 @@ export class Strings { "toolbar/openbook/error": "Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.", "toolbar/bookmark": "Добавить эту страницу в закладки", "toolbar/fullscreen": "Полноэкранный режим", + "toolbar/background": "изменить фон", "sidebar/close": "Закрыть боковую панель", "sidebar/contents": "Содержание", @@ -195,6 +199,55 @@ export class Strings { "notedlg/label": "Заметка", "notedlg/add": "Добавить" + }, + vi: { + "toolbar/sidebar": "Thanh bên", + "toolbar/prev": "Trang trước", + "toolbar/next": "Trang kế tiếp", + "toolbar/openbook": "Mở sách", + "toolbar/openbook/error": "Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.", + "toolbar/bookmark": "Thêm trang này vào dấu trang", + "toolbar/fullscreen": "Toàn màn hình", + "toolbar/background": "Đổi màu nền", + + "sidebar/close": "Đóng thanh bên", + "sidebar/contents": "Nội dung", + "sidebar/bookmarks": "Dấu trang", + "sidebar/bookmarks/add": "Thêm dấu trang", + "sidebar/bookmarks/remove": "Xóa dấu trang", + "sidebar/bookmarks/clear": "???", + "sidebar/annotations": "Chú thích", + "sidebar/annotations/add": "Thêm chú thích", + "sidebar/annotations/remove": "Xóa chú thích", + "sidebar/annotations/clear": "???", + "sidebar/annotations/anchor": "???", + "sidebar/annotations/cancel": "???", + "sidebar/search": "Tìm kiếm", + "sidebar/search/placeholder": "???", + "sidebar/settings": "Cài đặt", + "sidebar/settings/language": "Ngôn ngữ", + "sidebar/settings/fontsize": "Cỡ chữ (%)", + "sidebar/settings/flow": "???", + "sidebar/settings/pagination": ["???", "???"], + "sidebar/settings/spread": "???", + "sidebar/settings/spread/minwidth": "????", + "sidebar/metadata": "Metadata", + "sidebar/metadata/title": "Chủ đề", + "sidebar/metadata/creator": "Người sáng tạo", + "sidebar/metadata/description": "Mô tả", + "sidebar/metadata/pubdate": "Ngày tạo", + "sidebar/metadata/publisher": "Nhà xuất bản", + "sidebar/metadata/identifier": "Định dạng", + "sidebar/metadata/language": "Ngôn ngữ", + "sidebar/metadata/rights": "Quyền", + "sidebar/metadata/modified_date": "Ngày sửa đổi", + "sidebar/metadata/layout": "???", // rendition:layout + "sidebar/metadata/flow": "???", // rendition:flow + "sidebar/metadata/spread": "???", // rendition:spread + "sidebar/metadata/direction": "???", // page-progression-direction + + "notedlg/label": "???", + "notedlg/add": "???" } }; From 152ad4d04a04c9d36972bf834ba5610bf4a65133 Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Tue, 14 Jan 2025 16:06:28 +0700 Subject: [PATCH 03/21] :memo: change port from 8080 into 8088 for Epubreader JS --- webpack.config.cjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webpack.config.cjs b/webpack.config.cjs index 4c99363..d223a63 100644 --- a/webpack.config.cjs +++ b/webpack.config.cjs @@ -23,7 +23,7 @@ const config = { hot: false, liveReload: true, compress: true, - port: 8080 + port: 8088 }, experiments: { outputModule: true From 4cf8e4bb740d24708adc64c54265f26ac2d05d43 Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Tue, 14 Jan 2025 16:08:13 +0700 Subject: [PATCH 04/21] : sparkles: add css for '#btn-bg' --- dist/css/common.css | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/dist/css/common.css b/dist/css/common.css index cf31c06..54380aa 100644 --- a/dist/css/common.css +++ b/dist/css/common.css @@ -1,4 +1,5 @@ -#sidebar, #notedlg { +#sidebar, +#notedlg { display: grid; overflow: hidden; position: absolute; @@ -75,6 +76,10 @@ background-image: url("../img/bookmarks.svg"); } +#btn-bg.box input { + background-image: url("../img/background.svg"); +} + #btn-f.box input { background-image: url("../img/resize-full.svg"); } @@ -106,8 +111,7 @@ /** * iPhone 5 : 320 x 568 */ -@media -only screen and (width: 320px) and (orientation: portrait), +@media only screen and (width: 320px) and (orientation: portrait), only screen and (height: 320px) and (orientation: landscape) { .box { min-height: 30px; From c8d068466d14f1aba3f06f66226da728f30a1ea3 Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Tue, 14 Jan 2025 16:08:35 +0700 Subject: [PATCH 05/21] :tada: init new img svg --- dist/img/background.svg | 1 + 1 file changed, 1 insertion(+) create mode 100644 dist/img/background.svg diff --git a/dist/img/background.svg b/dist/img/background.svg new file mode 100644 index 0000000..e05eb27 --- /dev/null +++ b/dist/img/background.svg @@ -0,0 +1 @@ + \ No newline at end of file From fe0bc65ede77f8251635e66ae4a230da48358f5a Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Tue, 14 Jan 2025 16:09:55 +0700 Subject: [PATCH 06/21] :art: format of code --- dist/js/epubreader.js | 120 ++++++++++++++++++++++++++++------ dist/js/epubreader.js.map | 2 +- dist/js/epubreader.min.js | 2 +- dist/js/epubreader.min.js.map | 2 +- dist/js/libs/epub.min.js | 2 +- dist/js/libs/jszip.min.js | 2 +- dist/js/libs/md5.min.js | 2 +- 7 files changed, 107 insertions(+), 25 deletions(-) diff --git a/dist/js/epubreader.js b/dist/js/epubreader.js index 651b5ce..dc2a050 100644 --- a/dist/js/epubreader.js +++ b/dist/js/epubreader.js @@ -584,7 +584,7 @@ __webpack_require__.d(__webpack_exports__, { // EXTERNAL MODULE: ./node_modules/event-emitter/index.js var event_emitter = __webpack_require__(68); -;// ./src/utils.js +;// CONCATENATED MODULE: ./src/utils.js const d = (obj, prop) => obj ? obj[prop] : undefined const q = (src, dst, ext, prop) => { @@ -643,7 +643,7 @@ const detectMobile = () => { ] return matches.some((i) => navigator.userAgent.match(i)) } -;// ./src/storage.js +;// CONCATENATED MODULE: ./src/storage.js class Storage { constructor() { @@ -744,7 +744,7 @@ class Storage { } } } -;// ./src/strings.js +;// CONCATENATED MODULE: ./src/strings.js class Strings { constructor(reader) { @@ -759,6 +759,7 @@ class Strings { "toolbar/openbook/error": "Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.", "toolbar/bookmark": "Add this page to bookmarks", "toolbar/fullscreen": "Fullscreen", + "toolbar/background": "Change background", "sidebar/close": "Close Sidebar", "sidebar/contents": "Contents", @@ -807,6 +808,7 @@ class Strings { "toolbar/openbook/error": "Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.", "toolbar/bookmark": "Insérer un marque page ici", "toolbar/fullscreen": "Plein écran", + "toolbar/background": "Changer l'arrière-plan", "sidebar/close": "???", "sidebar/contents": "Sommaire", @@ -855,6 +857,7 @@ class Strings { "toolbar/openbook/error": "ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。", "toolbar/bookmark": "このページに栞を設定する", "toolbar/fullscreen": "フルスクリーン", + "toolbar/background": "背景を変更する", "sidebar/close": "???", "sidebar/contents": "目次", @@ -903,6 +906,7 @@ class Strings { "toolbar/openbook/error": "Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.", "toolbar/bookmark": "Добавить эту страницу в закладки", "toolbar/fullscreen": "Полноэкранный режим", + "toolbar/background": "изменить фон", "sidebar/close": "Закрыть боковую панель", "sidebar/contents": "Содержание", @@ -942,6 +946,55 @@ class Strings { "notedlg/label": "Заметка", "notedlg/add": "Добавить" + }, + vi: { + "toolbar/sidebar": "Thanh bên", + "toolbar/prev": "Trang trước", + "toolbar/next": "Trang kế tiếp", + "toolbar/openbook": "Mở sách", + "toolbar/openbook/error": "Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.", + "toolbar/bookmark": "Thêm trang này vào dấu trang", + "toolbar/fullscreen": "Toàn màn hình", + "toolbar/background": "Đổi màu nền", + + "sidebar/close": "Đóng thanh bên", + "sidebar/contents": "Nội dung", + "sidebar/bookmarks": "Dấu trang", + "sidebar/bookmarks/add": "Thêm dấu trang", + "sidebar/bookmarks/remove": "Xóa dấu trang", + "sidebar/bookmarks/clear": "???", + "sidebar/annotations": "Chú thích", + "sidebar/annotations/add": "Thêm chú thích", + "sidebar/annotations/remove": "Xóa chú thích", + "sidebar/annotations/clear": "???", + "sidebar/annotations/anchor": "???", + "sidebar/annotations/cancel": "???", + "sidebar/search": "Tìm kiếm", + "sidebar/search/placeholder": "???", + "sidebar/settings": "Cài đặt", + "sidebar/settings/language": "Ngôn ngữ", + "sidebar/settings/fontsize": "Cỡ chữ (%)", + "sidebar/settings/flow": "???", + "sidebar/settings/pagination": ["???", "???"], + "sidebar/settings/spread": "???", + "sidebar/settings/spread/minwidth": "????", + "sidebar/metadata": "Metadata", + "sidebar/metadata/title": "Chủ đề", + "sidebar/metadata/creator": "Người sáng tạo", + "sidebar/metadata/description": "Mô tả", + "sidebar/metadata/pubdate": "Ngày tạo", + "sidebar/metadata/publisher": "Nhà xuất bản", + "sidebar/metadata/identifier": "Định dạng", + "sidebar/metadata/language": "Ngôn ngữ", + "sidebar/metadata/rights": "Quyền", + "sidebar/metadata/modified_date": "Ngày sửa đổi", + "sidebar/metadata/layout": "???", // rendition:layout + "sidebar/metadata/flow": "???", // rendition:flow + "sidebar/metadata/spread": "???", // rendition:spread + "sidebar/metadata/direction": "???", // page-progression-direction + + "notedlg/label": "???", + "notedlg/add": "???" } }; @@ -952,7 +1005,7 @@ class Strings { get(key) { return this.values[this.language][key] || "???"; } } -;// ./src/ui.js +;// CONCATENATED MODULE: ./src/ui.js /** * @author mrdoob https://github.com/mrdoob/ui.js */ @@ -1717,7 +1770,7 @@ class UIBox extends UIElement { this.add(items); } } -;// ./src/toolbar.js +;// CONCATENATED MODULE: ./src/toolbar.js class Toolbar { @@ -1735,8 +1788,11 @@ class Toolbar { "toolbar/openbook", "toolbar/openbook/error", "toolbar/bookmark", - "toolbar/fullscreen" + "toolbar/fullscreen", + "toolbar/background" ]; + + // Toolbar Menu 1 const menu1 = new UIDiv().setClass("menu-1"); const openerBox = new UIDiv().setId("btn-m").setClass("box"); const openerBtn = new UIInput("button"); @@ -1778,7 +1834,25 @@ class Toolbar { menu1.add(nextBox); } + // Toolbar Menu 2 const menu2 = new UIDiv().setClass("menu-2"); + + // Button change background + let backgroundBox, backgroundBtn; + if (settings.background) { + backgroundBox = new UIDiv().setId("btn-bg").setClass("box"); + backgroundBtn = new UIInput("color"); + backgroundBtn.dom.title = strings.get(keys[7]); + backgroundBtn.dom.value = "#ffffff"; + backgroundBtn.dom.onchange = (e) => { + const selectedColor = e.target.value; + document.body.style.backgroundColor = selectedColor; + }; + backgroundBox.add(backgroundBtn); + menu2.add(backgroundBox); + } + + // Button open file let openbookBtn; if (settings.openbook) { const onload = (e) => { @@ -1822,6 +1896,7 @@ class Toolbar { menu2.add(openbookBox); } + // Button Bookmark let bookmarkBox, bookmarkBtn; if (settings.bookmarks) { bookmarkBox = new UIDiv().setId("btn-b").setClass("box"); @@ -1839,6 +1914,7 @@ class Toolbar { menu2.add(bookmarkBox); } + // Button Full Screen let fullscreenBtn; if (settings.fullscreen) { @@ -1923,6 +1999,9 @@ class Toolbar { if (settings.fullscreen) { fullscreenBtn.setTitle(strings.get(keys[6])); } + if (settings.background) { + backgroundBtn.setTitle(strings.get(keys[7])); + } }); } @@ -1937,7 +2016,7 @@ class Toolbar { } } } -;// ./src/content.js +;// CONCATENATED MODULE: ./src/content.js class Content { @@ -2056,7 +2135,7 @@ class Content { }); } } -;// ./src/sidebar/toc.js +;// CONCATENATED MODULE: ./src/sidebar/toc.js class TocPanel extends UIPanel { @@ -2147,7 +2226,7 @@ class TocPanel extends UIPanel { return list; } } -;// ./src/sidebar/bookmarks.js +;// CONCATENATED MODULE: ./src/sidebar/bookmarks.js class BookmarksPanel extends UIPanel { @@ -2284,7 +2363,7 @@ class BookmarksPanel extends UIPanel { this.bookmarks.add(item); } } -;// ./src/sidebar/annotations.js +;// CONCATENATED MODULE: ./src/sidebar/annotations.js class AnnotationsPanel extends UIPanel { @@ -2394,7 +2473,7 @@ class AnnotationsPanel extends UIPanel { this.update(); } } -;// ./src/sidebar/search.js +;// CONCATENATED MODULE: ./src/sidebar/search.js class SearchPanel extends UIPanel { @@ -2469,7 +2548,7 @@ class SearchPanel extends UIPanel { this.items.add(item); } } -;// ./src/sidebar/settings.js +;// CONCATENATED MODULE: ./src/sidebar/settings.js class SettingsPanel extends UIPanel { @@ -2497,7 +2576,8 @@ class SettingsPanel extends UIPanel { en: "English", fr: "French", ja: "Japanese", - ru: "Russian" + ru: "Russian", + vi: "Vietnamese" }); language.dom.onchange = (e) => { @@ -2516,7 +2596,7 @@ class SettingsPanel extends UIPanel { fontSize: parseInt(e.target.value) }); }; - fontSize.setId("fontsize") + fontSize.setId("fontsize"); fontSizeRow.add(fontSizeLabel); fontSizeRow.add(fontSize); @@ -2640,7 +2720,7 @@ class SettingsPanel extends UIPanel { }); } } -;// ./src/sidebar/metadata.js +;// CONCATENATED MODULE: ./src/sidebar/metadata.js class MetadataPanel extends UIPanel { @@ -2706,7 +2786,7 @@ class MetadataPanel extends UIPanel { }); } } -;// ./src/sidebar.js +;// CONCATENATED MODULE: ./src/sidebar.js @@ -2786,7 +2866,7 @@ class Sidebar { }); } } -;// ./src/notedlg.js +;// CONCATENATED MODULE: ./src/notedlg.js @@ -2859,7 +2939,7 @@ class NoteDlg { }); } } -;// ./src/reader.js +;// CONCATENATED MODULE: ./src/reader.js @@ -3092,7 +3172,8 @@ class Reader { fontSize: 100 }, pagination: undefined, // not implemented - fullscreen: document.fullscreenEnabled + fullscreen: document.fullscreenEnabled, + background: [], }; extend(settings || {}, this.settings); @@ -3166,6 +3247,7 @@ class Reader { delete cfg.openbook; delete cfg.pagination; delete cfg.fullscreen; + delete cfg.background; localStorage.setItem(this.entryKey, JSON.stringify(cfg)); } diff --git a/dist/js/epubreader.js.map b/dist/js/epubreader.js.map index 9f09115..cc52d42 100644 --- a/dist/js/epubreader.js.map +++ b/dist/js/epubreader.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;AC9MA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;AACP;AACA;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AC3vByC;;AAElC;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,oBAAoB,KAAK;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AC1NwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,gBAAgB,MAAM;AACtB;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,gBAAgB,MAAM;AACtB;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;ACrHyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;ACzFyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACvI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC5GkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;ACzKyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,uDAAuD,cAAc;AACrE;AACA;AACA,uDAAuD,gBAAgB;AACvE;AACA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AC9EkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;;AAEhC;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\"\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\"\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\"\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\"\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\t\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag); \n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}","import { UIDiv, UIInput } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\"\n\t\t];\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tprev.add(new UISpan(\"<\"));\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tnext.add(new UISpan(\">\"));\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\t\t\t\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(100, 1);\n\t\tfontSize.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\tfontSize: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tfontSize.setId(\"fontsize\")\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), new AnnotationsPanel(reader));\n\t\t}\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"%\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 100\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 2;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 100;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;ACnQA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;AACP;AACA;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AC3vByC;;AAElC;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;;AAEzB;AACA;AACA;AACA,uBAAuB,KAAK;AAC5B,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;ACpPwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,gBAAgB,MAAM;AACtB;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,gBAAgB,MAAM;AACtB;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;ACrHyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;ACzFyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACvI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC5GkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AC1KyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,uDAAuD,cAAc;AACrE;AACA;AACA,uDAAuD,gBAAgB;AACvE;AACA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AC9EkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;;AAEhC;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\"\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\"\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\"\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\"\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\"\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\t\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag); \n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}","import { UIDiv, UIInput } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\"\n\t\t];\n\n\t\t// Toolbar Menu 1\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t// Toolbar Menu 2\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\n\t\t// Button change background\n\t\tlet backgroundBox, backgroundBtn;\n\t\tif (settings.background) {\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tbackgroundBtn = new UIInput(\"color\");\n\t\t\tbackgroundBtn.dom.title = strings.get(keys[7]);\n\t\t\tbackgroundBtn.dom.value = \"#ffffff\";\n\t\t\tbackgroundBtn.dom.onchange = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\t\t\t\tdocument.body.style.backgroundColor = selectedColor;\n\t\t\t};\n\t\t\tbackgroundBox.add(backgroundBtn);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tprev.add(new UISpan(\"<\"));\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tnext.add(new UISpan(\">\"));\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\t\t\t\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(100, 1);\n\t\tfontSize.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\tfontSize: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), new AnnotationsPanel(reader));\n\t\t}\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"%\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 100\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 2;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 100;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/dist/js/epubreader.min.js b/dist/js/epubreader.min.js index e45ec77..54e5b68 100644 --- a/dist/js/epubreader.min.js +++ b/dist/js/epubreader.min.js @@ -1,2 +1,2 @@ -var e = { 263: (e, t, s) => { var a = s(175), o = s(873), n = s(596), i = s(148), r = s(214); (e.exports = function (e, t) { var s, o, d, l, c; return arguments.length < 2 || "string" != typeof e ? (l = t, t = e, e = null) : l = arguments[2], a(e) ? (s = r.call(e, "c"), o = r.call(e, "e"), d = r.call(e, "w")) : (s = d = !0, o = !1), c = { value: t, configurable: s, enumerable: o, writable: d }, l ? n(i(l), c) : c }).gs = function (e, t, s) { var d, l, c, h; return "string" != typeof e ? (c = s, s = t, t = e, e = null) : c = arguments[3], a(t) ? o(t) ? a(s) ? o(s) || (c = s, s = void 0) : s = void 0 : (c = t, t = s = void 0) : t = void 0, a(e) ? (d = r.call(e, "c"), l = r.call(e, "e")) : (d = !0, l = !1), h = { get: t, set: s, configurable: d, enumerable: l }, c ? n(i(c), h) : h } }, 11: e => { e.exports = function () { } }, 596: (e, t, s) => { e.exports = s(339)() ? Object.assign : s(595) }, 339: e => { e.exports = function () { var e, t = Object.assign; return "function" == typeof t && (t(e = { foo: "raz" }, { bar: "dwa" }, { trzy: "trzy" }), e.foo + e.bar + e.trzy === "razdwatrzy") } }, 595: (e, t, s) => { var a = s(93), o = s(134), n = Math.max; e.exports = function (e, t) { var s, i, r, d = n(arguments.length, 2); for (e = Object(o(e)), r = function (a) { try { e[a] = t[a] } catch (e) { s || (s = e) } }, i = 1; i < d; ++i)a(t = arguments[i]).forEach(r); if (void 0 !== s) throw s; return e } }, 762: (e, t, s) => { var a = s(11)(); e.exports = function (e) { return e !== a && null !== e } }, 93: (e, t, s) => { e.exports = s(380)() ? Object.keys : s(232) }, 380: e => { e.exports = function () { try { return Object.keys("primitive"), !0 } catch (e) { return !1 } } }, 232: (e, t, s) => { var a = s(762), o = Object.keys; e.exports = function (e) { return o(a(e) ? Object(e) : e) } }, 148: (e, t, s) => { var a = s(762), o = Array.prototype.forEach, n = Object.create; e.exports = function (e) { var t = n(null); return o.call(arguments, (function (e) { a(e) && function (e, t) { var s; for (s in e) t[s] = e[s] }(Object(e), t) })), t } }, 499: e => { e.exports = function (e) { if ("function" != typeof e) throw new TypeError(e + " is not a function"); return e } }, 134: (e, t, s) => { var a = s(762); e.exports = function (e) { if (!a(e)) throw new TypeError("Cannot use null or undefined"); return e } }, 214: (e, t, s) => { e.exports = s(525)() ? String.prototype.contains : s(521) }, 525: e => { var t = "razdwatrzy"; e.exports = function () { return "function" == typeof t.contains && !0 === t.contains("dwa") && !1 === t.contains("foo") } }, 521: e => { var t = String.prototype.indexOf; e.exports = function (e) { return t.call(this, e, arguments[1]) > -1 } }, 68: (e, t, s) => { var a, o, n, i, r, d, l, c = s(263), h = s(499), b = Function.prototype.apply, u = Function.prototype.call, m = Object.create, g = Object.defineProperty, p = Object.defineProperties, f = Object.prototype.hasOwnProperty, w = { configurable: !0, enumerable: !1, writable: !0 }; o = function (e, t) { var s, o; return h(t), o = this, a.call(this, e, s = function () { n.call(o, e, s), b.call(t, this, arguments) }), s.__eeOnceListener__ = t, this }, r = { on: a = function (e, t) { var s; return h(t), f.call(this, "__ee__") ? s = this.__ee__ : (s = w.value = m(null), g(this, "__ee__", w), w.value = null), s[e] ? "object" == typeof s[e] ? s[e].push(t) : s[e] = [s[e], t] : s[e] = t, this }, once: o, off: n = function (e, t) { var s, a, o, n; if (h(t), !f.call(this, "__ee__")) return this; if (!(s = this.__ee__)[e]) return this; if ("object" == typeof (a = s[e])) for (n = 0; o = a[n]; ++n)o !== t && o.__eeOnceListener__ !== t || (2 === a.length ? s[e] = a[n ? 0 : 1] : a.splice(n, 1)); else a !== t && a.__eeOnceListener__ !== t || delete s[e]; return this }, emit: i = function (e) { var t, s, a, o, n; if (f.call(this, "__ee__") && (o = this.__ee__[e])) if ("object" == typeof o) { for (s = arguments.length, n = new Array(s - 1), t = 1; t < s; ++t)n[t - 1] = arguments[t]; for (o = o.slice(), t = 0; a = o[t]; ++t)b.call(a, this, n) } else switch (arguments.length) { case 1: u.call(o, this); break; case 2: u.call(o, this, arguments[1]); break; case 3: u.call(o, this, arguments[1], arguments[2]); break; default: for (s = arguments.length, n = new Array(s - 1), t = 1; t < s; ++t)n[t - 1] = arguments[t]; b.call(o, this, n) } } }, d = { on: c(a), once: c(o), off: c(n), emit: c(i) }, l = p({}, d), e.exports = t = function (e) { return null == e ? m(l) : p(Object(e), d) }, t.methods = r }, 80: (e, t, s) => { var a = s(202); e.exports = function (e) { if ("function" != typeof e) return !1; if (!hasOwnProperty.call(e, "length")) return !1; try { if ("number" != typeof e.length) return !1; if ("function" != typeof e.call) return !1; if ("function" != typeof e.apply) return !1 } catch (e) { return !1 } return !a(e) } }, 181: (e, t, s) => { var a = s(175), o = { object: !0, function: !0, undefined: !0 }; e.exports = function (e) { return !!a(e) && hasOwnProperty.call(o, typeof e) } }, 873: (e, t, s) => { var a = s(80), o = /^\s*class[\s{/}]/, n = Function.prototype.toString; e.exports = function (e) { return !!a(e) && !o.test(n.call(e)) } }, 202: (e, t, s) => { var a = s(181); e.exports = function (e) { if (!a(e)) return !1; try { return !!e.constructor && e.constructor.prototype === e } catch (e) { return !1 } } }, 175: e => { e.exports = function (e) { return null != e } } }, t = {}; function s(a) { var o = t[a]; if (void 0 !== o) return o.exports; var n = t[a] = { exports: {} }; return e[a](n, n.exports, s), n.exports } s.d = (e, t) => { for (var a in t) s.o(t, a) && !s.o(e, a) && Object.defineProperty(e, a, { enumerable: !0, get: t[a] }) }, s.o = (e, t) => Object.prototype.hasOwnProperty.call(e, t), s.r = e => { "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(e, "__esModule", { value: !0 }) }; var a = {}; s.r(a), s.d(a, { Reader: () => R }); var o = s(68); const n = (e, t) => e ? e[t] : void 0, i = (e, t, s, a) => { let o; if ("boolean" == typeof t[a]) switch (a) { case "annotations": case "bookmarks": o = t[a] ? e[a] : t[a]; break; default: o = t[a] } else o = "arrows" === a ? t[a] : void 0 === n(s, a) ? e[a] : t[a]; return o }, r = (e, t, s) => { for (let a in e) "bookPath" !== a && (t[a] instanceof Array ? t[a] = s ? e[a] ? e[a] : t[a] : e[a] : t[a] instanceof Object ? r(e[a], t[a], n(s, a)) : t[a] = s ? i(e, t, s, a) : e[a]) }, d = () => { let e = (new Date).getTime(); return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (t => { let s = (e + 16 * Math.random()) % 16 | 0; return e = Math.floor(e / 16), ("x" === t ? s : 7 & s | 8).toString(16) })) }; class l { constructor() { this.name = "epubreader-js", this.version = 1, this.db, this.indexedDB = window.indexedDB || window.webkitIndexedDB || window.mozIndexedDB || window.OIndexedDB || window.msIndexedDB, void 0 === this.indexedDB && console.error("The IndexedDB API not available in your browser.") } init(e) { if (void 0 === this.indexedDB) return void e(); const t = Date.now(), s = e => console.error("IndexedDB", e), a = indexedDB.open(this.name, this.version); a.onupgradeneeded = e => { const t = e.target.result; !1 === t.objectStoreNames.contains("entries") && t.createObjectStore("entries") }, a.onsuccess = a => { this.db = a.target.result, this.db.onerror = s, e(), console.log(`storage.init: ${Date.now() - t} ms`) }, a.onerror = s } get(e) { if (void 0 === this.db) return void e(); const t = Date.now(); this.db.transaction(["entries"], "readwrite").objectStore("entries").get(0).onsuccess = s => { e(s.target.result), console.log(`storage.get: ${Date.now() - t} ms`) } } set(e, t) { if (void 0 === this.db) return void t(); const s = Date.now(); this.db.transaction(["entries"], "readwrite").objectStore("entries").put(e, 0).onsuccess = () => { t(), console.log(`storage.set: ${Date.now() - s} ms`) } } clear() { if (void 0 === this.db) return; const e = Date.now(); this.db.transaction(["entries"], "readwrite").objectStore("entries").clear().onsuccess = () => { console.log(`storage.clear: ${Date.now() - e} ms`) } } } class c { constructor(e) { this.language = e.settings.language || "en", this.values = { en: { "toolbar/sidebar": "Sidebar", "toolbar/prev": "Previous page", "toolbar/next": "Next page", "toolbar/openbook": "Open book", "toolbar/openbook/error": "Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.", "toolbar/bookmark": "Add this page to bookmarks", "toolbar/fullscreen": "Fullscreen", "sidebar/close": "Close Sidebar", "sidebar/contents": "Contents", "sidebar/bookmarks": "Bookmarks", "sidebar/bookmarks/add": "Add", "sidebar/bookmarks/remove": "Remove", "sidebar/bookmarks/clear": "Clear", "sidebar/annotations": "Annotations", "sidebar/annotations/add": "Add", "sidebar/annotations/remove": "Remove", "sidebar/annotations/clear": "Clear", "sidebar/annotations/anchor": "Anchor", "sidebar/annotations/cancel": "Cancel", "sidebar/search": "Search", "sidebar/search/placeholder": "Search", "sidebar/settings": "Settings", "sidebar/settings/language": "Language", "sidebar/settings/fontsize": "Font size (%)", "sidebar/settings/flow": "Flow", "sidebar/settings/pagination": ["Pagination", "Generate pagination"], "sidebar/settings/spread": "Spread", "sidebar/settings/spread/minwidth": "Minimum spread width", "sidebar/metadata": "Metadata", "sidebar/metadata/title": "Title", "sidebar/metadata/creator": "Creator", "sidebar/metadata/description": "Description", "sidebar/metadata/pubdate": "Pubdate", "sidebar/metadata/publisher": "Publisher", "sidebar/metadata/identifier": "Identifier", "sidebar/metadata/language": "Language", "sidebar/metadata/rights": "Rights", "sidebar/metadata/modified_date": "Modified date", "sidebar/metadata/layout": "Layout", "sidebar/metadata/flow": "Flow", "sidebar/metadata/spread": "Spread", "sidebar/metadata/direction": "Direction", "notedlg/label": "Note", "notedlg/add": "Add" }, fr: { "toolbar/sidebar": "Barre latérale", "toolbar/prev": "???", "toolbar/next": "???", "toolbar/openbook": "Ouvrir un livre local", "toolbar/openbook/error": "Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.", "toolbar/bookmark": "Insérer un marque page ici", "toolbar/fullscreen": "Plein écran", "sidebar/close": "???", "sidebar/contents": "Sommaire", "sidebar/bookmarks": "Marque-pages", "sidebar/bookmarks/add": "Ajouter", "sidebar/bookmarks/remove": "Retirer", "sidebar/bookmarks/clear": "Tout enlever", "sidebar/annotations": "Annotations", "sidebar/annotations/add": "Ajouter", "sidebar/annotations/remove": "Retirer", "sidebar/annotations/clear": "Tout enlever", "sidebar/annotations/anchor": "Ancre", "sidebar/annotations/cancel": "Annuler", "sidebar/search": "Rechercher", "sidebar/search/placeholder": "rechercher", "sidebar/settings": "Réglages", "sidebar/settings/language": "Langue", "sidebar/settings/fontsize": "???", "sidebar/settings/flow": "???", "sidebar/settings/pagination": ["Pagination", "Établir une pagination"], "sidebar/settings/spread": "???", "sidebar/settings/spread/minwidth": "???", "sidebar/metadata": "???", "sidebar/metadata/title": "???", "sidebar/metadata/creator": "???", "sidebar/metadata/description": "???", "sidebar/metadata/pubdate": "???", "sidebar/metadata/publisher": "???", "sidebar/metadata/identifier": "???", "sidebar/metadata/language": "Langue", "sidebar/metadata/rights": "???", "sidebar/metadata/modified_date": "???", "sidebar/metadata/layout": "???", "sidebar/metadata/flow": "???", "sidebar/metadata/spread": "???", "sidebar/metadata/direction": "???", "notedlg/label": "???", "notedlg/add": "Ajouter" }, ja: { "toolbar/sidebar": "サイドバー", "toolbar/prev": "???", "toolbar/next": "???", "toolbar/openbook": "本を開く", "toolbar/openbook/error": "ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。", "toolbar/bookmark": "このページに栞を設定する", "toolbar/fullscreen": "フルスクリーン", "sidebar/close": "???", "sidebar/contents": "目次", "sidebar/bookmarks": "栞", "sidebar/bookmarks/add": "追加", "sidebar/bookmarks/remove": "削除", "sidebar/bookmarks/clear": "クリア", "sidebar/annotations": "注釈", "sidebar/annotations/add": "追加", "sidebar/bookmarks/remove": "削除", "sidebar/annotations/clear": "クリア", "sidebar/annotations/anchor": "アンカー", "sidebar/annotations/cancel": "キャンセル", "sidebar/search": "検索", "sidebar/search/placeholder": "検索", "sidebar/settings": "設定", "sidebar/settings/language": "表示言語", "sidebar/settings/fontsize": "???", "sidebar/settings/flow": "???", "sidebar/settings/pagination": ["ページネーション", "ページネーションを生成します。"], "sidebar/settings/spread": "???", "sidebar/settings/spread/minwidth": "???", "sidebar/metadata": "???", "sidebar/metadata/title": "???", "sidebar/metadata/creator": "???", "sidebar/metadata/description": "???", "sidebar/metadata/pubdate": "???", "sidebar/metadata/publisher": "???", "sidebar/metadata/identifier": "???", "sidebar/metadata/language": "表示言語", "sidebar/metadata/rights": "???", "sidebar/metadata/modified_date": "???", "sidebar/metadata/layout": "???", "sidebar/metadata/flow": "???", "sidebar/metadata/spread": "???", "sidebar/metadata/direction": "???", "notedlg/label": "???", "notedlg/add": "追加" }, ru: { "toolbar/sidebar": "Боковая панель", "toolbar/prev": "Предыдущая страница", "toolbar/next": "Следущая страница", "toolbar/openbook": "Открыть книгу", "toolbar/openbook/error": "Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.", "toolbar/bookmark": "Добавить эту страницу в закладки", "toolbar/fullscreen": "Полноэкранный режим", "sidebar/close": "Закрыть боковую панель", "sidebar/contents": "Содержание", "sidebar/bookmarks": "Закладки", "sidebar/bookmarks/add": "Добавить", "sidebar/bookmarks/remove": "Удалить", "sidebar/bookmarks/clear": "Очистить", "sidebar/annotations": "Аннотации", "sidebar/annotations/add": "Добавить", "sidebar/annotations/remove": "Удалить", "sidebar/annotations/clear": "Очистить", "sidebar/annotations/anchor": "Метка", "sidebar/annotations/cancel": "Отмена", "sidebar/search": "Поиск", "sidebar/search/placeholder": "Поиск", "sidebar/settings": "Настройки", "sidebar/settings/language": "Язык", "sidebar/settings/fontsize": "Размер шрифта", "sidebar/settings/flow": "Поток", "sidebar/settings/pagination": ["Нумерация страниц", "Генерировать нумерацию страниц"], "sidebar/settings/spread": "Разворот", "sidebar/settings/spread/minwidth": "Мин. ширина колонки", "sidebar/metadata": "Метаданные", "sidebar/metadata/title": "Заголовок", "sidebar/metadata/creator": "Автор", "sidebar/metadata/description": "Описание", "sidebar/metadata/pubdate": "Дата публикации", "sidebar/metadata/publisher": "Издатель", "sidebar/metadata/identifier": "Идентификатор", "sidebar/metadata/language": "Язык", "sidebar/metadata/rights": "Лицензия", "sidebar/metadata/modified_date": "Дата изменения", "sidebar/metadata/layout": "Макет", "sidebar/metadata/flow": "Поток", "sidebar/metadata/spread": "Разворот", "sidebar/metadata/direction": "Направление", "notedlg/label": "Заметка", "notedlg/add": "Добавить" } }, e.on("languagechanged", (e => { this.language = e })) } get(e) { return this.values[this.language][e] || "???" } } const h = "is not an instance of UIElement."; class b { constructor(e) { this.dom = document.createElement(e) } add() { for (let e = 0; e < arguments.length; e++) { const t = arguments[e]; if (t instanceof b) this.dom.appendChild(t.dom); else if (Array.isArray(t)) for (let e = 0; e < t.length; e++) { const s = t[e]; s instanceof b ? this.dom.appendChild(s.dom) : console.error("UIElement:", s, h) } else console.error("UIElement:", t, h) } return this } remove() { for (let e = 0; e < arguments.length; e++) { const t = arguments[e]; t instanceof b ? this.dom.removeChild(t.dom) : Number.isInteger(t) ? this.dom.removeChild(this.dom.childNodes[t]) : console.error("UIElement:", t, h) } return this } clear() { for (; this.dom.children.length;)this.dom.removeChild(this.dom.lastChild); return this } setId(e) { return this.dom.id = e, this } getId() { return this.dom.id } removeAttribute(e) { return this.dom.removeAttribute(e), this } setClass(e) { return this.dom.className = e, this } addClass(e) { return this.dom.classList.add(e), this } removeClass(e) { return this.dom.classList.remove(e), this } setStyle(e, t) { return this.dom.style[e] = t, this } getTitle() { return this.dom.title } setTitle(e) { return this.dom.title !== e && e && (this.dom.title = e), this } getTextContent() { return this.dom.textContent } setTextContent(e) { return this.dom.textContent !== e && e && (this.dom.textContent = e), this } getBoundingClientRect() { return this.dom.getBoundingClientRect() } } class u extends b { constructor(e) { super("span"), this.setTextContent(e) } } class m extends b { constructor() { super("div") } } class g extends m { constructor() { super(), this.dom.className = "row" } } class p extends m { constructor() { super(), this.dom.className = "panel" } } class f extends b { constructor(e, t) { super("label"), this.dom.textContent = e, t && (this.dom.htmlFor = t) } } class w extends b { constructor(e, t) { super("a"), this.dom.href = e || "#", this.dom.textContent = t || "" } setHref(e) { return this.dom.href = e, this } } class v extends u { constructor(e) { super(), this.dom.textContent = e } getValue() { return this.dom.textContent } setValue(e) { return this.dom.textContent = e, this } } class k extends b { constructor() { super("select") } setMultiple(e) { return this.dom.multiple = e || !1, this } setOptions(e) { const t = this.dom.value; this.clear(); for (const t in e) { const s = document.createElement("option"); s.value = t, s.text = e[t], this.dom.appendChild(s) } return this.dom.value = t, this } getValue() { return this.dom.value } setValue(e) { return e = String(e), this.dom.value !== e && (this.dom.value = e), this } } class x extends b { constructor(e, t, s) { super("input"), this.dom.type = e, this.dom.onkeydown = e => { e.stopPropagation() }, this.setValue(t), this.setTitle(s) } getName() { return this.dom.name } setName(e) { return this.dom.name = e, this } getType() { return this.dom.type } setType(e) { return this.dom.type = e, this } getValue() { return this.dom.value } setValue(e) { return this.dom.value !== e && void 0 !== e && (this.dom.value = e), this } } class y extends b { constructor(e, t, s, a, o) { super("input"), this.dom.type = "number", this.dom.step = t || 1, this.dom.onkeydown = e => { e.stopPropagation() }, this.value = e || 0, this.min = s || -1 / 0, this.max = a || 1 / 0, this.precision = o || 0, this.setValue(e), this.dom.onchange = e => { this.setValue(this.value) } } getName() { return this.dom.name } setName(e) { return this.dom.name = e, this } setPrecision(e) { return this.precision = e, this.setValue(this.value), this } setRange(e, t) { return this.min = e, this.max = t, this.dom.min = e, this.dom.max = t, this } setStep(e) { return this.dom.step = e, this } getValue() { return parseFloat(this.dom.value) } setValue(e) { return void 0 !== e && ((e = parseFloat(e)) < this.min && (e = this.min), e > this.max && (e = this.max), this.value = e, this.dom.value = e.toFixed(this.precision)), this } } class C extends m { constructor(e) { super(), this.align = e || "horizontal", this.tabs = [], this.panels = [], this.selector = (new u).setClass("tab-selector"), this.menuDiv = (new m).setClass("menu"), this.tabsDiv = (new m).setClass("tabs"), this.tabsDiv.add(this.selector), this.panelsDiv = (new m).setClass("panels"), this.selected = "", this.add(this.menuDiv), this.add(this.tabsDiv), this.add(this.panelsDiv) } addMenu(e) { this.menuDiv.add(e) } addTab(e, t, s) { const a = new I(t, this); a.setId(e), a.setClass("box"), this.tabs.push(a), this.tabsDiv.add(a); const o = new m; o.setId(e), o.add(s), this.panels.push(o), this.panelsDiv.add(o), this.select(e) } select(e) { for (let t of this.tabs) t.dom.id === e ? (t.addClass("selected"), this.transformSelector(t)) : t.dom.id === this.selected && t.removeClass("selected"); for (let t of this.panels) t.dom.id === e ? t.dom.style.display = "block" : t.dom.id === this.selected && (t.dom.style.display = "none"); return this.selected = e, this } setLabel(e, t) { for (let s of this.tabs) if (s.dom.id === e) { s.setTitle(t); break } } transformSelector(e) { let t; const s = e.getBoundingClientRect(); "horizontal" === this.align ? (t = s.width * this.tabs.indexOf(e), this.selector.dom.style.transform = `translateX(${t}px)`) : (t = s.height * this.tabs.indexOf(e), this.selector.dom.style.transform = `translateY(${t}px)`) } } class I extends m { constructor(e, t) { super(), this.button = new x("button"), this.button.dom.title = e, this.dom.onclick = e => { t.select(this.dom.id), e.preventDefault() }, this.add(this.button) } } class S extends b { constructor(e) { super("ul"), this.parent = e && e.parent, this.expanded = !1 } expand() { return this.expanded = !0, this.dom.style.display = "block", this.parent && this.parent.expand(), this } collaps() { return this.expanded = !1, this.dom.style.display = "none", this } } class D extends b { constructor(e) { super("li"), this.parent = e, this.selected = !1 } add() { let e = 0; const t = (new m).setId("item-box"); for (let s = 0; s < arguments.length; s++) { const a = arguments[s]; a instanceof S ? super.add(a) : (t.add(a), e++) } return e && super.add(t), this } select() { return this.selected = !0, this.setClass("selected"), this } unselect() { return this.selected = !1, this.removeAttribute("class"), this } } class T extends b { constructor(e) { super("div"), this.setClass("box"), this.add(e) } } class _ { constructor(e) { const t = e.strings, s = e.settings, a = (new m).setId("toolbar"), o = ["toolbar/sidebar", "toolbar/prev", "toolbar/next", "toolbar/openbook", "toolbar/openbook/error", "toolbar/bookmark", "toolbar/fullscreen"], n = (new m).setClass("menu-1"), i = (new m).setId("btn-m").setClass("box"), r = new x("button"); let d, l, c, h; r.dom.title = t.get(o[0]), r.dom.onclick = t => { e.emit("sidebaropener", !0), r.dom.blur(), t.preventDefault() }, i.add(r), n.add(i), "toolbar" === s.arrows && (d = (new m).setId("btn-p").setClass("box"), l = new x("button"), l.setTitle(t.get(o[1])), l.dom.onclick = t => { e.emit("prev"), t.preventDefault(), l.dom.blur() }, d.add(l), n.add(d), c = (new m).setId("btn-n").setClass("box"), h = new x("button"), h.dom.title = t.get(o[2]), h.dom.onclick = t => { e.emit("next"), t.preventDefault(), h.dom.blur() }, c.add(h), n.add(c)); const b = (new m).setClass("menu-2"); let u, g, p, f; if (s.openbook) { const s = t => { e.storage.clear(), e.storage.set(t.target.result, (() => { e.unload(), e.init(t.target.result); const s = new URL(window.location.origin); window.history.pushState({}, "", s) })) }, a = e => { console.error(e) }, n = (new m).setId("btn-o").setClass("box"); u = new x("file"), u.dom.title = t.get(o[3]), u.dom.accept = "application/epub+zip", u.dom.onchange = e => { if (0 !== e.target.files.length) if (window.FileReader) { const t = new FileReader; t.onload = s, t.readAsArrayBuffer(e.target.files[0]), t.onerror = a } else alert(t.get(o[4])) }, u.dom.onclick = e => { u.dom.blur() }, n.add(u), b.add(n) } if (s.bookmarks && (g = (new m).setId("btn-b").setClass("box"), p = new x("button"), p.setTitle(t.get(o[5])), p.dom.onclick = t => { const s = this.locationCfi, a = -1 === e.isBookmarked(s); e.emit("bookmarked", a), t.preventDefault(), p.dom.blur() }, g.add(p), b.add(g)), s.fullscreen) { const e = (new m).setId("btn-f").setClass("box"); f = new x("button"), f.setTitle(t.get(o[6])), f.dom.onclick = e => { this.toggleFullScreen(), e.preventDefault() }, document.onkeydown = e => { "F11" === e.key && (e.preventDefault(), this.toggleFullScreen()) }, document.onfullscreenchange = t => { const s = window.screen.width === t.target.clientWidth, a = window.screen.height === t.target.clientHeight; s && a ? e.addClass("resize-small") : e.removeClass("resize-small") }, e.add(f), b.add(e) } a.add([n, b]), document.body.appendChild(a.dom), e.on("relocated", (t => { if (s.bookmarks) { const s = t.start.cfi; -1 === e.isBookmarked(s) ? g.removeClass("bookmarked") : g.addClass("bookmarked"), this.locationCfi = s } "toolbar" === s.arrows && (d.dom.style.display = t.atStart ? "none" : "block", c.dom.style.display = t.atEnd ? "none" : "block") })), e.on("bookmarked", (e => { e ? g.addClass("bookmarked") : g.removeClass("bookmarked") })), e.on("languagechanged", (e => { r.setTitle(t.get(o[0])), "toolbar" === s.arrows && (l.setTitle(t.get(o[1])), h.setTitle(t.get(o[2]))), s.openbook && u.setTitle(t.get(o[3])), s.bookmarks && p.setTitle(t.get(o[5])), s.fullscreen && f.setTitle(t.get(o[6])) })) } toggleFullScreen() { document.activeElement.blur(), null === document.fullscreenElement ? document.documentElement.requestFullscreen() : document.exitFullscreen && document.exitFullscreen() } } class O { constructor(e) { const t = e.settings, s = (new m).setId("content"); let a; "content" === t.arrows && (a = (new m).setId("prev").setClass("arrow"), a.dom.onclick = t => { e.emit("prev"), t.preventDefault() }, a.add(new u("<")), s.add(a)); const o = (new m).setId("viewer"); let n; s.add(o), "content" === t.arrows && (n = (new m).setId("next").setClass("arrow"), n.dom.onclick = t => { e.emit("next"), t.preventDefault() }, n.add(new u(">")), s.add(n)); const i = (new m).setId("loader"), r = (new m).setId("divider"), d = (new m).setId("overlay"); d.dom.onclick = t => { e.emit("sidebaropener", !1), t.preventDefault() }, s.add([i, r, d]), document.body.appendChild(s.dom), e.on("bookready", (e => { o.setClass(e.flow), i.dom.style.display = "block" })), e.on("bookloaded", (() => { i.dom.style.display = "none" })), e.on("layout", (e => { e.spread && e.width > e.spreadWidth ? r.dom.style.display = "block" : r.dom.style.display = "none" })), e.on("flowchanged", (e => { o.setClass(e) })), e.on("relocated", (e => { "content" === t.arrows && (e.atStart ? a.addClass("disabled") : a.removeClass("disabled"), e.atEnd ? n.addClass("disabled") : n.removeClass("disabled")) })), e.on("prev", (() => { "content" === t.arrows && (a.addClass("active"), setTimeout((() => { a.removeClass("active") }), 100)) })), e.on("next", (() => { "content" === t.arrows && (n.addClass("active"), setTimeout((() => { n.removeClass("active") }), 100)) })), e.on("sidebaropener", (e => { d.dom.style.display = e ? "block" : "none" })), e.on("viewercleanup", (() => { o.clear() })) } } class z extends p { constructor(e) { super(); const t = (new m).setClass("list-container"), s = e.strings, a = ["sidebar/contents"], o = new v(s.get(a[0])).setClass("label"); this.reader = e, this.selector = void 0, this.setId("contents"), this.add(new T(o).addClass("header")), e.on("navigation", (e => { t.clear(), t.add(this.generateToc(e)), this.add(t) })), e.on("languagechanged", (e => { o.setValue(s.get(a[0])) })) } generateToc(e, t) { const s = new S(t); return e.forEach((e => { const t = new w(e.href, e.label), a = new D(s).setId(e.id), o = new u; if (t.dom.onclick = t => { this.selector && this.selector !== a && this.selector.unselect(), a.select(), this.selector = a, this.reader.settings.sectionId = e.id, this.reader.rendition.display(e.href), t.preventDefault() }, a.add([o, t]), this.reader.navItems[e.href] = { id: e.id, label: e.label }, this.reader.settings.sectionId === e.id && (s.expand(), a.select(), this.selector = a), e.subitems && e.subitems.length > 0) { const t = this.generateToc(e.subitems, a); o.setClass("toggle-collapsed"), o.dom.onclick = () => (t.expanded ? (t.collaps(), o.setClass("toggle-collapsed")) : (t.expand(), o.setClass("toggle-expanded")), !1), a.add(t) } s.add(a) })), s } } class j extends p { constructor(e) { super(); const t = (new m).setClass("list-container"), s = e.strings, a = ["sidebar/bookmarks", "sidebar/bookmarks/clear"], o = new v(s.get(a[0])).setClass("label"), n = new x("button", s.get(a[1])); n.dom.onclick = t => { this.clearBookmarks(), e.emit("bookmarked", !1), t.preventDefault() }, this.add(new T([o, n]).addClass("header")), this.selector = void 0, this.bookmarks = new S, t.add(this.bookmarks), this.setId("bookmarks"), this.add(t), this.reader = e; const i = () => { n.dom.disabled = 0 === e.settings.bookmarks.length }; e.on("displayed", ((e, t) => { t.bookmarks.forEach((e => { this.setBookmark(e) })), i() })), e.on("relocated", (e => { this.locationCfi = e.start.cfi })), e.on("bookmarked", ((e, t) => { e ? this.appendBookmark() : this.removeBookmark(t), i() })), e.on("languagechanged", (e => { o.setValue(s.get(a[0])), n.setValue(s.get(a[1])) })) } appendBookmark() { const e = this.locationCfi; this.reader.isBookmarked(e) > -1 || (this.setBookmark(e), this.reader.settings.bookmarks.push(e)) } removeBookmark(e) { const t = e || this.locationCfi, s = this.reader.isBookmarked(t); -1 !== s && (this.bookmarks.remove(s), this.reader.settings.bookmarks.splice(s, 1)) } clearBookmarks() { this.bookmarks.clear(), this.reader.settings.bookmarks = [] } setBookmark(e) { const t = new w, s = new D, a = (new u).setClass("btn-remove"), o = this.reader.navItemFromCfi(e); let n, i; if (void 0 === o) { const t = this.reader.book.spine.get(e); n = t.idref, i = t.idref } else n = o.id, i = o.label; t.setHref("#" + e), t.dom.onclick = t => { this.selector && this.selector !== s && this.selector.unselect(), s.select(), this.selector = s, this.reader.rendition.display(e), t.preventDefault() }, t.setTextContent(i), a.dom.onclick = t => { this.reader.emit("bookmarked", !1, e), t.preventDefault() }, s.add([t, a]), s.setId(n), this.bookmarks.add(s) } } class B extends p { constructor(e) { super(); const t = (new m).setClass("list-container"), s = e.strings, a = ["sidebar/annotations", "sidebar/annotations/clear"], o = new v(s.get(a[0])).setClass("label"), n = new x("button", s.get(a[1])); n.dom.onclick = e => { this.clearNotes(), e.preventDefault() }, this.add(new T([o, n]).addClass("header")), this.selector = void 0, this.notes = new S, t.add(this.notes), this.setId("annotations"), this.add(t), this.reader = e, this.update = () => { n.dom.disabled = 0 === e.settings.annotations.length }, e.on("bookready", (e => { e.annotations.forEach((e => { this.set(e) })), this.update() })), e.on("noteadded", (e => { this.set(e), this.update() })), e.on("languagechanged", (e => { o.setValue(s.get(a[0])), n.setValue(s.get(a[1])) })) } set(e) { const t = new w("#" + e.cfi, e.text), s = (new D).setId("note-" + e.uuid), a = (new u).setClass("btn-remove"); t.dom.onclick = t => { this.selector && this.selector !== s && this.selector.unselect(), s.select(), this.selector = s, this.reader.rendition.display(e.cfi), t.preventDefault() }, a.dom.onclick = t => { this.removeNote(e), t.preventDefault() }, s.add([t, a]), this.notes.add(s), this.reader.rendition.annotations.add("highlight", e.cfi, {}, (() => { }), "note-highlight", {}), this.update() } removeNote(e) { const t = this.reader.settings.annotations.indexOf(e); -1 !== t && (this.notes.remove(t), this.reader.settings.annotations.splice(t, 1), this.reader.rendition.annotations.remove(e.cfi, "highlight"), this.update()) } clearNotes() { this.reader.settings.annotations.forEach((e => { this.reader.rendition.annotations.remove(e.cfi, "highlight") })), this.notes.clear(), this.reader.settings.annotations = [], this.update() } } class A extends p { constructor(e) { super(); const t = (new m).setClass("list-container"), s = e.strings; let a; const o = new x("search").setId("nav-q"); o.dom.placeholder = s.get("sidebar/search/placeholder"), o.dom.onsearch = () => { const e = o.getValue(); 0 === e.length ? this.items.clear() : a !== e && (this.items.clear(), this.doSearch(e).then((e => { e.forEach((e => { this.set(e) })) }))), a = e }, this.setId("search"), this.items = new S, t.add(this.items), this.add([new T(o), t]), this.reader = e, this.selector = void 0 } async doSearch(e) { const t = this.reader.book, s = await Promise.all(t.spine.spineItems.map((s => s.load(t.load.bind(t)).then(s.find.bind(s, e)).finally(s.unload.bind(s))))); return await Promise.resolve([].concat.apply([], s)) } set(e) { const t = new w("#" + e.cfi, e.excerpt), s = new D; t.dom.onclick = () => (this.selector && this.selector !== s && this.selector.unselect(), s.select(), this.selector = s, this.reader.rendition.display(e.cfi), !1), s.add(t), this.items.add(s) } } class V extends p { constructor(e) { super(), super.setId("settings"); const t = e.strings, s = ["sidebar/settings", "sidebar/settings/language", "sidebar/settings/fontsize", "sidebar/settings/flow", "sidebar/settings/spread", "sidebar/settings/spread/minwidth"], a = new v(t.get(s[0])).setClass("label"); this.add(new T(a).addClass("header")); const o = new f(t.get(s[1]), "language-ui"), n = new g, i = (new k).setOptions({ en: "English", fr: "French", ja: "Japanese", ru: "Russian" }); i.dom.onchange = t => { e.emit("languagechanged", t.target.value) }, i.setId("language-ui"), n.add(o), n.add(i); const r = new f(t.get(s[2]), "fontsize"), d = new g, l = new y(100, 1); l.dom.onchange = t => { e.emit("styleschanged", { fontSize: parseInt(t.target.value) }) }, l.setId("fontsize"), d.add(r), d.add(l); const c = new f(t.get(s[3]), "flow"), h = new g, b = (new k).setOptions({ paginated: "Paginated", scrolled: "Scrolled" }); b.dom.onchange = t => { e.emit("flowchanged", t.target.value), "scrolled" === t.target.value ? e.emit("spreadchanged", { mod: "none", min: void 0 }) : e.emit("spreadchanged", { mod: void 0, min: void 0 }) }, b.setId("flow"), h.add(c), h.add(b); const u = new y(800, 1), m = new f(t.get(s[4]), "spread"), p = new g, w = (new k).setOptions({ none: "None", auto: "Auto" }); w.dom.onchange = t => { e.emit("spreadchanged", { mod: t.target.value, min: void 0 }), u.dom.disabled = "none" === t.target.value }, w.setId("spread"), p.add(m), p.add(w); const C = new f(t.get(s[5]), "min-spread-width"), I = new g; u.dom.onchange = t => { e.emit("spreadchanged", { mod: void 0, min: parseInt(t.target.value) }) }, u.setId("min-spread-width"), I.add(C), I.add(u); const S = t.get("sidebar/settings/pagination"), D = new g, _ = new x("checkbox", !1, S[1]); _.setId("pagination"), _.dom.onclick = e => { }, D.add(new f(S[0], "pagination")), D.add(_), this.add(new T([n, d, h, p, I])), e.on("bookready", (e => { i.setValue(e.language), l.setValue(e.styles.fontSize), b.setValue(e.flow), w.setValue(e.spread.mod), u.setValue(e.spread.min), u.dom.disabled = "none" === e.spread.mod })), e.on("layout", (e => { "scrolled" === e.flow ? (w.setValue("none"), w.dom.disabled = !0, u.dom.disabled = !0) : w.dom.disabled = !1 })), e.on("languagechanged", (e => { a.setTextContent(t.get(s[0])), o.setTextContent(t.get(s[1])), r.setTextContent(t.get(s[2])), c.setTextContent(t.get(s[3])), m.setTextContent(t.get(s[4])), C.setTextContent(t.get(s[5])) })) } } class P extends p { constructor(e) { super(); const t = (new m).setClass("list-container"), s = e.strings, a = {}, o = "sidebar/metadata", n = new v(s.get(o)).setClass("label"); this.add(new T(n).addClass("header")), a[o] = n, this.items = new S, this.setId("metadata"), this.add(t); const i = (e, t) => { if (void 0 === t[e] || null === t[e] || "string" == typeof t[e] && 0 === t[e].length) return; const n = new D, i = (new v).setClass("label"), r = (new v).setClass("value"); i.setValue(s.get(o + "/" + e).toUpperCase()), "description" === e ? r.dom.innerHTML = t[e] : r.setValue(t[e]), a[o + "/" + e] = i, n.add([i, r]), this.items.add(n) }; e.on("metadata", (e => { this.items.clear(), t.clear(), t.add(this.items), document.title = e.title; for (const t in e) i(t, e) })), e.on("languagechanged", (e => { for (const e in a) { let t; t = e === o ? s.get(e) : s.get(e).toUpperCase(), a[e].setValue(t) } })) } } class L { constructor(e) { const t = e.strings, s = e.settings, a = ["sidebar/close", "sidebar/contents", "sidebar/bookmarks", "sidebar/annotations", "sidebar/search", "sidebar/settings", "sidebar/metadata"], o = new C("vertical").setId("sidebar"), n = (new m).setId("btn-p").addClass("box"), i = new x("button"); i.setTitle(t.get(a[0])), i.dom.onclick = t => { e.emit("sidebaropener", !1), t.preventDefault(), i.dom.blur() }, n.add(i), o.addMenu(n), o.addTab("btn-t", t.get(a[1]), new z(e)), s.bookmarks && o.addTab("btn-d", t.get(a[2]), new j(e)), s.annotations && o.addTab("btn-a", t.get(a[3]), new B(e)), o.addTab("btn-s", t.get(a[4]), new A(e)), o.addTab("btn-c", t.get(a[5]), new V(e)), o.addTab("btn-i", t.get(a[6]), new P(e)), o.select("btn-t"), document.body.appendChild(o.dom), e.on("sidebaropener", (e => { e ? o.setClass("open") : o.removeAttribute("class") })), e.on("languagechanged", (e => { i.setTitle(t.get(a[0])), o.setLabel("btn-t", t.get(a[1])), s.bookmarks && o.setLabel("btn-d", t.get(a[2])), s.annotations && o.setLabel("btn-a", t.get(a[3])), o.setLabel("btn-s", t.get(a[4])), o.setLabel("btn-c", t.get(a[5])), o.setLabel("btn-i", t.get(a[6])) })) } } class F { constructor(e) { const t = (new m).setId("notedlg"), s = e.strings, a = ["notedlg/label", "notedlg/add"], o = new f(s.get(a[0]), "note-input"), n = new x("text", "").setId("note-input"); n.dom.oninput = e => { this.update(), e.preventDefault() }; const i = new x("button", s.get(a[1])); i.dom.disabled = !0, i.dom.onclick = s => { const a = { cfi: this.cfi, date: new Date, text: n.getValue(), uuid: d() }; this.range = void 0, e.settings.annotations.push(a), e.emit("noteadded", a), t.removeAttribute("class"), s.preventDefault(), i.dom.blur() }, this.update = () => { i.dom.disabled = !(this.range && n.getValue().length > 0) }, t.add(new T([o, n, i]).addClass("control")), document.body.appendChild(t.dom), e.on("selected", ((e, s) => { this.cfi = e, this.range = s.range(e), this.update(), t.setClass("open"), n.setValue("") })), e.on("unselected", (() => { this.range = void 0, this.update(), t.removeAttribute("class") })), e.on("languagechanged", (e => { o.setTextContent(s.get(a[0])), i.setValue(s.get(a[1])) })) } } class R { constructor(e, t) { const s = s => { const a = new URL(window.location); let o = e; t && !t.openbook ? (o = e, s && this.storage.clear()) : s && 0 === a.search.length && (o = s), this.cfgInit(o, t), this.strings = new c(this), this.toolbar = new _(this), this.content = new O(this), this.sidebar = new L(this), this.settings.annotations && (this.notedlg = new F(this)), this.init() }; this.settings = void 0, this.isMobile = [/Android/i, /BlackBerry/i, /iPhone/i, /iPad/i, /iPod/i, /Windows Phone/i, /webOS/i].some((e => navigator.userAgent.match(e))), this.storage = new l; const a = t && t.openbook; !this.storage.indexedDB || t && !a ? s() : this.storage.init((() => this.storage.get((e => s(e))))), window.onbeforeunload = this.unload.bind(this), window.onhashchange = this.hashChanged.bind(this), window.onkeydown = this.keyboardHandler.bind(this), window.onwheel = e => { e.ctrlKey && e.preventDefault() } } init(e, t) { this.emit("viewercleanup"), this.navItems = {}, arguments.length > 0 && this.cfgInit(e, t), this.book = ePub(this.settings.bookPath), this.rendition = this.book.renderTo("viewer", { manager: this.settings.manager, flow: this.settings.flow, spread: this.settings.spread.mod, minSpreadWidth: this.settings.spread.min, width: "100%", height: "100%", snap: !0 }); const s = this.settings.previousLocationCfi; this.displayed = s ? this.rendition.display(s) : this.rendition.display(), this.displayed.then((e => { this.emit("displayed", e, this.settings) })), this.book.ready.then((() => { this.emit("bookready", this.settings) })).then((() => { this.emit("bookloaded") })), this.book.loaded.metadata.then((e => { this.emit("metadata", e) })), this.book.loaded.navigation.then((e => { this.emit("navigation", e) })), this.rendition.on("click", (e => { "Range" !== e.view.document.getSelection().type && this.emit("unselected") })), this.rendition.on("layout", (e => { this.emit("layout", e) })), this.rendition.on("selected", ((e, t) => { this.setLocation(e), this.emit("selected", e, t) })), this.rendition.on("relocated", (e => { this.setLocation(e.start.cfi), this.emit("relocated", e) })), this.rendition.on("keydown", this.keyboardHandler.bind(this)), this.on("prev", (() => { "rtl" === this.book.package.metadata.direction ? this.rendition.next() : this.rendition.prev() })), this.on("next", (() => { "rtl" === this.book.package.metadata.direction ? this.rendition.prev() : this.rendition.next() })), this.on("languagechanged", (e => { this.settings.language = e })), this.on("flowchanged", (e => { this.settings.flow = e, this.rendition.flow(e) })), this.on("spreadchanged", (e => { const t = e.mod || this.settings.spread.mod, s = e.min || this.settings.spread.min; this.settings.spread.mod = t, this.settings.spread.min = s, this.rendition.spread(t, s) })), this.on("styleschanged", (e => { const t = e.fontSize; this.settings.styles.fontSize = t, this.rendition.themes.fontSize(t + "%") })) } navItemFromCfi(e) { const t = this.rendition.getRange(e), s = t ? t.startContainer.parentNode.id : void 0, a = this.rendition.currentLocation().start.href; return this.navItems[a + "#" + s] || this.navItems[a] } isBookmarked(e) { return this.settings.bookmarks.indexOf(e) } isAnnotated(e) { return this.settings.annotations.indexOf(e) } cfgInit(e, t) { this.entryKey = md5(e).toString(), this.settings = { bookPath: e, arrows: this.isMobile ? "none" : "content", manager: this.isMobile ? "continuous" : "default", restore: !0, history: !0, openbook: !!this.storage.indexedDB, language: "en", sectionId: void 0, bookmarks: [], annotations: [], flow: "paginated", spread: { mod: "auto", min: 800 }, styles: { fontSize: 100 }, pagination: void 0, fullscreen: document.fullscreenEnabled }, r(t || {}, this.settings), this.settings.restore ? this.applySavedSettings(t || {}) : this.removeSavedSettings() } isSaved() { return localStorage && null !== localStorage.getItem(this.entryKey) } removeSavedSettings() { return !!this.isSaved() && (localStorage.removeItem(this.entryKey), !0) } applySavedSettings(e) { if (!this.isSaved()) return !1; let t; try { t = JSON.parse(localStorage.getItem(this.entryKey)) } catch (e) { console.exception(e) } return !!t && (r(t, this.settings, e), !0) } saveSettings() { this.settings.previousLocationCfi = this.rendition.location.start.cfi; const e = Object.assign({}, this.settings); delete e.arrows, delete e.manager, delete e.history, delete e.restore, delete e.openbook, delete e.pagination, delete e.fullscreen, localStorage.setItem(this.entryKey, JSON.stringify(e)) } setLocation(e) { const t = this.book.archived ? void 0 : this.book.url, s = new URL(window.location, t); s.hash = "#" + e, this.settings.history && window.location.hash !== s.hash && (window.history.pushState({}, "", s), this.currentLocationCfi = e) } unload() { this.settings.restore && localStorage && this.saveSettings() } hashChanged() { const e = window.location.hash.slice(1); this.rendition.display(e) } keyboardHandler(e) { let t = this.settings.styles.fontSize; switch (e.key) { case "=": case "+": t += 2, this.emit("styleschanged", { fontSize: t }); break; case "-": t -= 2, this.emit("styleschanged", { fontSize: t }); break; case "0": t = 100, this.emit("styleschanged", { fontSize: t }); break; case "ArrowLeft": this.emit("prev"); break; case "ArrowRight": this.emit("next") } } } o(R.prototype); var E = a.Reader; export { E as Reader }; +var e={263:(e,t,s)=>{var a=s(175),o=s(873),n=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,o,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),o=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,o=!1),c={value:t,configurable:s,enumerable:o,writable:d},l?n(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?o(t)?a(s)?o(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?n(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),o=s(134),n=Math.max;e.exports=function(e,t){var s,i,r,d=n(arguments.length,2);for(e=Object(o(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),o=Object.keys;e.exports=function(e){return o(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),o=Array.prototype.forEach,n=Object.create;e.exports=function(e){var t=n(null);return o.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,o,n,i,r,d,l,c=s(263),h=s(499),b=Function.prototype.apply,u=Function.prototype.call,m=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,w={configurable:!0,enumerable:!1,writable:!0};o=function(e,t){var s,o;return h(t),o=this,a.call(this,e,s=function(){n.call(o,e,s),b.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=w.value=m(null),g(this,"__ee__",w),w.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:o,off:n=function(e,t){var s,a,o,n;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(n=0;o=a[n];++n)o!==t&&o.__eeOnceListener__!==t||(2===a.length?s[e]=a[n?0:1]:a.splice(n,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,o,n;if(f.call(this,"__ee__")&&(o=this.__ee__[e]))if("object"==typeof o){for(s=arguments.length,n=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),o={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(o,typeof e)}},873:(e,t,s)=>{var a=s(80),o=/^\s*class[\s{/}]/,n=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!o.test(n.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var o=t[a];if(void 0!==o)return o.exports;var n=t[a]={exports:{}};return e[a](n,n.exports,s),n.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>N});var o=s(68);const n=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let o;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":o=t[a]?e[a]:t[a];break;default:o=t[a]}else o="arrows"===a?t[a]:void 0===n(s,a)?e[a]:t[a];return o},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],n(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add"},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter"},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加"},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить"},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???"}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class b{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class x extends b{constructor(e,t,s,a,o){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=o||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends m{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new u).setClass("tab-selector"),this.menuDiv=(new m).setClass("menu"),this.tabsDiv=(new m).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new m).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new I(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const o=new m;o.setId(e),o.add(s),this.panels.push(o),this.panelsDiv.add(o),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class I extends m{constructor(e,t){super(),this.button=new y("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class S extends b{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends b{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new m).setId("item-box");for(let s=0;s{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),n.add(i),"toolbar"===s.arrows&&(d=(new m).setId("btn-p").setClass("box"),l=new y("button"),l.setTitle(t.get(o[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),n.add(d),c=(new m).setId("btn-n").setClass("box"),h=new y("button"),h.dom.title=t.get(o[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),n.add(c));const b=(new m).setClass("menu-2");let u,g,p,f,w,k;if(s.background&&(u=(new m).setId("btn-bg").setClass("box"),g=new y("color"),g.dom.title=t.get(o[7]),g.dom.value="#ffffff",g.dom.onchange=e=>{const t=e.target.value;document.body.style.backgroundColor=t},u.add(g),b.add(u)),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},n=(new m).setId("btn-o").setClass("box");p=new y("file"),p.dom.title=t.get(o[3]),p.dom.accept="application/epub+zip",p.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(o[4]))},p.dom.onclick=e=>{p.dom.blur()},n.add(p),b.add(n)}if(s.bookmarks&&(f=(new m).setId("btn-b").setClass("box"),w=new y("button"),w.setTitle(t.get(o[5])),w.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),w.dom.blur()},f.add(w),b.add(f)),s.fullscreen){const e=(new m).setId("btn-f").setClass("box");k=new y("button"),k.setTitle(t.get(o[6])),k.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(k),b.add(e)}a.add([n,b]),document.body.appendChild(a.dom),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?f.removeClass("bookmarked"):f.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?f.addClass("bookmarked"):f.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(o[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(o[1])),h.setTitle(t.get(o[2]))),s.openbook&&p.setTitle(t.get(o[3])),s.bookmarks&&w.setTitle(t.get(o[5])),s.fullscreen&&k.setTitle(t.get(o[6])),s.background&&g.setTitle(t.get(o[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class O{constructor(e){const t=e.settings,s=(new m).setId("content");let a;"content"===t.arrows&&(a=(new m).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()},a.add(new u("<")),s.add(a));const o=(new m).setId("viewer");let n;s.add(o),"content"===t.arrows&&(n=(new m).setId("next").setClass("arrow"),n.dom.onclick=t=>{e.emit("next"),t.preventDefault()},n.add(new u(">")),s.add(n));const i=(new m).setId("loader"),r=(new m).setId("divider"),d=(new m).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{o.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{o.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?n.addClass("disabled"):n.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(n.addClass("active"),setTimeout((()=>{n.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{o.clear()}))}}class z extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/contents"],o=new k(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new D(o).addClass("header")),e.on("navigation",(e=>{t.clear(),t.add(this.generateToc(e)),this.add(t)})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new S(t);return e.forEach((e=>{const t=new w(e.href,e.label),a=new T(s).setId(e.id),o=new u;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([o,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);o.setClass("toggle-collapsed"),o.dom.onclick=()=>(t.expanded?(t.collaps(),o.setClass("toggle-collapsed")):(t.expand(),o.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class j extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],o=new k(s.get(a[0])).setClass("label"),n=new y("button",s.get(a[1]));n.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.bookmarks=new S,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{n.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new w,s=new T,a=(new u).setClass("btn-remove"),o=this.reader.navItemFromCfi(e);let n,i;if(void 0===o){const t=this.reader.book.spine.get(e);n=t.idref,i=t.idref}else n=o.id,i=o.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(n),this.bookmarks.add(s)}}class B extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],o=new k(s.get(a[0])).setClass("label"),n=new y("button",s.get(a[1]));n.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.notes=new S,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{n.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}set(e){const t=new w("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new u).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update()}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);-1!==t&&(this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update())}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class V extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings;let a;const o=new y("search").setId("nav-q");o.dom.placeholder=s.get("sidebar/search/placeholder"),o.dom.onsearch=()=>{const e=o.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new S,t.add(this.items),this.add([new D(o),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new w("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class A extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new k(t.get(s[0])).setClass("label");this.add(new D(a).addClass("header"));const o=new f(t.get(s[1]),"language-ui"),n=new g,i=(new v).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),n.add(o),n.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new x(100,1);l.dom.onchange=t=>{e.emit("styleschanged",{fontSize:parseInt(t.target.value)})},l.setId("fontsize"),d.add(r),d.add(l);const c=new f(t.get(s[3]),"flow"),h=new g,b=(new v).setOptions({paginated:"Paginated",scrolled:"Scrolled"});b.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},b.setId("flow"),h.add(c),h.add(b);const u=new x(800,1),m=new f(t.get(s[4]),"spread"),p=new g,w=(new v).setOptions({none:"None",auto:"Auto"});w.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),u.dom.disabled="none"===t.target.value},w.setId("spread"),p.add(m),p.add(w);const C=new f(t.get(s[5]),"min-spread-width"),I=new g;u.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},u.setId("min-spread-width"),I.add(C),I.add(u);const S=t.get("sidebar/settings/pagination"),T=new g,_=new y("checkbox",!1,S[1]);_.setId("pagination"),_.dom.onclick=e=>{},T.add(new f(S[0],"pagination")),T.add(_),this.add(new D([n,d,h,p,I])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),b.setValue(e.flow),w.setValue(e.spread.mod),u.setValue(e.spread.min),u.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(w.setValue("none"),w.dom.disabled=!0,u.dom.disabled=!0):w.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),o.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),m.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class P extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a={},o="sidebar/metadata",n=new k(s.get(o)).setClass("label");this.add(new D(n).addClass("header")),a[o]=n,this.items=new S,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const n=new T,i=(new k).setClass("label"),r=(new k).setClass("value");i.setValue(s.get(o+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[o+"/"+e]=i,n.add([i,r]),this.items.add(n)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===o?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class L{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],o=new C("vertical").setId("sidebar"),n=(new m).setId("btn-p").addClass("box"),i=new y("button");i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},n.add(i),o.addMenu(n),o.addTab("btn-t",t.get(a[1]),new z(e)),s.bookmarks&&o.addTab("btn-d",t.get(a[2]),new j(e)),s.annotations&&o.addTab("btn-a",t.get(a[3]),new B(e)),o.addTab("btn-s",t.get(a[4]),new V(e)),o.addTab("btn-c",t.get(a[5]),new A(e)),o.addTab("btn-i",t.get(a[6]),new P(e)),o.select("btn-t"),document.body.appendChild(o.dom),e.on("sidebaropener",(e=>{e?o.setClass("open"):o.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),o.setLabel("btn-t",t.get(a[1])),s.bookmarks&&o.setLabel("btn-d",t.get(a[2])),s.annotations&&o.setLabel("btn-a",t.get(a[3])),o.setLabel("btn-s",t.get(a[4])),o.setLabel("btn-c",t.get(a[5])),o.setLabel("btn-i",t.get(a[6]))}))}}class F{constructor(e){const t=(new m).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],o=new f(s.get(a[0]),"note-input"),n=new y("text","").setId("note-input");n.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new y("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:n.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&n.getValue().length>0)},t.add(new D([o,n,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),n.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{o.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class N{constructor(e,t){const s=s=>{const a=new URL(window.location);let o=e;t&&!t.openbook?(o=e,s&&this.storage.clear()):s&&0===a.search.length&&(o=s),this.cfgInit(o,t),this.strings=new c(this),this.toolbar=new _(this),this.content=new O(this),this.sidebar=new L(this),this.settings.annotations&&(this.notedlg=new F(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("navigation",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"%")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:100},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=2,this.emit("styleschanged",{fontSize:t});break;case"-":t-=2,this.emit("styleschanged",{fontSize:t});break;case"0":t=100,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}o(N.prototype);var M=a.Reader;export{M as Reader}; //# sourceMappingURL=epubreader.min.js.map \ No newline at end of file diff --git a/dist/js/epubreader.min.js.map b/dist/js/epubreader.min.js.map index c6aca9c..840cac4 100644 --- a/dist/js/epubreader.min.js.map +++ b/dist/js/epubreader.min.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.min.js","mappings":"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","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\"\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\"\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\"\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\"\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\t\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag); \n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}","import { UIDiv, UIInput } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\"\n\t\t];\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tprev.add(new UISpan(\"<\"));\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tnext.add(new UISpan(\">\"));\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\t\t\t\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(100, 1);\n\t\tfontSize.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\tfontSize: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tfontSize.setId(\"fontsize\")\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), new AnnotationsPanel(reader));\n\t\t}\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"%\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 100\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 2;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 100;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","Toolbar","strings","container","menu1","openerBox","openerBtn","prevBox","prevBtn","nextBox","nextBtn","blur","arrows","menu2","openbookBtn","bookmarkBox","bookmarkBtn","fullscreenBtn","openbook","onload","storage","unload","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","bookmarks","cfi","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","body","start","atStart","atEnd","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","viewer","next","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","toc","generateToc","list","chapter","link","item","ibtn","sectionId","rendition","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","update","disabled","renderer","setBookmark","appendBookmark","removeBookmark","_cfi","index","btnr","navItem","navItemFromCfi","idref","spineItem","book","spine","AnnotationsPanel","clearNotes","notes","annotations","note","removeNote","SearchPanel","searchQuery","search","placeholder","onsearch","doSearch","then","results","Promise","all","spineItems","map","load","bind","find","finally","resolve","concat","excerpt","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","fontSize","parseInt","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","innerHTML","Sidebar","controls","NoteDlg","textBox","oninput","addBtn","date","range","contents","Reader","bookPath","preinit","path","cfgInit","toolbar","content","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","loaded","metadata","navigation","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.min.js","mappings":"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","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\"\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\"\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\"\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\"\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\"\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\t\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag); \n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}","import { UIDiv, UIInput } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\"\n\t\t];\n\n\t\t// Toolbar Menu 1\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t// Toolbar Menu 2\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\n\t\t// Button change background\n\t\tlet backgroundBox, backgroundBtn;\n\t\tif (settings.background) {\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tbackgroundBtn = new UIInput(\"color\");\n\t\t\tbackgroundBtn.dom.title = strings.get(keys[7]);\n\t\t\tbackgroundBtn.dom.value = \"#ffffff\";\n\t\t\tbackgroundBtn.dom.onchange = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\t\t\t\tdocument.body.style.backgroundColor = selectedColor;\n\t\t\t};\n\t\t\tbackgroundBox.add(backgroundBtn);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tprev.add(new UISpan(\"<\"));\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tnext.add(new UISpan(\">\"));\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\t\t\t\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(100, 1);\n\t\tfontSize.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\tfontSize: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), new AnnotationsPanel(reader));\n\t\t}\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"%\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 100\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 2;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 100;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","Toolbar","strings","container","menu1","openerBox","openerBtn","prevBox","prevBtn","nextBox","nextBtn","blur","arrows","menu2","backgroundBox","backgroundBtn","openbookBtn","bookmarkBox","bookmarkBtn","fullscreenBtn","background","selectedColor","body","backgroundColor","openbook","onload","storage","unload","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","bookmarks","cfi","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","start","atStart","atEnd","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","viewer","next","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","toc","generateToc","list","chapter","link","item","ibtn","sectionId","rendition","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","update","disabled","renderer","setBookmark","appendBookmark","removeBookmark","_cfi","index","btnr","navItem","navItemFromCfi","idref","spineItem","book","spine","AnnotationsPanel","clearNotes","notes","annotations","note","removeNote","SearchPanel","searchQuery","search","placeholder","onsearch","doSearch","then","results","Promise","all","spineItems","map","load","bind","find","finally","resolve","concat","excerpt","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","fontSize","parseInt","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","innerHTML","Sidebar","controls","NoteDlg","textBox","oninput","addBtn","date","range","contents","Reader","bookPath","preinit","path","cfgInit","toolbar","content","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","loaded","metadata","navigation","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/js/libs/epub.min.js b/dist/js/libs/epub.min.js index 1f9196e..adb662b 100644 --- a/dist/js/libs/epub.min.js +++ b/dist/js/libs/epub.min.js @@ -1 +1 @@ -!function (t, e) { "object" == typeof exports && "object" == typeof module ? module.exports = e(require("JSZip")) : "function" == typeof define && define.amd ? define(["JSZip"], e) : "object" == typeof exports ? exports.ePub = e(require("JSZip")) : t.ePub = e(t.JSZip) }(window, (function (t) { return function (t) { var e = {}; function i(n) { if (e[n]) return e[n].exports; var s = e[n] = { i: n, l: !1, exports: {} }; return t[n].call(s.exports, s, s.exports, i), s.l = !0, s.exports } return i.m = t, i.c = e, i.d = function (t, e, n) { i.o(t, e) || Object.defineProperty(t, e, { enumerable: !0, get: n }) }, i.r = function (t) { "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(t, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(t, "__esModule", { value: !0 }) }, i.t = function (t, e) { if (1 & e && (t = i(t)), 8 & e) return t; if (4 & e && "object" == typeof t && t && t.__esModule) return t; var n = Object.create(null); if (i.r(n), Object.defineProperty(n, "default", { enumerable: !0, value: t }), 2 & e && "string" != typeof t) for (var s in t) i.d(n, s, function (e) { return t[e] }.bind(null, s)); return n }, i.n = function (t) { var e = t && t.__esModule ? function () { return t.default } : function () { return t }; return i.d(e, "a", e), e }, i.o = function (t, e) { return Object.prototype.hasOwnProperty.call(t, e) }, i.p = "/dist/", i(i.s = 30) }([function (t, e, i) { "use strict"; i.r(e), i.d(e, "requestAnimationFrame", (function () { return s })), i.d(e, "uuid", (function () { return o })), i.d(e, "documentHeight", (function () { return a })), i.d(e, "isElement", (function () { return h })), i.d(e, "isNumber", (function () { return l })), i.d(e, "isFloat", (function () { return c })), i.d(e, "prefixed", (function () { return u })), i.d(e, "defaults", (function () { return d })), i.d(e, "extend", (function () { return f })), i.d(e, "insert", (function () { return p })), i.d(e, "locationOf", (function () { return g })), i.d(e, "indexOfSorted", (function () { return m })), i.d(e, "bounds", (function () { return v })), i.d(e, "borders", (function () { return y })), i.d(e, "nodeBounds", (function () { return b })), i.d(e, "windowBounds", (function () { return w })), i.d(e, "indexOfNode", (function () { return x })), i.d(e, "indexOfTextNode", (function () { return E })), i.d(e, "indexOfElementNode", (function () { return S })), i.d(e, "isXml", (function () { return N })), i.d(e, "createBlob", (function () { return _ })), i.d(e, "createBlobUrl", (function () { return T })), i.d(e, "revokeBlobUrl", (function () { return C })), i.d(e, "createBase64Url", (function () { return O })), i.d(e, "type", (function () { return I })), i.d(e, "parse", (function () { return R })), i.d(e, "qs", (function () { return k })), i.d(e, "qsa", (function () { return A })), i.d(e, "qsp", (function () { return L })), i.d(e, "sprint", (function () { return j })), i.d(e, "treeWalker", (function () { return D })), i.d(e, "walk", (function () { return P })), i.d(e, "blob2base64", (function () { return M })), i.d(e, "defer", (function () { return z })), i.d(e, "querySelectorByType", (function () { return B })), i.d(e, "findChildren", (function () { return q })), i.d(e, "parents", (function () { return F })), i.d(e, "filterChildren", (function () { return U })), i.d(e, "getParentByTagName", (function () { return W })), i.d(e, "RangeObject", (function () { return H })); var n = i(15); const s = "undefined" != typeof window && (window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || window.msRequestAnimationFrame), r = "undefined" != typeof URL ? URL : "undefined" != typeof window ? window.URL || window.webkitURL || window.mozURL : void 0; function o() { var t = (new Date).getTime(); return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (function (e) { var i = (t + 16 * Math.random()) % 16 | 0; return t = Math.floor(t / 16), ("x" == e ? i : 7 & i | 8).toString(16) })) } function a() { return Math.max(document.documentElement.clientHeight, document.body.scrollHeight, document.documentElement.scrollHeight, document.body.offsetHeight, document.documentElement.offsetHeight) } function h(t) { return !(!t || 1 != t.nodeType) } function l(t) { return !isNaN(parseFloat(t)) && isFinite(t) } function c(t) { let e = parseFloat(t); return !1 !== l(t) && ("string" == typeof t && t.indexOf(".") > -1 || Math.floor(e) !== e) } function u(t) { var e = ["-webkit-", "-webkit-", "-moz-", "-o-", "-ms-"], i = t.toLowerCase(); if ("undefined" == typeof document || void 0 !== document.body.style[i]) return t; for (var n = 0; n < 5; n++)if (void 0 !== document.body.style[e[n] + i]) return e[n] + i; return t } function d(t) { for (var e = 1, i = arguments.length; e < i; e++) { var n = arguments[e]; for (var s in n) void 0 === t[s] && (t[s] = n[s]) } return t } function f(t) { return [].slice.call(arguments, 1).forEach((function (e) { e && Object.getOwnPropertyNames(e).forEach((function (i) { Object.defineProperty(t, i, Object.getOwnPropertyDescriptor(e, i)) })) })), t } function p(t, e, i) { var n = g(t, e, i); return e.splice(n, 0, t), n } function g(t, e, i, n, s) { var r, o = n || 0, a = s || e.length, h = parseInt(o + (a - o) / 2); return i || (i = function (t, e) { return t > e ? 1 : t < e ? -1 : t == e ? 0 : void 0 }), a - o <= 0 ? h : (r = i(e[h], t), a - o == 1 ? r >= 0 ? h : h + 1 : 0 === r ? h : -1 === r ? g(t, e, i, h, a) : g(t, e, i, o, h)) } function m(t, e, i, n, s) { var r, o = n || 0, a = s || e.length, h = parseInt(o + (a - o) / 2); return i || (i = function (t, e) { return t > e ? 1 : t < e ? -1 : t == e ? 0 : void 0 }), a - o <= 0 ? -1 : (r = i(e[h], t), a - o == 1 ? 0 === r ? h : -1 : 0 === r ? h : -1 === r ? m(t, e, i, h, a) : m(t, e, i, o, h)) } function v(t) { var e = window.getComputedStyle(t), i = 0, n = 0; return ["width", "paddingRight", "paddingLeft", "marginRight", "marginLeft", "borderRightWidth", "borderLeftWidth"].forEach((function (t) { i += parseFloat(e[t]) || 0 })), ["height", "paddingTop", "paddingBottom", "marginTop", "marginBottom", "borderTopWidth", "borderBottomWidth"].forEach((function (t) { n += parseFloat(e[t]) || 0 })), { height: n, width: i } } function y(t) { var e = window.getComputedStyle(t), i = 0, n = 0; return ["paddingRight", "paddingLeft", "marginRight", "marginLeft", "borderRightWidth", "borderLeftWidth"].forEach((function (t) { i += parseFloat(e[t]) || 0 })), ["paddingTop", "paddingBottom", "marginTop", "marginBottom", "borderTopWidth", "borderBottomWidth"].forEach((function (t) { n += parseFloat(e[t]) || 0 })), { height: n, width: i } } function b(t) { let e, i = t.ownerDocument; if (t.nodeType == Node.TEXT_NODE) { let n = i.createRange(); n.selectNodeContents(t), e = n.getBoundingClientRect() } else e = t.getBoundingClientRect(); return e } function w() { var t = window.innerWidth, e = window.innerHeight; return { top: 0, left: 0, right: t, bottom: e, width: t, height: e } } function x(t, e) { for (var i, n = t.parentNode.childNodes, s = -1, r = 0; r < n.length && ((i = n[r]).nodeType === e && s++, i != t); r++); return s } function E(t) { return x(t, 3) } function S(t) { return x(t, 1) } function N(t) { return ["xml", "opf", "ncx"].indexOf(t) > -1 } function _(t, e) { return new Blob([t], { type: e }) } function T(t, e) { var i = _(t, e); return r.createObjectURL(i) } function C(t) { return r.revokeObjectURL(t) } function O(t, e) { if ("string" == typeof t) return "data:" + e + ";base64," + btoa(t) } function I(t) { return Object.prototype.toString.call(t).slice(8, -1) } function R(t, e, i) { var s; return s = "undefined" == typeof DOMParser || i ? n.DOMParser : DOMParser, 65279 === t.charCodeAt(0) && (t = t.slice(1)), (new s).parseFromString(t, e) } function k(t, e) { var i; if (!t) throw new Error("No Element Provided"); return void 0 !== t.querySelector ? t.querySelector(e) : (i = t.getElementsByTagName(e)).length ? i[0] : void 0 } function A(t, e) { return void 0 !== t.querySelector ? t.querySelectorAll(e) : t.getElementsByTagName(e) } function L(t, e, i) { var n, s; if (void 0 !== t.querySelector) { for (var r in e += "[", i) e += r + "~='" + i[r] + "'"; return e += "]", t.querySelector(e) } if (n = t.getElementsByTagName(e), s = Array.prototype.slice.call(n, 0).filter((function (t) { for (var e in i) if (t.getAttribute(e) === i[e]) return !0; return !1 }))) return s[0] } function j(t, e) { void 0 !== (t.ownerDocument || t).createTreeWalker ? D(t, e, NodeFilter.SHOW_TEXT) : P(t, (function (t) { t && 3 === t.nodeType && e(t) })) } function D(t, e, i) { var n = document.createTreeWalker(t, i, null, !1); let s; for (; s = n.nextNode();)e(s) } function P(t, e) { if (e(t)) return !0; if (t = t.firstChild) do { if (P(t, e)) return !0; t = t.nextSibling } while (t) } function M(t) { return new Promise((function (e, i) { var n = new FileReader; n.readAsDataURL(t), n.onloadend = function () { e(n.result) } })) } function z() { this.resolve = null, this.reject = null, this.id = o(), this.promise = new Promise(((t, e) => { this.resolve = t, this.reject = e })), Object.freeze(this) } function B(t, e, i) { var n; if (void 0 !== t.querySelector && (n = t.querySelector(`${e}[*|type="${i}"]`)), n && 0 !== n.length) return n; n = A(t, e); for (var s = 0; s < n.length; s++)if (n[s].getAttributeNS("http://www.idpf.org/2007/ops", "type") === i || n[s].getAttribute("epub:type") === i) return n[s] } function q(t) { for (var e = [], i = t.childNodes, n = 0; n < i.length; n++) { let t = i[n]; 1 === t.nodeType && e.push(t) } return e } function F(t) { for (var e = [t]; t; t = t.parentNode)e.unshift(t); return e } function U(t, e, i) { for (var n = [], s = t.childNodes, r = 0; r < s.length; r++) { let t = s[r]; if (1 === t.nodeType && t.nodeName.toLowerCase() === e) { if (i) return t; n.push(t) } } if (!i) return n } function W(t, e) { let i; if (null !== t && "" !== e) for (i = t.parentNode; 1 === i.nodeType;) { if (i.tagName.toLowerCase() === e) return i; i = i.parentNode } } class H { constructor() { this.collapsed = !1, this.commonAncestorContainer = void 0, this.endContainer = void 0, this.endOffset = void 0, this.startContainer = void 0, this.startOffset = void 0 } setStart(t, e) { this.startContainer = t, this.startOffset = e, this.endContainer ? this.commonAncestorContainer = this._commonAncestorContainer() : this.collapse(!0), this._checkCollapsed() } setEnd(t, e) { this.endContainer = t, this.endOffset = e, this.startContainer ? (this.collapsed = !1, this.commonAncestorContainer = this._commonAncestorContainer()) : this.collapse(!1), this._checkCollapsed() } collapse(t) { this.collapsed = !0, t ? (this.endContainer = this.startContainer, this.endOffset = this.startOffset, this.commonAncestorContainer = this.startContainer.parentNode) : (this.startContainer = this.endContainer, this.startOffset = this.endOffset, this.commonAncestorContainer = this.endOffset.parentNode) } selectNode(t) { let e = t.parentNode, i = Array.prototype.indexOf.call(e.childNodes, t); this.setStart(e, i), this.setEnd(e, i + 1) } selectNodeContents(t) { t.childNodes[t.childNodes - 1]; let e = 3 === t.nodeType ? t.textContent.length : parent.childNodes.length; this.setStart(t, 0), this.setEnd(t, e) } _commonAncestorContainer(t, e) { var i = F(t || this.startContainer), n = F(e || this.endContainer); if (i[0] == n[0]) for (var s = 0; s < i.length; s++)if (i[s] != n[s]) return i[s - 1] } _checkCollapsed() { this.startContainer === this.endContainer && this.startOffset === this.endOffset ? this.collapsed = !0 : this.collapsed = !1 } toString() { } } }, function (t, e, i) { "use strict"; i.d(e, "b", (function () { return n })), i.d(e, "a", (function () { return s })), i.d(e, "c", (function () { return r })); const n = "0.3", s = ["keydown", "keyup", "keypressed", "mouseup", "mousedown", "mousemove", "click", "touchend", "touchstart", "touchmove"], r = { BOOK: { OPEN_FAILED: "openFailed" }, CONTENTS: { EXPAND: "expand", RESIZE: "resize", SELECTED: "selected", SELECTED_RANGE: "selectedRange", LINK_CLICKED: "linkClicked" }, LOCATIONS: { CHANGED: "changed" }, MANAGERS: { RESIZE: "resize", RESIZED: "resized", ORIENTATION_CHANGE: "orientationchange", ADDED: "added", SCROLL: "scroll", SCROLLED: "scrolled", REMOVED: "removed" }, VIEWS: { AXIS: "axis", WRITING_MODE: "writingMode", LOAD_ERROR: "loaderror", RENDERED: "rendered", RESIZED: "resized", DISPLAYED: "displayed", SHOWN: "shown", HIDDEN: "hidden", MARK_CLICKED: "markClicked" }, RENDITION: { STARTED: "started", ATTACHED: "attached", DISPLAYED: "displayed", DISPLAY_ERROR: "displayerror", RENDERED: "rendered", REMOVED: "removed", RESIZED: "resized", ORIENTATION_CHANGE: "orientationchange", LOCATION_CHANGED: "locationChanged", RELOCATED: "relocated", MARK_CLICKED: "markClicked", SELECTED: "selected", LAYOUT: "layout" }, LAYOUT: { UPDATED: "updated" }, ANNOTATION: { ATTACH: "attach", DETACH: "detach" } } }, function (t, e, i) { "use strict"; var n = i(0); class s { constructor(t, e, i) { var r; if (this.str = "", this.base = {}, this.spinePos = 0, this.range = !1, this.path = {}, this.start = null, this.end = null, !(this instanceof s)) return new s(t, e, i); if ("string" == typeof e ? this.base = this.parseComponent(e) : "object" == typeof e && e.steps && (this.base = e), "string" === (r = this.checkType(t))) return this.str = t, Object(n.extend)(this, this.parse(t)); if ("range" === r) return Object(n.extend)(this, this.fromRange(t, this.base, i)); if ("node" === r) return Object(n.extend)(this, this.fromNode(t, this.base, i)); if ("EpubCFI" === r && t.path) return t; if (t) throw new TypeError("not a valid argument for EpubCFI"); return this } checkType(t) { return this.isCfiString(t) ? "string" : !t || "object" != typeof t || "Range" !== Object(n.type)(t) && void 0 === t.startContainer ? t && "object" == typeof t && void 0 !== t.nodeType ? "node" : !!(t && "object" == typeof t && t instanceof s) && "EpubCFI" : "range" } parse(t) { var e, i, n, s = { spinePos: -1, range: !1, base: {}, path: {}, start: null, end: null }; return "string" != typeof t ? { spinePos: -1 } : (0 === t.indexOf("epubcfi(") && ")" === t[t.length - 1] && (t = t.slice(8, t.length - 1)), (e = this.getChapterComponent(t)) ? (s.base = this.parseComponent(e), i = this.getPathComponent(t), s.path = this.parseComponent(i), (n = this.getRange(t)) && (s.range = !0, s.start = this.parseComponent(n[0]), s.end = this.parseComponent(n[1])), s.spinePos = s.base.steps[1].index, s) : { spinePos: -1 }) } parseComponent(t) { var e, i = { steps: [], terminal: { offset: null, assertion: null } }, n = t.split(":"), s = n[0].split("/"); return n.length > 1 && (e = n[1], i.terminal = this.parseTerminal(e)), "" === s[0] && s.shift(), i.steps = s.map(function (t) { return this.parseStep(t) }.bind(this)), i } parseStep(t) { var e, i, n, s, r; if ((s = t.match(/\[(.*)\]/)) && s[1] && (r = s[1]), i = parseInt(t), !isNaN(i)) return i % 2 == 0 ? (e = "element", n = i / 2 - 1) : (e = "text", n = (i - 1) / 2), { type: e, index: n, id: r || null } } parseTerminal(t) { var e, i, s = t.match(/\[(.*)\]/); return s && s[1] ? (e = parseInt(t.split("[")[0]), i = s[1]) : e = parseInt(t), Object(n.isNumber)(e) || (e = null), { offset: e, assertion: i } } getChapterComponent(t) { return t.split("!")[0] } getPathComponent(t) { var e = t.split("!"); if (e[1]) return e[1].split(",")[0] } getRange(t) { var e = t.split(","); return 3 === e.length && [e[1], e[2]] } getCharecterOffsetComponent(t) { return t.split(":")[1] || "" } joinSteps(t) { return t ? t.map((function (t) { var e = ""; return "element" === t.type && (e += 2 * (t.index + 1)), "text" === t.type && (e += 1 + 2 * t.index), t.id && (e += "[" + t.id + "]"), e })).join("/") : "" } segmentString(t) { var e = "/"; return e += this.joinSteps(t.steps), t.terminal && null != t.terminal.offset && (e += ":" + t.terminal.offset), t.terminal && null != t.terminal.assertion && (e += "[" + t.terminal.assertion + "]"), e } toString() { var t = "epubcfi("; return t += this.segmentString(this.base), t += "!", t += this.segmentString(this.path), this.range && this.start && (t += ",", t += this.segmentString(this.start)), this.range && this.end && (t += ",", t += this.segmentString(this.end)), t + ")" } compare(t, e) { var i, n, r, o; if ("string" == typeof t && (t = new s(t)), "string" == typeof e && (e = new s(e)), t.spinePos > e.spinePos) return 1; if (t.spinePos < e.spinePos) return -1; t.range ? (i = t.path.steps.concat(t.start.steps), r = t.start.terminal) : (i = t.path.steps, r = t.path.terminal), e.range ? (n = e.path.steps.concat(e.start.steps), o = e.start.terminal) : (n = e.path.steps, o = e.path.terminal); for (var a = 0; a < i.length; a++) { if (!i[a]) return -1; if (!n[a]) return 1; if (i[a].index > n[a].index) return 1; if (i[a].index < n[a].index) return -1 } return i.length < n.length ? -1 : r.offset > o.offset ? 1 : r.offset < o.offset ? -1 : 0 } step(t) { var e = 3 === t.nodeType ? "text" : "element"; return { id: t.id, tagName: t.tagName, type: e, index: this.position(t) } } filteredStep(t, e) { var i, n = this.filter(t, e); if (n) return i = 3 === n.nodeType ? "text" : "element", { id: n.id, tagName: n.tagName, type: i, index: this.filteredPosition(n, e) } } pathTo(t, e, i) { for (var n, s = { steps: [], terminal: { offset: null, assertion: null } }, r = t; r && r.parentNode && 9 != r.parentNode.nodeType;)(n = i ? this.filteredStep(r, i) : this.step(r)) && s.steps.unshift(n), r = r.parentNode; return null != e && e >= 0 && (s.terminal.offset = e, "text" != s.steps[s.steps.length - 1].type && s.steps.push({ type: "text", index: 0 })), s } equalStep(t, e) { return !(!t || !e) && t.index === e.index && t.id === e.id && t.type === e.type } fromRange(t, e, i) { var n = { range: !1, base: {}, path: {}, start: null, end: null }, s = t.startContainer, r = t.endContainer, o = t.startOffset, a = t.endOffset, h = !1; if (i && (h = null != s.ownerDocument.querySelector("." + i)), "string" == typeof e ? (n.base = this.parseComponent(e), n.spinePos = n.base.steps[1].index) : "object" == typeof e && (n.base = e), t.collapsed) h && (o = this.patchOffset(s, o, i)), n.path = this.pathTo(s, o, i); else { n.range = !0, h && (o = this.patchOffset(s, o, i)), n.start = this.pathTo(s, o, i), h && (a = this.patchOffset(r, a, i)), n.end = this.pathTo(r, a, i), n.path = { steps: [], terminal: null }; var l, c = n.start.steps.length; for (l = 0; l < c && this.equalStep(n.start.steps[l], n.end.steps[l]); l++)l === c - 1 ? n.start.terminal === n.end.terminal && (n.path.steps.push(n.start.steps[l]), n.range = !1) : n.path.steps.push(n.start.steps[l]); n.start.steps = n.start.steps.slice(n.path.steps.length), n.end.steps = n.end.steps.slice(n.path.steps.length) } return n } fromNode(t, e, i) { var n = { range: !1, base: {}, path: {}, start: null, end: null }; return "string" == typeof e ? (n.base = this.parseComponent(e), n.spinePos = n.base.steps[1].index) : "object" == typeof e && (n.base = e), n.path = this.pathTo(t, null, i), n } filter(t, e) { var i, n, s, r, o, a = !1; return 3 === t.nodeType ? (a = !0, s = t.parentNode, i = t.parentNode.classList.contains(e)) : (a = !1, i = t.classList.contains(e)), i && a ? (r = s.previousSibling, o = s.nextSibling, r && 3 === r.nodeType ? n = r : o && 3 === o.nodeType && (n = o), n || t) : !(i && !a) && t } patchOffset(t, e, i) { if (3 != t.nodeType) throw new Error("Anchor must be a text node"); var n = t, s = e; for (t.parentNode.classList.contains(i) && (n = t.parentNode); n.previousSibling;) { if (1 === n.previousSibling.nodeType) { if (!n.previousSibling.classList.contains(i)) break; s += n.previousSibling.textContent.length } else s += n.previousSibling.textContent.length; n = n.previousSibling } return s } normalizedMap(t, e, i) { var n, s, r, o = {}, a = -1, h = t.length; for (n = 0; n < h; n++)1 === (s = t[n].nodeType) && t[n].classList.contains(i) && (s = 3), n > 0 && 3 === s && 3 === r ? o[n] = a : e === s && (a += 1, o[n] = a), r = s; return o } position(t) { var e, i; return 1 === t.nodeType ? ((e = t.parentNode.children) || (e = Object(n.findChildren)(t.parentNode)), i = Array.prototype.indexOf.call(e, t)) : i = (e = this.textNodes(t.parentNode)).indexOf(t), i } filteredPosition(t, e) { var i, n; return 1 === t.nodeType ? (i = t.parentNode.children, n = this.normalizedMap(i, 1, e)) : (i = t.parentNode.childNodes, t.parentNode.classList.contains(e) && (i = (t = t.parentNode).parentNode.childNodes), n = this.normalizedMap(i, 3, e)), n[Array.prototype.indexOf.call(i, t)] } stepsToXpath(t) { var e = [".", "*"]; return t.forEach((function (t) { var i = t.index + 1; t.id ? e.push("*[position()=" + i + " and @id='" + t.id + "']") : "text" === t.type ? e.push("text()[" + i + "]") : e.push("*[" + i + "]") })), e.join("/") } stepsToQuerySelector(t) { var e = ["html"]; return t.forEach((function (t) { var i = t.index + 1; t.id ? e.push("#" + t.id) : "text" === t.type || e.push("*:nth-child(" + i + ")") })), e.join(">") } textNodes(t, e) { return Array.prototype.slice.call(t.childNodes).filter((function (t) { return 3 === t.nodeType || !(!e || !t.classList.contains(e)) })) } walkToNode(t, e, i) { var s, r, o = e || document, a = o.documentElement, h = t.length; for (r = 0; r < h && ("element" === (s = t[r]).type ? a = s.id ? o.getElementById(s.id) : (a.children || Object(n.findChildren)(a))[s.index] : "text" === s.type && (a = this.textNodes(a, i)[s.index]), a); r++); return a } findNode(t, e, i) { var n, s, r = e || document; return i || void 0 === r.evaluate ? n = i ? this.walkToNode(t, r, i) : this.walkToNode(t, r) : (s = this.stepsToXpath(t), n = r.evaluate(s, r, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue), n } fixMiss(t, e, i, n) { var s, r, o = this.findNode(t.slice(0, -1), i, n), a = o.childNodes, h = this.normalizedMap(a, 3, n), l = t[t.length - 1].index; for (let t in h) { if (!h.hasOwnProperty(t)) return; if (h[t] === l) { if (!(e > (r = (s = a[t]).textContent.length))) { o = 1 === s.nodeType ? s.childNodes[0] : s; break } e -= r } } return { container: o, offset: e } } toRange(t, e) { var i, s, r, o, a, h, l, c, u = t || document, d = !!e && null != u.querySelector("." + e); if (i = void 0 !== u.createRange ? u.createRange() : new n.RangeObject, this.range ? (s = this.start, h = this.path.steps.concat(s.steps), o = this.findNode(h, u, d ? e : null), r = this.end, l = this.path.steps.concat(r.steps), a = this.findNode(l, u, d ? e : null)) : (s = this.path, h = this.path.steps, o = this.findNode(this.path.steps, u, d ? e : null)), !o) return console.log("No startContainer found for", this.toString()), null; try { null != s.terminal.offset ? i.setStart(o, s.terminal.offset) : i.setStart(o, 0) } catch (t) { c = this.fixMiss(h, s.terminal.offset, u, d ? e : null), i.setStart(c.container, c.offset) } if (a) try { null != r.terminal.offset ? i.setEnd(a, r.terminal.offset) : i.setEnd(a, 0) } catch (t) { c = this.fixMiss(l, this.end.terminal.offset, u, d ? e : null), i.setEnd(c.container, c.offset) } return i } isCfiString(t) { return "string" == typeof t && 0 === t.indexOf("epubcfi(") && ")" === t[t.length - 1] } generateChapterComponent(t, e, i) { var n = "/" + 2 * (t + 1) + "/"; return n += 2 * (parseInt(e) + 1), i && (n += "[" + i + "]"), n } collapse(t) { this.range && (this.range = !1, t ? (this.path.steps = this.path.steps.concat(this.start.steps), this.path.terminal = this.start.terminal) : (this.path.steps = this.path.steps.concat(this.end.steps), this.path.terminal = this.end.terminal)) } } e.a = s }, function (t, e, i) { "use strict"; var n, s, r, o, a, h, l, c = i(31), u = i(45), d = Function.prototype.apply, f = Function.prototype.call, p = Object.create, g = Object.defineProperty, m = Object.defineProperties, v = Object.prototype.hasOwnProperty, y = { configurable: !0, enumerable: !1, writable: !0 }; s = function (t, e) { var i, s; return u(e), s = this, n.call(this, t, i = function () { r.call(s, t, i), d.call(e, this, arguments) }), i.__eeOnceListener__ = e, this }, a = { on: n = function (t, e) { var i; return u(e), v.call(this, "__ee__") ? i = this.__ee__ : (i = y.value = p(null), g(this, "__ee__", y), y.value = null), i[t] ? "object" == typeof i[t] ? i[t].push(e) : i[t] = [i[t], e] : i[t] = e, this }, once: s, off: r = function (t, e) { var i, n, s, r; if (u(e), !v.call(this, "__ee__")) return this; if (!(i = this.__ee__)[t]) return this; if ("object" == typeof (n = i[t])) for (r = 0; s = n[r]; ++r)s !== e && s.__eeOnceListener__ !== e || (2 === n.length ? i[t] = n[r ? 0 : 1] : n.splice(r, 1)); else n !== e && n.__eeOnceListener__ !== e || delete i[t]; return this }, emit: o = function (t) { var e, i, n, s, r; if (v.call(this, "__ee__") && (s = this.__ee__[t])) if ("object" == typeof s) { for (i = arguments.length, r = new Array(i - 1), e = 1; e < i; ++e)r[e - 1] = arguments[e]; for (s = s.slice(), e = 0; n = s[e]; ++e)d.call(n, this, r) } else switch (arguments.length) { case 1: f.call(s, this); break; case 2: f.call(s, this, arguments[1]); break; case 3: f.call(s, this, arguments[1], arguments[2]); break; default: for (i = arguments.length, r = new Array(i - 1), e = 1; e < i; ++e)r[e - 1] = arguments[e]; d.call(s, this, r) } } }, h = { on: c(n), once: c(s), off: c(r), emit: c(o) }, l = m({}, h), t.exports = e = function (t) { return null == t ? p(l) : m(Object(t), h) }, e.methods = a }, function (t, e, i) { "use strict"; var n = i(7), s = i.n(n); e.a = class { constructor(t) { var e; t.indexOf("://") > -1 && (t = new URL(t).pathname), e = this.parse(t), this.path = t, this.isDirectory(t) ? this.directory = t : this.directory = e.dir + "/", this.filename = e.base, this.extension = e.ext.slice(1) } parse(t) { return s.a.parse(t) } isAbsolute(t) { return s.a.isAbsolute(t || this.path) } isDirectory(t) { return "/" === t.charAt(t.length - 1) } resolve(t) { return s.a.resolve(this.directory, t) } relative(t) { return t && t.indexOf("://") > -1 ? t : s.a.relative(this.directory, t) } splitPath(t) { return this.splitPathRe.exec(t).slice(1) } toString() { return this.path } } }, function (t, e, i) { "use strict"; var n = i(4), s = i(7), r = i.n(s); e.a = class { constructor(t, e) { var i = t.indexOf("://") > -1, s = t; if (this.Url = void 0, this.href = t, this.protocol = "", this.origin = "", this.hash = "", this.hash = "", this.search = "", this.base = e, !i && !1 !== e && "string" != typeof e && window && window.location && (this.base = window.location.href), i || this.base) try { this.base ? this.Url = new URL(t, this.base) : this.Url = new URL(t), this.href = this.Url.href, this.protocol = this.Url.protocol, this.origin = this.Url.origin, this.hash = this.Url.hash, this.search = this.Url.search, s = this.Url.pathname + (this.Url.search ? this.Url.search : "") } catch (t) { this.Url = void 0, this.base && (s = new n.a(this.base).resolve(s)) } this.Path = new n.a(s), this.directory = this.Path.directory, this.filename = this.Path.filename, this.extension = this.Path.extension } path() { return this.Path } resolve(t) { var e; return t.indexOf("://") > -1 ? t : (e = r.a.resolve(this.directory, t), this.origin + e) } relative(t) { return r.a.relative(t, this.directory) } toString() { return this.href } } }, function (t, e, i) { "use strict"; e.a = class { constructor(t) { this.context = t || this, this.hooks = [] } register() { for (var t = 0; t < arguments.length; ++t)if ("function" == typeof arguments[t]) this.hooks.push(arguments[t]); else for (var e = 0; e < arguments[t].length; ++e)this.hooks.push(arguments[t][e]) } deregister(t) { let e; for (let i = 0; i < this.hooks.length; i++)if (e = this.hooks[i], e === t) { this.hooks.splice(i, 1); break } } trigger() { var t = arguments, e = this.context, i = []; return this.hooks.forEach((function (n) { try { var s = n.apply(e, t) } catch (t) { console.log(t) } s && "function" == typeof s.then && i.push(s) })), Promise.all(i) } list() { return this.hooks } clear() { return this.hooks = [] } } }, function (t, e, i) { "use strict"; if (!n) var n = { cwd: function () { return "/" } }; function s(t) { if ("string" != typeof t) throw new TypeError("Path must be a string. Received " + t) } function r(t, e) { for (var i, n = "", s = -1, r = 0, o = 0; o <= t.length; ++o) { if (o < t.length) i = t.charCodeAt(o); else { if (47 === i) break; i = 47 } if (47 === i) { if (s === o - 1 || 1 === r); else if (s !== o - 1 && 2 === r) { if (n.length < 2 || 46 !== n.charCodeAt(n.length - 1) || 46 !== n.charCodeAt(n.length - 2)) if (n.length > 2) { for (var a = n.length - 1, h = a; h >= 0 && 47 !== n.charCodeAt(h); --h); if (h !== a) { n = -1 === h ? "" : n.slice(0, h), s = o, r = 0; continue } } else if (2 === n.length || 1 === n.length) { n = "", s = o, r = 0; continue } e && (n.length > 0 ? n += "/.." : n = "..") } else n.length > 0 ? n += "/" + t.slice(s + 1, o) : n = t.slice(s + 1, o); s = o, r = 0 } else 46 === i && -1 !== r ? ++r : r = -1 } return n } var o = { resolve: function () { for (var t, e = "", i = !1, o = arguments.length - 1; o >= -1 && !i; o--) { var a; o >= 0 ? a = arguments[o] : (void 0 === t && (t = n.cwd()), a = t), s(a), 0 !== a.length && (e = a + "/" + e, i = 47 === a.charCodeAt(0)) } return e = r(e, !i), i ? e.length > 0 ? "/" + e : "/" : e.length > 0 ? e : "." }, normalize: function (t) { if (s(t), 0 === t.length) return "."; var e = 47 === t.charCodeAt(0), i = 47 === t.charCodeAt(t.length - 1); return 0 !== (t = r(t, !e)).length || e || (t = "."), t.length > 0 && i && (t += "/"), e ? "/" + t : t }, isAbsolute: function (t) { return s(t), t.length > 0 && 47 === t.charCodeAt(0) }, join: function () { if (0 === arguments.length) return "."; for (var t, e = 0; e < arguments.length; ++e) { var i = arguments[e]; s(i), i.length > 0 && (void 0 === t ? t = i : t += "/" + i) } return void 0 === t ? "." : o.normalize(t) }, relative: function (t, e) { if (s(t), s(e), t === e) return ""; if ((t = o.resolve(t)) === (e = o.resolve(e))) return ""; for (var i = 1; i < t.length && 47 === t.charCodeAt(i); ++i); for (var n = t.length, r = n - i, a = 1; a < e.length && 47 === e.charCodeAt(a); ++a); for (var h = e.length - a, l = r < h ? r : h, c = -1, u = 0; u <= l; ++u) { if (u === l) { if (h > l) { if (47 === e.charCodeAt(a + u)) return e.slice(a + u + 1); if (0 === u) return e.slice(a + u) } else r > l && (47 === t.charCodeAt(i + u) ? c = u : 0 === u && (c = 0)); break } var d = t.charCodeAt(i + u); if (d !== e.charCodeAt(a + u)) break; 47 === d && (c = u) } var f = ""; for (u = i + c + 1; u <= n; ++u)u !== n && 47 !== t.charCodeAt(u) || (0 === f.length ? f += ".." : f += "/.."); return f.length > 0 ? f + e.slice(a + c) : (a += c, 47 === e.charCodeAt(a) && ++a, e.slice(a)) }, _makeLong: function (t) { return t }, dirname: function (t) { if (s(t), 0 === t.length) return "."; for (var e = t.charCodeAt(0), i = 47 === e, n = -1, r = !0, o = t.length - 1; o >= 1; --o)if (47 === (e = t.charCodeAt(o))) { if (!r) { n = o; break } } else r = !1; return -1 === n ? i ? "/" : "." : i && 1 === n ? "//" : t.slice(0, n) }, basename: function (t, e) { if (void 0 !== e && "string" != typeof e) throw new TypeError('"ext" argument must be a string'); s(t); var i, n = 0, r = -1, o = !0; if (void 0 !== e && e.length > 0 && e.length <= t.length) { if (e.length === t.length && e === t) return ""; var a = e.length - 1, h = -1; for (i = t.length - 1; i >= 0; --i) { var l = t.charCodeAt(i); if (47 === l) { if (!o) { n = i + 1; break } } else -1 === h && (o = !1, h = i + 1), a >= 0 && (l === e.charCodeAt(a) ? -1 == --a && (r = i) : (a = -1, r = h)) } return n === r ? r = h : -1 === r && (r = t.length), t.slice(n, r) } for (i = t.length - 1; i >= 0; --i)if (47 === t.charCodeAt(i)) { if (!o) { n = i + 1; break } } else -1 === r && (o = !1, r = i + 1); return -1 === r ? "" : t.slice(n, r) }, extname: function (t) { s(t); for (var e = -1, i = 0, n = -1, r = !0, o = 0, a = t.length - 1; a >= 0; --a) { var h = t.charCodeAt(a); if (47 !== h) -1 === n && (r = !1, n = a + 1), 46 === h ? -1 === e ? e = a : 1 !== o && (o = 1) : -1 !== e && (o = -1); else if (!r) { i = a + 1; break } } return -1 === e || -1 === n || 0 === o || 1 === o && e === n - 1 && e === i + 1 ? "" : t.slice(e, n) }, format: function (t) { if (null === t || "object" != typeof t) throw new TypeError('Parameter "pathObject" must be an object, not ' + typeof t); return function (t, e) { var i = e.dir || e.root, n = e.base || (e.name || "") + (e.ext || ""); return i ? i === e.root ? i + n : i + "/" + n : n }(0, t) }, parse: function (t) { s(t); var e = { root: "", dir: "", base: "", ext: "", name: "" }; if (0 === t.length) return e; var i, n = t.charCodeAt(0), r = 47 === n; r ? (e.root = "/", i = 1) : i = 0; for (var o = -1, a = 0, h = -1, l = !0, c = t.length - 1, u = 0; c >= i; --c)if (47 !== (n = t.charCodeAt(c))) -1 === h && (l = !1, h = c + 1), 46 === n ? -1 === o ? o = c : 1 !== u && (u = 1) : -1 !== o && (u = -1); else if (!l) { a = c + 1; break } return -1 === o || -1 === h || 0 === u || 1 === u && o === h - 1 && o === a + 1 ? -1 !== h && (e.base = e.name = 0 === a && r ? t.slice(1, h) : t.slice(a, h)) : (0 === a && r ? (e.name = t.slice(1, o), e.base = t.slice(1, h)) : (e.name = t.slice(a, o), e.base = t.slice(a, h)), e.ext = t.slice(o, h)), a > 0 ? e.dir = t.slice(0, a - 1) : r && (e.dir = "/"), e }, sep: "/", delimiter: ":", posix: null }; t.exports = o }, function (t, e, i) { "use strict"; i.d(e, "a", (function () { return r })), i.d(e, "b", (function () { return o })), i.d(e, "d", (function () { return a })), i.d(e, "c", (function () { return h })), i.d(e, "e", (function () { return l })); var n = i(0), s = i(5); function r(t, e) { var i, s, r = e.url, o = r.indexOf("://") > -1; t && (s = Object(n.qs)(t, "head"), (i = Object(n.qs)(s, "base")) || (i = t.createElement("base"), s.insertBefore(i, s.firstChild)), !o && window && window.location && (r = window.location.origin + r), i.setAttribute("href", r)) } function o(t, e) { var i, s, r = e.canonical; t && (i = Object(n.qs)(t, "head"), (s = Object(n.qs)(i, "link[rel='canonical']")) ? s.setAttribute("href", r) : ((s = t.createElement("link")).setAttribute("rel", "canonical"), s.setAttribute("href", r), i.appendChild(s))) } function a(t, e) { var i, s, r = e.idref; t && (i = Object(n.qs)(t, "head"), (s = Object(n.qs)(i, "link[property='dc.identifier']")) ? s.setAttribute("content", r) : ((s = t.createElement("meta")).setAttribute("name", "dc.identifier"), s.setAttribute("content", r), i.appendChild(s))) } function h(t, e) { var i = t.querySelectorAll("a[href]"); if (i.length) for (var r = Object(n.qs)(t.ownerDocument, "base"), o = r ? r.getAttribute("href") : void 0, a = function (t) { var i = t.getAttribute("href"); if (0 !== i.indexOf("mailto:")) if (i.indexOf("://") > -1) t.setAttribute("target", "_blank"); else { var n; try { n = new s.a(i, o) } catch (t) { } t.onclick = function () { return n && n.hash ? e(n.Path.path + n.hash) : e(n ? n.Path.path : i), !1 } } }.bind(this), h = 0; h < i.length; h++)a(i[h]) } function l(t, e, i) { return e.forEach((function (e, n) { e && i[n] && (e = e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), t = t.replace(new RegExp(e, "g"), i[n])) })), t } i(4) }, function (t, e, i) { "use strict"; var n = i(0); e.a = class { constructor(t) { this._q = [], this.context = t, this.tick = n.requestAnimationFrame, this.running = !1, this.paused = !1 } enqueue() { var t, e, i = [].shift.call(arguments), s = arguments; if (!i) throw new Error("No Task Provided"); return e = "function" == typeof i ? { task: i, args: s, deferred: t = new n.defer, promise: t.promise } : { promise: i }, this._q.push(e), 0 != this.paused || this.running || this.run(), e.promise } dequeue() { var t, e, i; return !this._q.length || this.paused ? ((t = new n.defer).deferred.resolve(), t.promise) : (e = (t = this._q.shift()).task) ? (i = e.apply(this.context, t.args)) && "function" == typeof i.then ? i.then(function () { t.deferred.resolve.apply(this.context, arguments) }.bind(this), function () { t.deferred.reject.apply(this.context, arguments) }.bind(this)) : (t.deferred.resolve.apply(this.context, i), t.promise) : t.promise ? t.promise : void 0 } dump() { for (; this._q.length;)this.dequeue() } run() { return this.running || (this.running = !0, this.defered = new n.defer), this.tick.call(window, (() => { this._q.length ? this.dequeue().then(function () { this.run() }.bind(this)) : (this.defered.resolve(), this.running = void 0) })), 1 == this.paused && (this.paused = !1), this.defered.promise } flush() { return this.running ? this.running : this._q.length ? (this.running = this.dequeue().then(function () { return this.running = void 0, this.flush() }.bind(this)), this.running) : void 0 } clear() { this._q = [] } length() { return this._q.length } pause() { this.paused = !0 } stop() { this._q = [], this.running = !1, this.paused = !0 } } }, function (t, e, i) { "use strict"; var n = i(3), s = i.n(n), r = i(0), o = i(11), a = i(9), h = i(28), l = i.n(h), c = class { constructor(t) { this.settings = t || {}, this.id = "epubjs-container-" + Object(r.uuid)(), this.container = this.create(this.settings), this.settings.hidden && (this.wrapper = this.wrap(this.container)) } create(t) { let e = t.height, i = t.width, n = t.overflow || !1, s = t.axis || "vertical", o = t.direction; Object(r.extend)(this.settings, t), t.height && Object(r.isNumber)(t.height) && (e = t.height + "px"), t.width && Object(r.isNumber)(t.width) && (i = t.width + "px"); let a = document.createElement("div"); return a.id = this.id, a.classList.add("epub-container"), a.style.wordSpacing = "0", a.style.lineHeight = "0", a.style.verticalAlign = "top", a.style.position = "relative", "horizontal" === s && (a.style.display = "flex", a.style.flexDirection = "row", a.style.flexWrap = "nowrap"), i && (a.style.width = i), e && (a.style.height = e), n && ("scroll" === n && "vertical" === s ? (a.style["overflow-y"] = n, a.style["overflow-x"] = "hidden") : "scroll" === n && "horizontal" === s ? (a.style["overflow-y"] = "hidden", a.style["overflow-x"] = n) : a.style.overflow = n), o && (a.dir = o, a.style.direction = o), o && this.settings.fullsize && (document.body.style.direction = o), a } wrap(t) { var e = document.createElement("div"); return e.style.visibility = "hidden", e.style.overflow = "hidden", e.style.width = "0", e.style.height = "0", e.appendChild(t), e } getElement(t) { var e; if (Object(r.isElement)(t) ? e = t : "string" == typeof t && (e = document.getElementById(t)), !e) throw new Error("Not an Element"); return e } attachTo(t) { var e, i = this.getElement(t); if (i) return e = this.settings.hidden ? this.wrapper : this.container, i.appendChild(e), this.element = i, i } getContainer() { return this.container } onResize(t) { Object(r.isNumber)(this.settings.width) && Object(r.isNumber)(this.settings.height) || (this.resizeFunc = l()(t, 50), window.addEventListener("resize", this.resizeFunc, !1)) } onOrientationChange(t) { this.orientationChangeFunc = t, window.addEventListener("orientationchange", this.orientationChangeFunc, !1) } size(t, e) { var i; let n = t || this.settings.width, s = e || this.settings.height; null === t ? (i = this.element.getBoundingClientRect()).width && (t = Math.floor(i.width), this.container.style.width = t + "px") : Object(r.isNumber)(t) ? this.container.style.width = t + "px" : this.container.style.width = t, null === e ? (i = i || this.element.getBoundingClientRect()).height && (e = i.height, this.container.style.height = e + "px") : Object(r.isNumber)(e) ? this.container.style.height = e + "px" : this.container.style.height = e, Object(r.isNumber)(t) || (t = this.container.clientWidth), Object(r.isNumber)(e) || (e = this.container.clientHeight), this.containerStyles = window.getComputedStyle(this.container), this.containerPadding = { left: parseFloat(this.containerStyles["padding-left"]) || 0, right: parseFloat(this.containerStyles["padding-right"]) || 0, top: parseFloat(this.containerStyles["padding-top"]) || 0, bottom: parseFloat(this.containerStyles["padding-bottom"]) || 0 }; let o = Object(r.windowBounds)(), a = window.getComputedStyle(document.body), h = parseFloat(a["padding-left"]) || 0, l = parseFloat(a["padding-right"]) || 0, c = parseFloat(a["padding-top"]) || 0, u = parseFloat(a["padding-bottom"]) || 0; return n || (t = o.width - h - l), (this.settings.fullsize && !s || !s) && (e = o.height - c - u), { width: t - this.containerPadding.left - this.containerPadding.right, height: e - this.containerPadding.top - this.containerPadding.bottom } } bounds() { let t; return "visible" !== this.container.style.overflow && (t = this.container && this.container.getBoundingClientRect()), t && t.width && t.height ? t : Object(r.windowBounds)() } getSheet() { var t = document.createElement("style"); return t.appendChild(document.createTextNode("")), document.head.appendChild(t), t.sheet } addStyleRules(t, e) { var i = "#" + this.id + " ", n = ""; this.sheet || (this.sheet = this.getSheet()), e.forEach((function (t) { for (var e in t) t.hasOwnProperty(e) && (n += e + ":" + t[e] + ";") })), this.sheet.insertRule(i + t + " {" + n + "}", 0) } axis(t) { "horizontal" === t ? (this.container.style.display = "flex", this.container.style.flexDirection = "row", this.container.style.flexWrap = "nowrap") : this.container.style.display = "block", this.settings.axis = t } direction(t) { this.container && (this.container.dir = t, this.container.style.direction = t), this.settings.fullsize && (document.body.style.direction = t), this.settings.dir = t } overflow(t) { this.container && ("scroll" === t && "vertical" === this.settings.axis ? (this.container.style["overflow-y"] = t, this.container.style["overflow-x"] = "hidden") : "scroll" === t && "horizontal" === this.settings.axis ? (this.container.style["overflow-y"] = "hidden", this.container.style["overflow-x"] = t) : this.container.style.overflow = t), this.settings.overflow = t } destroy() { this.element && (this.settings.hidden ? this.wrapper : this.container, this.element.contains(this.container) && this.element.removeChild(this.container), window.removeEventListener("resize", this.resizeFunc), window.removeEventListener("orientationChange", this.orientationChangeFunc)) } }, u = class { constructor(t) { this.container = t, this._views = [], this.length = 0, this.hidden = !1 } all() { return this._views } first() { return this._views[0] } last() { return this._views[this._views.length - 1] } indexOf(t) { return this._views.indexOf(t) } slice() { return this._views.slice.apply(this._views, arguments) } get(t) { return this._views[t] } append(t) { return this._views.push(t), this.container && this.container.appendChild(t.element), this.length++, t } prepend(t) { return this._views.unshift(t), this.container && this.container.insertBefore(t.element, this.container.firstChild), this.length++, t } insert(t, e) { return this._views.splice(e, 0, t), this.container && (e < this.container.children.length ? this.container.insertBefore(t.element, this.container.children[e]) : this.container.appendChild(t.element)), this.length++, t } remove(t) { var e = this._views.indexOf(t); e > -1 && this._views.splice(e, 1), this.destroy(t), this.length-- } destroy(t) { t.displayed && t.destroy(), this.container && this.container.removeChild(t.element), t = null } forEach() { return this._views.forEach.apply(this._views, arguments) } clear() { var t, e = this.length; if (this.length) { for (var i = 0; i < e; i++)t = this._views[i], this.destroy(t); this._views = [], this.length = 0 } } find(t) { for (var e, i = this.length, n = 0; n < i; n++)if ((e = this._views[n]).displayed && e.section.index == t.index) return e } displayed() { for (var t, e = [], i = this.length, n = 0; n < i; n++)(t = this._views[n]).displayed && e.push(t); return e } show() { for (var t, e = this.length, i = 0; i < e; i++)(t = this._views[i]).displayed && t.show(); this.hidden = !1 } hide() { for (var t, e = this.length, i = 0; i < e; i++)(t = this._views[i]).displayed && t.hide(); this.hidden = !0 } }, d = i(1); class f { constructor(t) { this.name = "default", this.optsSettings = t.settings, this.View = t.view, this.request = t.request, this.renditionQueue = t.queue, this.q = new a.a(this), this.settings = Object(r.extend)(this.settings || {}, { infinite: !0, hidden: !1, width: void 0, height: void 0, axis: void 0, writingMode: void 0, flow: "scrolled", ignoreClass: "", fullsize: void 0, allowScriptedContent: !1, allowPopups: !1 }), Object(r.extend)(this.settings, t.settings || {}), this.viewSettings = { ignoreClass: this.settings.ignoreClass, axis: this.settings.axis, flow: this.settings.flow, layout: this.layout, method: this.settings.method, width: 0, height: 0, forceEvenPages: !0, allowScriptedContent: this.settings.allowScriptedContent, allowPopups: this.settings.allowPopups }, this.rendered = !1 } render(t, e) { let i = t.tagName; void 0 !== this.settings.fullsize || !i || "body" != i.toLowerCase() && "html" != i.toLowerCase() || (this.settings.fullsize = !0), this.settings.fullsize && (this.settings.overflow = "visible", this.overflow = this.settings.overflow), this.settings.size = e, this.settings.rtlScrollType = function () { var t = "reverse", e = function () { var t = document.createElement("div"); t.dir = "rtl", t.style.position = "fixed", t.style.width = "1px", t.style.height = "1px", t.style.top = "0px", t.style.left = "0px", t.style.overflow = "hidden"; var e = document.createElement("div"); e.style.width = "2px"; var i = document.createElement("span"); i.style.width = "1px", i.style.display = "inline-block"; var n = document.createElement("span"); return n.style.width = "1px", n.style.display = "inline-block", e.appendChild(i), e.appendChild(n), t.appendChild(e), t }(); return document.body.appendChild(e), e.scrollLeft > 0 ? t = "default" : "undefined" != typeof Element && Element.prototype.scrollIntoView ? (e.children[0].children[1].scrollIntoView(), e.scrollLeft < 0 && (t = "negative")) : (e.scrollLeft = 1, 0 === e.scrollLeft && (t = "negative")), document.body.removeChild(e), t }(), this.stage = new c({ width: e.width, height: e.height, overflow: this.overflow, hidden: this.settings.hidden, axis: this.settings.axis, fullsize: this.settings.fullsize, direction: this.settings.direction }), this.stage.attachTo(t), this.container = this.stage.getContainer(), this.views = new u(this.container), this._bounds = this.bounds(), this._stageSize = this.stage.size(), this.viewSettings.width = this._stageSize.width, this.viewSettings.height = this._stageSize.height, this.stage.onResize(this.onResized.bind(this)), this.stage.onOrientationChange(this.onOrientationChange.bind(this)), this.addEventListeners(), this.layout && this.updateLayout(), this.rendered = !0 } addEventListeners() { var t; window.addEventListener("unload", function (t) { this.destroy() }.bind(this)), t = this.settings.fullsize ? window : this.container, this._onScroll = this.onScroll.bind(this), t.addEventListener("scroll", this._onScroll) } removeEventListeners() { (this.settings.fullsize ? window : this.container).removeEventListener("scroll", this._onScroll), this._onScroll = void 0 } destroy() { clearTimeout(this.orientationTimeout), clearTimeout(this.resizeTimeout), clearTimeout(this.afterScrolled), this.clear(), this.removeEventListeners(), this.stage.destroy(), this.rendered = !1 } onOrientationChange(t) { let { orientation: e } = window; this.optsSettings.resizeOnOrientationChange && this.resize(), clearTimeout(this.orientationTimeout), this.orientationTimeout = setTimeout(function () { this.orientationTimeout = void 0, this.optsSettings.resizeOnOrientationChange && this.resize(), this.emit(d.c.MANAGERS.ORIENTATION_CHANGE, e) }.bind(this), 500) } onResized(t) { this.resize() } resize(t, e, i) { let n = this.stage.size(t, e); this.winBounds = Object(r.windowBounds)(), this.orientationTimeout && this.winBounds.width === this.winBounds.height ? this._stageSize = void 0 : this._stageSize && this._stageSize.width === n.width && this._stageSize.height === n.height || (this._stageSize = n, this._bounds = this.bounds(), this.clear(), this.viewSettings.width = this._stageSize.width, this.viewSettings.height = this._stageSize.height, this.updateLayout(), this.emit(d.c.MANAGERS.RESIZED, { width: this._stageSize.width, height: this._stageSize.height }, i)) } createView(t, e) { return new this.View(t, Object(r.extend)(this.viewSettings, { forceRight: e })) } handleNextPrePaginated(t, e, i) { let n; if ("pre-paginated" === this.layout.name && this.layout.divisor > 1) { if (t || 0 === e.index) return; if (n = e.next(), n && !n.properties.includes("page-spread-left")) return i.call(this, n) } } display(t, e) { var i = new r.defer, n = i.promise; (e === t.href || Object(r.isNumber)(e)) && (e = void 0); var s = this.views.find(t); if (s && t && "pre-paginated" !== this.layout.name) { let t = s.offset(); if ("ltr" === this.settings.direction) this.scrollTo(t.left, t.top, !0); else { let e = s.width(); this.scrollTo(t.left + e, t.top, !0) } if (e) { let t = s.locationOf(e), i = s.width(); this.moveTo(t, i) } return i.resolve(), n } this.clear(); let o = !1; return "pre-paginated" === this.layout.name && 2 === this.layout.divisor && t.properties.includes("page-spread-right") && (o = !0), this.add(t, o).then(function (t) { if (e) { let i = t.locationOf(e), n = t.width(); this.moveTo(i, n) } }.bind(this), (t => { i.reject(t) })).then(function () { return this.handleNextPrePaginated(o, t, this.add) }.bind(this)).then(function () { this.views.show(), i.resolve() }.bind(this)), n } afterDisplayed(t) { this.emit(d.c.MANAGERS.ADDED, t) } afterResized(t) { this.emit(d.c.MANAGERS.RESIZE, t.section) } moveTo(t, e) { var i = 0, n = 0; this.isPaginated ? ((i = Math.floor(t.left / this.layout.delta) * this.layout.delta) + this.layout.delta > this.container.scrollWidth && (i = this.container.scrollWidth - this.layout.delta), (n = Math.floor(t.top / this.layout.delta) * this.layout.delta) + this.layout.delta > this.container.scrollHeight && (n = this.container.scrollHeight - this.layout.delta)) : n = t.top, "rtl" === this.settings.direction && (i += this.layout.delta, i -= e), this.scrollTo(i, n, !0) } add(t, e) { var i = this.createView(t, e); return this.views.append(i), i.onDisplayed = this.afterDisplayed.bind(this), i.onResize = this.afterResized.bind(this), i.on(d.c.VIEWS.AXIS, (t => { this.updateAxis(t) })), i.on(d.c.VIEWS.WRITING_MODE, (t => { this.updateWritingMode(t) })), i.display(this.request) } append(t, e) { var i = this.createView(t, e); return this.views.append(i), i.onDisplayed = this.afterDisplayed.bind(this), i.onResize = this.afterResized.bind(this), i.on(d.c.VIEWS.AXIS, (t => { this.updateAxis(t) })), i.on(d.c.VIEWS.WRITING_MODE, (t => { this.updateWritingMode(t) })), i.display(this.request) } prepend(t, e) { var i = this.createView(t, e); return i.on(d.c.VIEWS.RESIZED, (t => { this.counter(t) })), this.views.prepend(i), i.onDisplayed = this.afterDisplayed.bind(this), i.onResize = this.afterResized.bind(this), i.on(d.c.VIEWS.AXIS, (t => { this.updateAxis(t) })), i.on(d.c.VIEWS.WRITING_MODE, (t => { this.updateWritingMode(t) })), i.display(this.request) } counter(t) { "vertical" === this.settings.axis ? this.scrollBy(0, t.heightDelta, !0) : this.scrollBy(t.widthDelta, 0, !0) } next() { var t; let e = this.settings.direction; if (this.views.length && (!this.isPaginated || "horizontal" !== this.settings.axis || e && "ltr" !== e ? this.isPaginated && "horizontal" === this.settings.axis && "rtl" === e ? (this.scrollLeft = this.container.scrollLeft, "default" === this.settings.rtlScrollType ? this.container.scrollLeft > 0 ? this.scrollBy(this.layout.delta, 0, !0) : t = this.views.last().section.next() : this.container.scrollLeft + -1 * this.layout.delta > -1 * this.container.scrollWidth ? this.scrollBy(this.layout.delta, 0, !0) : t = this.views.last().section.next()) : this.isPaginated && "vertical" === this.settings.axis ? (this.scrollTop = this.container.scrollTop, this.container.scrollTop + this.container.offsetHeight < this.container.scrollHeight ? this.scrollBy(0, this.layout.height, !0) : t = this.views.last().section.next()) : t = this.views.last().section.next() : (this.scrollLeft = this.container.scrollLeft, this.container.scrollLeft + this.container.offsetWidth + this.layout.delta <= this.container.scrollWidth ? this.scrollBy(this.layout.delta, 0, !0) : t = this.views.last().section.next()), t)) { this.clear(), this.updateLayout(); let e = !1; return "pre-paginated" === this.layout.name && 2 === this.layout.divisor && t.properties.includes("page-spread-right") && (e = !0), this.append(t, e).then(function () { return this.handleNextPrePaginated(e, t, this.append) }.bind(this), (t => t)).then(function () { this.isPaginated || "horizontal" !== this.settings.axis || "rtl" !== this.settings.direction || "default" !== this.settings.rtlScrollType || this.scrollTo(this.container.scrollWidth, 0, !0), this.views.show() }.bind(this)) } } prev() { var t; let e = this.settings.direction; if (this.views.length && (!this.isPaginated || "horizontal" !== this.settings.axis || e && "ltr" !== e ? this.isPaginated && "horizontal" === this.settings.axis && "rtl" === e ? (this.scrollLeft = this.container.scrollLeft, "default" === this.settings.rtlScrollType ? this.container.scrollLeft + this.container.offsetWidth < this.container.scrollWidth ? this.scrollBy(-this.layout.delta, 0, !0) : t = this.views.first().section.prev() : this.container.scrollLeft < 0 ? this.scrollBy(-this.layout.delta, 0, !0) : t = this.views.first().section.prev()) : this.isPaginated && "vertical" === this.settings.axis ? (this.scrollTop = this.container.scrollTop, this.container.scrollTop > 0 ? this.scrollBy(0, -this.layout.height, !0) : t = this.views.first().section.prev()) : t = this.views.first().section.prev() : (this.scrollLeft = this.container.scrollLeft, this.container.scrollLeft > 0 ? this.scrollBy(-this.layout.delta, 0, !0) : t = this.views.first().section.prev()), t)) { this.clear(), this.updateLayout(); let e = !1; return "pre-paginated" === this.layout.name && 2 === this.layout.divisor && "object" != typeof t.prev() && (e = !0), this.prepend(t, e).then(function () { var e; if ("pre-paginated" === this.layout.name && this.layout.divisor > 1 && (e = t.prev())) return this.prepend(e) }.bind(this), (t => t)).then(function () { this.isPaginated && "horizontal" === this.settings.axis && ("rtl" === this.settings.direction ? "default" === this.settings.rtlScrollType ? this.scrollTo(0, 0, !0) : this.scrollTo(-1 * this.container.scrollWidth + this.layout.delta, 0, !0) : this.scrollTo(this.container.scrollWidth - this.layout.delta, 0, !0)), this.views.show() }.bind(this)) } } current() { var t = this.visible(); return t.length ? t[t.length - 1] : null } clear() { this.views && (this.views.hide(), this.scrollTo(0, 0, !0), this.views.clear()) } currentLocation() { return this.updateLayout(), this.isPaginated && "horizontal" === this.settings.axis ? this.location = this.paginatedLocation() : this.location = this.scrolledLocation(), this.location } scrolledLocation() { let t = this.visible(), e = this.container.getBoundingClientRect(), i = e.height < window.innerHeight ? e.height : window.innerHeight, n = e.width < window.innerWidth ? e.width : window.innerWidth, s = "vertical" === this.settings.axis, r = (this.settings.direction, 0); return this.settings.fullsize && (r = s ? window.scrollY : window.scrollX), t.map((t => { let o, a, h, l, { index: c, href: u } = t.section, d = t.position(), f = t.width(), p = t.height(); s ? (o = r + e.top - d.top + 0, a = o + i - 0, l = this.layout.count(p, i).pages, h = i) : (o = r + e.left - d.left + 0, a = o + n - 0, l = this.layout.count(f, n).pages, h = n); let g = Math.ceil(o / h), m = [], v = Math.ceil(a / h); if ("rtl" === this.settings.direction && !s) { let t = g; g = l - v, v = l - t } m = []; for (var y = g; y <= v; y++) { let t = y + 1; m.push(t) } return { index: c, href: u, pages: m, totalPages: l, mapping: this.mapping.page(t.contents, t.section.cfiBase, o, a) } })) } paginatedLocation() { let t = this.visible(), e = this.container.getBoundingClientRect(), i = 0, n = 0; return this.settings.fullsize && (i = window.scrollX), t.map((t => { let s, r, o, a, { index: h, href: l } = t.section, c = t.position(), u = t.width(); "rtl" === this.settings.direction ? (s = e.right - i, a = Math.min(Math.abs(s - c.left), this.layout.width) - n, o = c.width - (c.right - s) - n, r = o - a) : (s = e.left + i, a = Math.min(c.right - s, this.layout.width) - n, r = s - c.left + n, o = r + a), n += a; let d = this.mapping.page(t.contents, t.section.cfiBase, r, o), f = this.layout.count(u).pages, p = Math.floor(r / this.layout.pageWidth), g = [], m = Math.floor(o / this.layout.pageWidth); if (p < 0 && (p = 0, m += 1), "rtl" === this.settings.direction) { let t = p; p = f - m, m = f - t } for (var v = p + 1; v <= m; v++) { let t = v; g.push(t) } return { index: h, href: l, pages: g, totalPages: f, mapping: d } })) } isVisible(t, e, i, n) { var s = t.position(), r = n || this.bounds(); return "horizontal" === this.settings.axis && s.right > r.left - e && s.left < r.right + i || "vertical" === this.settings.axis && s.bottom > r.top - e && s.top < r.bottom + i } visible() { for (var t, e = this.bounds(), i = this.views.displayed(), n = i.length, s = [], r = 0; r < n; r++)t = i[r], !0 === this.isVisible(t, 0, 0, e) && s.push(t); return s } scrollBy(t, e, i) { let n = "rtl" === this.settings.direction ? -1 : 1; i && (this.ignore = !0), this.settings.fullsize ? window.scrollBy(t * n, e * n) : (t && (this.container.scrollLeft += t * n), e && (this.container.scrollTop += e)), this.scrolled = !0 } scrollTo(t, e, i) { i && (this.ignore = !0), this.settings.fullsize ? window.scrollTo(t, e) : (this.container.scrollLeft = t, this.container.scrollTop = e), this.scrolled = !0 } onScroll() { let t, e; this.settings.fullsize ? (t = window.scrollY, e = window.scrollX) : (t = this.container.scrollTop, e = this.container.scrollLeft), this.scrollTop = t, this.scrollLeft = e, this.ignore ? this.ignore = !1 : (this.emit(d.c.MANAGERS.SCROLL, { top: t, left: e }), clearTimeout(this.afterScrolled), this.afterScrolled = setTimeout(function () { this.emit(d.c.MANAGERS.SCROLLED, { top: this.scrollTop, left: this.scrollLeft }) }.bind(this), 20)) } bounds() { return this.stage.bounds() } applyLayout(t) { this.layout = t, this.updateLayout(), this.views && this.views.length > 0 && "pre-paginated" === this.layout.name && this.display(this.views.first().section) } updateLayout() { this.stage && (this._stageSize = this.stage.size(), this.isPaginated ? (this.layout.calculate(this._stageSize.width, this._stageSize.height, this.settings.gap), this.settings.offset = this.layout.delta / this.layout.divisor) : this.layout.calculate(this._stageSize.width, this._stageSize.height), this.viewSettings.width = this.layout.width, this.viewSettings.height = this.layout.height, this.setLayout(this.layout)) } setLayout(t) { this.viewSettings.layout = t, this.mapping = new o.a(t.props, this.settings.direction, this.settings.axis), this.views && this.views.forEach((function (e) { e && e.setLayout(t) })) } updateWritingMode(t) { this.writingMode = t } updateAxis(t, e) { (e || t !== this.settings.axis) && (this.settings.axis = t, this.stage && this.stage.axis(t), this.viewSettings.axis = t, this.mapping && (this.mapping = new o.a(this.layout.props, this.settings.direction, this.settings.axis)), this.layout && ("vertical" === t ? this.layout.spread("none") : this.layout.spread(this.layout.settings.spread))) } updateFlow(t, e = "auto") { let i = "paginated" === t || "auto" === t; this.isPaginated = i, "scrolled-doc" === t || "scrolled-continuous" === t || "scrolled" === t ? this.updateAxis("vertical") : this.updateAxis("horizontal"), this.viewSettings.flow = t, this.settings.overflow ? this.overflow = this.settings.overflow : this.overflow = i ? "hidden" : e, this.stage && this.stage.overflow(this.overflow), this.updateLayout() } getContents() { var t = []; return this.views ? (this.views.forEach((function (e) { const i = e && e.contents; i && t.push(i) })), t) : t } direction(t = "ltr") { this.settings.direction = t, this.stage && this.stage.direction(t), this.viewSettings.direction = t, this.updateLayout() } isRendered() { return this.rendered } } s()(f.prototype), e.a = f }, function (t, e, i) { "use strict"; var n = i(2), s = i(0); e.a = class { constructor(t, e, i, n = !1) { this.layout = t, this.horizontal = "horizontal" === i, this.direction = e || "ltr", this._dev = n } section(t) { var e = this.findRanges(t); return this.rangeListToCfiList(t.section.cfiBase, e) } page(t, e, i, s) { var r, o = !(!t || !t.document) && t.document.body; if (o) { if (r = this.rangePairToCfiPair(e, { start: this.findStart(o, i, s), end: this.findEnd(o, i, s) }), !0 === this._dev) { let e = t.document, i = new n.a(r.start).toRange(e), s = new n.a(r.end).toRange(e), o = e.defaultView.getSelection(), a = e.createRange(); o.removeAllRanges(), a.setStart(i.startContainer, i.startOffset), a.setEnd(s.endContainer, s.endOffset), o.addRange(a) } return r } } walk(t, e) { if (!t || t.nodeType !== Node.TEXT_NODE) { var i = function (t) { return t.data.trim().length > 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_REJECT }, n = i; n.acceptNode = i; for (var s, r, o = document.createTreeWalker(t, NodeFilter.SHOW_TEXT, n, !1); (s = o.nextNode()) && !(r = e(s));); return r } } findRanges(t) { for (var e, i, n = [], s = t.contents.scrollWidth(), r = Math.ceil(s / this.layout.spreadWidth) * this.layout.divisor, o = this.layout.columnWidth, a = this.layout.gap, h = 0; h < r.pages; h++)e = (o + a) * h, i = o * (h + 1) + a * h, n.push({ start: this.findStart(t.document.body, e, i), end: this.findEnd(t.document.body, e, i) }); return n } findStart(t, e, i) { for (var n, r, o = [t], a = t; o.length;)if (n = o.shift(), r = this.walk(n, (t => { var n, r, h, l, c; if (c = Object(s.nodeBounds)(t), this.horizontal && "ltr" === this.direction) { if (n = this.horizontal ? c.left : c.top, r = this.horizontal ? c.right : c.bottom, n >= e && n <= i) return t; if (r > e) return t; a = t, o.push(t) } else if (this.horizontal && "rtl" === this.direction) { if (n = c.left, (r = c.right) <= i && r >= e) return t; if (n < i) return t; a = t, o.push(t) } else { if (h = c.top, l = c.bottom, h >= e && h <= i) return t; if (l > e) return t; a = t, o.push(t) } }))) return this.findTextStartRange(r, e, i); return this.findTextStartRange(a, e, i) } findEnd(t, e, i) { for (var n, r, o = [t], a = t; o.length;)if (n = o.shift(), r = this.walk(n, (t => { var n, r, h, l, c; if (c = Object(s.nodeBounds)(t), this.horizontal && "ltr" === this.direction) { if (n = Math.round(c.left), r = Math.round(c.right), n > i && a) return a; if (r > i) return t; a = t, o.push(t) } else if (this.horizontal && "rtl" === this.direction) { if (n = Math.round(this.horizontal ? c.left : c.top), (r = Math.round(this.horizontal ? c.right : c.bottom)) < e && a) return a; if (n < e) return t; a = t, o.push(t) } else { if (h = Math.round(c.top), l = Math.round(c.bottom), h > i && a) return a; if (l > i) return t; a = t, o.push(t) } }))) return this.findTextEndRange(r, e, i); return this.findTextEndRange(a, e, i) } findTextStartRange(t, e, i) { for (var n, s, r = this.splitTextNodeIntoRanges(t), o = 0; o < r.length; o++)if (s = (n = r[o]).getBoundingClientRect(), this.horizontal && "ltr" === this.direction) { if (s.left >= e) return n } else if (this.horizontal && "rtl" === this.direction) { if (s.right <= i) return n } else if (s.top >= e) return n; return r[0] } findTextEndRange(t, e, i) { for (var n, s, r, o, a, h, l, c = this.splitTextNodeIntoRanges(t), u = 0; u < c.length; u++) { if (r = (s = c[u]).getBoundingClientRect(), this.horizontal && "ltr" === this.direction) { if (o = r.left, a = r.right, o > i && n) return n; if (a > i) return s } else if (this.horizontal && "rtl" === this.direction) { if (o = r.left, (a = r.right) < e && n) return n; if (o < e) return s } else { if (h = r.top, l = r.bottom, h > i && n) return n; if (l > i) return s } n = s } return c[c.length - 1] } splitTextNodeIntoRanges(t, e) { var i, n = [], s = (t.textContent || "").trim(), r = t.ownerDocument, o = e || " ", a = s.indexOf(o); if (-1 === a || t.nodeType != Node.TEXT_NODE) return (i = r.createRange()).selectNodeContents(t), [i]; for ((i = r.createRange()).setStart(t, 0), i.setEnd(t, a), n.push(i), i = !1; -1 != a;)(a = s.indexOf(o, a + 1)) > 0 && (i && (i.setEnd(t, a), n.push(i)), (i = r.createRange()).setStart(t, a + 1)); return i && (i.setEnd(t, s.length), n.push(i)), n } rangePairToCfiPair(t, e) { var i = e.start, s = e.end; return i.collapse(!0), s.collapse(!1), { start: new n.a(i, t).toString(), end: new n.a(s, t).toString() } } rangeListToCfiList(t, e) { for (var i, n = [], s = 0; s < e.length; s++)i = this.rangePairToCfiPair(t, e[s]), n.push(i); return n } axis(t) { return t && (this.horizontal = "horizontal" === t), this.horizontal } } }, function (t, e, i) { "use strict"; var n = i(3), s = i.n(n), r = i(0), o = i(2), a = i(11), h = i(8), l = i(1); const c = "undefined" != typeof navigator, u = c && /Chrome/.test(navigator.userAgent), d = c && !u && /AppleWebKit/.test(navigator.userAgent); class f { constructor(t, e, i, n) { this.epubcfi = new o.a, this.document = t, this.documentElement = this.document.documentElement, this.content = e || this.document.body, this.window = this.document.defaultView, this._size = { width: 0, height: 0 }, this.sectionIndex = n || 0, this.cfiBase = i || "", this.epubReadingSystem("epub.js", l.b), this.called = 0, this.active = !0, this.listeners() } static get listenedEvents() { return l.a } width(t) { var e = this.content; return t && Object(r.isNumber)(t) && (t += "px"), t && (e.style.width = t), parseInt(this.window.getComputedStyle(e).width) } height(t) { var e = this.content; return t && Object(r.isNumber)(t) && (t += "px"), t && (e.style.height = t), parseInt(this.window.getComputedStyle(e).height) } contentWidth(t) { var e = this.content || this.document.body; return t && Object(r.isNumber)(t) && (t += "px"), t && (e.style.width = t), parseInt(this.window.getComputedStyle(e).width) } contentHeight(t) { var e = this.content || this.document.body; return t && Object(r.isNumber)(t) && (t += "px"), t && (e.style.height = t), parseInt(this.window.getComputedStyle(e).height) } textWidth() { let t, e, i = this.document.createRange(), n = this.content || this.document.body, s = Object(r.borders)(n); return i.selectNodeContents(n), t = i.getBoundingClientRect(), e = t.width, s && s.width && (e += s.width), Math.round(e) } textHeight() { let t, e, i = this.document.createRange(), n = this.content || this.document.body; return i.selectNodeContents(n), t = i.getBoundingClientRect(), e = t.bottom, Math.round(e) } scrollWidth() { return this.documentElement.scrollWidth } scrollHeight() { return this.documentElement.scrollHeight } overflow(t) { return t && (this.documentElement.style.overflow = t), this.window.getComputedStyle(this.documentElement).overflow } overflowX(t) { return t && (this.documentElement.style.overflowX = t), this.window.getComputedStyle(this.documentElement).overflowX } overflowY(t) { return t && (this.documentElement.style.overflowY = t), this.window.getComputedStyle(this.documentElement).overflowY } css(t, e, i) { var n = this.content || this.document.body; return e ? n.style.setProperty(t, e, i ? "important" : "") : n.style.removeProperty(t), this.window.getComputedStyle(n)[t] } viewport(t) { var e, i = this.document.querySelector("meta[name='viewport']"), n = { width: void 0, height: void 0, scale: void 0, minimum: void 0, maximum: void 0, scalable: void 0 }, s = []; if (i && i.hasAttribute("content")) { let t = i.getAttribute("content"), e = t.match(/width\s*=\s*([^,]*)/), s = t.match(/height\s*=\s*([^,]*)/), r = t.match(/initial-scale\s*=\s*([^,]*)/), o = t.match(/minimum-scale\s*=\s*([^,]*)/), a = t.match(/maximum-scale\s*=\s*([^,]*)/), h = t.match(/user-scalable\s*=\s*([^,]*)/); e && e.length && void 0 !== e[1] && (n.width = e[1]), s && s.length && void 0 !== s[1] && (n.height = s[1]), r && r.length && void 0 !== r[1] && (n.scale = r[1]), o && o.length && void 0 !== o[1] && (n.minimum = o[1]), a && a.length && void 0 !== a[1] && (n.maximum = a[1]), h && h.length && void 0 !== h[1] && (n.scalable = h[1]) } return e = Object(r.defaults)(t || {}, n), t && (e.width && s.push("width=" + e.width), e.height && s.push("height=" + e.height), e.scale && s.push("initial-scale=" + e.scale), "no" === e.scalable ? (s.push("minimum-scale=" + e.scale), s.push("maximum-scale=" + e.scale), s.push("user-scalable=" + e.scalable)) : (e.scalable && s.push("user-scalable=" + e.scalable), e.minimum && s.push("minimum-scale=" + e.minimum), e.maximum && s.push("minimum-scale=" + e.maximum)), i || ((i = this.document.createElement("meta")).setAttribute("name", "viewport"), this.document.querySelector("head").appendChild(i)), i.setAttribute("content", s.join(", ")), this.window.scrollTo(0, 0)), e } expand() { this.emit(l.c.CONTENTS.EXPAND) } listeners() { this.imageLoadListeners(), this.mediaQueryListeners(), this.addEventListeners(), this.addSelectionListeners(), "undefined" == typeof ResizeObserver ? (this.resizeListeners(), this.visibilityListeners()) : this.resizeObservers(), this.linksHandler() } removeListeners() { this.removeEventListeners(), this.removeSelectionListeners(), this.observer && this.observer.disconnect(), clearTimeout(this.expanding) } resizeCheck() { let t = this.textWidth(), e = this.textHeight(); t == this._size.width && e == this._size.height || (this._size = { width: t, height: e }, this.onResize && this.onResize(this._size), this.emit(l.c.CONTENTS.RESIZE, this._size)) } resizeListeners() { clearTimeout(this.expanding), requestAnimationFrame(this.resizeCheck.bind(this)), this.expanding = setTimeout(this.resizeListeners.bind(this), 350) } visibilityListeners() { document.addEventListener("visibilitychange", (() => { "visible" === document.visibilityState && !1 === this.active ? (this.active = !0, this.resizeListeners()) : (this.active = !1, clearTimeout(this.expanding)) })) } transitionListeners() { let t = this.content; t.style.transitionProperty = "font, font-size, font-size-adjust, font-stretch, font-variation-settings, font-weight, width, height", t.style.transitionDuration = "0.001ms", t.style.transitionTimingFunction = "linear", t.style.transitionDelay = "0", this._resizeCheck = this.resizeCheck.bind(this), this.document.addEventListener("transitionend", this._resizeCheck) } mediaQueryListeners() { for (var t = this.document.styleSheets, e = function (t) { t.matches && !this._expanding && setTimeout(this.expand.bind(this), 1) }.bind(this), i = 0; i < t.length; i += 1) { var n; try { n = t[i].cssRules } catch (t) { return } if (!n) return; for (var s = 0; s < n.length; s += 1)n[s].media && this.window.matchMedia(n[s].media.mediaText).addListener(e) } } resizeObservers() { this.observer = new ResizeObserver((t => { requestAnimationFrame(this.resizeCheck.bind(this)) })), this.observer.observe(this.document.documentElement) } mutationObservers() { this.observer = new MutationObserver((t => { this.resizeCheck() })), this.observer.observe(this.document, { attributes: !0, childList: !0, characterData: !0, subtree: !0 }) } imageLoadListeners() { for (var t, e = this.document.querySelectorAll("img"), i = 0; i < e.length; i++)void 0 !== (t = e[i]).naturalWidth && 0 === t.naturalWidth && (t.onload = this.expand.bind(this)) } fontLoadListeners() { this.document && this.document.fonts && this.document.fonts.ready.then(function () { this.resizeCheck() }.bind(this)) } root() { return this.document ? this.document.documentElement : null } locationOf(t, e) { var i, n = { left: 0, top: 0 }; if (!this.document) return n; if (this.epubcfi.isCfiString(t)) { let s = new o.a(t).toRange(this.document, e); if (s) { try { if (!s.endContainer || s.startContainer == s.endContainer && s.startOffset == s.endOffset) { let t = s.startContainer.textContent.indexOf(" ", s.startOffset); -1 == t && (t = s.startContainer.textContent.length), s.setEnd(s.startContainer, t) } } catch (t) { console.error("setting end offset to start container length failed", t) } if (s.startContainer.nodeType === Node.ELEMENT_NODE) i = s.startContainer.getBoundingClientRect(), n.left = i.left, n.top = i.top; else if (d) { let e = s.startContainer, n = new Range; try { 1 === e.nodeType ? i = e.getBoundingClientRect() : s.startOffset + 2 < e.length ? (n.setStart(e, s.startOffset), n.setEnd(e, s.startOffset + 2), i = n.getBoundingClientRect()) : s.startOffset - 2 > 0 ? (n.setStart(e, s.startOffset - 2), n.setEnd(e, s.startOffset), i = n.getBoundingClientRect()) : i = e.parentNode.getBoundingClientRect() } catch (t) { console.error(t, t.stack) } } else i = s.getBoundingClientRect() } } else if ("string" == typeof t && t.indexOf("#") > -1) { let e = t.substring(t.indexOf("#") + 1), n = this.document.getElementById(e); if (n) if (d) { let t = new Range; t.selectNode(n), i = t.getBoundingClientRect() } else i = n.getBoundingClientRect() } return i && (n.left = i.left, n.top = i.top), n } addStylesheet(t) { return new Promise(function (e, i) { var n, s = !1; this.document ? (n = this.document.querySelector("link[href='" + t + "']")) ? e(!0) : ((n = this.document.createElement("link")).type = "text/css", n.rel = "stylesheet", n.href = t, n.onload = n.onreadystatechange = function () { s || this.readyState && "complete" != this.readyState || (s = !0, setTimeout((() => { e(!0) }), 1)) }, this.document.head.appendChild(n)) : e(!1) }.bind(this)) } _getStylesheetNode(t) { var e; return t = "epubjs-inserted-css-" + (t || ""), !!this.document && ((e = this.document.getElementById(t)) || ((e = this.document.createElement("style")).id = t, this.document.head.appendChild(e)), e) } addStylesheetCss(t, e) { return !(!this.document || !t || (this._getStylesheetNode(e).innerHTML = t, 0)) } addStylesheetRules(t, e) { var i; if (this.document && t && 0 !== t.length) if (i = this._getStylesheetNode(e).sheet, "[object Array]" === Object.prototype.toString.call(t)) for (var n = 0, s = t.length; n < s; n++) { var r = 1, o = t[n], a = t[n][0], h = ""; "[object Array]" === Object.prototype.toString.call(o[1][0]) && (o = o[1], r = 0); for (var l = o.length; r < l; r++) { var c = o[r]; h += c[0] + ":" + c[1] + (c[2] ? " !important" : "") + ";\n" } i.insertRule(a + "{" + h + "}", i.cssRules.length) } else Object.keys(t).forEach((e => { const n = t[e]; if (Array.isArray(n)) n.forEach((t => { const n = Object.keys(t).map((e => `${e}:${t[e]}`)).join(";"); i.insertRule(`${e}{${n}}`, i.cssRules.length) })); else { const t = Object.keys(n).map((t => `${t}:${n[t]}`)).join(";"); i.insertRule(`${e}{${t}}`, i.cssRules.length) } })) } addScript(t) { return new Promise(function (e, i) { var n, s = !1; this.document ? ((n = this.document.createElement("script")).type = "text/javascript", n.async = !0, n.src = t, n.onload = n.onreadystatechange = function () { s || this.readyState && "complete" != this.readyState || (s = !0, setTimeout((function () { e(!0) }), 1)) }, this.document.head.appendChild(n)) : e(!1) }.bind(this)) } addClass(t) { var e; this.document && (e = this.content || this.document.body) && e.classList.add(t) } removeClass(t) { var e; this.document && (e = this.content || this.document.body) && e.classList.remove(t) } addEventListeners() { this.document && (this._triggerEvent = this.triggerEvent.bind(this), l.a.forEach((function (t) { this.document.addEventListener(t, this._triggerEvent, { passive: !0 }) }), this)) } removeEventListeners() { this.document && (l.a.forEach((function (t) { this.document.removeEventListener(t, this._triggerEvent, { passive: !0 }) }), this), this._triggerEvent = void 0) } triggerEvent(t) { this.emit(t.type, t) } addSelectionListeners() { this.document && (this._onSelectionChange = this.onSelectionChange.bind(this), this.document.addEventListener("selectionchange", this._onSelectionChange, { passive: !0 })) } removeSelectionListeners() { this.document && (this.document.removeEventListener("selectionchange", this._onSelectionChange, { passive: !0 }), this._onSelectionChange = void 0) } onSelectionChange(t) { this.selectionEndTimeout && clearTimeout(this.selectionEndTimeout), this.selectionEndTimeout = setTimeout(function () { var t = this.window.getSelection(); this.triggerSelectedEvent(t) }.bind(this), 250) } triggerSelectedEvent(t) { var e, i; t && t.rangeCount > 0 && ((e = t.getRangeAt(0)).collapsed || (i = new o.a(e, this.cfiBase).toString(), this.emit(l.c.CONTENTS.SELECTED, i), this.emit(l.c.CONTENTS.SELECTED_RANGE, e))) } range(t, e) { return new o.a(t).toRange(this.document, e) } cfiFromRange(t, e) { return new o.a(t, this.cfiBase, e).toString() } cfiFromNode(t, e) { return new o.a(t, this.cfiBase, e).toString() } map(t) { return new a.a(t).section() } size(t, e) { var i = { scale: 1, scalable: "no" }; this.layoutStyle("scrolling"), t >= 0 && (this.width(t), i.width = t, this.css("padding", "0 " + t / 12 + "px")), e >= 0 && (this.height(e), i.height = e), this.css("margin", "0"), this.css("box-sizing", "border-box"), this.viewport(i) } columns(t, e, i, n, s) { let o = Object(r.prefixed)("column-axis"), a = Object(r.prefixed)("column-gap"), h = Object(r.prefixed)("column-width"), l = Object(r.prefixed)("column-fill"), c = 0 === this.writingMode().indexOf("vertical") ? "vertical" : "horizontal"; this.layoutStyle("paginated"), "rtl" === s && "horizontal" === c && this.direction(s), this.width(t), this.height(e), this.viewport({ width: t, height: e, scale: 1, scalable: "no" }), this.css("overflow-y", "hidden"), this.css("margin", "0", !0), "vertical" === c ? (this.css("padding-top", n / 2 + "px", !0), this.css("padding-bottom", n / 2 + "px", !0), this.css("padding-left", "20px"), this.css("padding-right", "20px"), this.css(o, "vertical")) : (this.css("padding-top", "20px"), this.css("padding-bottom", "20px"), this.css("padding-left", n / 2 + "px", !0), this.css("padding-right", n / 2 + "px", !0), this.css(o, "horizontal")), this.css("box-sizing", "border-box"), this.css("max-width", "inherit"), this.css(l, "auto"), this.css(a, n + "px"), this.css(h, i + "px"), this.css("-webkit-line-box-contain", "block glyphs replaced") } scaler(t, e, i) { var n = "scale(" + t + ")", s = ""; this.css("transform-origin", "top left"), (e >= 0 || i >= 0) && (s = " translate(" + (e || 0) + "px, " + (i || 0) + "px )"), this.css("transform", n + s) } fit(t, e, i) { var n = this.viewport(), s = parseInt(n.width), r = parseInt(n.height), o = t / s, a = e / r, h = o < a ? o : a; if (this.layoutStyle("paginated"), this.width(s), this.height(r), this.overflow("hidden"), this.scaler(h, 0, 0), this.css("background-size", s * h + "px " + r * h + "px"), this.css("background-color", "transparent"), i && i.properties.includes("page-spread-left")) { var l = t - s * h; this.css("margin-left", l + "px") } } direction(t) { this.documentElement && (this.documentElement.style.direction = t) } mapPage(t, e, i, n, s) { return new a.a(e, s).page(this, t, i, n) } linksHandler() { Object(h.c)(this.content, (t => { this.emit(l.c.CONTENTS.LINK_CLICKED, t) })) } writingMode(t) { let e = Object(r.prefixed)("writing-mode"); return t && this.documentElement && (this.documentElement.style[e] = t), this.window.getComputedStyle(this.documentElement)[e] || "" } layoutStyle(t) { return t && (this._layoutStyle = t, navigator.epubReadingSystem.layoutStyle = this._layoutStyle), this._layoutStyle || "paginated" } epubReadingSystem(t, e) { return navigator.epubReadingSystem = { name: t, version: e, layoutStyle: this.layoutStyle(), hasFeature: function (t) { switch (t) { case "dom-manipulation": case "layout-changes": case "touch-events": case "mouse-events": case "keyboard-events": return !0; default: return !1 } } }, navigator.epubReadingSystem } destroy() { this.removeListeners() } } s()(f.prototype), e.a = f }, function (t, e, i) { "use strict"; Object.defineProperty(e, "__esModule", { value: !0 }), e.Underline = e.Highlight = e.Mark = e.Pane = void 0; var n = function () { function t(t, e) { for (var i = 0; i < e.length; i++) { var n = e[i]; n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(t, n.key, n) } } return function (e, i, n) { return i && t(e.prototype, i), n && t(e, n), e } }(), s = o(i(49)), r = o(i(50)); function o(t) { return t && t.__esModule ? t : { default: t } } function a(t, e) { if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return !e || "object" != typeof e && "function" != typeof e ? t : e } function h(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, enumerable: !1, writable: !0, configurable: !0 } }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e) } function l(t, e) { if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function") } e.Pane = function () { function t(e) { var i = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : document.body; l(this, t), this.target = e, this.element = s.default.createElement("svg"), this.marks = [], this.element.style.position = "absolute", this.element.setAttribute("pointer-events", "none"), r.default.proxyMouse(this.target, this.marks), this.container = i, this.container.appendChild(this.element), this.render() } return n(t, [{ key: "addMark", value: function (t) { var e = s.default.createElement("g"); return this.element.appendChild(e), t.bind(e, this.container), this.marks.push(t), t.render(), t } }, { key: "removeMark", value: function (t) { var e = this.marks.indexOf(t); if (-1 !== e) { var i = t.unbind(); this.element.removeChild(i), this.marks.splice(e, 1) } } }, { key: "render", value: function () { var t, e, i, n; !function (t, e) { t.style.setProperty("top", e.top + "px", "important"), t.style.setProperty("left", e.left + "px", "important"), t.style.setProperty("height", e.height + "px", "important"), t.style.setProperty("width", e.width + "px", "important") }(this.element, (t = this.target, e = this.container, i = e.getBoundingClientRect(), n = t.getBoundingClientRect(), { top: n.top - i.top, left: n.left - i.left, height: t.scrollHeight, width: t.scrollWidth })); var s = !0, r = !1, o = void 0; try { for (var a, h = this.marks[Symbol.iterator](); !(s = (a = h.next()).done); s = !0)a.value.render() } catch (t) { r = !0, o = t } finally { try { !s && h.return && h.return() } finally { if (r) throw o } } } }]), t }(); var c = e.Mark = function () { function t() { l(this, t), this.element = null } return n(t, [{ key: "bind", value: function (t, e) { this.element = t, this.container = e } }, { key: "unbind", value: function () { var t = this.element; return this.element = null, t } }, { key: "render", value: function () { } }, { key: "dispatchEvent", value: function (t) { this.element && this.element.dispatchEvent(t) } }, { key: "getBoundingClientRect", value: function () { return this.element.getBoundingClientRect() } }, { key: "getClientRects", value: function () { for (var t = [], e = this.element.firstChild; e;)t.push(e.getBoundingClientRect()), e = e.nextSibling; return t } }, { key: "filteredRanges", value: function () { var t = Array.from(this.range.getClientRects()); return t.filter((function (e) { for (var i = 0; i < t.length; i++) { if (t[i] === e) return !0; if (n = t[i], (s = e).right <= n.right && s.left >= n.left && s.top >= n.top && s.bottom <= n.bottom) return !1 } var n, s; return !0 })) } }]), t }(), u = e.Highlight = function (t) { function e(t, i, n, s) { l(this, e); var r = a(this, (e.__proto__ || Object.getPrototypeOf(e)).call(this)); return r.range = t, r.className = i, r.data = n || {}, r.attributes = s || {}, r } return h(e, t), n(e, [{ key: "bind", value: function (t, i) { for (var n in function t(e, i, n) { null === e && (e = Function.prototype); var s = Object.getOwnPropertyDescriptor(e, i); if (void 0 === s) { var r = Object.getPrototypeOf(e); return null === r ? void 0 : t(r, i, n) } if ("value" in s) return s.value; var o = s.get; return void 0 !== o ? o.call(n) : void 0 }(e.prototype.__proto__ || Object.getPrototypeOf(e.prototype), "bind", this).call(this, t, i), this.data) this.data.hasOwnProperty(n) && (this.element.dataset[n] = this.data[n]); for (var n in this.attributes) this.attributes.hasOwnProperty(n) && this.element.setAttribute(n, this.attributes[n]); this.className && this.element.classList.add(this.className) } }, { key: "render", value: function () { for (; this.element.firstChild;)this.element.removeChild(this.element.firstChild); for (var t = this.element.ownerDocument.createDocumentFragment(), e = this.filteredRanges(), i = this.element.getBoundingClientRect(), n = this.container.getBoundingClientRect(), r = 0, o = e.length; r < o; r++) { var a = e[r], h = s.default.createElement("rect"); h.setAttribute("x", a.left - i.left + n.left), h.setAttribute("y", a.top - i.top + n.top), h.setAttribute("height", a.height), h.setAttribute("width", a.width), t.appendChild(h) } this.element.appendChild(t) } }]), e }(c); e.Underline = function (t) { function e(t, i, n, s) { return l(this, e), a(this, (e.__proto__ || Object.getPrototypeOf(e)).call(this, t, i, n, s)) } return h(e, t), n(e, [{ key: "render", value: function () { for (; this.element.firstChild;)this.element.removeChild(this.element.firstChild); for (var t = this.element.ownerDocument.createDocumentFragment(), e = this.filteredRanges(), i = this.element.getBoundingClientRect(), n = this.container.getBoundingClientRect(), r = 0, o = e.length; r < o; r++) { var a = e[r], h = s.default.createElement("rect"); h.setAttribute("x", a.left - i.left + n.left), h.setAttribute("y", a.top - i.top + n.top), h.setAttribute("height", a.height), h.setAttribute("width", a.width), h.setAttribute("fill", "none"); var l = s.default.createElement("line"); l.setAttribute("x1", a.left - i.left + n.left), l.setAttribute("x2", a.left - i.left + n.left + a.width), l.setAttribute("y1", a.top - i.top + n.top + a.height - 1), l.setAttribute("y2", a.top - i.top + n.top + a.height - 1), l.setAttribute("stroke-width", 1), l.setAttribute("stroke", "black"), l.setAttribute("stroke-linecap", "square"), t.appendChild(h), t.appendChild(l) } this.element.appendChild(t) } }]), e }(u) }, function (t, e, i) { "use strict"; function n(t, e) { return void 0 === e && (e = Object), e && "function" == typeof e.freeze ? e.freeze(t) : t } var s = n({ HTML: "text/html", isHTML: function (t) { return t === s.HTML }, XML_APPLICATION: "application/xml", XML_TEXT: "text/xml", XML_XHTML_APPLICATION: "application/xhtml+xml", XML_SVG_IMAGE: "image/svg+xml" }), r = n({ HTML: "http://www.w3.org/1999/xhtml", isHTML: function (t) { return t === r.HTML }, SVG: "http://www.w3.org/2000/svg", XML: "http://www.w3.org/XML/1998/namespace", XMLNS: "http://www.w3.org/2000/xmlns/" }); e.freeze = n, e.MIME_TYPE = s, e.NAMESPACE = r }, function (t, e, i) { var n = i(25); e.DOMImplementation = n.DOMImplementation, e.XMLSerializer = n.XMLSerializer, e.DOMParser = i(46).DOMParser }, function (t, e, i) { "use strict"; var n = i(3), s = i.n(n), r = i(0), o = i(6), a = i(2), h = i(9), l = i(1); class c { constructor(t) { this.settings = t, this.name = t.layout || "reflowable", this._spread = "none" !== t.spread, this._minSpreadWidth = t.minSpreadWidth || 800, this._evenSpreads = t.evenSpreads || !1, "scrolled" === t.flow || "scrolled-continuous" === t.flow || "scrolled-doc" === t.flow ? this._flow = "scrolled" : this._flow = "paginated", this.width = 0, this.height = 0, this.spreadWidth = 0, this.delta = 0, this.columnWidth = 0, this.gap = 0, this.divisor = 1, this.props = { name: this.name, spread: this._spread, flow: this._flow, width: 0, height: 0, spreadWidth: 0, delta: 0, columnWidth: 0, gap: 0, divisor: 1 } } flow(t) { return void 0 !== t && (this._flow = "scrolled" === t || "scrolled-continuous" === t || "scrolled-doc" === t ? "scrolled" : "paginated", this.update({ flow: this._flow })), this._flow } spread(t, e) { return t && (this._spread = "none" !== t, this.update({ spread: this._spread })), e >= 0 && (this._minSpreadWidth = e), this._spread } calculate(t, e, i) { var n, s, r, o, a, h = i || 0, l = t, c = e, u = Math.floor(l / 12); a = this._spread && l >= this._minSpreadWidth ? 2 : 1, "reflowable" !== this.name || "paginated" !== this._flow || i >= 0 || (h = u % 2 == 0 ? u : u - 1), "pre-paginated" === this.name && (h = 0), a > 1 ? r = (n = l / a - h) + h : (n = l, r = l), "pre-paginated" === this.name && a > 1 && (l = n), s = n * a + h, o = l, this.width = l, this.height = c, this.spreadWidth = s, this.pageWidth = r, this.delta = o, this.columnWidth = n, this.gap = h, this.divisor = a, this.update({ width: l, height: c, spreadWidth: s, pageWidth: r, delta: o, columnWidth: n, gap: h, divisor: a }) } format(t, e, i) { return "pre-paginated" === this.name ? t.fit(this.columnWidth, this.height, e) : "paginated" === this._flow ? t.columns(this.width, this.height, this.columnWidth, this.gap, this.settings.direction) : i && "horizontal" === i ? t.size(null, this.height) : t.size(this.width, null) } count(t, e) { let i, n; return "pre-paginated" === this.name ? (i = 1, n = 1) : "paginated" === this._flow ? (e = e || this.delta, i = Math.ceil(t / e), n = i * this.divisor) : (e = e || this.height, i = Math.ceil(t / e), n = i), { spreads: i, pages: n } } update(t) { if (Object.keys(t).forEach((e => { this.props[e] === t[e] && delete t[e] })), Object.keys(t).length > 0) { let e = Object(r.extend)(this.props, t); this.emit(l.c.LAYOUT.UPDATED, e, t) } } } s()(c.prototype); var u = c, d = i(5), f = class { constructor(t) { this.rendition = t, this._themes = { default: { rules: {}, url: "", serialized: "" } }, this._overrides = {}, this._current = "default", this._injected = [], this.rendition.hooks.content.register(this.inject.bind(this)), this.rendition.hooks.content.register(this.overrides.bind(this)) } register() { if (0 !== arguments.length) return 1 === arguments.length && "object" == typeof arguments[0] ? this.registerThemes(arguments[0]) : 1 === arguments.length && "string" == typeof arguments[0] ? this.default(arguments[0]) : 2 === arguments.length && "string" == typeof arguments[1] ? this.registerUrl(arguments[0], arguments[1]) : 2 === arguments.length && "object" == typeof arguments[1] ? this.registerRules(arguments[0], arguments[1]) : void 0 } default(t) { if (t) return "string" == typeof t ? this.registerUrl("default", t) : "object" == typeof t ? this.registerRules("default", t) : void 0 } registerThemes(t) { for (var e in t) t.hasOwnProperty(e) && ("string" == typeof t[e] ? this.registerUrl(e, t[e]) : this.registerRules(e, t[e])) } registerCss(t, e) { this._themes[t] = { serialized: e }, (this._injected[t] || "default" == t) && this.update(t) } registerUrl(t, e) { var i = new d.a(e); this._themes[t] = { url: i.toString() }, (this._injected[t] || "default" == t) && this.update(t) } registerRules(t, e) { this._themes[t] = { rules: e }, (this._injected[t] || "default" == t) && this.update(t) } select(t) { var e = this._current; this._current = t, this.update(t), this.rendition.getContents().forEach((i => { i.removeClass(e), i.addClass(t) })) } update(t) { this.rendition.getContents().forEach((e => { this.add(t, e) })) } inject(t) { var e, i = [], n = this._themes; for (var s in n) !n.hasOwnProperty(s) || s !== this._current && "default" !== s || (((e = n[s]).rules && Object.keys(e.rules).length > 0 || e.url && -1 === i.indexOf(e.url)) && this.add(s, t), this._injected.push(s)); "default" != this._current && t.addClass(this._current) } add(t, e) { var i = this._themes[t]; i && e && (i.url ? e.addStylesheet(i.url) : i.serialized ? (e.addStylesheetCss(i.serialized, t), i.injected = !0) : i.rules && (e.addStylesheetRules(i.rules, t), i.injected = !0)) } override(t, e, i) { var n = this.rendition.getContents(); this._overrides[t] = { value: e, priority: !0 === i }, n.forEach((e => { e.css(t, this._overrides[t].value, this._overrides[t].priority) })) } removeOverride(t) { var e = this.rendition.getContents(); delete this._overrides[t], e.forEach((e => { e.css(t) })) } overrides(t) { var e = this._overrides; for (var i in e) e.hasOwnProperty(i) && t.css(i, e[i].value, e[i].priority) } fontSize(t) { this.override("font-size", t) } font(t) { this.override("font-family", t, !0) } destroy() { this.rendition = void 0, this._themes = void 0, this._overrides = void 0, this._current = void 0, this._injected = void 0 } }; i(12); class p { constructor({ type: t, cfiRange: e, data: i, sectionIndex: n, cb: s, className: r, styles: o }) { this.type = t, this.cfiRange = e, this.data = i, this.sectionIndex = n, this.mark = void 0, this.cb = s, this.className = r, this.styles = o } update(t) { this.data = t } attach(t) { let e, { cfiRange: i, data: n, type: s, mark: r, cb: o, className: a, styles: h } = this; return "highlight" === s ? e = t.highlight(i, n, o, a, h) : "underline" === s ? e = t.underline(i, n, o, a, h) : "mark" === s && (e = t.mark(i, n, o)), this.mark = e, this.emit(l.c.ANNOTATION.ATTACH, e), e } detach(t) { let e, { cfiRange: i, type: n } = this; return t && ("highlight" === n ? e = t.unhighlight(i) : "underline" === n ? e = t.ununderline(i) : "mark" === n && (e = t.unmark(i))), this.mark = void 0, this.emit(l.c.ANNOTATION.DETACH, e), e } text() { } } s()(p.prototype); var g = class { constructor(t) { this.rendition = t, this.highlights = [], this.underlines = [], this.marks = [], this._annotations = {}, this._annotationsBySectionIndex = {}, this.rendition.hooks.render.register(this.inject.bind(this)), this.rendition.hooks.unloaded.register(this.clear.bind(this)) } add(t, e, i, n, s, r) { let o = encodeURI(e + t), h = new a.a(e).spinePos, l = new p({ type: t, cfiRange: e, data: i, sectionIndex: h, cb: n, className: s, styles: r }); return this._annotations[o] = l, h in this._annotationsBySectionIndex ? this._annotationsBySectionIndex[h].push(o) : this._annotationsBySectionIndex[h] = [o], this.rendition.views().forEach((t => { l.sectionIndex === t.index && l.attach(t) })), l } remove(t, e) { let i = encodeURI(t + e); if (i in this._annotations) { let t = this._annotations[i]; if (e && t.type !== e) return; this.rendition.views().forEach((e => { this._removeFromAnnotationBySectionIndex(t.sectionIndex, i), t.sectionIndex === e.index && t.detach(e) })), delete this._annotations[i] } } _removeFromAnnotationBySectionIndex(t, e) { this._annotationsBySectionIndex[t] = this._annotationsAt(t).filter((t => t !== e)) } _annotationsAt(t) { return this._annotationsBySectionIndex[t] } highlight(t, e, i, n, s) { return this.add("highlight", t, e, i, n, s) } underline(t, e, i, n, s) { return this.add("underline", t, e, i, n, s) } mark(t, e, i) { return this.add("mark", t, e, i) } each() { return this._annotations.forEach.apply(this._annotations, arguments) } inject(t) { let e = t.index; e in this._annotationsBySectionIndex && this._annotationsBySectionIndex[e].forEach((e => { this._annotations[e].attach(t) })) } clear(t) { let e = t.index; e in this._annotationsBySectionIndex && this._annotationsBySectionIndex[e].forEach((e => { this._annotations[e].detach(t) })) } show() { } hide() { } }, m = i(20), v = i(10), y = i(22); class b { constructor(t, e) { this.settings = Object(r.extend)(this.settings || {}, { width: null, height: null, ignoreClass: "", manager: "default", view: "iframe", flow: null, layout: null, spread: null, minSpreadWidth: 800, stylesheet: null, resizeOnOrientationChange: !0, script: null, snap: !1, defaultDirection: "ltr", allowScriptedContent: !1, allowPopups: !1 }), Object(r.extend)(this.settings, e), "object" == typeof this.settings.manager && (this.manager = this.settings.manager), this.book = t, this.hooks = {}, this.hooks.display = new o.a(this), this.hooks.serialize = new o.a(this), this.hooks.content = new o.a(this), this.hooks.unloaded = new o.a(this), this.hooks.layout = new o.a(this), this.hooks.render = new o.a(this), this.hooks.show = new o.a(this), this.hooks.content.register(this.handleLinks.bind(this)), this.hooks.content.register(this.passEvents.bind(this)), this.hooks.content.register(this.adjustImages.bind(this)), this.book.spine.hooks.content.register(this.injectIdentifier.bind(this)), this.settings.stylesheet && this.book.spine.hooks.content.register(this.injectStylesheet.bind(this)), this.settings.script && this.book.spine.hooks.content.register(this.injectScript.bind(this)), this.themes = new f(this), this.annotations = new g(this), this.epubcfi = new a.a, this.q = new h.a(this), this.location = void 0, this.q.enqueue(this.book.opened), this.starting = new r.defer, this.started = this.starting.promise, this.q.enqueue(this.start) } setManager(t) { this.manager = t } requireManager(t) { return "string" == typeof t && "default" === t ? v.a : "string" == typeof t && "continuous" === t ? y.a : t } requireView(t) { return "string" == typeof t && "iframe" === t ? m.a : t } start() { switch (this.settings.layout || "pre-paginated" !== this.book.package.metadata.layout && "true" !== this.book.displayOptions.fixedLayout || (this.settings.layout = "pre-paginated"), this.book.package.metadata.spread) { case "none": this.settings.spread = "none"; break; case "both": this.settings.spread = !0 }this.manager || (this.ViewManager = this.requireManager(this.settings.manager), this.View = this.requireView(this.settings.view), this.manager = new this.ViewManager({ view: this.View, queue: this.q, request: this.book.load.bind(this.book), settings: this.settings })), this.direction(this.book.package.metadata.direction || this.settings.defaultDirection), this.settings.globalLayoutProperties = this.determineLayoutProperties(this.book.package.metadata), this.flow(this.settings.globalLayoutProperties.flow), this.layout(this.settings.globalLayoutProperties), this.manager.on(l.c.MANAGERS.ADDED, this.afterDisplayed.bind(this)), this.manager.on(l.c.MANAGERS.REMOVED, this.afterRemoved.bind(this)), this.manager.on(l.c.MANAGERS.RESIZED, this.onResized.bind(this)), this.manager.on(l.c.MANAGERS.ORIENTATION_CHANGE, this.onOrientationChange.bind(this)), this.manager.on(l.c.MANAGERS.SCROLLED, this.reportLocation.bind(this)), this.emit(l.c.RENDITION.STARTED), this.starting.resolve() } attachTo(t) { return this.q.enqueue(function () { this.manager.render(t, { width: this.settings.width, height: this.settings.height }), this.emit(l.c.RENDITION.ATTACHED) }.bind(this)) } display(t) { return this.displaying && this.displaying.resolve(), this.q.enqueue(this._display, t) } _display(t) { if (this.book) { this.epubcfi.isCfiString(t); var e, i = new r.defer, n = i.promise; return this.displaying = i, this.book.locations.length() && Object(r.isFloat)(t) && (t = this.book.locations.cfiFromPercentage(parseFloat(t))), (e = this.book.spine.get(t)) ? (this.manager.display(e, t).then((() => { i.resolve(e), this.displaying = void 0, this.emit(l.c.RENDITION.DISPLAYED, e), this.reportLocation() }), (t => { this.emit(l.c.RENDITION.DISPLAY_ERROR, t) })), n) : (i.reject(new Error("No Section Found")), n) } } afterDisplayed(t) { t.on(l.c.VIEWS.MARK_CLICKED, ((e, i) => this.triggerMarkEvent(e, i, t.contents))), this.hooks.render.trigger(t, this).then((() => { t.contents ? this.hooks.content.trigger(t.contents, this).then((() => { this.emit(l.c.RENDITION.RENDERED, t.section, t) })) : this.emit(l.c.RENDITION.RENDERED, t.section, t) })) } afterRemoved(t) { this.hooks.unloaded.trigger(t, this).then((() => { this.emit(l.c.RENDITION.REMOVED, t.section, t) })) } onResized(t, e) { this.emit(l.c.RENDITION.RESIZED, { width: t.width, height: t.height }, e), this.location && this.location.start && this.display(e || this.location.start.cfi) } onOrientationChange(t) { this.emit(l.c.RENDITION.ORIENTATION_CHANGE, t) } moveTo(t) { this.manager.moveTo(t) } resize(t, e, i) { t && (this.settings.width = t), e && (this.settings.height = e), this.manager.resize(t, e, i) } clear() { this.manager.clear() } next() { return this.q.enqueue(this.manager.next.bind(this.manager)).then(this.reportLocation.bind(this)) } prev() { return this.q.enqueue(this.manager.prev.bind(this.manager)).then(this.reportLocation.bind(this)) } determineLayoutProperties(t) { var e = this.settings.layout || t.layout || "reflowable", i = this.settings.spread || t.spread || "auto", n = this.settings.orientation || t.orientation || "auto", s = this.settings.flow || t.flow || "auto", r = t.viewport || "", o = this.settings.minSpreadWidth || t.minSpreadWidth || 800, a = this.settings.direction || t.direction || "ltr"; return (0 === this.settings.width || this.settings.width > 0) && (0 === this.settings.height || this.settings.height), { layout: e, spread: i, orientation: n, flow: s, viewport: r, minSpreadWidth: o, direction: a } } flow(t) { var e = t; "scrolled" !== t && "scrolled-doc" !== t && "scrolled-continuous" !== t || (e = "scrolled"), "auto" !== t && "paginated" !== t || (e = "paginated"), this.settings.flow = t, this._layout && this._layout.flow(e), this.manager && this._layout && this.manager.applyLayout(this._layout), this.manager && this.manager.updateFlow(e), this.manager && this.manager.isRendered() && this.location && (this.manager.clear(), this.display(this.location.start.cfi)) } layout(t) { return t && (this._layout = new u(t), this._layout.spread(t.spread, this.settings.minSpreadWidth), this._layout.on(l.c.LAYOUT.UPDATED, ((t, e) => { this.emit(l.c.RENDITION.LAYOUT, t, e) }))), this.manager && this._layout && this.manager.applyLayout(this._layout), this._layout } spread(t, e) { this.settings.spread = t, e && (this.settings.minSpreadWidth = e), this._layout && this._layout.spread(t, e), this.manager && this.manager.isRendered() && this.manager.updateLayout() } direction(t) { this.settings.direction = t || "ltr", this.manager && this.manager.direction(this.settings.direction), this.manager && this.manager.isRendered() && this.location && (this.manager.clear(), this.display(this.location.start.cfi)) } reportLocation() { return this.q.enqueue(function () { requestAnimationFrame(function () { var t = this.manager.currentLocation(); if (t && t.then && "function" == typeof t.then) t.then(function (t) { let e = this.located(t); e && e.start && e.end && (this.location = e, this.emit(l.c.RENDITION.LOCATION_CHANGED, { index: this.location.start.index, href: this.location.start.href, start: this.location.start.cfi, end: this.location.end.cfi, percentage: this.location.start.percentage }), this.emit(l.c.RENDITION.RELOCATED, this.location)) }.bind(this)); else if (t) { let e = this.located(t); if (!e || !e.start || !e.end) return; this.location = e, this.emit(l.c.RENDITION.LOCATION_CHANGED, { index: this.location.start.index, href: this.location.start.href, start: this.location.start.cfi, end: this.location.end.cfi, percentage: this.location.start.percentage }), this.emit(l.c.RENDITION.RELOCATED, this.location) } }.bind(this)) }.bind(this)) } currentLocation() { var t = this.manager.currentLocation(); if (t && t.then && "function" == typeof t.then) t.then(function (t) { return this.located(t) }.bind(this)); else if (t) return this.located(t) } located(t) { if (!t.length) return {}; let e = t[0], i = t[t.length - 1], n = { start: { index: e.index, href: e.href, cfi: e.mapping.start, displayed: { page: e.pages[0] || 1, total: e.totalPages } }, end: { index: i.index, href: i.href, cfi: i.mapping.end, displayed: { page: i.pages[i.pages.length - 1] || 1, total: i.totalPages } } }, s = this.book.locations.locationFromCfi(e.mapping.start), r = this.book.locations.locationFromCfi(i.mapping.end); null != s && (n.start.location = s, n.start.percentage = this.book.locations.percentageFromLocation(s)), null != r && (n.end.location = r, n.end.percentage = this.book.locations.percentageFromLocation(r)); let o = this.book.pageList.pageFromCfi(e.mapping.start), a = this.book.pageList.pageFromCfi(i.mapping.end); return -1 != o && (n.start.page = o), -1 != a && (n.end.page = a), i.index === this.book.spine.last().index && n.end.displayed.page >= n.end.displayed.total && (n.atEnd = !0), e.index === this.book.spine.first().index && 1 === n.start.displayed.page && (n.atStart = !0), n } destroy() { this.manager && this.manager.destroy(), this.book = void 0 } passEvents(t) { l.a.forEach((e => { t.on(e, (e => this.triggerViewEvent(e, t))) })), t.on(l.c.CONTENTS.SELECTED, (e => this.triggerSelectedEvent(e, t))) } triggerViewEvent(t, e) { this.emit(t.type, t, e) } triggerSelectedEvent(t, e) { this.emit(l.c.RENDITION.SELECTED, t, e) } triggerMarkEvent(t, e, i) { this.emit(l.c.RENDITION.MARK_CLICKED, t, e, i) } getRange(t, e) { var i = new a.a(t), n = this.manager.visible().filter((function (t) { if (i.spinePos === t.index) return !0 })); if (n.length) return n[0].contents.range(i, e) } adjustImages(t) { if ("pre-paginated" === this._layout.name) return new Promise((function (t) { t() })); let e = t.window.getComputedStyle(t.content, null), i = .95 * (t.content.offsetHeight - (parseFloat(e.paddingTop) + parseFloat(e.paddingBottom))), n = parseFloat(e.paddingLeft) + parseFloat(e.paddingRight); return t.addStylesheetRules({ img: { "max-width": (this._layout.columnWidth ? this._layout.columnWidth - n + "px" : "100%") + "!important", "max-height": i + "px!important", "object-fit": "contain", "page-break-inside": "avoid", "break-inside": "avoid", "box-sizing": "border-box" }, svg: { "max-width": (this._layout.columnWidth ? this._layout.columnWidth - n + "px" : "100%") + "!important", "max-height": i + "px!important", "page-break-inside": "avoid", "break-inside": "avoid" } }), new Promise((function (t, e) { setTimeout((function () { t() }), 1) })) } getContents() { return this.manager ? this.manager.getContents() : [] } views() { return (this.manager ? this.manager.views : void 0) || [] } handleLinks(t) { t && t.on(l.c.CONTENTS.LINK_CLICKED, (t => { let e = this.book.path.relative(t); this.display(e) })) } injectStylesheet(t, e) { let i = t.createElement("link"); i.setAttribute("type", "text/css"), i.setAttribute("rel", "stylesheet"), i.setAttribute("href", this.settings.stylesheet), t.getElementsByTagName("head")[0].appendChild(i) } injectScript(t, e) { let i = t.createElement("script"); i.setAttribute("type", "text/javascript"), i.setAttribute("src", this.settings.script), i.textContent = " ", t.getElementsByTagName("head")[0].appendChild(i) } injectIdentifier(t, e) { let i = this.book.packaging.metadata.identifier, n = t.createElement("meta"); n.setAttribute("name", "dc.relation.ispartof"), i && n.setAttribute("content", i), t.getElementsByTagName("head")[0].appendChild(n) } } s()(b.prototype), e.a = b }, function (t, e) { var i; i = function () { return this }(); try { i = i || new Function("return this")() } catch (t) { "object" == typeof window && (i = window) } t.exports = i }, function (t, e, i) { "use strict"; var n = i(38)(); t.exports = function (t) { return t !== n && null !== t } }, function (t, e) { t.exports = function (t) { var e = typeof t; return null != t && ("object" == e || "function" == e) } }, function (t, e, i) { "use strict"; var n = i(3), s = i.n(n), r = i(0), o = i(2), a = i(12), h = i(1), l = i(13); class c { constructor(t, e) { this.settings = Object(r.extend)({ ignoreClass: "", axis: void 0, direction: void 0, width: 0, height: 0, layout: void 0, globalLayoutProperties: {}, method: void 0, forceRight: !1, allowScriptedContent: !1, allowPopups: !1 }, e || {}), this.id = "epubjs-view-" + Object(r.uuid)(), this.section = t, this.index = t.index, this.element = this.container(this.settings.axis), this.added = !1, this.displayed = !1, this.rendered = !1, this.fixedWidth = 0, this.fixedHeight = 0, this.epubcfi = new o.a, this.layout = this.settings.layout, this.pane = void 0, this.highlights = {}, this.underlines = {}, this.marks = {} } container(t) { var e = document.createElement("div"); return e.classList.add("epub-view"), e.style.height = "0px", e.style.width = "0px", e.style.overflow = "hidden", e.style.position = "relative", e.style.display = "block", e.style.flex = t && "horizontal" == t ? "none" : "initial", e } create() { return this.iframe || (this.element || (this.element = this.createContainer()), this.iframe = document.createElement("iframe"), this.iframe.id = this.id, this.iframe.scrolling = "no", this.iframe.style.overflow = "hidden", this.iframe.seamless = "seamless", this.iframe.style.border = "none", this.iframe.sandbox = "allow-same-origin", this.settings.allowScriptedContent && (this.iframe.sandbox += " allow-scripts"), this.settings.allowPopups && (this.iframe.sandbox += " allow-popups"), this.iframe.setAttribute("enable-annotation", "true"), this.resizing = !0, this.element.style.visibility = "hidden", this.iframe.style.visibility = "hidden", this.iframe.style.width = "0", this.iframe.style.height = "0", this._width = 0, this._height = 0, this.element.setAttribute("ref", this.index), this.added = !0, this.elementBounds = Object(r.bounds)(this.element), "srcdoc" in this.iframe ? this.supportsSrcdoc = !0 : this.supportsSrcdoc = !1, this.settings.method || (this.settings.method = this.supportsSrcdoc ? "srcdoc" : "write")), this.iframe } render(t, e) { return this.create(), this.size(), this.sectionRender || (this.sectionRender = this.section.render(t)), this.sectionRender.then(function (t) { return this.load(t) }.bind(this)).then(function () { let t, e = this.contents.writingMode(); return t = "scrolled" === this.settings.flow ? 0 === e.indexOf("vertical") ? "horizontal" : "vertical" : 0 === e.indexOf("vertical") ? "vertical" : "horizontal", 0 === e.indexOf("vertical") && "paginated" === this.settings.flow && (this.layout.delta = this.layout.height), this.setAxis(t), this.emit(h.c.VIEWS.AXIS, t), this.setWritingMode(e), this.emit(h.c.VIEWS.WRITING_MODE, e), this.layout.format(this.contents, this.section, this.axis), this.addListeners(), new Promise(((t, e) => { this.expand(), this.settings.forceRight && (this.element.style.marginLeft = this.width() + "px"), t() })) }.bind(this), function (t) { return this.emit(h.c.VIEWS.LOAD_ERROR, t), new Promise(((e, i) => { i(t) })) }.bind(this)).then(function () { this.emit(h.c.VIEWS.RENDERED, this.section) }.bind(this)) } reset() { this.iframe && (this.iframe.style.width = "0", this.iframe.style.height = "0", this._width = 0, this._height = 0, this._textWidth = void 0, this._contentWidth = void 0, this._textHeight = void 0, this._contentHeight = void 0), this._needsReframe = !0 } size(t, e) { var i = t || this.settings.width, n = e || this.settings.height; "pre-paginated" === this.layout.name ? this.lock("both", i, n) : "horizontal" === this.settings.axis ? this.lock("height", i, n) : this.lock("width", i, n), this.settings.width = i, this.settings.height = n } lock(t, e, i) { var n, s = Object(r.borders)(this.element); n = this.iframe ? Object(r.borders)(this.iframe) : { width: 0, height: 0 }, "width" == t && Object(r.isNumber)(e) && (this.lockedWidth = e - s.width - n.width), "height" == t && Object(r.isNumber)(i) && (this.lockedHeight = i - s.height - n.height), "both" === t && Object(r.isNumber)(e) && Object(r.isNumber)(i) && (this.lockedWidth = e - s.width - n.width, this.lockedHeight = i - s.height - n.height), this.displayed && this.iframe && this.expand() } expand(t) { var e, i = this.lockedWidth, n = this.lockedHeight; this.iframe && !this._expanding && (this._expanding = !0, "pre-paginated" === this.layout.name ? (i = this.layout.columnWidth, n = this.layout.height) : "horizontal" === this.settings.axis ? ((i = this.contents.textWidth()) % this.layout.pageWidth > 0 && (i = Math.ceil(i / this.layout.pageWidth) * this.layout.pageWidth), this.settings.forceEvenPages && (e = i / this.layout.pageWidth, this.layout.divisor > 1 && "reflowable" === this.layout.name && e % 2 > 0 && (i += this.layout.pageWidth))) : "vertical" === this.settings.axis && (n = this.contents.textHeight(), "paginated" === this.settings.flow && n % this.layout.height > 0 && (n = Math.ceil(n / this.layout.height) * this.layout.height)), (this._needsReframe || i != this._width || n != this._height) && this.reframe(i, n), this._expanding = !1) } reframe(t, e) { var i; Object(r.isNumber)(t) && (this.element.style.width = t + "px", this.iframe.style.width = t + "px", this._width = t), Object(r.isNumber)(e) && (this.element.style.height = e + "px", this.iframe.style.height = e + "px", this._height = e), i = { width: t, height: e, widthDelta: this.prevBounds ? t - this.prevBounds.width : t, heightDelta: this.prevBounds ? e - this.prevBounds.height : e }, this.pane && this.pane.render(), requestAnimationFrame((() => { let t; for (let e in this.marks) this.marks.hasOwnProperty(e) && (t = this.marks[e], this.placeMark(t.element, t.range)) })), this.onResize(this, i), this.emit(h.c.VIEWS.RESIZED, i), this.prevBounds = i, this.elementBounds = Object(r.bounds)(this.element) } load(t) { var e = new r.defer, i = e.promise; if (!this.iframe) return e.reject(new Error("No Iframe Available")), i; if (this.iframe.onload = function (t) { this.onLoad(t, e) }.bind(this), "blobUrl" === this.settings.method) this.blobUrl = Object(r.createBlobUrl)(t, "application/xhtml+xml"), this.iframe.src = this.blobUrl, this.element.appendChild(this.iframe); else if ("srcdoc" === this.settings.method) this.iframe.srcdoc = t, this.element.appendChild(this.iframe); else { if (this.element.appendChild(this.iframe), this.document = this.iframe.contentDocument, !this.document) return e.reject(new Error("No Document Available")), i; if (this.iframe.contentDocument.open(), window.MSApp && MSApp.execUnsafeLocalFunction) { var n = this; MSApp.execUnsafeLocalFunction((function () { n.iframe.contentDocument.write(t) })) } else this.iframe.contentDocument.write(t); this.iframe.contentDocument.close() } return i } onLoad(t, e) { this.window = this.iframe.contentWindow, this.document = this.iframe.contentDocument, this.contents = new a.a(this.document, this.document.body, this.section.cfiBase, this.section.index), this.rendering = !1; var i = this.document.querySelector("link[rel='canonical']"); i ? i.setAttribute("href", this.section.canonical) : ((i = this.document.createElement("link")).setAttribute("rel", "canonical"), i.setAttribute("href", this.section.canonical), this.document.querySelector("head").appendChild(i)), this.contents.on(h.c.CONTENTS.EXPAND, (() => { this.displayed && this.iframe && (this.expand(), this.contents && this.layout.format(this.contents)) })), this.contents.on(h.c.CONTENTS.RESIZE, (t => { this.displayed && this.iframe && (this.expand(), this.contents && this.layout.format(this.contents)) })), e.resolve(this.contents) } setLayout(t) { this.layout = t, this.contents && (this.layout.format(this.contents), this.expand()) } setAxis(t) { this.settings.axis = t, this.element.style.flex = "horizontal" == t ? "none" : "initial", this.size() } setWritingMode(t) { this.writingMode = t } addListeners() { } removeListeners(t) { } display(t) { var e = new r.defer; return this.displayed ? e.resolve(this) : this.render(t).then(function () { this.emit(h.c.VIEWS.DISPLAYED, this), this.onDisplayed(this), this.displayed = !0, e.resolve(this) }.bind(this), (function (t) { e.reject(t, this) })), e.promise } show() { this.element.style.visibility = "visible", this.iframe && (this.iframe.style.visibility = "visible", this.iframe.style.transform = "translateZ(0)", this.iframe.offsetWidth, this.iframe.style.transform = null), this.emit(h.c.VIEWS.SHOWN, this) } hide() { this.element.style.visibility = "hidden", this.iframe.style.visibility = "hidden", this.stopExpanding = !0, this.emit(h.c.VIEWS.HIDDEN, this) } offset() { return { top: this.element.offsetTop, left: this.element.offsetLeft } } width() { return this._width } height() { return this._height } position() { return this.element.getBoundingClientRect() } locationOf(t) { this.iframe.getBoundingClientRect(); var e = this.contents.locationOf(t, this.settings.ignoreClass); return { left: e.left, top: e.top } } onDisplayed(t) { } onResize(t, e) { } bounds(t) { return !t && this.elementBounds || (this.elementBounds = Object(r.bounds)(this.element)), this.elementBounds } highlight(t, e = {}, i, n = "epubjs-hl", s = {}) { if (!this.contents) return; const r = Object.assign({ fill: "yellow", "fill-opacity": "0.3", "mix-blend-mode": "multiply" }, s); let o = this.contents.range(t), a = () => { this.emit(h.c.VIEWS.MARK_CLICKED, t, e) }; e.epubcfi = t, this.pane || (this.pane = new l.Pane(this.iframe, this.element)); let c = new l.Highlight(o, n, e, r), u = this.pane.addMark(c); return this.highlights[t] = { mark: u, element: u.element, listeners: [a, i] }, u.element.setAttribute("ref", n), u.element.addEventListener("click", a), u.element.addEventListener("touchstart", a), i && (u.element.addEventListener("click", i), u.element.addEventListener("touchstart", i)), u } underline(t, e = {}, i, n = "epubjs-ul", s = {}) { if (!this.contents) return; const r = Object.assign({ stroke: "black", "stroke-opacity": "0.3", "mix-blend-mode": "multiply" }, s); let o = this.contents.range(t), a = () => { this.emit(h.c.VIEWS.MARK_CLICKED, t, e) }; e.epubcfi = t, this.pane || (this.pane = new l.Pane(this.iframe, this.element)); let c = new l.Underline(o, n, e, r), u = this.pane.addMark(c); return this.underlines[t] = { mark: u, element: u.element, listeners: [a, i] }, u.element.setAttribute("ref", n), u.element.addEventListener("click", a), u.element.addEventListener("touchstart", a), i && (u.element.addEventListener("click", i), u.element.addEventListener("touchstart", i)), u } mark(t, e = {}, i) { if (!this.contents) return; if (t in this.marks) return this.marks[t]; let n = this.contents.range(t); if (!n) return; let s = n.commonAncestorContainer, r = 1 === s.nodeType ? s : s.parentNode, o = i => { this.emit(h.c.VIEWS.MARK_CLICKED, t, e) }; n.collapsed && 1 === s.nodeType ? (n = new Range, n.selectNodeContents(s)) : n.collapsed && (n = new Range, n.selectNodeContents(r)); let a = this.document.createElement("a"); return a.setAttribute("ref", "epubjs-mk"), a.style.position = "absolute", a.dataset.epubcfi = t, e && Object.keys(e).forEach((t => { a.dataset[t] = e[t] })), i && (a.addEventListener("click", i), a.addEventListener("touchstart", i)), a.addEventListener("click", o), a.addEventListener("touchstart", o), this.placeMark(a, n), this.element.appendChild(a), this.marks[t] = { element: a, range: n, listeners: [o, i] }, r } placeMark(t, e) { let i, n, s; if ("pre-paginated" === this.layout.name || "horizontal" !== this.settings.axis) { let t = e.getBoundingClientRect(); i = t.top, n = t.right } else { let t, o = e.getClientRects(); for (var r = 0; r != o.length; r++)t = o[r], (!s || t.left < s) && (s = t.left, n = Math.ceil(s / this.layout.props.pageWidth) * this.layout.props.pageWidth - this.layout.gap / 2, i = t.top) } t.style.top = i + "px", t.style.left = n + "px" } unhighlight(t) { let e; t in this.highlights && (e = this.highlights[t], this.pane.removeMark(e.mark), e.listeners.forEach((t => { t && (e.element.removeEventListener("click", t), e.element.removeEventListener("touchstart", t)) })), delete this.highlights[t]) } ununderline(t) { let e; t in this.underlines && (e = this.underlines[t], this.pane.removeMark(e.mark), e.listeners.forEach((t => { t && (e.element.removeEventListener("click", t), e.element.removeEventListener("touchstart", t)) })), delete this.underlines[t]) } unmark(t) { let e; t in this.marks && (e = this.marks[t], this.element.removeChild(e.element), e.listeners.forEach((t => { t && (e.element.removeEventListener("click", t), e.element.removeEventListener("touchstart", t)) })), delete this.marks[t]) } destroy() { for (let t in this.highlights) this.unhighlight(t); for (let t in this.underlines) this.ununderline(t); for (let t in this.marks) this.unmark(t); this.blobUrl && Object(r.revokeBlobUrl)(this.blobUrl), this.displayed && (this.displayed = !1, this.removeListeners(), this.contents.destroy(), this.stopExpanding = !0, this.element.removeChild(this.iframe), this.pane && (this.pane.element.remove(), this.pane = void 0), this.iframe = void 0, this.contents = void 0, this._textWidth = null, this._textHeight = null, this._width = null, this._height = null) } } s()(c.prototype), e.a = c }, function (t, e, i) { var n = i(19), s = i(51), r = i(53), o = Math.max, a = Math.min; t.exports = function (t, e, i) { var h, l, c, u, d, f, p = 0, g = !1, m = !1, v = !0; if ("function" != typeof t) throw new TypeError("Expected a function"); function y(e) { var i = h, n = l; return h = l = void 0, p = e, u = t.apply(n, i) } function b(t) { var i = t - f; return void 0 === f || i >= e || i < 0 || m && t - p >= c } function w() { var t = s(); if (b(t)) return x(t); d = setTimeout(w, function (t) { var i = e - (t - f); return m ? a(i, c - (t - p)) : i }(t)) } function x(t) { return d = void 0, v && h ? y(t) : (h = l = void 0, u) } function E() { var t = s(), i = b(t); if (h = arguments, l = this, f = t, i) { if (void 0 === d) return function (t) { return p = t, d = setTimeout(w, e), g ? y(t) : u }(f); if (m) return clearTimeout(d), d = setTimeout(w, e), y(f) } return void 0 === d && (d = setTimeout(w, e)), u } return e = r(e) || 0, n(i) && (g = !!i.leading, c = (m = "maxWait" in i) ? o(r(i.maxWait) || 0, e) : c, v = "trailing" in i ? !!i.trailing : v), E.cancel = function () { void 0 !== d && clearTimeout(d), p = 0, h = f = l = d = void 0 }, E.flush = function () { return void 0 === d ? u : x(s()) }, E } }, function (t, e, i) { "use strict"; var n = i(0), s = i(10), r = i(1), o = i(3), a = i.n(o); const h = Math.PI / 2, l = { easeOutSine: function (t) { return Math.sin(t * h) }, easeInOutSine: function (t) { return -.5 * (Math.cos(Math.PI * t) - 1) }, easeInOutQuint: function (t) { return (t /= .5) < 1 ? .5 * Math.pow(t, 5) : .5 * (Math.pow(t - 2, 5) + 2) }, easeInCubic: function (t) { return Math.pow(t, 3) } }; class c { constructor(t, e) { this.settings = Object(n.extend)({ duration: 80, minVelocity: .2, minDistance: 10, easing: l.easeInCubic }, e || {}), this.supportsTouch = this.supportsTouch(), this.supportsTouch && this.setup(t) } setup(t) { this.manager = t, this.layout = this.manager.layout, this.fullsize = this.manager.settings.fullsize, this.fullsize ? (this.element = this.manager.stage.element, this.scroller = window, this.disableScroll()) : (this.element = this.manager.stage.container, this.scroller = this.element, this.element.style.WebkitOverflowScrolling = "touch"), this.manager.settings.offset = this.layout.width, this.manager.settings.afterScrolledTimeout = 2 * this.settings.duration, this.isVertical = "vertical" === this.manager.settings.axis, this.manager.isPaginated && !this.isVertical && (this.touchCanceler = !1, this.resizeCanceler = !1, this.snapping = !1, this.scrollLeft, this.scrollTop, this.startTouchX = void 0, this.startTouchY = void 0, this.startTime = void 0, this.endTouchX = void 0, this.endTouchY = void 0, this.endTime = void 0, this.addListeners()) } supportsTouch() { return !!("ontouchstart" in window || window.DocumentTouch && document instanceof DocumentTouch) } disableScroll() { this.element.style.overflow = "hidden" } enableScroll() { this.element.style.overflow = "" } addListeners() { this._onResize = this.onResize.bind(this), window.addEventListener("resize", this._onResize), this._onScroll = this.onScroll.bind(this), this.scroller.addEventListener("scroll", this._onScroll), this._onTouchStart = this.onTouchStart.bind(this), this.scroller.addEventListener("touchstart", this._onTouchStart, { passive: !0 }), this.on("touchstart", this._onTouchStart), this._onTouchMove = this.onTouchMove.bind(this), this.scroller.addEventListener("touchmove", this._onTouchMove, { passive: !0 }), this.on("touchmove", this._onTouchMove), this._onTouchEnd = this.onTouchEnd.bind(this), this.scroller.addEventListener("touchend", this._onTouchEnd, { passive: !0 }), this.on("touchend", this._onTouchEnd), this._afterDisplayed = this.afterDisplayed.bind(this), this.manager.on(r.c.MANAGERS.ADDED, this._afterDisplayed) } removeListeners() { window.removeEventListener("resize", this._onResize), this._onResize = void 0, this.scroller.removeEventListener("scroll", this._onScroll), this._onScroll = void 0, this.scroller.removeEventListener("touchstart", this._onTouchStart, { passive: !0 }), this.off("touchstart", this._onTouchStart), this._onTouchStart = void 0, this.scroller.removeEventListener("touchmove", this._onTouchMove, { passive: !0 }), this.off("touchmove", this._onTouchMove), this._onTouchMove = void 0, this.scroller.removeEventListener("touchend", this._onTouchEnd, { passive: !0 }), this.off("touchend", this._onTouchEnd), this._onTouchEnd = void 0, this.manager.off(r.c.MANAGERS.ADDED, this._afterDisplayed), this._afterDisplayed = void 0 } afterDisplayed(t) { let e = t.contents;["touchstart", "touchmove", "touchend"].forEach((t => { e.on(t, (t => this.triggerViewEvent(t, e))) })) } triggerViewEvent(t, e) { this.emit(t.type, t, e) } onScroll(t) { this.scrollLeft = this.fullsize ? window.scrollX : this.scroller.scrollLeft, this.scrollTop = this.fullsize ? window.scrollY : this.scroller.scrollTop } onResize(t) { this.resizeCanceler = !0 } onTouchStart(t) { let { screenX: e, screenY: i } = t.touches[0]; this.fullsize && this.enableScroll(), this.touchCanceler = !0, this.startTouchX || (this.startTouchX = e, this.startTouchY = i, this.startTime = this.now()), this.endTouchX = e, this.endTouchY = i, this.endTime = this.now() } onTouchMove(t) { let { screenX: e, screenY: i } = t.touches[0], n = Math.abs(i - this.endTouchY); this.touchCanceler = !0, !this.fullsize && n < 10 && (this.element.scrollLeft -= e - this.endTouchX), this.endTouchX = e, this.endTouchY = i, this.endTime = this.now() } onTouchEnd(t) { this.fullsize && this.disableScroll(), this.touchCanceler = !1; let e = this.wasSwiped(); 0 !== e ? this.snap(e) : this.snap(), this.startTouchX = void 0, this.startTouchY = void 0, this.startTime = void 0, this.endTouchX = void 0, this.endTouchY = void 0, this.endTime = void 0 } wasSwiped() { let t = this.layout.pageWidth * this.layout.divisor, e = this.endTouchX - this.startTouchX, i = Math.abs(e), n = e / (this.endTime - this.startTime), s = this.settings.minVelocity; return i <= this.settings.minDistance || i >= t ? 0 : n > s ? -1 : n < -s ? 1 : void 0 } needsSnap() { return this.scrollLeft % (this.layout.pageWidth * this.layout.divisor) != 0 } snap(t = 0) { let e = this.scrollLeft, i = this.layout.pageWidth * this.layout.divisor, n = Math.round(e / i) * i; return t && (n += t * i), this.smoothScrollTo(n) } smoothScrollTo(t) { const e = new n.defer, i = this.scrollLeft, s = this.now(), r = this.settings.duration, o = this.settings.easing; return this.snapping = !0, function n() { const a = this.now(), h = Math.min(1, (a - s) / r); if (o(h), this.touchCanceler || this.resizeCanceler) return this.resizeCanceler = !1, this.snapping = !1, void e.resolve(); h < 1 ? (window.requestAnimationFrame(n.bind(this)), this.scrollTo(i + (t - i) * h, 0)) : (this.scrollTo(t, 0), this.snapping = !1, e.resolve()) }.call(this), e.promise } scrollTo(t = 0, e = 0) { this.fullsize ? window.scroll(t, e) : (this.scroller.scrollLeft = t, this.scroller.scrollTop = e) } now() { return "now" in window.performance ? performance.now() : (new Date).getTime() } destroy() { this.scroller && (this.fullsize && this.enableScroll(), this.removeListeners(), this.scroller = void 0) } } a()(c.prototype); var u = c, d = i(21), f = i.n(d); class p extends s.a { constructor(t) { super(t), this.name = "continuous", this.settings = Object(n.extend)(this.settings || {}, { infinite: !0, overflow: void 0, axis: void 0, writingMode: void 0, flow: "scrolled", offset: 500, offsetDelta: 250, width: void 0, height: void 0, snap: !1, afterScrolledTimeout: 10, allowScriptedContent: !1, allowPopups: !1 }), Object(n.extend)(this.settings, t.settings || {}), "undefined" != t.settings.gap && 0 === t.settings.gap && (this.settings.gap = t.settings.gap), this.viewSettings = { ignoreClass: this.settings.ignoreClass, axis: this.settings.axis, flow: this.settings.flow, layout: this.layout, width: 0, height: 0, forceEvenPages: !1, allowScriptedContent: this.settings.allowScriptedContent, allowPopups: this.settings.allowPopups }, this.scrollTop = 0, this.scrollLeft = 0 } display(t, e) { return s.a.prototype.display.call(this, t, e).then(function () { return this.fill() }.bind(this)) } fill(t) { var e = t || new n.defer; return this.q.enqueue((() => this.check())).then((t => { t ? this.fill(e) : e.resolve() })), e.promise } moveTo(t) { var e = 0, i = 0; this.isPaginated ? (e = Math.floor(t.left / this.layout.delta) * this.layout.delta, this.settings.offsetDelta) : (i = t.top, t.top, this.settings.offsetDelta), (e > 0 || i > 0) && this.scrollBy(e, i, !0) } afterResized(t) { this.emit(r.c.MANAGERS.RESIZE, t.section) } removeShownListeners(t) { t.onDisplayed = function () { } } add(t) { var e = this.createView(t); return this.views.append(e), e.on(r.c.VIEWS.RESIZED, (t => { e.expanded = !0 })), e.on(r.c.VIEWS.AXIS, (t => { this.updateAxis(t) })), e.on(r.c.VIEWS.WRITING_MODE, (t => { this.updateWritingMode(t) })), e.onDisplayed = this.afterDisplayed.bind(this), e.onResize = this.afterResized.bind(this), e.display(this.request) } append(t) { var e = this.createView(t); return e.on(r.c.VIEWS.RESIZED, (t => { e.expanded = !0 })), e.on(r.c.VIEWS.AXIS, (t => { this.updateAxis(t) })), e.on(r.c.VIEWS.WRITING_MODE, (t => { this.updateWritingMode(t) })), this.views.append(e), e.onDisplayed = this.afterDisplayed.bind(this), e } prepend(t) { var e = this.createView(t); return e.on(r.c.VIEWS.RESIZED, (t => { this.counter(t), e.expanded = !0 })), e.on(r.c.VIEWS.AXIS, (t => { this.updateAxis(t) })), e.on(r.c.VIEWS.WRITING_MODE, (t => { this.updateWritingMode(t) })), this.views.prepend(e), e.onDisplayed = this.afterDisplayed.bind(this), e } counter(t) { "vertical" === this.settings.axis ? this.scrollBy(0, t.heightDelta, !0) : this.scrollBy(t.widthDelta, 0, !0) } update(t) { for (var e, i = this.bounds(), s = this.views.all(), r = s.length, o = [], a = void 0 !== t ? t : this.settings.offset || 0, h = new n.defer, l = [], c = 0; c < r; c++)if (e = s[c], !0 === this.isVisible(e, a, a, i)) { if (e.displayed) e.show(); else { let t = e.display(this.request).then((function (t) { t.show() }), (t => { e.hide() })); l.push(t) } o.push(e) } else this.q.enqueue(e.destroy.bind(e)), clearTimeout(this.trimTimeout), this.trimTimeout = setTimeout(function () { this.q.enqueue(this.trim.bind(this)) }.bind(this), 250); return l.length ? Promise.all(l).catch((t => { h.reject(t) })) : (h.resolve(), h.promise) } check(t, e) { var i = new n.defer, s = [], r = "horizontal" === this.settings.axis, o = this.settings.offset || 0; t && r && (o = t), e && !r && (o = e); var a = this._bounds; let h = r ? this.scrollLeft : this.scrollTop, l = r ? Math.floor(a.width) : a.height, c = r ? this.container.scrollWidth : this.container.scrollHeight, u = this.writingMode && 0 === this.writingMode.indexOf("vertical") ? "vertical" : "horizontal", d = this.settings.rtlScrollType, f = "rtl" === this.settings.direction; this.settings.fullsize ? (r && f && "negative" === d || !r && f && "default" === d) && (h *= -1) : (f && "default" === d && "horizontal" === u && (h = c - l - h), f && "negative" === d && "horizontal" === u && (h *= -1)); let p = h - o; h + l + o >= c && (() => { let t = this.views.last(), e = t && t.section.next(); e && s.push(this.append(e)) })(), p < 0 && (() => { let t = this.views.first(), e = t && t.section.prev(); e && s.push(this.prepend(e)) })(); let g = s.map((t => t.display(this.request))); return s.length ? Promise.all(g).then((() => this.check())).then((() => this.update(o)), (t => t)) : (this.q.enqueue(function () { this.update() }.bind(this)), i.resolve(!1), i.promise) } trim() { for (var t = new n.defer, e = this.views.displayed(), i = e[0], s = e[e.length - 1], r = this.views.indexOf(i), o = this.views.indexOf(s), a = this.views.slice(0, r), h = this.views.slice(o + 1), l = 0; l < a.length - 1; l++)this.erase(a[l], a); for (var c = 1; c < h.length; c++)this.erase(h[c]); return t.resolve(), t.promise } erase(t, e) { var i, n; this.settings.fullsize ? (i = window.scrollY, n = window.scrollX) : (i = this.container.scrollTop, n = this.container.scrollLeft); var s = t.bounds(); this.views.remove(t), e && ("vertical" === this.settings.axis ? this.scrollTo(0, i - s.height, !0) : "rtl" === this.settings.direction ? this.settings.fullsize ? this.scrollTo(n + Math.floor(s.width), 0, !0) : this.scrollTo(n, 0, !0) : this.scrollTo(n - Math.floor(s.width), 0, !0)) } addEventListeners(t) { window.addEventListener("unload", function (t) { this.ignore = !0, this.destroy() }.bind(this)), this.addScrollListeners(), this.isPaginated && this.settings.snap && (this.snapper = new u(this, this.settings.snap && "object" == typeof this.settings.snap && this.settings.snap)) } addScrollListeners() { var t; this.tick = n.requestAnimationFrame; let e = "rtl" === this.settings.direction && "default" === this.settings.rtlScrollType ? -1 : 1; this.scrollDeltaVert = 0, this.scrollDeltaHorz = 0, this.settings.fullsize ? (t = window, this.scrollTop = window.scrollY * e, this.scrollLeft = window.scrollX * e) : (t = this.container, this.scrollTop = this.container.scrollTop, this.scrollLeft = this.container.scrollLeft), this._onScroll = this.onScroll.bind(this), t.addEventListener("scroll", this._onScroll), this._scrolled = f()(this.scrolled.bind(this), 30), this.didScroll = !1 } removeEventListeners() { (this.settings.fullsize ? window : this.container).removeEventListener("scroll", this._onScroll), this._onScroll = void 0 } onScroll() { let t, e, i = "rtl" === this.settings.direction && "default" === this.settings.rtlScrollType ? -1 : 1; this.settings.fullsize ? (t = window.scrollY * i, e = window.scrollX * i) : (t = this.container.scrollTop, e = this.container.scrollLeft), this.scrollTop = t, this.scrollLeft = e, this.ignore ? this.ignore = !1 : this._scrolled(), this.scrollDeltaVert += Math.abs(t - this.prevScrollTop), this.scrollDeltaHorz += Math.abs(e - this.prevScrollLeft), this.prevScrollTop = t, this.prevScrollLeft = e, clearTimeout(this.scrollTimeout), this.scrollTimeout = setTimeout(function () { this.scrollDeltaVert = 0, this.scrollDeltaHorz = 0 }.bind(this), 150), clearTimeout(this.afterScrolled), this.didScroll = !1 } scrolled() { this.q.enqueue(function () { return this.check() }.bind(this)), this.emit(r.c.MANAGERS.SCROLL, { top: this.scrollTop, left: this.scrollLeft }), clearTimeout(this.afterScrolled), this.afterScrolled = setTimeout(function () { this.snapper && this.snapper.supportsTouch && this.snapper.needsSnap() || this.emit(r.c.MANAGERS.SCROLLED, { top: this.scrollTop, left: this.scrollLeft }) }.bind(this), this.settings.afterScrolledTimeout) } next() { let t = "pre-paginated" === this.layout.props.name && this.layout.props.spread ? 2 * this.layout.props.delta : this.layout.props.delta; this.views.length && (this.isPaginated && "horizontal" === this.settings.axis ? this.scrollBy(t, 0, !0) : this.scrollBy(0, this.layout.height, !0), this.q.enqueue(function () { return this.check() }.bind(this))) } prev() { let t = "pre-paginated" === this.layout.props.name && this.layout.props.spread ? 2 * this.layout.props.delta : this.layout.props.delta; this.views.length && (this.isPaginated && "horizontal" === this.settings.axis ? this.scrollBy(-t, 0, !0) : this.scrollBy(0, -this.layout.height, !0), this.q.enqueue(function () { return this.check() }.bind(this))) } updateFlow(t) { this.rendered && this.snapper && (this.snapper.destroy(), this.snapper = void 0), super.updateFlow(t, "scroll"), this.rendered && this.isPaginated && this.settings.snap && (this.snapper = new u(this, this.settings.snap && "object" == typeof this.settings.snap && this.settings.snap)) } destroy() { super.destroy(), this.snapper && this.snapper.destroy() } } e.a = p }, function (t, e, i) { (function (e) { t.exports = function t(e, i, n) { function s(o, a) { if (!i[o]) { if (!e[o]) { if (r) return r(o, !0); var h = new Error("Cannot find module '" + o + "'"); throw h.code = "MODULE_NOT_FOUND", h } var l = i[o] = { exports: {} }; e[o][0].call(l.exports, (function (t) { return s(e[o][1][t] || t) }), l, l.exports, t, e, i, n) } return i[o].exports } for (var r = !1, o = 0; o < n.length; o++)s(n[o]); return s }({ 1: [function (t, i, n) { (function (t) { "use strict"; var e, n, s = t.MutationObserver || t.WebKitMutationObserver; if (s) { var r = 0, o = new s(c), a = t.document.createTextNode(""); o.observe(a, { characterData: !0 }), e = function () { a.data = r = ++r % 2 } } else if (t.setImmediate || void 0 === t.MessageChannel) e = "document" in t && "onreadystatechange" in t.document.createElement("script") ? function () { var e = t.document.createElement("script"); e.onreadystatechange = function () { c(), e.onreadystatechange = null, e.parentNode.removeChild(e), e = null }, t.document.documentElement.appendChild(e) } : function () { setTimeout(c, 0) }; else { var h = new t.MessageChannel; h.port1.onmessage = c, e = function () { h.port2.postMessage(0) } } var l = []; function c() { var t, e; n = !0; for (var i = l.length; i;) { for (e = l, l = [], t = -1; ++t < i;)e[t](); i = l.length } n = !1 } i.exports = function (t) { 1 !== l.push(t) || n || e() } }).call(this, void 0 !== e ? e : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {}) }, {}], 2: [function (t, e, i) { "use strict"; var n = t(1); function s() { } var r = {}, o = ["REJECTED"], a = ["FULFILLED"], h = ["PENDING"]; function l(t) { if ("function" != typeof t) throw new TypeError("resolver must be a function"); this.state = h, this.queue = [], this.outcome = void 0, t !== s && f(this, t) } function c(t, e, i) { this.promise = t, "function" == typeof e && (this.onFulfilled = e, this.callFulfilled = this.otherCallFulfilled), "function" == typeof i && (this.onRejected = i, this.callRejected = this.otherCallRejected) } function u(t, e, i) { n((function () { var n; try { n = e(i) } catch (e) { return r.reject(t, e) } n === t ? r.reject(t, new TypeError("Cannot resolve promise with itself")) : r.resolve(t, n) })) } function d(t) { var e = t && t.then; if (t && ("object" == typeof t || "function" == typeof t) && "function" == typeof e) return function () { e.apply(t, arguments) } } function f(t, e) { var i = !1; function n(e) { i || (i = !0, r.reject(t, e)) } function s(e) { i || (i = !0, r.resolve(t, e)) } var o = p((function () { e(s, n) })); "error" === o.status && n(o.value) } function p(t, e) { var i = {}; try { i.value = t(e), i.status = "success" } catch (t) { i.status = "error", i.value = t } return i } e.exports = l, l.prototype.catch = function (t) { return this.then(null, t) }, l.prototype.then = function (t, e) { if ("function" != typeof t && this.state === a || "function" != typeof e && this.state === o) return this; var i = new this.constructor(s); return this.state !== h ? u(i, this.state === a ? t : e, this.outcome) : this.queue.push(new c(i, t, e)), i }, c.prototype.callFulfilled = function (t) { r.resolve(this.promise, t) }, c.prototype.otherCallFulfilled = function (t) { u(this.promise, this.onFulfilled, t) }, c.prototype.callRejected = function (t) { r.reject(this.promise, t) }, c.prototype.otherCallRejected = function (t) { u(this.promise, this.onRejected, t) }, r.resolve = function (t, e) { var i = p(d, e); if ("error" === i.status) return r.reject(t, i.value); var n = i.value; if (n) f(t, n); else { t.state = a, t.outcome = e; for (var s = -1, o = t.queue.length; ++s < o;)t.queue[s].callFulfilled(e) } return t }, r.reject = function (t, e) { t.state = o, t.outcome = e; for (var i = -1, n = t.queue.length; ++i < n;)t.queue[i].callRejected(e); return t }, l.resolve = function (t) { return t instanceof this ? t : r.resolve(new this(s), t) }, l.reject = function (t) { var e = new this(s); return r.reject(e, t) }, l.all = function (t) { var e = this; if ("[object Array]" !== Object.prototype.toString.call(t)) return this.reject(new TypeError("must be an array")); var i = t.length, n = !1; if (!i) return this.resolve([]); for (var o = new Array(i), a = 0, h = -1, l = new this(s); ++h < i;)c(t[h], h); return l; function c(t, s) { e.resolve(t).then((function (t) { o[s] = t, ++a !== i || n || (n = !0, r.resolve(l, o)) }), (function (t) { n || (n = !0, r.reject(l, t)) })) } }, l.race = function (t) { if ("[object Array]" !== Object.prototype.toString.call(t)) return this.reject(new TypeError("must be an array")); var e = t.length, i = !1; if (!e) return this.resolve([]); for (var n, o = -1, a = new this(s); ++o < e;)n = t[o], this.resolve(n).then((function (t) { i || (i = !0, r.resolve(a, t)) }), (function (t) { i || (i = !0, r.reject(a, t)) })); return a } }, { 1: 1 }], 3: [function (t, i, n) { (function (e) { "use strict"; "function" != typeof e.Promise && (e.Promise = t(2)) }).call(this, void 0 !== e ? e : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {}) }, { 2: 2 }], 4: [function (t, e, i) { "use strict"; var n = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (t) { return typeof t } : function (t) { return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t }, s = function () { try { if ("undefined" != typeof indexedDB) return indexedDB; if ("undefined" != typeof webkitIndexedDB) return webkitIndexedDB; if ("undefined" != typeof mozIndexedDB) return mozIndexedDB; if ("undefined" != typeof OIndexedDB) return OIndexedDB; if ("undefined" != typeof msIndexedDB) return msIndexedDB } catch (t) { return } }(); function r(t, e) { t = t || [], e = e || {}; try { return new Blob(t, e) } catch (s) { if ("TypeError" !== s.name) throw s; for (var i = new ("undefined" != typeof BlobBuilder ? BlobBuilder : "undefined" != typeof MSBlobBuilder ? MSBlobBuilder : "undefined" != typeof MozBlobBuilder ? MozBlobBuilder : WebKitBlobBuilder), n = 0; n < t.length; n += 1)i.append(t[n]); return i.getBlob(e.type) } } "undefined" == typeof Promise && t(3); var o = Promise; function a(t, e) { e && t.then((function (t) { e(null, t) }), (function (t) { e(t) })) } function h(t, e, i) { "function" == typeof e && t.then(e), "function" == typeof i && t.catch(i) } function l(t) { return "string" != typeof t && (console.warn(t + " used as a key, but it is not a string."), t = String(t)), t } function c() { if (arguments.length && "function" == typeof arguments[arguments.length - 1]) return arguments[arguments.length - 1] } var u = void 0, d = {}, f = Object.prototype.toString; function p(t) { return "boolean" == typeof u ? o.resolve(u) : function (t) { return new o((function (e) { var i = t.transaction("local-forage-detect-blob-support", "readwrite"), n = r([""]); i.objectStore("local-forage-detect-blob-support").put(n, "key"), i.onabort = function (t) { t.preventDefault(), t.stopPropagation(), e(!1) }, i.oncomplete = function () { var t = navigator.userAgent.match(/Chrome\/(\d+)/), i = navigator.userAgent.match(/Edge\//); e(i || !t || parseInt(t[1], 10) >= 43) } })).catch((function () { return !1 })) }(t).then((function (t) { return u = t })) } function g(t) { var e = d[t.name], i = {}; i.promise = new o((function (t, e) { i.resolve = t, i.reject = e })), e.deferredOperations.push(i), e.dbReady ? e.dbReady = e.dbReady.then((function () { return i.promise })) : e.dbReady = i.promise } function m(t) { var e = d[t.name].deferredOperations.pop(); if (e) return e.resolve(), e.promise } function v(t, e) { var i = d[t.name].deferredOperations.pop(); if (i) return i.reject(e), i.promise } function y(t, e) { return new o((function (i, n) { if (d[t.name] = d[t.name] || { forages: [], db: null, dbReady: null, deferredOperations: [] }, t.db) { if (!e) return i(t.db); g(t), t.db.close() } var r = [t.name]; e && r.push(t.version); var o = s.open.apply(s, r); e && (o.onupgradeneeded = function (e) { var i = o.result; try { i.createObjectStore(t.storeName), e.oldVersion <= 1 && i.createObjectStore("local-forage-detect-blob-support") } catch (i) { if ("ConstraintError" !== i.name) throw i; console.warn('The database "' + t.name + '" has been upgraded from version ' + e.oldVersion + " to version " + e.newVersion + ', but the storage "' + t.storeName + '" already exists.') } }), o.onerror = function (t) { t.preventDefault(), n(o.error) }, o.onsuccess = function () { var e = o.result; e.onversionchange = function (t) { t.target.close() }, i(e), m(t) } })) } function b(t) { return y(t, !1) } function w(t) { return y(t, !0) } function x(t, e) { if (!t.db) return !0; var i = !t.db.objectStoreNames.contains(t.storeName), n = t.version < t.db.version, s = t.version > t.db.version; if (n && (t.version !== e && console.warn('The database "' + t.name + "\" can't be downgraded from version " + t.db.version + " to version " + t.version + "."), t.version = t.db.version), s || i) { if (i) { var r = t.db.version + 1; r > t.version && (t.version = r) } return !0 } return !1 } function E(t) { return r([function (t) { for (var e = t.length, i = new ArrayBuffer(e), n = new Uint8Array(i), s = 0; s < e; s++)n[s] = t.charCodeAt(s); return i }(atob(t.data))], { type: t.type }) } function S(t) { return t && t.__local_forage_encoded_blob } function N(t) { var e = this, i = e._initReady().then((function () { var t = d[e._dbInfo.name]; if (t && t.dbReady) return t.dbReady })); return h(i, t, t), i } function _(t, e, i, n) { void 0 === n && (n = 1); try { var s = t.db.transaction(t.storeName, e); i(null, s) } catch (s) { if (n > 0 && (!t.db || "InvalidStateError" === s.name || "NotFoundError" === s.name)) return o.resolve().then((function () { if (!t.db || "NotFoundError" === s.name && !t.db.objectStoreNames.contains(t.storeName) && t.version <= t.db.version) return t.db && (t.version = t.db.version + 1), w(t) })).then((function () { return function (t) { g(t); for (var e = d[t.name], i = e.forages, n = 0; n < i.length; n++) { var s = i[n]; s._dbInfo.db && (s._dbInfo.db.close(), s._dbInfo.db = null) } return t.db = null, b(t).then((function (e) { return t.db = e, x(t) ? w(t) : e })).then((function (n) { t.db = e.db = n; for (var s = 0; s < i.length; s++)i[s]._dbInfo.db = n })).catch((function (e) { throw v(t, e), e })) }(t).then((function () { _(t, e, i, n - 1) })) })).catch(i); i(s) } } var T = { _driver: "asyncStorage", _initStorage: function (t) { var e = this, i = { db: null }; if (t) for (var n in t) i[n] = t[n]; var s = d[i.name]; s || (s = { forages: [], db: null, dbReady: null, deferredOperations: [] }, d[i.name] = s), s.forages.push(e), e._initReady || (e._initReady = e.ready, e.ready = N); var r = []; function a() { return o.resolve() } for (var h = 0; h < s.forages.length; h++) { var l = s.forages[h]; l !== e && r.push(l._initReady().catch(a)) } var c = s.forages.slice(0); return o.all(r).then((function () { return i.db = s.db, b(i) })).then((function (t) { return i.db = t, x(i, e._defaultConfig.version) ? w(i) : t })).then((function (t) { i.db = s.db = t, e._dbInfo = i; for (var n = 0; n < c.length; n++) { var r = c[n]; r !== e && (r._dbInfo.db = i.db, r._dbInfo.version = i.version) } })) }, _support: function () { try { if (!s || !s.open) return !1; var t = "undefined" != typeof openDatabase && /(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent) && !/Chrome/.test(navigator.userAgent) && !/BlackBerry/.test(navigator.platform), e = "function" == typeof fetch && -1 !== fetch.toString().indexOf("[native code"); return (!t || e) && "undefined" != typeof indexedDB && "undefined" != typeof IDBKeyRange } catch (t) { return !1 } }(), iterate: function (t, e) { var i = this, n = new o((function (e, n) { i.ready().then((function () { _(i._dbInfo, "readonly", (function (s, r) { if (s) return n(s); try { var o = r.objectStore(i._dbInfo.storeName).openCursor(), a = 1; o.onsuccess = function () { var i = o.result; if (i) { var n = i.value; S(n) && (n = E(n)); var s = t(n, i.key, a++); void 0 !== s ? e(s) : i.continue() } else e() }, o.onerror = function () { n(o.error) } } catch (t) { n(t) } })) })).catch(n) })); return a(n, e), n }, getItem: function (t, e) { var i = this; t = l(t); var n = new o((function (e, n) { i.ready().then((function () { _(i._dbInfo, "readonly", (function (s, r) { if (s) return n(s); try { var o = r.objectStore(i._dbInfo.storeName).get(t); o.onsuccess = function () { var t = o.result; void 0 === t && (t = null), S(t) && (t = E(t)), e(t) }, o.onerror = function () { n(o.error) } } catch (t) { n(t) } })) })).catch(n) })); return a(n, e), n }, setItem: function (t, e, i) { var n = this; t = l(t); var s = new o((function (i, s) { var r; n.ready().then((function () { return r = n._dbInfo, "[object Blob]" === f.call(e) ? p(r.db).then((function (t) { return t ? e : (i = e, new o((function (t, e) { var n = new FileReader; n.onerror = e, n.onloadend = function (e) { var n = btoa(e.target.result || ""); t({ __local_forage_encoded_blob: !0, data: n, type: i.type }) }, n.readAsBinaryString(i) }))); var i })) : e })).then((function (e) { _(n._dbInfo, "readwrite", (function (r, o) { if (r) return s(r); try { var a = o.objectStore(n._dbInfo.storeName); null === e && (e = void 0); var h = a.put(e, t); o.oncomplete = function () { void 0 === e && (e = null), i(e) }, o.onabort = o.onerror = function () { var t = h.error ? h.error : h.transaction.error; s(t) } } catch (t) { s(t) } })) })).catch(s) })); return a(s, i), s }, removeItem: function (t, e) { var i = this; t = l(t); var n = new o((function (e, n) { i.ready().then((function () { _(i._dbInfo, "readwrite", (function (s, r) { if (s) return n(s); try { var o = r.objectStore(i._dbInfo.storeName).delete(t); r.oncomplete = function () { e() }, r.onerror = function () { n(o.error) }, r.onabort = function () { var t = o.error ? o.error : o.transaction.error; n(t) } } catch (t) { n(t) } })) })).catch(n) })); return a(n, e), n }, clear: function (t) { var e = this, i = new o((function (t, i) { e.ready().then((function () { _(e._dbInfo, "readwrite", (function (n, s) { if (n) return i(n); try { var r = s.objectStore(e._dbInfo.storeName).clear(); s.oncomplete = function () { t() }, s.onabort = s.onerror = function () { var t = r.error ? r.error : r.transaction.error; i(t) } } catch (t) { i(t) } })) })).catch(i) })); return a(i, t), i }, length: function (t) { var e = this, i = new o((function (t, i) { e.ready().then((function () { _(e._dbInfo, "readonly", (function (n, s) { if (n) return i(n); try { var r = s.objectStore(e._dbInfo.storeName).count(); r.onsuccess = function () { t(r.result) }, r.onerror = function () { i(r.error) } } catch (t) { i(t) } })) })).catch(i) })); return a(i, t), i }, key: function (t, e) { var i = this, n = new o((function (e, n) { t < 0 ? e(null) : i.ready().then((function () { _(i._dbInfo, "readonly", (function (s, r) { if (s) return n(s); try { var o = r.objectStore(i._dbInfo.storeName), a = !1, h = o.openKeyCursor(); h.onsuccess = function () { var i = h.result; i ? 0 === t || a ? e(i.key) : (a = !0, i.advance(t)) : e(null) }, h.onerror = function () { n(h.error) } } catch (t) { n(t) } })) })).catch(n) })); return a(n, e), n }, keys: function (t) { var e = this, i = new o((function (t, i) { e.ready().then((function () { _(e._dbInfo, "readonly", (function (n, s) { if (n) return i(n); try { var r = s.objectStore(e._dbInfo.storeName).openKeyCursor(), o = []; r.onsuccess = function () { var e = r.result; e ? (o.push(e.key), e.continue()) : t(o) }, r.onerror = function () { i(r.error) } } catch (t) { i(t) } })) })).catch(i) })); return a(i, t), i }, dropInstance: function (t, e) { e = c.apply(this, arguments); var i, n = this.config(); if ((t = "function" != typeof t && t || {}).name || (t.name = t.name || n.name, t.storeName = t.storeName || n.storeName), t.name) { var r = t.name === n.name && this._dbInfo.db ? o.resolve(this._dbInfo.db) : b(t).then((function (e) { var i = d[t.name], n = i.forages; i.db = e; for (var s = 0; s < n.length; s++)n[s]._dbInfo.db = e; return e })); i = t.storeName ? r.then((function (e) { if (e.objectStoreNames.contains(t.storeName)) { var i = e.version + 1; g(t); var n = d[t.name], r = n.forages; e.close(); for (var a = 0; a < r.length; a++) { var h = r[a]; h._dbInfo.db = null, h._dbInfo.version = i } return new o((function (e, n) { var r = s.open(t.name, i); r.onerror = function (t) { r.result.close(), n(t) }, r.onupgradeneeded = function () { r.result.deleteObjectStore(t.storeName) }, r.onsuccess = function () { var t = r.result; t.close(), e(t) } })).then((function (t) { n.db = t; for (var e = 0; e < r.length; e++) { var i = r[e]; i._dbInfo.db = t, m(i._dbInfo) } })).catch((function (e) { throw (v(t, e) || o.resolve()).catch((function () { })), e })) } })) : r.then((function (e) { g(t); var i = d[t.name], n = i.forages; e.close(); for (var r = 0; r < n.length; r++)n[r]._dbInfo.db = null; return new o((function (e, i) { var n = s.deleteDatabase(t.name); n.onerror = function () { var t = n.result; t && t.close(), i(n.error) }, n.onblocked = function () { console.warn('dropInstance blocked for database "' + t.name + '" until all open connections are closed') }, n.onsuccess = function () { var t = n.result; t && t.close(), e(t) } })).then((function (t) { i.db = t; for (var e = 0; e < n.length; e++)m(n[e]._dbInfo) })).catch((function (e) { throw (v(t, e) || o.resolve()).catch((function () { })), e })) })) } else i = o.reject("Invalid arguments"); return a(i, e), i } }, C = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", O = /^~~local_forage_type~([^~]+)~/, I = Object.prototype.toString; function R(t) { var e, i, n, s, r, o = .75 * t.length, a = t.length, h = 0; "=" === t[t.length - 1] && (o--, "=" === t[t.length - 2] && o--); var l = new ArrayBuffer(o), c = new Uint8Array(l); for (e = 0; e < a; e += 4)i = C.indexOf(t[e]), n = C.indexOf(t[e + 1]), s = C.indexOf(t[e + 2]), r = C.indexOf(t[e + 3]), c[h++] = i << 2 | n >> 4, c[h++] = (15 & n) << 4 | s >> 2, c[h++] = (3 & s) << 6 | 63 & r; return l } function k(t) { var e, i = new Uint8Array(t), n = ""; for (e = 0; e < i.length; e += 3)n += C[i[e] >> 2], n += C[(3 & i[e]) << 4 | i[e + 1] >> 4], n += C[(15 & i[e + 1]) << 2 | i[e + 2] >> 6], n += C[63 & i[e + 2]]; return i.length % 3 == 2 ? n = n.substring(0, n.length - 1) + "=" : i.length % 3 == 1 && (n = n.substring(0, n.length - 2) + "=="), n } var A = { serialize: function (t, e) { var i = ""; if (t && (i = I.call(t)), t && ("[object ArrayBuffer]" === i || t.buffer && "[object ArrayBuffer]" === I.call(t.buffer))) { var n, s = "__lfsc__:"; t instanceof ArrayBuffer ? (n = t, s += "arbf") : (n = t.buffer, "[object Int8Array]" === i ? s += "si08" : "[object Uint8Array]" === i ? s += "ui08" : "[object Uint8ClampedArray]" === i ? s += "uic8" : "[object Int16Array]" === i ? s += "si16" : "[object Uint16Array]" === i ? s += "ur16" : "[object Int32Array]" === i ? s += "si32" : "[object Uint32Array]" === i ? s += "ui32" : "[object Float32Array]" === i ? s += "fl32" : "[object Float64Array]" === i ? s += "fl64" : e(new Error("Failed to get type for BinaryArray"))), e(s + k(n)) } else if ("[object Blob]" === i) { var r = new FileReader; r.onload = function () { var i = "~~local_forage_type~" + t.type + "~" + k(this.result); e("__lfsc__:blob" + i) }, r.readAsArrayBuffer(t) } else try { e(JSON.stringify(t)) } catch (i) { console.error("Couldn't convert value into a JSON string: ", t), e(null, i) } }, deserialize: function (t) { if ("__lfsc__:" !== t.substring(0, 9)) return JSON.parse(t); var e, i = t.substring(13), n = t.substring(9, 13); if ("blob" === n && O.test(i)) { var s = i.match(O); e = s[1], i = i.substring(s[0].length) } var o = R(i); switch (n) { case "arbf": return o; case "blob": return r([o], { type: e }); case "si08": return new Int8Array(o); case "ui08": return new Uint8Array(o); case "uic8": return new Uint8ClampedArray(o); case "si16": return new Int16Array(o); case "ur16": return new Uint16Array(o); case "si32": return new Int32Array(o); case "ui32": return new Uint32Array(o); case "fl32": return new Float32Array(o); case "fl64": return new Float64Array(o); default: throw new Error("Unkown type: " + n) } }, stringToBuffer: R, bufferToString: k }; function L(t, e, i, n) { t.executeSql("CREATE TABLE IF NOT EXISTS " + e.storeName + " (id INTEGER PRIMARY KEY, key unique, value)", [], i, n) } function j(t, e, i, n, s, r) { t.executeSql(i, n, s, (function (t, o) { o.code === o.SYNTAX_ERR ? t.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?", [e.storeName], (function (t, a) { a.rows.length ? r(t, o) : L(t, e, (function () { t.executeSql(i, n, s, r) }), r) }), r) : r(t, o) }), r) } function D(t, e, i, n) { var s = this; t = l(t); var r = new o((function (r, o) { s.ready().then((function () { void 0 === e && (e = null); var a = e, h = s._dbInfo; h.serializer.serialize(e, (function (e, l) { l ? o(l) : h.db.transaction((function (i) { j(i, h, "INSERT OR REPLACE INTO " + h.storeName + " (key, value) VALUES (?, ?)", [t, e], (function () { r(a) }), (function (t, e) { o(e) })) }), (function (e) { if (e.code === e.QUOTA_ERR) { if (n > 0) return void r(D.apply(s, [t, a, i, n - 1])); o(e) } })) })) })).catch(o) })); return a(r, i), r } var P = { _driver: "webSQLStorage", _initStorage: function (t) { var e = this, i = { db: null }; if (t) for (var n in t) i[n] = "string" != typeof t[n] ? t[n].toString() : t[n]; var s = new o((function (t, n) { try { i.db = openDatabase(i.name, String(i.version), i.description, i.size) } catch (t) { return n(t) } i.db.transaction((function (s) { L(s, i, (function () { e._dbInfo = i, t() }), (function (t, e) { n(e) })) }), n) })); return i.serializer = A, s }, _support: "function" == typeof openDatabase, iterate: function (t, e) { var i = this, n = new o((function (e, n) { i.ready().then((function () { var s = i._dbInfo; s.db.transaction((function (i) { j(i, s, "SELECT * FROM " + s.storeName, [], (function (i, n) { for (var r = n.rows, o = r.length, a = 0; a < o; a++) { var h = r.item(a), l = h.value; if (l && (l = s.serializer.deserialize(l)), void 0 !== (l = t(l, h.key, a + 1))) return void e(l) } e() }), (function (t, e) { n(e) })) })) })).catch(n) })); return a(n, e), n }, getItem: function (t, e) { var i = this; t = l(t); var n = new o((function (e, n) { i.ready().then((function () { var s = i._dbInfo; s.db.transaction((function (i) { j(i, s, "SELECT * FROM " + s.storeName + " WHERE key = ? LIMIT 1", [t], (function (t, i) { var n = i.rows.length ? i.rows.item(0).value : null; n && (n = s.serializer.deserialize(n)), e(n) }), (function (t, e) { n(e) })) })) })).catch(n) })); return a(n, e), n }, setItem: function (t, e, i) { return D.apply(this, [t, e, i, 1]) }, removeItem: function (t, e) { var i = this; t = l(t); var n = new o((function (e, n) { i.ready().then((function () { var s = i._dbInfo; s.db.transaction((function (i) { j(i, s, "DELETE FROM " + s.storeName + " WHERE key = ?", [t], (function () { e() }), (function (t, e) { n(e) })) })) })).catch(n) })); return a(n, e), n }, clear: function (t) { var e = this, i = new o((function (t, i) { e.ready().then((function () { var n = e._dbInfo; n.db.transaction((function (e) { j(e, n, "DELETE FROM " + n.storeName, [], (function () { t() }), (function (t, e) { i(e) })) })) })).catch(i) })); return a(i, t), i }, length: function (t) { var e = this, i = new o((function (t, i) { e.ready().then((function () { var n = e._dbInfo; n.db.transaction((function (e) { j(e, n, "SELECT COUNT(key) as c FROM " + n.storeName, [], (function (e, i) { var n = i.rows.item(0).c; t(n) }), (function (t, e) { i(e) })) })) })).catch(i) })); return a(i, t), i }, key: function (t, e) { var i = this, n = new o((function (e, n) { i.ready().then((function () { var s = i._dbInfo; s.db.transaction((function (i) { j(i, s, "SELECT key FROM " + s.storeName + " WHERE id = ? LIMIT 1", [t + 1], (function (t, i) { var n = i.rows.length ? i.rows.item(0).key : null; e(n) }), (function (t, e) { n(e) })) })) })).catch(n) })); return a(n, e), n }, keys: function (t) { var e = this, i = new o((function (t, i) { e.ready().then((function () { var n = e._dbInfo; n.db.transaction((function (e) { j(e, n, "SELECT key FROM " + n.storeName, [], (function (e, i) { for (var n = [], s = 0; s < i.rows.length; s++)n.push(i.rows.item(s).key); t(n) }), (function (t, e) { i(e) })) })) })).catch(i) })); return a(i, t), i }, dropInstance: function (t, e) { e = c.apply(this, arguments); var i = this.config(); (t = "function" != typeof t && t || {}).name || (t.name = t.name || i.name, t.storeName = t.storeName || i.storeName); var n, s = this; return a(n = t.name ? new o((function (e) { var n; n = t.name === i.name ? s._dbInfo.db : openDatabase(t.name, "", "", 0), t.storeName ? e({ db: n, storeNames: [t.storeName] }) : e(function (t) { return new o((function (e, i) { t.transaction((function (n) { n.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'", [], (function (i, n) { for (var s = [], r = 0; r < n.rows.length; r++)s.push(n.rows.item(r).name); e({ db: t, storeNames: s }) }), (function (t, e) { i(e) })) }), (function (t) { i(t) })) })) }(n)) })).then((function (t) { return new o((function (e, i) { t.db.transaction((function (n) { function s(t) { return new o((function (e, i) { n.executeSql("DROP TABLE IF EXISTS " + t, [], (function () { e() }), (function (t, e) { i(e) })) })) } for (var r = [], a = 0, h = t.storeNames.length; a < h; a++)r.push(s(t.storeNames[a])); o.all(r).then((function () { e() })).catch((function (t) { i(t) })) }), (function (t) { i(t) })) })) })) : o.reject("Invalid arguments"), e), n } }; function M(t, e) { var i = t.name + "/"; return t.storeName !== e.storeName && (i += t.storeName + "/"), i } var z = { _driver: "localStorageWrapper", _initStorage: function (t) { var e = {}; if (t) for (var i in t) e[i] = t[i]; return e.keyPrefix = M(t, this._defaultConfig), !function () { try { return localStorage.setItem("_localforage_support_test", !0), localStorage.removeItem("_localforage_support_test"), !1 } catch (t) { return !0 } }() || localStorage.length > 0 ? (this._dbInfo = e, e.serializer = A, o.resolve()) : o.reject() }, _support: function () { try { return "undefined" != typeof localStorage && "setItem" in localStorage && !!localStorage.setItem } catch (t) { return !1 } }(), iterate: function (t, e) { var i = this, n = i.ready().then((function () { for (var e = i._dbInfo, n = e.keyPrefix, s = n.length, r = localStorage.length, o = 1, a = 0; a < r; a++) { var h = localStorage.key(a); if (0 === h.indexOf(n)) { var l = localStorage.getItem(h); if (l && (l = e.serializer.deserialize(l)), void 0 !== (l = t(l, h.substring(s), o++))) return l } } })); return a(n, e), n }, getItem: function (t, e) { var i = this; t = l(t); var n = i.ready().then((function () { var e = i._dbInfo, n = localStorage.getItem(e.keyPrefix + t); return n && (n = e.serializer.deserialize(n)), n })); return a(n, e), n }, setItem: function (t, e, i) { var n = this; t = l(t); var s = n.ready().then((function () { void 0 === e && (e = null); var i = e; return new o((function (s, r) { var o = n._dbInfo; o.serializer.serialize(e, (function (e, n) { if (n) r(n); else try { localStorage.setItem(o.keyPrefix + t, e), s(i) } catch (t) { "QuotaExceededError" !== t.name && "NS_ERROR_DOM_QUOTA_REACHED" !== t.name || r(t), r(t) } })) })) })); return a(s, i), s }, removeItem: function (t, e) { var i = this; t = l(t); var n = i.ready().then((function () { var e = i._dbInfo; localStorage.removeItem(e.keyPrefix + t) })); return a(n, e), n }, clear: function (t) { var e = this, i = e.ready().then((function () { for (var t = e._dbInfo.keyPrefix, i = localStorage.length - 1; i >= 0; i--) { var n = localStorage.key(i); 0 === n.indexOf(t) && localStorage.removeItem(n) } })); return a(i, t), i }, length: function (t) { var e = this.keys().then((function (t) { return t.length })); return a(e, t), e }, key: function (t, e) { var i = this, n = i.ready().then((function () { var e, n = i._dbInfo; try { e = localStorage.key(t) } catch (t) { e = null } return e && (e = e.substring(n.keyPrefix.length)), e })); return a(n, e), n }, keys: function (t) { var e = this, i = e.ready().then((function () { for (var t = e._dbInfo, i = localStorage.length, n = [], s = 0; s < i; s++) { var r = localStorage.key(s); 0 === r.indexOf(t.keyPrefix) && n.push(r.substring(t.keyPrefix.length)) } return n })); return a(i, t), i }, dropInstance: function (t, e) { if (e = c.apply(this, arguments), !(t = "function" != typeof t && t || {}).name) { var i = this.config(); t.name = t.name || i.name, t.storeName = t.storeName || i.storeName } var n, s = this; return a(n = t.name ? new o((function (e) { t.storeName ? e(M(t, s._defaultConfig)) : e(t.name + "/") })).then((function (t) { for (var e = localStorage.length - 1; e >= 0; e--) { var i = localStorage.key(e); 0 === i.indexOf(t) && localStorage.removeItem(i) } })) : o.reject("Invalid arguments"), e), n } }, B = function (t, e) { for (var i, n, s = t.length, r = 0; r < s;) { if ((i = t[r]) === (n = e) || "number" == typeof i && "number" == typeof n && isNaN(i) && isNaN(n)) return !0; r++ } return !1 }, q = Array.isArray || function (t) { return "[object Array]" === Object.prototype.toString.call(t) }, F = {}, U = {}, W = { INDEXEDDB: T, WEBSQL: P, LOCALSTORAGE: z }, H = [W.INDEXEDDB._driver, W.WEBSQL._driver, W.LOCALSTORAGE._driver], V = ["dropInstance"], X = ["clear", "getItem", "iterate", "key", "keys", "length", "removeItem", "setItem"].concat(V), G = { description: "", driver: H.slice(), name: "localforage", size: 4980736, storeName: "keyvaluepairs", version: 1 }; function Y(t, e) { t[e] = function () { var i = arguments; return t.ready().then((function () { return t[e].apply(t, i) })) } } function $() { for (var t = 1; t < arguments.length; t++) { var e = arguments[t]; if (e) for (var i in e) e.hasOwnProperty(i) && (q(e[i]) ? arguments[0][i] = e[i].slice() : arguments[0][i] = e[i]) } return arguments[0] } var K = new (function () { function t(e) { for (var i in function (t, e) { if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function") }(this, t), W) if (W.hasOwnProperty(i)) { var n = W[i], s = n._driver; this[i] = s, F[s] || this.defineDriver(n) } this._defaultConfig = $({}, G), this._config = $({}, this._defaultConfig, e), this._driverSet = null, this._initDriver = null, this._ready = !1, this._dbInfo = null, this._wrapLibraryMethodsWithReady(), this.setDriver(this._config.driver).catch((function () { })) } return t.prototype.config = function (t) { if ("object" === (void 0 === t ? "undefined" : n(t))) { if (this._ready) return new Error("Can't call config() after localforage has been used."); for (var e in t) { if ("storeName" === e && (t[e] = t[e].replace(/\W/g, "_")), "version" === e && "number" != typeof t[e]) return new Error("Database version must be a number."); this._config[e] = t[e] } return !("driver" in t) || !t.driver || this.setDriver(this._config.driver) } return "string" == typeof t ? this._config[t] : this._config }, t.prototype.defineDriver = function (t, e, i) { var n = new o((function (e, i) { try { var n = t._driver, s = new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver"); if (!t._driver) return void i(s); for (var r = X.concat("_initStorage"), h = 0, l = r.length; h < l; h++) { var c = r[h]; if ((!B(V, c) || t[c]) && "function" != typeof t[c]) return void i(s) } !function () { for (var e = function (t) { return function () { var e = new Error("Method " + t + " is not implemented by the current driver"), i = o.reject(e); return a(i, arguments[arguments.length - 1]), i } }, i = 0, n = V.length; i < n; i++) { var s = V[i]; t[s] || (t[s] = e(s)) } }(); var u = function (i) { F[n] && console.info("Redefining LocalForage driver: " + n), F[n] = t, U[n] = i, e() }; "_support" in t ? t._support && "function" == typeof t._support ? t._support().then(u, i) : u(!!t._support) : u(!0) } catch (t) { i(t) } })); return h(n, e, i), n }, t.prototype.driver = function () { return this._driver || null }, t.prototype.getDriver = function (t, e, i) { var n = F[t] ? o.resolve(F[t]) : o.reject(new Error("Driver not found.")); return h(n, e, i), n }, t.prototype.getSerializer = function (t) { var e = o.resolve(A); return h(e, t), e }, t.prototype.ready = function (t) { var e = this, i = e._driverSet.then((function () { return null === e._ready && (e._ready = e._initDriver()), e._ready })); return h(i, t, t), i }, t.prototype.setDriver = function (t, e, i) { var n = this; q(t) || (t = [t]); var s = this._getSupportedDrivers(t); function r() { n._config.driver = n.driver() } function a(t) { return n._extend(t), r(), n._ready = n._initStorage(n._config), n._ready } var l = null !== this._driverSet ? this._driverSet.catch((function () { return o.resolve() })) : o.resolve(); return this._driverSet = l.then((function () { var t = s[0]; return n._dbInfo = null, n._ready = null, n.getDriver(t).then((function (t) { n._driver = t._driver, r(), n._wrapLibraryMethodsWithReady(), n._initDriver = function (t) { return function () { var e = 0; return function i() { for (; e < t.length;) { var s = t[e]; return e++, n._dbInfo = null, n._ready = null, n.getDriver(s).then(a).catch(i) } r(); var h = new Error("No available storage method found."); return n._driverSet = o.reject(h), n._driverSet }() } }(s) })) })).catch((function () { r(); var t = new Error("No available storage method found."); return n._driverSet = o.reject(t), n._driverSet })), h(this._driverSet, e, i), this._driverSet }, t.prototype.supports = function (t) { return !!U[t] }, t.prototype._extend = function (t) { $(this, t) }, t.prototype._getSupportedDrivers = function (t) { for (var e = [], i = 0, n = t.length; i < n; i++) { var s = t[i]; this.supports(s) && e.push(s) } return e }, t.prototype._wrapLibraryMethodsWithReady = function () { for (var t = 0, e = X.length; t < e; t++)Y(this, X[t]) }, t.prototype.createInstance = function (e) { return new t(e) }, t }()); e.exports = K }, { 3: 3 }] }, {}, [4])(4) }).call(this, i(17)) }, function (t, e, i) { "use strict"; var n = i(3), s = i.n(n), r = i(0), o = i(5), a = i(4), h = i(2), l = i(6), c = i(8), u = function (t, e, i, n) { var s, o = "undefined" != typeof window && window.URL, h = o ? "blob" : "arraybuffer", l = new r.defer, c = new XMLHttpRequest, u = XMLHttpRequest.prototype; for (s in "overrideMimeType" in u || Object.defineProperty(u, "overrideMimeType", { value: function () { } }), i && (c.withCredentials = !0), c.onreadystatechange = function () { if (this.readyState === XMLHttpRequest.DONE) { var t = !1; if ("" !== this.responseType && "document" !== this.responseType || (t = this.responseXML), 200 === this.status || 0 === this.status || t) { var i; if (!this.response && !t) return l.reject({ status: this.status, message: "Empty Response", stack: (new Error).stack }), l.promise; if (403 === this.status) return l.reject({ status: this.status, response: this.response, message: "Forbidden", stack: (new Error).stack }), l.promise; i = t ? this.responseXML : Object(r.isXml)(e) ? Object(r.parse)(this.response, "text/xml") : "xhtml" == e ? Object(r.parse)(this.response, "application/xhtml+xml") : "html" == e || "htm" == e ? Object(r.parse)(this.response, "text/html") : "json" == e ? JSON.parse(this.response) : "blob" == e ? o ? this.response : new Blob([this.response]) : this.response, l.resolve(i) } else l.reject({ status: this.status, message: this.response, stack: (new Error).stack }) } }, c.onerror = function (t) { l.reject(t) }, c.open("GET", t, !0), n) c.setRequestHeader(s, n[s]); return "json" == e && c.setRequestHeader("Accept", "application/json"), e || (e = new a.a(t).extension), "blob" == e && (c.responseType = h), Object(r.isXml)(e) && c.overrideMimeType("text/xml"), "binary" == e && (c.responseType = "arraybuffer"), c.send(), l.promise }, d = i(15), f = class { constructor(t, e) { this.idref = t.idref, this.linear = "yes" === t.linear, this.properties = t.properties, this.index = t.index, this.href = t.href, this.url = t.url, this.canonical = t.canonical, this.next = t.next, this.prev = t.prev, this.cfiBase = t.cfiBase, e ? this.hooks = e : (this.hooks = {}, this.hooks.serialize = new l.a(this), this.hooks.content = new l.a(this)), this.document = void 0, this.contents = void 0, this.output = void 0 } load(t) { var e = t || this.request || u, i = new r.defer, n = i.promise; return this.contents ? i.resolve(this.contents) : e(this.url).then(function (t) { return this.document = t, this.contents = t.documentElement, this.hooks.content.trigger(this.document, this) }.bind(this)).then(function () { i.resolve(this.contents) }.bind(this)).catch((function (t) { i.reject(t) })), n } base() { return Object(c.a)(this.document, this) } render(t) { var e = new r.defer, i = e.promise; return this.output, this.load(t).then(function (t) { var e = ("undefined" != typeof navigator && navigator.userAgent || "").indexOf("Trident") >= 0, i = new ("undefined" == typeof XMLSerializer || e ? d.DOMParser : XMLSerializer); return this.output = i.serializeToString(t), this.output }.bind(this)).then(function () { return this.hooks.serialize.trigger(this.output, this) }.bind(this)).then(function () { e.resolve(this.output) }.bind(this)).catch((function (t) { e.reject(t) })), i } find(t) { var e = this, i = [], n = t.toLowerCase(); return Object(r.sprint)(e.document, (function (t) { !function (t) { for (var s, r, o, a = t.textContent.toLowerCase(), h = e.document.createRange(), l = -1; -1 != r;)-1 != (r = a.indexOf(n, l + 1)) && ((h = e.document.createRange()).setStart(t, r), h.setEnd(t, r + n.length), s = e.cfiFromRange(h), o = t.textContent.length < 150 ? t.textContent : "..." + (o = t.textContent.substring(r - 75, r + 75)) + "...", i.push({ cfi: s, excerpt: o })), l = r }(t) })), i } search(t, e = 5) { if (void 0 === document.createTreeWalker) return this.find(t); let i = []; const n = this, s = t.toLowerCase(), r = function (t) { const e = t.reduce(((t, e) => t + e.textContent), "").toLowerCase().indexOf(s); if (-1 != e) { const r = 0, o = e + s.length; let a = 0, h = 0; if (e < t[r].length) { let s; for (; a < t.length - 1 && (h += t[a].length, !(o <= h));)a += 1; let l = t[r], c = t[a], u = n.document.createRange(); u.setStart(l, e); let d = t.slice(0, a).reduce(((t, e) => t + e.textContent.length), 0); u.setEnd(c, d > o ? o : o - d), s = n.cfiFromRange(u); let f = t.slice(0, a + 1).reduce(((t, e) => t + e.textContent), ""); f.length > 150 && (f = f.substring(e - 75, e + 75), f = "..." + f + "..."), i.push({ cfi: s, excerpt: f }) } } }, o = document.createTreeWalker(n.document, NodeFilter.SHOW_TEXT, null, !1); let a, h = []; for (; a = o.nextNode();)h.push(a), h.length == e && (r(h.slice(0, e)), h = h.slice(1, e)); return h.length > 0 && r(h), i } reconcileLayoutSettings(t) { var e = { layout: t.layout, spread: t.spread, orientation: t.orientation }; return this.properties.forEach((function (t) { var i, n, s = t.replace("rendition:", ""), r = s.indexOf("-"); -1 != r && (i = s.slice(0, r), n = s.slice(r + 1), e[i] = n) })), e } cfiFromRange(t) { return new h.a(t, this.cfiBase).toString() } cfiFromElement(t) { return new h.a(t, this.cfiBase).toString() } unload() { this.document = void 0, this.contents = void 0, this.output = void 0 } destroy() { this.unload(), this.hooks.serialize.clear(), this.hooks.content.clear(), this.hooks = void 0, this.idref = void 0, this.linear = void 0, this.properties = void 0, this.index = void 0, this.href = void 0, this.url = void 0, this.next = void 0, this.prev = void 0, this.cfiBase = void 0 } }, p = class { constructor() { this.spineItems = [], this.spineByHref = {}, this.spineById = {}, this.hooks = {}, this.hooks.serialize = new l.a, this.hooks.content = new l.a, this.hooks.content.register(c.a), this.hooks.content.register(c.b), this.hooks.content.register(c.d), this.epubcfi = new h.a, this.loaded = !1, this.items = void 0, this.manifest = void 0, this.spineNodeIndex = void 0, this.baseUrl = void 0, this.length = void 0 } unpack(t, e, i) { this.items = t.spine, this.manifest = t.manifest, this.spineNodeIndex = t.spineNodeIndex, this.baseUrl = t.baseUrl || t.basePath || "", this.length = this.items.length, this.items.forEach(((t, n) => { var s, r = this.manifest[t.idref]; t.index = n, t.cfiBase = this.epubcfi.generateChapterComponent(this.spineNodeIndex, t.index, t.id), t.href && (t.url = e(t.href, !0), t.canonical = i(t.href)), r && (t.href = r.href, t.url = e(t.href, !0), t.canonical = i(t.href), r.properties.length && t.properties.push.apply(t.properties, r.properties)), "yes" === t.linear ? (t.prev = function () { let e = t.index; for (; e > 0;) { let t = this.get(e - 1); if (t && t.linear) return t; e -= 1 } }.bind(this), t.next = function () { let e = t.index; for (; e < this.spineItems.length - 1;) { let t = this.get(e + 1); if (t && t.linear) return t; e += 1 } }.bind(this)) : (t.prev = function () { }, t.next = function () { }), s = new f(t, this.hooks), this.append(s) })), this.loaded = !0 } get(t) { var e = 0; if (void 0 === t) for (; e < this.spineItems.length;) { let t = this.spineItems[e]; if (t && t.linear) break; e += 1 } else this.epubcfi.isCfiString(t) ? e = new h.a(t).spinePos : "number" == typeof t || !1 === isNaN(t) ? e = t : "string" == typeof t && 0 === t.indexOf("#") ? e = this.spineById[t.substring(1)] : "string" == typeof t && (t = t.split("#")[0], e = this.spineByHref[t] || this.spineByHref[encodeURI(t)]); return this.spineItems[e] || null } append(t) { var e = this.spineItems.length; return t.index = e, this.spineItems.push(t), this.spineByHref[decodeURI(t.href)] = e, this.spineByHref[encodeURI(t.href)] = e, this.spineByHref[t.href] = e, this.spineById[t.idref] = e, e } prepend(t) { return this.spineByHref[t.href] = 0, this.spineById[t.idref] = 0, this.spineItems.forEach((function (t, e) { t.index = e })), 0 } remove(t) { var e = this.spineItems.indexOf(t); if (e > -1) return delete this.spineByHref[t.href], delete this.spineById[t.idref], this.spineItems.splice(e, 1) } each() { return this.spineItems.forEach.apply(this.spineItems, arguments) } first() { let t = 0; do { let e = this.get(t); if (e && e.linear) return e; t += 1 } while (t < this.spineItems.length) } last() { let t = this.spineItems.length - 1; do { let e = this.get(t); if (e && e.linear) return e; t -= 1 } while (t >= 0) } destroy() { this.each((t => t.destroy())), this.spineItems = void 0, this.spineByHref = void 0, this.spineById = void 0, this.hooks.serialize.clear(), this.hooks.content.clear(), this.hooks = void 0, this.epubcfi = void 0, this.loaded = !1, this.items = void 0, this.manifest = void 0, this.spineNodeIndex = void 0, this.baseUrl = void 0, this.length = void 0 } }, g = i(9), m = i(1); class v { constructor(t, e, i) { this.spine = t, this.request = e, this.pause = i || 100, this.q = new g.a(this), this.epubcfi = new h.a, this._locations = [], this._locationsWords = [], this.total = 0, this.break = 150, this._current = 0, this._wordCounter = 0, this.currentLocation = "", this._currentCfi = "", this.processingTimeout = void 0 } generate(t) { return t && (this.break = t), this.q.pause(), this.spine.each(function (t) { t.linear && this.q.enqueue(this.process.bind(this), t) }.bind(this)), this.q.run().then(function () { return this.total = this._locations.length - 1, this._currentCfi && (this.currentLocation = this._currentCfi), this._locations }.bind(this)) } createRange() { return { startContainer: void 0, startOffset: void 0, endContainer: void 0, endOffset: void 0 } } process(t) { return t.load(this.request).then(function (e) { var i = new r.defer, n = this.parse(e, t.cfiBase); return this._locations = this._locations.concat(n), t.unload(), this.processingTimeout = setTimeout((() => i.resolve(n)), this.pause), i.promise }.bind(this)) } parse(t, e, i) { var n, s, o = [], a = t.ownerDocument, l = Object(r.qs)(a, "body"), c = 0, u = i || this.break; if (Object(r.sprint)(l, function (t) { var i, r = t.length, a = 0; if (0 === t.textContent.trim().length) return !1; for (0 == c && ((n = this.createRange()).startContainer = t, n.startOffset = 0), (i = u - c) > r && (c += r, a = r); a < r;)if (i = u - c, 0 === c && (a += 1, (n = this.createRange()).startContainer = t, n.startOffset = a), a + i >= r) c += r - a, a = r; else { a += i, n.endContainer = t, n.endOffset = a; let s = new h.a(n, e).toString(); o.push(s), c = 0 } s = t }.bind(this)), n && n.startContainer && s) { n.endContainer = s, n.endOffset = s.length; let t = new h.a(n, e).toString(); o.push(t), c = 0 } return o } generateFromWords(t, e, i) { var n = t ? new h.a(t) : void 0; return this.q.pause(), this._locationsWords = [], this._wordCounter = 0, this.spine.each(function (t) { t.linear && (n ? t.index >= n.spinePos && this.q.enqueue(this.processWords.bind(this), t, e, n, i) : this.q.enqueue(this.processWords.bind(this), t, e, n, i)) }.bind(this)), this.q.run().then(function () { return this._currentCfi && (this.currentLocation = this._currentCfi), this._locationsWords }.bind(this)) } processWords(t, e, i, n) { return n && this._locationsWords.length >= n ? Promise.resolve() : t.load(this.request).then(function (s) { var o = new r.defer, a = this.parseWords(s, t, e, i), h = n - this._locationsWords.length; return this._locationsWords = this._locationsWords.concat(a.length >= n ? a.slice(0, h) : a), t.unload(), this.processingTimeout = setTimeout((() => o.resolve(a)), this.pause), o.promise }.bind(this)) } countWords(t) { return (t = (t = (t = t.replace(/(^\s*)|(\s*$)/gi, "")).replace(/[ ]{2,}/gi, " ")).replace(/\n /, "\n")).split(" ").length } parseWords(t, e, i, n) { var s, o = e.cfiBase, a = [], l = t.ownerDocument, c = Object(r.qs)(l, "body"), u = i, d = !n || n.spinePos !== e.index; return n && e.index === n.spinePos && (s = n.findNode(n.range ? n.path.steps.concat(n.start.steps) : n.path.steps, t.ownerDocument)), Object(r.sprint)(c, function (t) { if (!d) { if (t !== s) return !1; d = !0 } if (t.textContent.length < 10 && 0 === t.textContent.trim().length) return !1; var e, i = this.countWords(t.textContent), n = 0; if (0 === i) return !1; for ((e = u - this._wordCounter) > i && (this._wordCounter += i, n = i); n < i;)if (n + (e = u - this._wordCounter) >= i) this._wordCounter += i - n, n = i; else { n += e; let i = new h.a(t, o); a.push({ cfi: i.toString(), wordCount: this._wordCounter }), this._wordCounter = 0 } }.bind(this)), a } locationFromCfi(t) { let e; return h.a.prototype.isCfiString(t) && (t = new h.a(t)), 0 === this._locations.length ? -1 : (e = Object(r.locationOf)(t, this._locations, this.epubcfi.compare), e > this.total ? this.total : e) } percentageFromCfi(t) { if (0 === this._locations.length) return null; var e = this.locationFromCfi(t); return this.percentageFromLocation(e) } percentageFromLocation(t) { return t && this.total ? t / this.total : 0 } cfiFromLocation(t) { var e = -1; return "number" != typeof t && (t = parseInt(t)), t >= 0 && t < this._locations.length && (e = this._locations[t]), e } cfiFromPercentage(t) { let e; if (t > 1 && console.warn("Normalize cfiFromPercentage value to between 0 - 1"), t >= 1) { let t = new h.a(this._locations[this.total]); return t.collapse(), t.toString() } return e = Math.ceil(this.total * t), this.cfiFromLocation(e) } load(t) { return this._locations = "string" == typeof t ? JSON.parse(t) : t, this.total = this._locations.length - 1, this._locations } save() { return JSON.stringify(this._locations) } getCurrent() { return this._current } setCurrent(t) { var e; if ("string" == typeof t) this._currentCfi = t; else { if ("number" != typeof t) return; this._current = t } 0 !== this._locations.length && ("string" == typeof t ? (e = this.locationFromCfi(t), this._current = e) : e = t, this.emit(m.c.LOCATIONS.CHANGED, { percentage: this.percentageFromLocation(e) })) } get currentLocation() { return this._current } set currentLocation(t) { this.setCurrent(t) } length() { return this._locations.length } destroy() { this.spine = void 0, this.request = void 0, this.pause = void 0, this.q.stop(), this.q = void 0, this.epubcfi = void 0, this._locations = void 0, this.total = void 0, this.break = void 0, this._current = void 0, this.currentLocation = void 0, this._currentCfi = void 0, clearTimeout(this.processingTimeout) } } s()(v.prototype); var y = v, b = i(7), w = i.n(b), x = class { constructor(t) { this.packagePath = "", this.directory = "", this.encoding = "", t && this.parse(t) } parse(t) { var e; if (!t) throw new Error("Container File Not Found"); if (!(e = Object(r.qs)(t, "rootfile"))) throw new Error("No RootFile Found"); this.packagePath = e.getAttribute("full-path"), this.directory = w.a.dirname(this.packagePath), this.encoding = t.xmlEncoding } destroy() { this.packagePath = void 0, this.directory = void 0, this.encoding = void 0 } }, E = class { constructor(t) { this.manifest = {}, this.navPath = "", this.ncxPath = "", this.coverPath = "", this.spineNodeIndex = 0, this.spine = [], this.metadata = {}, t && this.parse(t) } parse(t) { var e, i, n; if (!t) throw new Error("Package File Not Found"); if (!(e = Object(r.qs)(t, "metadata"))) throw new Error("No Metadata Found"); if (!(i = Object(r.qs)(t, "manifest"))) throw new Error("No Manifest Found"); if (!(n = Object(r.qs)(t, "spine"))) throw new Error("No Spine Found"); return this.manifest = this.parseManifest(i), this.navPath = this.findNavPath(i), this.ncxPath = this.findNcxPath(i, n), this.coverPath = this.findCoverPath(t), this.spineNodeIndex = Object(r.indexOfElementNode)(n), this.spine = this.parseSpine(n, this.manifest), this.uniqueIdentifier = this.findUniqueIdentifier(t), this.metadata = this.parseMetadata(e), this.metadata.direction = n.getAttribute("page-progression-direction"), { metadata: this.metadata, spine: this.spine, manifest: this.manifest, navPath: this.navPath, ncxPath: this.ncxPath, coverPath: this.coverPath, spineNodeIndex: this.spineNodeIndex } } parseMetadata(t) { var e = {}; return e.title = this.getElementText(t, "title"), e.creator = this.getElementText(t, "creator"), e.description = this.getElementText(t, "description"), e.pubdate = this.getElementText(t, "date"), e.publisher = this.getElementText(t, "publisher"), e.identifier = this.getElementText(t, "identifier"), e.language = this.getElementText(t, "language"), e.rights = this.getElementText(t, "rights"), e.modified_date = this.getPropertyText(t, "dcterms:modified"), e.layout = this.getPropertyText(t, "rendition:layout"), e.orientation = this.getPropertyText(t, "rendition:orientation"), e.flow = this.getPropertyText(t, "rendition:flow"), e.viewport = this.getPropertyText(t, "rendition:viewport"), e.media_active_class = this.getPropertyText(t, "media:active-class"), e.spread = this.getPropertyText(t, "rendition:spread"), e } parseManifest(t) { var e = {}, i = Object(r.qsa)(t, "item"); return Array.prototype.slice.call(i).forEach((function (t) { var i = t.getAttribute("id"), n = t.getAttribute("href") || "", s = t.getAttribute("media-type") || "", r = t.getAttribute("media-overlay") || "", o = t.getAttribute("properties") || ""; e[i] = { href: n, type: s, overlay: r, properties: o.length ? o.split(" ") : [] } })), e } parseSpine(t, e) { var i = [], n = Object(r.qsa)(t, "itemref"); return Array.prototype.slice.call(n).forEach((function (t, e) { var n = t.getAttribute("idref"), s = t.getAttribute("properties") || "", r = s.length ? s.split(" ") : [], o = { id: t.getAttribute("id"), idref: n, linear: t.getAttribute("linear") || "yes", properties: r, index: e }; i.push(o) })), i } findUniqueIdentifier(t) { var e = t.documentElement.getAttribute("unique-identifier"); if (!e) return ""; var i = t.getElementById(e); return i && "identifier" === i.localName && "http://purl.org/dc/elements/1.1/" === i.namespaceURI && i.childNodes.length > 0 ? i.childNodes[0].nodeValue.trim() : "" } findNavPath(t) { var e = Object(r.qsp)(t, "item", { properties: "nav" }); return !!e && e.getAttribute("href") } findNcxPath(t, e) { var i, n = Object(r.qsp)(t, "item", { "media-type": "application/x-dtbncx+xml" }); return n || (i = e.getAttribute("toc")) && (n = t.querySelector("#" + i)), !!n && n.getAttribute("href") } findCoverPath(t) { Object(r.qs)(t, "package").getAttribute("version"); var e = Object(r.qsp)(t, "item", { properties: "cover-image" }); if (e) return e.getAttribute("href"); var i = Object(r.qsp)(t, "meta", { name: "cover" }); if (i) { var n = i.getAttribute("content"), s = t.getElementById(n); return s ? s.getAttribute("href") : "" } return !1 } getElementText(t, e) { var i, n = t.getElementsByTagNameNS("http://purl.org/dc/elements/1.1/", e); return n && 0 !== n.length && (i = n[0]).childNodes.length ? i.childNodes[0].nodeValue : "" } getPropertyText(t, e) { var i = Object(r.qsp)(t, "meta", { property: e }); return i && i.childNodes.length ? i.childNodes[0].nodeValue : "" } load(t) { this.metadata = t.metadata; let e = t.readingOrder || t.spine; return this.spine = e.map(((t, e) => (t.index = e, t.linear = t.linear || "yes", t))), t.resources.forEach(((t, e) => { this.manifest[e] = t, t.rel && "cover" === t.rel[0] && (this.coverPath = t.href) })), this.spineNodeIndex = 0, this.toc = t.toc.map(((t, e) => (t.label = t.title, t))), { metadata: this.metadata, spine: this.spine, manifest: this.manifest, navPath: this.navPath, ncxPath: this.ncxPath, coverPath: this.coverPath, spineNodeIndex: this.spineNodeIndex, toc: this.toc } } destroy() { this.manifest = void 0, this.navPath = void 0, this.ncxPath = void 0, this.coverPath = void 0, this.spineNodeIndex = void 0, this.spine = void 0, this.metadata = void 0 } }, S = class { constructor(t) { this.toc = [], this.tocByHref = {}, this.tocById = {}, this.landmarks = [], this.landmarksByType = {}, this.length = 0, t && this.parse(t) } parse(t) { let e, i, n = t.nodeType; n && (e = Object(r.qs)(t, "html"), i = Object(r.qs)(t, "ncx")), n ? e ? (this.toc = this.parseNav(t), this.landmarks = this.parseLandmarks(t)) : i && (this.toc = this.parseNcx(t)) : this.toc = this.load(t), this.length = 0, this.unpack(this.toc) } unpack(t) { for (var e, i = 0; i < t.length; i++)(e = t[i]).href && (this.tocByHref[e.href] = i), e.id && (this.tocById[e.id] = i), this.length++, e.subitems.length && this.unpack(e.subitems) } get(t) { var e; return t ? (0 === t.indexOf("#") ? e = this.tocById[t.substring(1)] : t in this.tocByHref && (e = this.tocByHref[t]), this.getByIndex(t, e, this.toc)) : this.toc } getByIndex(t, e, i) { if (0 === i.length) return; const n = i[e]; if (!n || t !== n.id && t !== n.href) { let n; for (let s = 0; s < i.length && (n = this.getByIndex(t, e, i[s].subitems), !n); ++s); return n } return n } landmark(t) { var e; return t ? (e = this.landmarksByType[t], this.landmarks[e]) : this.landmarks } parseNav(t) { var e = Object(r.querySelectorByType)(t, "nav", "toc"), i = []; if (!e) return i; let n = Object(r.filterChildren)(e, "ol", !0); return n ? i = this.parseNavList(n) : i } parseNavList(t, e) { const i = []; if (!t) return i; if (!t.children) return i; for (let n = 0; n < t.children.length; n++) { const s = this.navItem(t.children[n], e); s && i.push(s) } return i } navItem(t, e) { let i = t.getAttribute("id") || void 0, n = Object(r.filterChildren)(t, "a", !0) || Object(r.filterChildren)(t, "span", !0); if (!n) return; let s = n.getAttribute("href") || ""; i || (i = s); let o = n.textContent || "", a = [], h = Object(r.filterChildren)(t, "ol", !0); return h && (a = this.parseNavList(h, i)), { id: i, href: s, label: o, subitems: a, parent: e } } parseLandmarks(t) { var e, i, n = Object(r.querySelectorByType)(t, "nav", "landmarks"), s = n ? Object(r.qsa)(n, "li") : [], o = s.length, a = []; if (!s || 0 === o) return a; for (e = 0; e < o; ++e)(i = this.landmarkItem(s[e])) && (a.push(i), this.landmarksByType[i.type] = e); return a } landmarkItem(t) { let e = Object(r.filterChildren)(t, "a", !0); if (!e) return; let i = e.getAttributeNS("http://www.idpf.org/2007/ops", "type") || void 0; return { href: e.getAttribute("href") || "", label: e.textContent || "", type: i } } parseNcx(t) { var e, i, n = Object(r.qsa)(t, "navPoint"), s = n.length, o = {}, a = []; if (!n || 0 === s) return a; for (e = 0; e < s; ++e)o[(i = this.ncxItem(n[e])).id] = i, i.parent ? o[i.parent].subitems.push(i) : a.push(i); return a } ncxItem(t) { var e, i = t.getAttribute("id") || !1, n = Object(r.qs)(t, "content").getAttribute("src"), s = Object(r.qs)(t, "navLabel"), o = s.textContent ? s.textContent : "", a = t.parentNode; return !a || "navPoint" !== a.nodeName && "navPoint" !== a.nodeName.split(":").slice(-1)[0] || (e = a.getAttribute("id")), { id: i, href: n, label: o, subitems: [], parent: e } } load(t) { return t.map((t => (t.label = t.title, t.subitems = t.children ? this.load(t.children) : [], t))) } forEach(t) { return this.toc.forEach(t) } }, N = { application: { ecmascript: ["es", "ecma"], javascript: "js", ogg: "ogx", pdf: "pdf", postscript: ["ps", "ai", "eps", "epsi", "epsf", "eps2", "eps3"], "rdf+xml": "rdf", smil: ["smi", "smil"], "xhtml+xml": ["xhtml", "xht"], xml: ["xml", "xsl", "xsd", "opf", "ncx"], zip: "zip", "x-httpd-eruby": "rhtml", "x-latex": "latex", "x-maker": ["frm", "maker", "frame", "fm", "fb", "book", "fbdoc"], "x-object": "o", "x-shockwave-flash": ["swf", "swfl"], "x-silverlight": "scr", "epub+zip": "epub", "font-tdpfr": "pfr", "inkml+xml": ["ink", "inkml"], json: "json", "jsonml+json": "jsonml", "mathml+xml": "mathml", "metalink+xml": "metalink", mp4: "mp4s", "omdoc+xml": "omdoc", oxps: "oxps", "vnd.amazon.ebook": "azw", widget: "wgt", "x-dtbook+xml": "dtb", "x-dtbresource+xml": "res", "x-font-bdf": "bdf", "x-font-ghostscript": "gsf", "x-font-linux-psf": "psf", "x-font-otf": "otf", "x-font-pcf": "pcf", "x-font-snf": "snf", "x-font-ttf": ["ttf", "ttc"], "x-font-type1": ["pfa", "pfb", "pfm", "afm"], "x-font-woff": "woff", "x-mobipocket-ebook": ["prc", "mobi"], "x-mspublisher": "pub", "x-nzb": "nzb", "x-tgif": "obj", "xaml+xml": "xaml", "xml-dtd": "dtd", "xproc+xml": "xpl", "xslt+xml": "xslt", "internet-property-stream": "acx", "x-compress": "z", "x-compressed": "tgz", "x-gzip": "gz" }, audio: { flac: "flac", midi: ["mid", "midi", "kar", "rmi"], mpeg: ["mpga", "mpega", "mp2", "mp3", "m4a", "mp2a", "m2a", "m3a"], mpegurl: "m3u", ogg: ["oga", "ogg", "spx"], "x-aiff": ["aif", "aiff", "aifc"], "x-ms-wma": "wma", "x-wav": "wav", adpcm: "adp", mp4: "mp4a", webm: "weba", "x-aac": "aac", "x-caf": "caf", "x-matroska": "mka", "x-pn-realaudio-plugin": "rmp", xm: "xm", mid: ["mid", "rmi"] }, image: { gif: "gif", ief: "ief", jpeg: ["jpeg", "jpg", "jpe"], pcx: "pcx", png: "png", "svg+xml": ["svg", "svgz"], tiff: ["tiff", "tif"], "x-icon": "ico", bmp: "bmp", webp: "webp", "x-pict": ["pic", "pct"], "x-tga": "tga", "cis-cod": "cod" }, text: { "cache-manifest": ["manifest", "appcache"], css: "css", csv: "csv", html: ["html", "htm", "shtml", "stm"], mathml: "mml", plain: ["txt", "text", "brf", "conf", "def", "list", "log", "in", "bas"], richtext: "rtx", "tab-separated-values": "tsv", "x-bibtex": "bib" }, video: { mpeg: ["mpeg", "mpg", "mpe", "m1v", "m2v", "mp2", "mpa", "mpv2"], mp4: ["mp4", "mp4v", "mpg4"], quicktime: ["qt", "mov"], ogg: "ogv", "vnd.mpegurl": ["mxu", "m4u"], "x-flv": "flv", "x-la-asf": ["lsf", "lsx"], "x-mng": "mng", "x-ms-asf": ["asf", "asx", "asr"], "x-ms-wm": "wm", "x-ms-wmv": "wmv", "x-ms-wmx": "wmx", "x-ms-wvx": "wvx", "x-msvideo": "avi", "x-sgi-movie": "movie", "x-matroska": ["mpv", "mkv", "mk3d", "mks"], "3gpp2": "3g2", h261: "h261", h263: "h263", h264: "h264", jpeg: "jpgv", jpm: ["jpm", "jpgm"], mj2: ["mj2", "mjp2"], "vnd.ms-playready.media.pyv": "pyv", "vnd.uvvu.mp4": ["uvu", "uvvu"], "vnd.vivo": "viv", webm: "webm", "x-f4v": "f4v", "x-m4v": "m4v", "x-ms-vob": "vob", "x-smv": "smv" } }, _ = function () { var t, e, i, n, s = {}; for (t in N) if (N.hasOwnProperty(t)) for (e in N[t]) if (N[t].hasOwnProperty(e)) if ("string" == typeof (i = N[t][e])) s[i] = t + "/" + e; else for (n = 0; n < i.length; n++)s[i[n]] = t + "/" + e; return s }(), T = function (t) { return t && _[t.split(".").pop().toLowerCase()] || "text/plain" }, C = class { constructor(t, e) { this.settings = { replacements: e && e.replacements || "base64", archive: e && e.archive, resolver: e && e.resolver, request: e && e.request }, this.process(t) } process(t) { this.manifest = t, this.resources = Object.keys(t).map((function (e) { return t[e] })), this.replacementUrls = [], this.html = [], this.assets = [], this.css = [], this.urls = [], this.cssUrls = [], this.split(), this.splitUrls() } split() { this.html = this.resources.filter((function (t) { if ("application/xhtml+xml" === t.type || "text/html" === t.type) return !0 })), this.assets = this.resources.filter((function (t) { if ("application/xhtml+xml" !== t.type && "text/html" !== t.type) return !0 })), this.css = this.resources.filter((function (t) { if ("text/css" === t.type) return !0 })) } splitUrls() { this.urls = this.assets.map(function (t) { return t.href }.bind(this)), this.cssUrls = this.css.map((function (t) { return t.href })) } createUrl(t) { var e = new o.a(t), i = T(e.filename); return this.settings.archive ? this.settings.archive.createUrl(t, { base64: "base64" === this.settings.replacements }) : "base64" === this.settings.replacements ? this.settings.request(t, "blob").then((t => Object(r.blob2base64)(t))).then((t => Object(r.createBase64Url)(t, i))) : this.settings.request(t, "blob").then((t => Object(r.createBlobUrl)(t, i))) } replacements() { if ("none" === this.settings.replacements) return new Promise(function (t) { t(this.urls) }.bind(this)); var t = this.urls.map((t => { var e = this.settings.resolver(t); return this.createUrl(e).catch((t => (console.error(t), null))) })); return Promise.all(t).then((t => (this.replacementUrls = t.filter((t => "string" == typeof t)), t))) } replaceCss(t, e) { var i = []; return t = t || this.settings.archive, e = e || this.settings.resolver, this.cssUrls.forEach(function (n) { var s = this.createCssFile(n, t, e).then(function (t) { var e = this.urls.indexOf(n); e > -1 && (this.replacementUrls[e] = t) }.bind(this)); i.push(s) }.bind(this)), Promise.all(i) } createCssFile(t) { if (w.a.isAbsolute(t)) return new Promise((function (t) { t() })); var e, i = this.settings.resolver(t); e = this.settings.archive ? this.settings.archive.getText(i) : this.settings.request(i, "text"); var n = this.urls.map((t => { var e = this.settings.resolver(t); return new a.a(i).relative(e) })); return e ? e.then((t => (t = Object(c.e)(t, n, this.replacementUrls), "base64" === this.settings.replacements ? Object(r.createBase64Url)(t, "text/css") : Object(r.createBlobUrl)(t, "text/css"))), (t => new Promise((function (t) { t() })))) : new Promise((function (t) { t() })) } relativeTo(t, e) { return e = e || this.settings.resolver, this.urls.map(function (i) { var n = e(i); return new a.a(t).relative(n) }.bind(this)) } get(t) { var e = this.urls.indexOf(t); if (-1 !== e) return this.replacementUrls.length ? new Promise(function (t, i) { t(this.replacementUrls[e]) }.bind(this)) : this.createUrl(t) } substitute(t, e) { var i; return i = e ? this.relativeTo(e) : this.urls, Object(c.e)(t, i, this.replacementUrls) } destroy() { this.settings = void 0, this.manifest = void 0, this.resources = void 0, this.replacementUrls = void 0, this.html = void 0, this.assets = void 0, this.css = void 0, this.urls = void 0, this.cssUrls = void 0 } }, O = class { constructor(t) { this.pages = [], this.locations = [], this.epubcfi = new h.a, this.firstPage = 0, this.lastPage = 0, this.totalPages = 0, this.toc = void 0, this.ncx = void 0, t && (this.pageList = this.parse(t)), this.pageList && this.pageList.length && this.process(this.pageList) } parse(t) { var e = Object(r.qs)(t, "html"), i = Object(r.qs)(t, "ncx"); return e ? this.parseNav(t) : i ? this.parseNcx(t) : void 0 } parseNav(t) { var e, i, n = Object(r.querySelectorByType)(t, "nav", "page-list"), s = n ? Object(r.qsa)(n, "li") : [], o = s.length, a = []; if (!s || 0 === o) return a; for (e = 0; e < o; ++e)i = this.item(s[e]), a.push(i); return a } parseNcx(t) { var e, i, n, s, o = [], a = 0; if (!(i = Object(r.qs)(t, "pageList"))) return o; if (s = (n = Object(r.qsa)(i, "pageTarget")).length, !n || 0 === n.length) return o; for (a = 0; a < s; ++a)e = this.ncxItem(n[a]), o.push(e); return o } ncxItem(t) { var e = Object(r.qs)(t, "navLabel"), i = Object(r.qs)(e, "text").textContent; return { href: Object(r.qs)(t, "content").getAttribute("src"), page: parseInt(i, 10) } } item(t) { var e, i, n = Object(r.qs)(t, "a"), s = n.getAttribute("href") || "", o = n.textContent || "", a = parseInt(o); return -1 != s.indexOf("epubcfi") ? (i = (e = s.split("#"))[0], { cfi: e.length > 1 && e[1], href: s, packageUrl: i, page: a }) : { href: s, page: a } } process(t) { t.forEach((function (t) { this.pages.push(t.page), t.cfi && this.locations.push(t.cfi) }), this), this.firstPage = parseInt(this.pages[0]), this.lastPage = parseInt(this.pages[this.pages.length - 1]), this.totalPages = this.lastPage - this.firstPage } pageFromCfi(t) { var e = -1; if (0 === this.locations.length) return -1; var i = Object(r.indexOfSorted)(t, this.locations, this.epubcfi.compare); return -1 != i ? e = this.pages[i] : void 0 !== (e = (i = Object(r.locationOf)(t, this.locations, this.epubcfi.compare)) - 1 >= 0 ? this.pages[i - 1] : this.pages[0]) || (e = -1), e } cfiFromPage(t) { var e = -1; "number" != typeof t && (t = parseInt(t)); var i = this.pages.indexOf(t); return -1 != i && (e = this.locations[i]), e } pageFromPercentage(t) { return Math.round(this.totalPages * t) } percentageFromPage(t) { var e = (t - this.firstPage) / this.totalPages; return Math.round(1e3 * e) / 1e3 } percentageFromCfi(t) { var e = this.pageFromCfi(t); return this.percentageFromPage(e) } destroy() { this.pages = void 0, this.locations = void 0, this.epubcfi = void 0, this.pageList = void 0, this.toc = void 0, this.ncx = void 0 } }, I = i(16), R = i(29), k = i.n(R), A = class { constructor() { this.zip = void 0, this.urlCache = {}, this.checkRequirements() } checkRequirements() { try { this.zip = new k.a } catch (t) { throw new Error("JSZip lib not loaded") } } open(t, e) { return this.zip.loadAsync(t, { base64: e }) } openUrl(t, e) { return u(t, "binary").then(function (t) { return this.zip.loadAsync(t, { base64: e }) }.bind(this)) } request(t, e) { var i, n = new r.defer, s = new a.a(t); return e || (e = s.extension), (i = "blob" == e ? this.getBlob(t) : this.getText(t)) ? i.then(function (t) { let i = this.handleResponse(t, e); n.resolve(i) }.bind(this)) : n.reject({ message: "File not found in the epub: " + t, stack: (new Error).stack }), n.promise } handleResponse(t, e) { return "json" == e ? JSON.parse(t) : Object(r.isXml)(e) ? Object(r.parse)(t, "text/xml") : "xhtml" == e ? Object(r.parse)(t, "application/xhtml+xml") : "html" == e || "htm" == e ? Object(r.parse)(t, "text/html") : t } getBlob(t, e) { var i = window.decodeURIComponent(t.substr(1)), n = this.zip.file(i); if (n) return e = e || T(n.name), n.async("uint8array").then((function (t) { return new Blob([t], { type: e }) })) } getText(t, e) { var i = window.decodeURIComponent(t.substr(1)), n = this.zip.file(i); if (n) return n.async("string").then((function (t) { return t })) } getBase64(t, e) { var i = window.decodeURIComponent(t.substr(1)), n = this.zip.file(i); if (n) return e = e || T(n.name), n.async("base64").then((function (t) { return "data:" + e + ";base64," + t })) } createUrl(t, e) { var i, n, s = new r.defer, o = window.URL || window.webkitURL || window.mozURL, a = e && e.base64; return t in this.urlCache ? (s.resolve(this.urlCache[t]), s.promise) : (a ? (n = this.getBase64(t)) && n.then(function (e) { this.urlCache[t] = e, s.resolve(e) }.bind(this)) : (n = this.getBlob(t)) && n.then(function (e) { i = o.createObjectURL(e), this.urlCache[t] = i, s.resolve(i) }.bind(this)), n || s.reject({ message: "File not found in the epub: " + t, stack: (new Error).stack }), s.promise) } revokeUrl(t) { var e = window.URL || window.webkitURL || window.mozURL, i = this.urlCache[t]; i && e.revokeObjectURL(i) } destroy() { var t = window.URL || window.webkitURL || window.mozURL; for (let e in this.urlCache) t.revokeObjectURL(e); this.zip = void 0, this.urlCache = {} } }, L = i(23), j = i.n(L); class D { constructor(t, e, i) { this.urlCache = {}, this.storage = void 0, this.name = t, this.requester = e || u, this.resolver = i, this.online = !0, this.checkRequirements(), this.addListeners() } checkRequirements() { try { let t; void 0 === j.a && (t = j.a), this.storage = t.createInstance({ name: this.name }) } catch (t) { throw new Error("localForage lib not loaded") } } addListeners() { this._status = this.status.bind(this), window.addEventListener("online", this._status), window.addEventListener("offline", this._status) } removeListeners() { window.removeEventListener("online", this._status), window.removeEventListener("offline", this._status), this._status = void 0 } status(t) { let e = navigator.onLine; this.online = e, e ? this.emit("online", this) : this.emit("offline", this) } add(t, e) { let i = t.resources.map((t => { let { href: i } = t, n = this.resolver(i), s = window.encodeURIComponent(n); return this.storage.getItem(s).then((t => !t || e ? this.requester(n, "binary").then((t => this.storage.setItem(s, t))) : t)) })); return Promise.all(i) } put(t, e, i) { let n = window.encodeURIComponent(t); return this.storage.getItem(n).then((s => s || this.requester(t, "binary", e, i).then((t => this.storage.setItem(n, t))))) } request(t, e, i, n) { return this.online ? this.requester(t, e, i, n).then((e => (this.put(t), e))) : this.retrieve(t, e) } retrieve(t, e) { new r.defer; var i = new a.a(t); return e || (e = i.extension), ("blob" == e ? this.getBlob(t) : this.getText(t)).then((i => { var n, s = new r.defer; return i ? (n = this.handleResponse(i, e), s.resolve(n)) : s.reject({ message: "File not found in storage: " + t, stack: (new Error).stack }), s.promise })) } handleResponse(t, e) { return "json" == e ? JSON.parse(t) : Object(r.isXml)(e) ? Object(r.parse)(t, "text/xml") : "xhtml" == e ? Object(r.parse)(t, "application/xhtml+xml") : "html" == e || "htm" == e ? Object(r.parse)(t, "text/html") : t } getBlob(t, e) { let i = window.encodeURIComponent(t); return this.storage.getItem(i).then((function (i) { if (i) return e = e || T(t), new Blob([i], { type: e }) })) } getText(t, e) { let i = window.encodeURIComponent(t); return e = e || T(t), this.storage.getItem(i).then((function (t) { var i, n = new r.defer, s = new FileReader; if (t) return i = new Blob([t], { type: e }), s.addEventListener("loadend", (() => { n.resolve(s.result) })), s.readAsText(i, e), n.promise })) } getBase64(t, e) { let i = window.encodeURIComponent(t); return e = e || T(t), this.storage.getItem(i).then((t => { var i, n = new r.defer, s = new FileReader; if (t) return i = new Blob([t], { type: e }), s.addEventListener("loadend", (() => { n.resolve(s.result) })), s.readAsDataURL(i, e), n.promise })) } createUrl(t, e) { var i, n, s = new r.defer, o = window.URL || window.webkitURL || window.mozURL, a = e && e.base64; return t in this.urlCache ? (s.resolve(this.urlCache[t]), s.promise) : (a ? (n = this.getBase64(t)) && n.then(function (e) { this.urlCache[t] = e, s.resolve(e) }.bind(this)) : (n = this.getBlob(t)) && n.then(function (e) { i = o.createObjectURL(e), this.urlCache[t] = i, s.resolve(i) }.bind(this)), n || s.reject({ message: "File not found in storage: " + t, stack: (new Error).stack }), s.promise) } revokeUrl(t) { var e = window.URL || window.webkitURL || window.mozURL, i = this.urlCache[t]; i && e.revokeObjectURL(i) } destroy() { var t = window.URL || window.webkitURL || window.mozURL; for (let e in this.urlCache) t.revokeObjectURL(e); this.urlCache = {}, this.removeListeners() } } s()(D.prototype); var P = D, M = class { constructor(t) { this.interactive = "", this.fixedLayout = "", this.openToSpread = "", this.orientationLock = "", t && this.parse(t) } parse(t) { if (!t) return this; const e = Object(r.qs)(t, "display_options"); return e ? (Object(r.qsa)(e, "option").forEach((t => { let e = ""; switch (t.childNodes.length && (e = t.childNodes[0].nodeValue), t.attributes.name.value) { case "interactive": this.interactive = e; break; case "fixed-layout": this.fixedLayout = e; break; case "open-to-spread": this.openToSpread = e; break; case "orientation-lock": this.orientationLock = e } })), this) : this } destroy() { this.interactive = void 0, this.fixedLayout = void 0, this.openToSpread = void 0, this.orientationLock = void 0 } }; const z = "binary", B = "base64", q = "epub", F = "json"; class U { constructor(t, e) { void 0 === e && "string" != typeof t && t instanceof Blob == 0 && t instanceof ArrayBuffer == 0 && (e = t, t = void 0), this.settings = Object(r.extend)(this.settings || {}, { requestMethod: void 0, requestCredentials: void 0, requestHeaders: void 0, encoding: void 0, replacements: void 0, canonical: void 0, openAs: void 0, store: void 0 }), Object(r.extend)(this.settings, e), this.opening = new r.defer, this.opened = this.opening.promise, this.isOpen = !1, this.loading = { manifest: new r.defer, spine: new r.defer, metadata: new r.defer, cover: new r.defer, navigation: new r.defer, pageList: new r.defer, resources: new r.defer, displayOptions: new r.defer }, this.loaded = { manifest: this.loading.manifest.promise, spine: this.loading.spine.promise, metadata: this.loading.metadata.promise, cover: this.loading.cover.promise, navigation: this.loading.navigation.promise, pageList: this.loading.pageList.promise, resources: this.loading.resources.promise, displayOptions: this.loading.displayOptions.promise }, this.ready = Promise.all([this.loaded.manifest, this.loaded.spine, this.loaded.metadata, this.loaded.cover, this.loaded.navigation, this.loaded.resources, this.loaded.displayOptions]), this.isRendered = !1, this.request = this.settings.requestMethod || u, this.spine = new p, this.locations = new y(this.spine, this.load.bind(this)), this.navigation = void 0, this.pageList = void 0, this.url = void 0, this.path = void 0, this.archived = !1, this.archive = void 0, this.storage = void 0, this.resources = void 0, this.rendition = void 0, this.container = void 0, this.packaging = void 0, this.displayOptions = void 0, this.settings.store && this.store(this.settings.store), t && this.open(t, this.settings.openAs).catch((e => { var i = new Error("Cannot load book at " + t); this.emit(m.c.BOOK.OPEN_FAILED, i) })) } open(t, e) { var i, n = e || this.determineType(t); return n === z ? (this.archived = !0, this.url = new o.a("/", ""), i = this.openEpub(t)) : n === B ? (this.archived = !0, this.url = new o.a("/", ""), i = this.openEpub(t, n)) : n === q ? (this.archived = !0, this.url = new o.a("/", ""), i = this.request(t, "binary", this.settings.requestCredentials, this.settings.requestHeaders).then(this.openEpub.bind(this))) : "opf" == n ? (this.url = new o.a(t), i = this.openPackaging(this.url.Path.toString())) : n == F ? (this.url = new o.a(t), i = this.openManifest(this.url.Path.toString())) : (this.url = new o.a(t), i = this.openContainer("META-INF/container.xml").then(this.openPackaging.bind(this))), i } openEpub(t, e) { return this.unarchive(t, e || this.settings.encoding).then((() => this.openContainer("META-INF/container.xml"))).then((t => this.openPackaging(t))) } openContainer(t) { return this.load(t).then((t => (this.container = new x(t), this.resolve(this.container.packagePath)))) } openPackaging(t) { return this.path = new a.a(t), this.load(t).then((t => (this.packaging = new E(t), this.unpack(this.packaging)))) } openManifest(t) { return this.path = new a.a(t), this.load(t).then((t => (this.packaging = new E, this.packaging.load(t), this.unpack(this.packaging)))) } load(t) { var e = this.resolve(t); return this.archived ? this.archive.request(e) : this.request(e, null, this.settings.requestCredentials, this.settings.requestHeaders) } resolve(t, e) { if (t) { var i = t; return t.indexOf("://") > -1 ? t : (this.path && (i = this.path.resolve(t)), 0 != e && this.url && (i = this.url.resolve(i)), i) } } canonical(t) { return t ? this.settings.canonical ? this.settings.canonical(t) : this.resolve(t, !0) : "" } determineType(t) { var e; return "base64" === this.settings.encoding ? B : "string" != typeof t ? z : ((e = new o.a(t).path().extension) && (e = e.replace(/\?.*$/, "")), e ? "epub" === e ? q : "opf" === e ? "opf" : "json" === e ? F : void 0 : "directory") } unpack(t) { this.package = t, "" === this.packaging.metadata.layout ? this.load(this.url.resolve("META-INF/com.apple.ibooks.display-options.xml")).then((t => { this.displayOptions = new M(t), this.loading.displayOptions.resolve(this.displayOptions) })).catch((t => { this.displayOptions = new M, this.loading.displayOptions.resolve(this.displayOptions) })) : (this.displayOptions = new M, this.loading.displayOptions.resolve(this.displayOptions)), this.spine.unpack(this.packaging, this.resolve.bind(this), this.canonical.bind(this)), this.resources = new C(this.packaging.manifest, { archive: this.archive, resolver: this.resolve.bind(this), request: this.request.bind(this), replacements: this.settings.replacements || (this.archived ? "blobUrl" : "base64") }), this.loadNavigation(this.packaging).then((() => { this.loading.navigation.resolve(this.navigation) })), this.packaging.coverPath && (this.cover = this.resolve(this.packaging.coverPath)), this.loading.manifest.resolve(this.packaging.manifest), this.loading.metadata.resolve(this.packaging.metadata), this.loading.spine.resolve(this.spine), this.loading.cover.resolve(this.cover), this.loading.resources.resolve(this.resources), this.loading.pageList.resolve(this.pageList), this.isOpen = !0, this.archived || this.settings.replacements && "none" != this.settings.replacements ? this.replacements().then((() => { this.loaded.displayOptions.then((() => { this.opening.resolve(this) })) })).catch((t => { console.error(t) })) : this.loaded.displayOptions.then((() => { this.opening.resolve(this) })) } loadNavigation(t) { let e = t.navPath || t.ncxPath, i = t.toc; return i ? new Promise(((e, n) => { this.navigation = new S(i), t.pageList && (this.pageList = new O(t.pageList)), e(this.navigation) })) : e ? this.load(e, "xml").then((t => (this.navigation = new S(t), this.pageList = new O(t), this.navigation))) : new Promise(((t, e) => { this.navigation = new S, this.pageList = new O, t(this.navigation) })) } section(t) { return this.spine.get(t) } renderTo(t, e) { return this.rendition = new I.a(this, e), this.rendition.attachTo(t), this.rendition } setRequestCredentials(t) { this.settings.requestCredentials = t } setRequestHeaders(t) { this.settings.requestHeaders = t } unarchive(t, e) { return this.archive = new A, this.archive.open(t, e) } store(t) { let e = this.settings.replacements && "none" !== this.settings.replacements, i = this.url, n = this.settings.requestMethod || u.bind(this); return this.storage = new P(t, n, this.resolve.bind(this)), this.request = this.storage.request.bind(this.storage), this.opened.then((() => { this.archived && (this.storage.requester = this.archive.request.bind(this.archive)); let t = (t, e) => { e.output = this.resources.substitute(t, e.url) }; this.resources.settings.replacements = e || "blobUrl", this.resources.replacements().then((() => this.resources.replaceCss())), this.storage.on("offline", (() => { this.url = new o.a("/", ""), this.spine.hooks.serialize.register(t) })), this.storage.on("online", (() => { this.url = i, this.spine.hooks.serialize.deregister(t) })) })), this.storage } coverUrl() { return this.loaded.cover.then((() => this.cover ? this.archived ? this.archive.createUrl(this.cover) : this.cover : null)) } replacements() { return this.spine.hooks.serialize.register(((t, e) => { e.output = this.resources.substitute(t, e.url) })), this.resources.replacements().then((() => this.resources.replaceCss())) } getRange(t) { var e = new h.a(t), i = this.spine.get(e.spinePos), n = this.load.bind(this); return i ? i.load(n).then((function (t) { return e.toRange(i.document) })) : new Promise(((t, e) => { e("CFI could not be found") })) } key(t) { var e = t || this.packaging.metadata.identifier || this.url.filename; return `epubjs:${m.b}:${e}` } destroy() { this.opened = void 0, this.loading = void 0, this.loaded = void 0, this.ready = void 0, this.isOpen = !1, this.isRendered = !1, this.spine && this.spine.destroy(), this.locations && this.locations.destroy(), this.pageList && this.pageList.destroy(), this.archive && this.archive.destroy(), this.resources && this.resources.destroy(), this.container && this.container.destroy(), this.packaging && this.packaging.destroy(), this.rendition && this.rendition.destroy(), this.displayOptions && this.displayOptions.destroy(), this.spine = void 0, this.locations = void 0, this.pageList = void 0, this.archive = void 0, this.resources = void 0, this.container = void 0, this.packaging = void 0, this.rendition = void 0, this.navigation = void 0, this.url = void 0, this.path = void 0, this.archived = !1 } } s()(U.prototype), e.a = U }, function (t, e, i) { var n = i(14).NAMESPACE; function s(t) { return "" !== t } function r(t, e) { return t.hasOwnProperty(e) || (t[e] = !0), t } function o(t) { if (!t) return []; var e = function (t) { return t ? t.split(/[\t\n\f\r ]+/).filter(s) : [] }(t); return Object.keys(e.reduce(r, {})) } function a(t, e) { for (var i in t) e[i] = t[i] } function h(t, e) { var i = t.prototype; if (!(i instanceof e)) { function n() { } n.prototype = e.prototype, a(i, n = new n), t.prototype = i = n } i.constructor != t && ("function" != typeof t && console.error("unknown Class:" + t), i.constructor = t) } var l = {}, c = l.ELEMENT_NODE = 1, u = l.ATTRIBUTE_NODE = 2, d = l.TEXT_NODE = 3, f = l.CDATA_SECTION_NODE = 4, p = l.ENTITY_REFERENCE_NODE = 5, g = l.ENTITY_NODE = 6, m = l.PROCESSING_INSTRUCTION_NODE = 7, v = l.COMMENT_NODE = 8, y = l.DOCUMENT_NODE = 9, b = l.DOCUMENT_TYPE_NODE = 10, w = l.DOCUMENT_FRAGMENT_NODE = 11, x = l.NOTATION_NODE = 12, E = {}, S = {}, N = (E.INDEX_SIZE_ERR = (S[1] = "Index size error", 1), E.DOMSTRING_SIZE_ERR = (S[2] = "DOMString size error", 2), E.HIERARCHY_REQUEST_ERR = (S[3] = "Hierarchy request error", 3)), _ = (E.WRONG_DOCUMENT_ERR = (S[4] = "Wrong document", 4), E.INVALID_CHARACTER_ERR = (S[5] = "Invalid character", 5), E.NO_DATA_ALLOWED_ERR = (S[6] = "No data allowed", 6), E.NO_MODIFICATION_ALLOWED_ERR = (S[7] = "No modification allowed", 7), E.NOT_FOUND_ERR = (S[8] = "Not found", 8)), T = (E.NOT_SUPPORTED_ERR = (S[9] = "Not supported", 9), E.INUSE_ATTRIBUTE_ERR = (S[10] = "Attribute in use", 10)); function C(t, e) { if (e instanceof Error) var i = e; else i = this, Error.call(this, S[t]), this.message = S[t], Error.captureStackTrace && Error.captureStackTrace(this, C); return i.code = t, e && (this.message = this.message + ": " + e), i } function O() { } function I(t, e) { this._node = t, this._refresh = e, R(this) } function R(t) { var e = t._node._inc || t._node.ownerDocument._inc; if (t._inc != e) { var i = t._refresh(t._node); at(t, "length", i.length), a(i, t), t._inc = e } } function k() { } function A(t, e) { for (var i = t.length; i--;)if (t[i] === e) return i } function L(t, e, i, s) { if (s ? e[A(e, s)] = i : e[e.length++] = i, t) { i.ownerElement = t; var r = t.ownerDocument; r && (s && q(r, t, s), function (t, e, i) { t && t._inc++, i.namespaceURI === n.XMLNS && (e._nsMap[i.prefix ? i.localName : ""] = i.value) }(r, t, i)) } } function j(t, e, i) { var n = A(e, i); if (!(n >= 0)) throw C(_, new Error(t.tagName + "@" + i)); for (var s = e.length - 1; n < s;)e[n] = e[++n]; if (e.length = s, t) { var r = t.ownerDocument; r && (q(r, t, i), i.ownerElement = null) } } function D() { } function P() { } function M(t) { return ("<" == t ? "<" : ">" == t && ">") || "&" == t && "&" || '"' == t && """ || "&#" + t.charCodeAt() + ";" } function z(t, e) { if (e(t)) return !0; if (t = t.firstChild) do { if (z(t, e)) return !0 } while (t = t.nextSibling) } function B() { } function q(t, e, i, s) { t && t._inc++, i.namespaceURI === n.XMLNS && delete e._nsMap[i.prefix ? i.localName : ""] } function F(t, e, i) { if (t && t._inc) { t._inc++; var n = e.childNodes; if (i) n[n.length++] = i; else { for (var s = e.firstChild, r = 0; s;)n[r++] = s, s = s.nextSibling; n.length = r } } } function U(t, e) { var i = e.previousSibling, n = e.nextSibling; return i ? i.nextSibling = n : t.firstChild = n, n ? n.previousSibling = i : t.lastChild = i, F(t.ownerDocument, t), e } function W(t, e, i) { var n = e.parentNode; if (n && n.removeChild(e), e.nodeType === w) { var s = e.firstChild; if (null == s) return e; var r = e.lastChild } else s = r = e; var o = i ? i.previousSibling : t.lastChild; s.previousSibling = o, r.nextSibling = i, o ? o.nextSibling = s : t.firstChild = s, null == i ? t.lastChild = r : i.previousSibling = r; do { s.parentNode = t } while (s !== r && (s = s.nextSibling)); return F(t.ownerDocument || t, t), e.nodeType == w && (e.firstChild = e.lastChild = null), e } function H() { this._nsMap = {} } function V() { } function X() { } function G() { } function Y() { } function $() { } function K() { } function Z() { } function J() { } function Q() { } function tt() { } function et() { } function it() { } function nt(t, e) { var i = [], n = 9 == this.nodeType && this.documentElement || this, s = n.prefix, r = n.namespaceURI; if (r && null == s && null == (s = n.lookupPrefix(r))) var o = [{ namespace: r, prefix: null }]; return ot(this, i, t, e, o), i.join("") } function st(t, e, i) { var s = t.prefix || "", r = t.namespaceURI; if (!r) return !1; if ("xml" === s && r === n.XML || r === n.XMLNS) return !1; for (var o = i.length; o--;) { var a = i[o]; if (a.prefix === s) return a.namespace !== r } return !0 } function rt(t, e, i) { t.push(" ", e, '="', i.replace(/[<&"]/g, M), '"') } function ot(t, e, i, s, r) { if (r || (r = []), s) { if (!(t = s(t))) return; if ("string" == typeof t) return void e.push(t) } switch (t.nodeType) { case c: var o = t.attributes, a = o.length, h = t.firstChild, l = t.tagName, g = l; if (!(i = n.isHTML(t.namespaceURI) || i) && !t.prefix && t.namespaceURI) { for (var x, E = 0; E < o.length; E++)if ("xmlns" === o.item(E).name) { x = o.item(E).value; break } if (!x) for (var S = r.length - 1; S >= 0; S--)if ("" === (N = r[S]).prefix && N.namespace === t.namespaceURI) { x = N.namespace; break } if (x !== t.namespaceURI) for (S = r.length - 1; S >= 0; S--) { var N; if ((N = r[S]).namespace === t.namespaceURI) { N.prefix && (g = N.prefix + ":" + l); break } } } e.push("<", g); for (var _ = 0; _ < a; _++)"xmlns" == (T = o.item(_)).prefix ? r.push({ prefix: T.localName, namespace: T.value }) : "xmlns" == T.nodeName && r.push({ prefix: "", namespace: T.value }); for (_ = 0; _ < a; _++) { var T, C, O; st(T = o.item(_), 0, r) && (rt(e, (C = T.prefix || "") ? "xmlns:" + C : "xmlns", O = T.namespaceURI), r.push({ prefix: C, namespace: O })), ot(T, e, i, s, r) } if (l === g && st(t, 0, r) && (rt(e, (C = t.prefix || "") ? "xmlns:" + C : "xmlns", O = t.namespaceURI), r.push({ prefix: C, namespace: O })), h || i && !/^(?:meta|link|img|br|hr|input)$/i.test(l)) { if (e.push(">"), i && /^script$/i.test(l)) for (; h;)h.data ? e.push(h.data) : ot(h, e, i, s, r.slice()), h = h.nextSibling; else for (; h;)ot(h, e, i, s, r.slice()), h = h.nextSibling; e.push("") } else e.push("/>"); return; case y: case w: for (h = t.firstChild; h;)ot(h, e, i, s, r.slice()), h = h.nextSibling; return; case u: return rt(e, t.name, t.value); case d: return e.push(t.data.replace(/[<&]/g, M).replace(/]]>/g, "]]>")); case f: return e.push(""); case v: return e.push("\x3c!--", t.data, "--\x3e"); case b: var I = t.publicId, R = t.systemId; if (e.push(""); else if (R && "." != R) e.push(" SYSTEM ", R, ">"); else { var k = t.internalSubset; k && e.push(" [", k, "]"), e.push(">") } return; case m: return e.push(""); case p: return e.push("&", t.nodeName, ";"); default: e.push("??", t.nodeName) } } function at(t, e, i) { t[e] = i } E.INVALID_STATE_ERR = (S[11] = "Invalid state", 11), E.SYNTAX_ERR = (S[12] = "Syntax error", 12), E.INVALID_MODIFICATION_ERR = (S[13] = "Invalid modification", 13), E.NAMESPACE_ERR = (S[14] = "Invalid namespace", 14), E.INVALID_ACCESS_ERR = (S[15] = "Invalid access", 15), C.prototype = Error.prototype, a(E, C), O.prototype = { length: 0, item: function (t) { return this[t] || null }, toString: function (t, e) { for (var i = [], n = 0; n < this.length; n++)ot(this[n], i, t, e); return i.join("") } }, I.prototype.item = function (t) { return R(this), this[t] }, h(I, O), k.prototype = { length: 0, item: O.prototype.item, getNamedItem: function (t) { for (var e = this.length; e--;) { var i = this[e]; if (i.nodeName == t) return i } }, setNamedItem: function (t) { var e = t.ownerElement; if (e && e != this._ownerElement) throw new C(T); var i = this.getNamedItem(t.nodeName); return L(this._ownerElement, this, t, i), i }, setNamedItemNS: function (t) { var e, i = t.ownerElement; if (i && i != this._ownerElement) throw new C(T); return e = this.getNamedItemNS(t.namespaceURI, t.localName), L(this._ownerElement, this, t, e), e }, removeNamedItem: function (t) { var e = this.getNamedItem(t); return j(this._ownerElement, this, e), e }, removeNamedItemNS: function (t, e) { var i = this.getNamedItemNS(t, e); return j(this._ownerElement, this, i), i }, getNamedItemNS: function (t, e) { for (var i = this.length; i--;) { var n = this[i]; if (n.localName == e && n.namespaceURI == t) return n } return null } }, D.prototype = { hasFeature: function (t, e) { return !0 }, createDocument: function (t, e, i) { var n = new B; if (n.implementation = this, n.childNodes = new O, n.doctype = i || null, i && n.appendChild(i), e) { var s = n.createElementNS(t, e); n.appendChild(s) } return n }, createDocumentType: function (t, e, i) { var n = new K; return n.name = t, n.nodeName = t, n.publicId = e || "", n.systemId = i || "", n } }, P.prototype = { firstChild: null, lastChild: null, previousSibling: null, nextSibling: null, attributes: null, parentNode: null, childNodes: null, ownerDocument: null, nodeValue: null, namespaceURI: null, prefix: null, localName: null, insertBefore: function (t, e) { return W(this, t, e) }, replaceChild: function (t, e) { this.insertBefore(t, e), e && this.removeChild(e) }, removeChild: function (t) { return U(this, t) }, appendChild: function (t) { return this.insertBefore(t, null) }, hasChildNodes: function () { return null != this.firstChild }, cloneNode: function (t) { return function t(e, i, n) { var s = new i.constructor; for (var r in i) { var o = i[r]; "object" != typeof o && o != s[r] && (s[r] = o) } switch (i.childNodes && (s.childNodes = new O), s.ownerDocument = e, s.nodeType) { case c: var a = i.attributes, h = s.attributes = new k, l = a.length; h._ownerElement = s; for (var d = 0; d < l; d++)s.setAttributeNode(t(e, a.item(d), !0)); break; case u: n = !0 }if (n) for (var f = i.firstChild; f;)s.appendChild(t(e, f, n)), f = f.nextSibling; return s }(this.ownerDocument || this, this, t) }, normalize: function () { for (var t = this.firstChild; t;) { var e = t.nextSibling; e && e.nodeType == d && t.nodeType == d ? (this.removeChild(e), t.appendData(e.data)) : (t.normalize(), t = e) } }, isSupported: function (t, e) { return this.ownerDocument.implementation.hasFeature(t, e) }, hasAttributes: function () { return this.attributes.length > 0 }, lookupPrefix: function (t) { for (var e = this; e;) { var i = e._nsMap; if (i) for (var n in i) if (i[n] == t) return n; e = e.nodeType == u ? e.ownerDocument : e.parentNode } return null }, lookupNamespaceURI: function (t) { for (var e = this; e;) { var i = e._nsMap; if (i && t in i) return i[t]; e = e.nodeType == u ? e.ownerDocument : e.parentNode } return null }, isDefaultNamespace: function (t) { return null == this.lookupPrefix(t) } }, a(l, P), a(l, P.prototype), B.prototype = { nodeName: "#document", nodeType: y, doctype: null, documentElement: null, _inc: 1, insertBefore: function (t, e) { if (t.nodeType == w) { for (var i = t.firstChild; i;) { var n = i.nextSibling; this.insertBefore(i, e), i = n } return t } return null == this.documentElement && t.nodeType == c && (this.documentElement = t), W(this, t, e), t.ownerDocument = this, t }, removeChild: function (t) { return this.documentElement == t && (this.documentElement = null), U(this, t) }, importNode: function (t, e) { return function t(e, i, n) { var s; switch (i.nodeType) { case c: (s = i.cloneNode(!1)).ownerDocument = e; case w: break; case u: n = !0 }if (s || (s = i.cloneNode(!1)), s.ownerDocument = e, s.parentNode = null, n) for (var r = i.firstChild; r;)s.appendChild(t(e, r, n)), r = r.nextSibling; return s }(this, t, e) }, getElementById: function (t) { var e = null; return z(this.documentElement, (function (i) { if (i.nodeType == c && i.getAttribute("id") == t) return e = i, !0 })), e }, getElementsByClassName: function (t) { var e = o(t); return new I(this, (function (i) { var n = []; return e.length > 0 && z(i.documentElement, (function (s) { if (s !== i && s.nodeType === c) { var r = s.getAttribute("class"); if (r) { var a = t === r; if (!a) { var h = o(r); a = e.every((l = h, function (t) { return l && -1 !== l.indexOf(t) })) } a && n.push(s) } } var l })), n })) }, createElement: function (t) { var e = new H; return e.ownerDocument = this, e.nodeName = t, e.tagName = t, e.localName = t, e.childNodes = new O, (e.attributes = new k)._ownerElement = e, e }, createDocumentFragment: function () { var t = new tt; return t.ownerDocument = this, t.childNodes = new O, t }, createTextNode: function (t) { var e = new G; return e.ownerDocument = this, e.appendData(t), e }, createComment: function (t) { var e = new Y; return e.ownerDocument = this, e.appendData(t), e }, createCDATASection: function (t) { var e = new $; return e.ownerDocument = this, e.appendData(t), e }, createProcessingInstruction: function (t, e) { var i = new et; return i.ownerDocument = this, i.tagName = i.target = t, i.nodeValue = i.data = e, i }, createAttribute: function (t) { var e = new V; return e.ownerDocument = this, e.name = t, e.nodeName = t, e.localName = t, e.specified = !0, e }, createEntityReference: function (t) { var e = new Q; return e.ownerDocument = this, e.nodeName = t, e }, createElementNS: function (t, e) { var i = new H, n = e.split(":"), s = i.attributes = new k; return i.childNodes = new O, i.ownerDocument = this, i.nodeName = e, i.tagName = e, i.namespaceURI = t, 2 == n.length ? (i.prefix = n[0], i.localName = n[1]) : i.localName = e, s._ownerElement = i, i }, createAttributeNS: function (t, e) { var i = new V, n = e.split(":"); return i.ownerDocument = this, i.nodeName = e, i.name = e, i.namespaceURI = t, i.specified = !0, 2 == n.length ? (i.prefix = n[0], i.localName = n[1]) : i.localName = e, i } }, h(B, P), H.prototype = { nodeType: c, hasAttribute: function (t) { return null != this.getAttributeNode(t) }, getAttribute: function (t) { var e = this.getAttributeNode(t); return e && e.value || "" }, getAttributeNode: function (t) { return this.attributes.getNamedItem(t) }, setAttribute: function (t, e) { var i = this.ownerDocument.createAttribute(t); i.value = i.nodeValue = "" + e, this.setAttributeNode(i) }, removeAttribute: function (t) { var e = this.getAttributeNode(t); e && this.removeAttributeNode(e) }, appendChild: function (t) { return t.nodeType === w ? this.insertBefore(t, null) : function (t, e) { var i = e.parentNode; if (i) { var n = t.lastChild; i.removeChild(e), n = t.lastChild } return n = t.lastChild, e.parentNode = t, e.previousSibling = n, e.nextSibling = null, n ? n.nextSibling = e : t.firstChild = e, t.lastChild = e, F(t.ownerDocument, t, e), e }(this, t) }, setAttributeNode: function (t) { return this.attributes.setNamedItem(t) }, setAttributeNodeNS: function (t) { return this.attributes.setNamedItemNS(t) }, removeAttributeNode: function (t) { return this.attributes.removeNamedItem(t.nodeName) }, removeAttributeNS: function (t, e) { var i = this.getAttributeNodeNS(t, e); i && this.removeAttributeNode(i) }, hasAttributeNS: function (t, e) { return null != this.getAttributeNodeNS(t, e) }, getAttributeNS: function (t, e) { var i = this.getAttributeNodeNS(t, e); return i && i.value || "" }, setAttributeNS: function (t, e, i) { var n = this.ownerDocument.createAttributeNS(t, e); n.value = n.nodeValue = "" + i, this.setAttributeNode(n) }, getAttributeNodeNS: function (t, e) { return this.attributes.getNamedItemNS(t, e) }, getElementsByTagName: function (t) { return new I(this, (function (e) { var i = []; return z(e, (function (n) { n === e || n.nodeType != c || "*" !== t && n.tagName != t || i.push(n) })), i })) }, getElementsByTagNameNS: function (t, e) { return new I(this, (function (i) { var n = []; return z(i, (function (s) { s === i || s.nodeType !== c || "*" !== t && s.namespaceURI !== t || "*" !== e && s.localName != e || n.push(s) })), n })) } }, B.prototype.getElementsByTagName = H.prototype.getElementsByTagName, B.prototype.getElementsByTagNameNS = H.prototype.getElementsByTagNameNS, h(H, P), V.prototype.nodeType = u, h(V, P), X.prototype = { data: "", substringData: function (t, e) { return this.data.substring(t, t + e) }, appendData: function (t) { t = this.data + t, this.nodeValue = this.data = t, this.length = t.length }, insertData: function (t, e) { this.replaceData(t, 0, e) }, appendChild: function (t) { throw new Error(S[N]) }, deleteData: function (t, e) { this.replaceData(t, e, "") }, replaceData: function (t, e, i) { i = this.data.substring(0, t) + i + this.data.substring(t + e), this.nodeValue = this.data = i, this.length = i.length } }, h(X, P), G.prototype = { nodeName: "#text", nodeType: d, splitText: function (t) { var e = this.data, i = e.substring(t); e = e.substring(0, t), this.data = this.nodeValue = e, this.length = e.length; var n = this.ownerDocument.createTextNode(i); return this.parentNode && this.parentNode.insertBefore(n, this.nextSibling), n } }, h(G, X), Y.prototype = { nodeName: "#comment", nodeType: v }, h(Y, X), $.prototype = { nodeName: "#cdata-section", nodeType: f }, h($, X), K.prototype.nodeType = b, h(K, P), Z.prototype.nodeType = x, h(Z, P), J.prototype.nodeType = g, h(J, P), Q.prototype.nodeType = p, h(Q, P), tt.prototype.nodeName = "#document-fragment", tt.prototype.nodeType = w, h(tt, P), et.prototype.nodeType = m, h(et, P), it.prototype.serializeToString = function (t, e, i) { return nt.call(t, e, i) }, P.prototype.toString = nt; try { Object.defineProperty && (Object.defineProperty(I.prototype, "length", { get: function () { return R(this), this.$$length } }), Object.defineProperty(P.prototype, "textContent", { get: function () { return function t(e) { switch (e.nodeType) { case c: case w: var i = []; for (e = e.firstChild; e;)7 !== e.nodeType && 8 !== e.nodeType && i.push(t(e)), e = e.nextSibling; return i.join(""); default: return e.nodeValue } }(this) }, set: function (t) { switch (this.nodeType) { case c: case w: for (; this.firstChild;)this.removeChild(this.firstChild); (t || String(t)) && this.appendChild(this.ownerDocument.createTextNode(t)); break; default: this.data = t, this.value = t, this.nodeValue = t } } }), at = function (t, e, i) { t["$$" + e] = i }) } catch (t) { } e.DocumentType = K, e.DOMException = C, e.DOMImplementation = D, e.Element = H, e.Node = P, e.NodeList = O, e.XMLSerializer = it }, function (t, e, i) { var n = i(52), s = "object" == typeof self && self && self.Object === Object && self, r = n || s || Function("return this")(); t.exports = r }, function (t, e, i) { var n = i(26).Symbol; t.exports = n }, function (t, e, i) { var n = i(21), s = i(19); t.exports = function (t, e, i) { var r = !0, o = !0; if ("function" != typeof t) throw new TypeError("Expected a function"); return s(i) && (r = "leading" in i ? !!i.leading : r, o = "trailing" in i ? !!i.trailing : o), n(t, e, { leading: r, maxWait: e, trailing: o }) } }, function (e, i) { e.exports = t }, function (t, e, i) { "use strict"; i.r(e), function (t) { var n = i(24), s = i(16), r = i(2), o = i(12), a = i(0), h = i(1); function l(t, e) { return new n.a(t, e) } i(20), i(10), i(22), l.VERSION = h.b, void 0 !== t && (t.EPUBJS_VERSION = h.b), l.Book = n.a, l.Rendition = s.a, l.Contents = o.a, l.CFI = r.a, l.utils = a, e.default = l }.call(this, i(17)) }, function (t, e, i) { "use strict"; var n = i(32), s = i(40), r = i(41), o = i(42); (t.exports = function (t, e) { var i, r, a, h, l; return arguments.length < 2 || "string" != typeof t ? (h = e, e = t, t = null) : h = arguments[2], null == t ? (i = a = !0, r = !1) : (i = o.call(t, "c"), r = o.call(t, "e"), a = o.call(t, "w")), l = { value: e, configurable: i, enumerable: r, writable: a }, h ? n(s(h), l) : l }).gs = function (t, e, i) { var a, h, l, c; return "string" != typeof t ? (l = i, i = e, e = t, t = null) : l = arguments[3], null == e ? e = void 0 : r(e) ? null == i ? i = void 0 : r(i) || (l = i, i = void 0) : (l = e, e = i = void 0), null == t ? (a = !0, h = !1) : (a = o.call(t, "c"), h = o.call(t, "e")), c = { get: e, set: i, configurable: a, enumerable: h }, l ? n(s(l), c) : c } }, function (t, e, i) { "use strict"; t.exports = i(33)() ? Object.assign : i(34) }, function (t, e, i) { "use strict"; t.exports = function () { var t, e = Object.assign; return "function" == typeof e && (e(t = { foo: "raz" }, { bar: "dwa" }, { trzy: "trzy" }), t.foo + t.bar + t.trzy === "razdwatrzy") } }, function (t, e, i) { "use strict"; var n = i(35), s = i(39), r = Math.max; t.exports = function (t, e) { var i, o, a, h = r(arguments.length, 2); for (t = Object(s(t)), a = function (n) { try { t[n] = e[n] } catch (t) { i || (i = t) } }, o = 1; o < h; ++o)n(e = arguments[o]).forEach(a); if (void 0 !== i) throw i; return t } }, function (t, e, i) { "use strict"; t.exports = i(36)() ? Object.keys : i(37) }, function (t, e, i) { "use strict"; t.exports = function () { try { return Object.keys("primitive"), !0 } catch (t) { return !1 } } }, function (t, e, i) { "use strict"; var n = i(18), s = Object.keys; t.exports = function (t) { return s(n(t) ? Object(t) : t) } }, function (t, e, i) { "use strict"; t.exports = function () { } }, function (t, e, i) { "use strict"; var n = i(18); t.exports = function (t) { if (!n(t)) throw new TypeError("Cannot use null or undefined"); return t } }, function (t, e, i) { "use strict"; var n = i(18), s = Array.prototype.forEach, r = Object.create; t.exports = function (t) { var e = r(null); return s.call(arguments, (function (t) { n(t) && function (t, e) { var i; for (i in t) e[i] = t[i] }(Object(t), e) })), e } }, function (t, e, i) { "use strict"; t.exports = function (t) { return "function" == typeof t } }, function (t, e, i) { "use strict"; t.exports = i(43)() ? String.prototype.contains : i(44) }, function (t, e, i) { "use strict"; var n = "razdwatrzy"; t.exports = function () { return "function" == typeof n.contains && !0 === n.contains("dwa") && !1 === n.contains("foo") } }, function (t, e, i) { "use strict"; var n = String.prototype.indexOf; t.exports = function (t) { return n.call(this, t, arguments[1]) > -1 } }, function (t, e, i) { "use strict"; t.exports = function (t) { if ("function" != typeof t) throw new TypeError(t + " is not a function"); return t } }, function (t, e, i) { var n = i(14), s = i(25), r = i(47), o = i(48), a = s.DOMImplementation, h = n.NAMESPACE, l = o.ParseError, c = o.XMLReader; function u(t) { this.options = t || { locator: {} } } function d() { this.cdata = !1 } function f(t, e) { e.lineNumber = t.lineNumber, e.columnNumber = t.columnNumber } function p(t) { if (t) return "\n@" + (t.systemId || "") + "#[line:" + t.lineNumber + ",col:" + t.columnNumber + "]" } function g(t, e, i) { return "string" == typeof t ? t.substr(e, i) : t.length >= e + i || e ? new java.lang.String(t, e, i) + "" : t } function m(t, e) { t.currentElement ? t.currentElement.appendChild(e) : t.doc.appendChild(e) } u.prototype.parseFromString = function (t, e) { var i = this.options, n = new c, s = i.domBuilder || new d, o = i.errorHandler, a = i.locator, l = i.xmlns || {}, u = /\/x?html?$/.test(e), f = u ? r.HTML_ENTITIES : r.XML_ENTITIES; return a && s.setDocumentLocator(a), n.errorHandler = function (t, e, i) { if (!t) { if (e instanceof d) return e; t = e } var n = {}, s = t instanceof Function; function r(e) { var r = t[e]; !r && s && (r = 2 == t.length ? function (i) { t(e, i) } : t), n[e] = r && function (t) { r("[xmldom " + e + "]\t" + t + p(i)) } || function () { } } return i = i || {}, r("warning"), r("error"), r("fatalError"), n }(o, s, a), n.domBuilder = i.domBuilder || s, u && (l[""] = h.HTML), l.xml = l.xml || h.XML, t && "string" == typeof t ? n.parse(t, l, f) : n.errorHandler.error("invalid doc source"), s.doc }, d.prototype = { startDocument: function () { this.doc = (new a).createDocument(null, null, null), this.locator && (this.doc.documentURI = this.locator.systemId) }, startElement: function (t, e, i, n) { var s = this.doc, r = s.createElementNS(t, i || e), o = n.length; m(this, r), this.currentElement = r, this.locator && f(this.locator, r); for (var a = 0; a < o; a++) { t = n.getURI(a); var h = n.getValue(a), l = (i = n.getQName(a), s.createAttributeNS(t, i)); this.locator && f(n.getLocator(a), l), l.value = l.nodeValue = h, r.setAttributeNode(l) } }, endElement: function (t, e, i) { var n = this.currentElement; n.tagName, this.currentElement = n.parentNode }, startPrefixMapping: function (t, e) { }, endPrefixMapping: function (t) { }, processingInstruction: function (t, e) { var i = this.doc.createProcessingInstruction(t, e); this.locator && f(this.locator, i), m(this, i) }, ignorableWhitespace: function (t, e, i) { }, characters: function (t, e, i) { if (t = g.apply(this, arguments)) { if (this.cdata) var n = this.doc.createCDATASection(t); else n = this.doc.createTextNode(t); this.currentElement ? this.currentElement.appendChild(n) : /^\s*$/.test(t) && this.doc.appendChild(n), this.locator && f(this.locator, n) } }, skippedEntity: function (t) { }, endDocument: function () { this.doc.normalize() }, setDocumentLocator: function (t) { (this.locator = t) && (t.lineNumber = 0) }, comment: function (t, e, i) { t = g.apply(this, arguments); var n = this.doc.createComment(t); this.locator && f(this.locator, n), m(this, n) }, startCDATA: function () { this.cdata = !0 }, endCDATA: function () { this.cdata = !1 }, startDTD: function (t, e, i) { var n = this.doc.implementation; if (n && n.createDocumentType) { var s = n.createDocumentType(t, e, i); this.locator && f(this.locator, s), m(this, s), this.doc.doctype = s } }, warning: function (t) { console.warn("[xmldom warning]\t" + t, p(this.locator)) }, error: function (t) { console.error("[xmldom error]\t" + t, p(this.locator)) }, fatalError: function (t) { throw new l(t, this.locator) } }, "endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g, (function (t) { d.prototype[t] = function () { return null } })), e.__DOMHandler = d, e.DOMParser = u, e.DOMImplementation = s.DOMImplementation, e.XMLSerializer = s.XMLSerializer }, function (t, e, i) { var n = i(14).freeze; e.XML_ENTITIES = n({ amp: "&", apos: "'", gt: ">", lt: "<", quot: '"' }), e.HTML_ENTITIES = n({ lt: "<", gt: ">", amp: "&", quot: '"', apos: "'", Agrave: "À", Aacute: "Á", Acirc: "Â", Atilde: "Ã", Auml: "Ä", Aring: "Å", AElig: "Æ", Ccedil: "Ç", Egrave: "È", Eacute: "É", Ecirc: "Ê", Euml: "Ë", Igrave: "Ì", Iacute: "Í", Icirc: "Î", Iuml: "Ï", ETH: "Ð", Ntilde: "Ñ", Ograve: "Ò", Oacute: "Ó", Ocirc: "Ô", Otilde: "Õ", Ouml: "Ö", Oslash: "Ø", Ugrave: "Ù", Uacute: "Ú", Ucirc: "Û", Uuml: "Ü", Yacute: "Ý", THORN: "Þ", szlig: "ß", agrave: "à", aacute: "á", acirc: "â", atilde: "ã", auml: "ä", aring: "å", aelig: "æ", ccedil: "ç", egrave: "è", eacute: "é", ecirc: "ê", euml: "ë", igrave: "ì", iacute: "í", icirc: "î", iuml: "ï", eth: "ð", ntilde: "ñ", ograve: "ò", oacute: "ó", ocirc: "ô", otilde: "õ", ouml: "ö", oslash: "ø", ugrave: "ù", uacute: "ú", ucirc: "û", uuml: "ü", yacute: "ý", thorn: "þ", yuml: "ÿ", nbsp: " ", iexcl: "¡", cent: "¢", pound: "£", curren: "¤", yen: "¥", brvbar: "¦", sect: "§", uml: "¨", copy: "©", ordf: "ª", laquo: "«", not: "¬", shy: "­­", reg: "®", macr: "¯", deg: "°", plusmn: "±", sup2: "²", sup3: "³", acute: "´", micro: "µ", para: "¶", middot: "·", cedil: "¸", sup1: "¹", ordm: "º", raquo: "»", frac14: "¼", frac12: "½", frac34: "¾", iquest: "¿", times: "×", divide: "÷", forall: "∀", part: "∂", exist: "∃", empty: "∅", nabla: "∇", isin: "∈", notin: "∉", ni: "∋", prod: "∏", sum: "∑", minus: "−", lowast: "∗", radic: "√", prop: "∝", infin: "∞", ang: "∠", and: "∧", or: "∨", cap: "∩", cup: "∪", int: "∫", there4: "∴", sim: "∼", cong: "≅", asymp: "≈", ne: "≠", equiv: "≡", le: "≤", ge: "≥", sub: "⊂", sup: "⊃", nsub: "⊄", sube: "⊆", supe: "⊇", oplus: "⊕", otimes: "⊗", perp: "⊥", sdot: "⋅", Alpha: "Α", Beta: "Β", Gamma: "Γ", Delta: "Δ", Epsilon: "Ε", Zeta: "Ζ", Eta: "Η", Theta: "Θ", Iota: "Ι", Kappa: "Κ", Lambda: "Λ", Mu: "Μ", Nu: "Ν", Xi: "Ξ", Omicron: "Ο", Pi: "Π", Rho: "Ρ", Sigma: "Σ", Tau: "Τ", Upsilon: "Υ", Phi: "Φ", Chi: "Χ", Psi: "Ψ", Omega: "Ω", alpha: "α", beta: "β", gamma: "γ", delta: "δ", epsilon: "ε", zeta: "ζ", eta: "η", theta: "θ", iota: "ι", kappa: "κ", lambda: "λ", mu: "μ", nu: "ν", xi: "ξ", omicron: "ο", pi: "π", rho: "ρ", sigmaf: "ς", sigma: "σ", tau: "τ", upsilon: "υ", phi: "φ", chi: "χ", psi: "ψ", omega: "ω", thetasym: "ϑ", upsih: "ϒ", piv: "ϖ", OElig: "Œ", oelig: "œ", Scaron: "Š", scaron: "š", Yuml: "Ÿ", fnof: "ƒ", circ: "ˆ", tilde: "˜", ensp: " ", emsp: " ", thinsp: " ", zwnj: "‌", zwj: "‍", lrm: "‎", rlm: "‏", ndash: "–", mdash: "—", lsquo: "‘", rsquo: "’", sbquo: "‚", ldquo: "“", rdquo: "”", bdquo: "„", dagger: "†", Dagger: "‡", bull: "•", hellip: "…", permil: "‰", prime: "′", Prime: "″", lsaquo: "‹", rsaquo: "›", oline: "‾", euro: "€", trade: "™", larr: "←", uarr: "↑", rarr: "→", darr: "↓", harr: "↔", crarr: "↵", lceil: "⌈", rceil: "⌉", lfloor: "⌊", rfloor: "⌋", loz: "◊", spades: "♠", clubs: "♣", hearts: "♥", diams: "♦" }), e.entityMap = e.HTML_ENTITIES }, function (t, e, i) { var n = i(14).NAMESPACE, s = /[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/, r = new RegExp("[\\-\\.0-9" + s.source.slice(1, -1) + "\\u00B7\\u0300-\\u036F\\u203F-\\u2040]"), o = new RegExp("^" + s.source + r.source + "*(?::" + s.source + r.source + "*)?$"); function a(t, e) { this.message = t, this.locator = e, Error.captureStackTrace && Error.captureStackTrace(this, a) } function h() { } function l(t, e) { return e.lineNumber = t.lineNumber, e.columnNumber = t.columnNumber, e } function c(t, e, i, s, r, o) { function a(t, e, n) { i.attributeNames.hasOwnProperty(t) && o.fatalError("Attribute " + t + " redefined"), i.addValue(t, e, n) } for (var h, l = ++e, c = 0; ;) { var u = t.charAt(l); switch (u) { case "=": if (1 === c) h = t.slice(e, l), c = 3; else { if (2 !== c) throw new Error("attribute equal must after attrName"); c = 3 } break; case "'": case '"': if (3 === c || 1 === c) { if (1 === c && (o.warning('attribute value must after "="'), h = t.slice(e, l)), e = l + 1, !((l = t.indexOf(u, e)) > 0)) throw new Error("attribute value no end '" + u + "' match"); a(h, d = t.slice(e, l).replace(/&#?\w+;/g, r), e - 1), c = 5 } else { if (4 != c) throw new Error('attribute value must after "="'); a(h, d = t.slice(e, l).replace(/&#?\w+;/g, r), e), o.warning('attribute "' + h + '" missed start quot(' + u + ")!!"), e = l + 1, c = 5 } break; case "/": switch (c) { case 0: i.setTagName(t.slice(e, l)); case 5: case 6: case 7: c = 7, i.closed = !0; case 4: case 1: case 2: break; default: throw new Error("attribute invalid close char('/')") }break; case "": return o.error("unexpected end of input"), 0 == c && i.setTagName(t.slice(e, l)), l; case ">": switch (c) { case 0: i.setTagName(t.slice(e, l)); case 5: case 6: case 7: break; case 4: case 1: "/" === (d = t.slice(e, l)).slice(-1) && (i.closed = !0, d = d.slice(0, -1)); case 2: 2 === c && (d = h), 4 == c ? (o.warning('attribute "' + d + '" missed quot(")!'), a(h, d.replace(/&#?\w+;/g, r), e)) : (n.isHTML(s[""]) && d.match(/^(?:disabled|checked|selected)$/i) || o.warning('attribute "' + d + '" missed value!! "' + d + '" instead!!'), a(d, d, e)); break; case 3: throw new Error("attribute value missed!!") }return l; case "€": u = " "; default: if (u <= " ") switch (c) { case 0: i.setTagName(t.slice(e, l)), c = 6; break; case 1: h = t.slice(e, l), c = 2; break; case 4: var d = t.slice(e, l).replace(/&#?\w+;/g, r); o.warning('attribute "' + d + '" missed quot(")!!'), a(h, d, e); case 5: c = 6 } else switch (c) { case 2: i.tagName, n.isHTML(s[""]) && h.match(/^(?:disabled|checked|selected)$/i) || o.warning('attribute "' + h + '" missed value!! "' + h + '" instead2!!'), a(h, h, e), e = l, c = 1; break; case 5: o.warning('attribute space is required"' + h + '"!!'); case 6: c = 1, e = l; break; case 3: c = 4, e = l; break; case 7: throw new Error("elements closed character '/' and '>' must be connected to") } }l++ } } function u(t, e, i) { for (var s = t.tagName, r = null, o = t.length; o--;) { var a = t[o], h = a.qName, l = a.value; if ((f = h.indexOf(":")) > 0) var c = a.prefix = h.slice(0, f), u = h.slice(f + 1), d = "xmlns" === c && u; else u = h, c = null, d = "xmlns" === h && ""; a.localName = u, !1 !== d && (null == r && (r = {}, p(i, i = {})), i[d] = r[d] = l, a.uri = n.XMLNS, e.startPrefixMapping(d, l)) } for (o = t.length; o--;)(c = (a = t[o]).prefix) && ("xml" === c && (a.uri = n.XML), "xmlns" !== c && (a.uri = i[c || ""])); var f; (f = s.indexOf(":")) > 0 ? (c = t.prefix = s.slice(0, f), u = t.localName = s.slice(f + 1)) : (c = null, u = t.localName = s); var g = t.uri = i[c || ""]; if (e.startElement(g, u, s, t), !t.closed) return t.currentNSMap = i, t.localNSMap = r, !0; if (e.endElement(g, u, s), r) for (c in r) e.endPrefixMapping(c) } function d(t, e, i, n, s) { if (/^(?:script|textarea)$/i.test(i)) { var r = t.indexOf("", e), o = t.substring(e + 1, r); if (/[&<]/.test(o)) return /^script$/i.test(i) ? (s.characters(o, 0, o.length), r) : (o = o.replace(/&#?\w+;/g, n), s.characters(o, 0, o.length), r) } return e + 1 } function f(t, e, i, n) { var s = n[i]; return null == s && ((s = t.lastIndexOf("")) < e && (s = t.lastIndexOf(" e ? (i.comment(t, e + 4, s - e - 4), s + 3) : (n.error("Unclosed comment"), -1) : -1; if ("CDATA[" == t.substr(e + 3, 6)) { var s = t.indexOf("]]>", e + 9); return i.startCDATA(), i.characters(t, e + 9, s - e - 9), i.endCDATA(), s + 3 } var r = function (t, e) { var i, n = [], s = /'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g; for (s.lastIndex = e, s.exec(t); i = s.exec(t);)if (n.push(i), i[1]) return n }(t, e), o = r.length; if (o > 1 && /!doctype/i.test(r[0][0])) { var a = r[1][0], h = !1, l = !1; o > 3 && (/^public$/i.test(r[2][0]) ? (h = r[3][0], l = o > 4 && r[4][0]) : /^system$/i.test(r[2][0]) && (l = r[3][0])); var c = r[o - 1]; return i.startDTD(a, h, l), i.endDTD(), c.index + c[0].length } return -1 } function m(t, e, i) { var n = t.indexOf("?>", e); if (n) { var s = t.substring(e, n).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/); return s ? (s[0].length, i.processingInstruction(s[1], s[2]), n + 2) : -1 } return -1 } function v() { this.attributeNames = {} } a.prototype = new Error, a.prototype.name = a.name, h.prototype = { parse: function (t, e, i) { var s = this.domBuilder; s.startDocument(), p(e, e = {}), function (t, e, i, s, r) { function o(t) { var e = t.slice(1, -1); return e in i ? i[e] : "#" === e.charAt(0) ? function (t) { if (t > 65535) { var e = 55296 + ((t -= 65536) >> 10), i = 56320 + (1023 & t); return String.fromCharCode(e, i) } return String.fromCharCode(t) }(parseInt(e.substr(1).replace("x", "0x"))) : (r.error("entity not found:" + t), t) } function h(e) { if (e > N) { var i = t.substring(N, e).replace(/&#?\w+;/g, o); x && p(N), s.characters(i, 0, e - N), N = e } } function p(e, i) { for (; e >= b && (i = w.exec(t));)y = i.index, b = y + i[0].length, x.lineNumber++; x.columnNumber = e - y + 1 } for (var y = 0, b = 0, w = /.*(?:\r\n?|\n)|.*$/g, x = s.locator, E = [{ currentNSMap: e }], S = {}, N = 0; ;) { try { var _ = t.indexOf("<", N); if (_ < 0) { if (!t.substr(N).match(/^\s*$/)) { var T = s.doc, C = T.createTextNode(t.substr(N)); T.appendChild(C), s.currentElement = C } return } switch (_ > N && h(_), t.charAt(_ + 1)) { case "/": var O = t.indexOf(">", _ + 3), I = t.substring(_ + 2, O).replace(/[ \t\n\r]+$/g, ""), R = E.pop(); O < 0 ? (I = t.substring(_ + 2).replace(/[\s<].*/, ""), r.error("end tag name: " + I + " is not complete:" + R.tagName), O = _ + 1 + I.length) : I.match(/\s N ? N = O : h(Math.max(_, N) + 1) } }(t, e, i, s, this.errorHandler), s.endDocument() } }, v.prototype = { setTagName: function (t) { if (!o.test(t)) throw new Error("invalid tagName:" + t); this.tagName = t }, addValue: function (t, e, i) { if (!o.test(t)) throw new Error("invalid attribute:" + t); this.attributeNames[t] = this.length, this[this.length++] = { qName: t, value: e, offset: i } }, length: 0, getLocalName: function (t) { return this[t].localName }, getLocator: function (t) { return this[t].locator }, getQName: function (t) { return this[t].qName }, getURI: function (t) { return this[t].uri }, getValue: function (t) { return this[t].value } }, e.XMLReader = h, e.ParseError = a }, function (t, e, i) { "use strict"; function n(t) { return document.createElementNS("http://www.w3.org/2000/svg", t) } Object.defineProperty(e, "__esModule", { value: !0 }), e.createElement = n, e.default = { createElement: n } }, function (t, e, i) { "use strict"; function n(t, e) { function i(i) { for (var n = e.length - 1; n >= 0; n--) { var o = e[n], a = i.clientX, h = i.clientY; if (i.touches && i.touches.length && (a = i.touches[0].clientX, h = i.touches[0].clientY), r(o, t, a, h)) { o.dispatchEvent(s(i)); break } } } if ("iframe" === t.nodeName || "IFRAME" === t.nodeName) try { this.target = t.contentDocument } catch (e) { this.target = t } else this.target = t; for (var n = ["mouseup", "mousedown", "click", "touchstart"], o = 0; o < n.length; o++) { var a = n[o]; this.target.addEventListener(a, (function (t) { return i(t) }), !1) } } function s(t) { var e = Object.assign({}, t, { bubbles: !1 }); try { return new MouseEvent(t.type, e) } catch (n) { var i = document.createEvent("MouseEvents"); return i.initMouseEvent(t.type, !1, e.cancelable, e.view, e.detail, e.screenX, e.screenY, e.clientX, e.clientY, e.ctrlKey, e.altKey, e.shiftKey, e.metaKey, e.button, e.relatedTarget), i } } function r(t, e, i, n) { var s = e.getBoundingClientRect(); function r(t, e, i) { var n = t.top - s.top, r = t.left - s.left, o = n + t.height, a = r + t.width; return n <= i && r <= e && o > i && a > e } if (!r(t.getBoundingClientRect(), i, n)) return !1; for (var o = t.getClientRects(), a = 0, h = o.length; a < h; a++)if (r(o[a], i, n)) return !0; return !1 } Object.defineProperty(e, "__esModule", { value: !0 }), e.proxyMouse = n, e.clone = s, e.default = { proxyMouse: n } }, function (t, e, i) { var n = i(26); t.exports = function () { return n.Date.now() } }, function (t, e, i) { (function (e) { var i = "object" == typeof e && e && e.Object === Object && e; t.exports = i }).call(this, i(17)) }, function (t, e, i) { var n = i(54), s = i(19), r = i(56), o = /^[-+]0x[0-9a-f]+$/i, a = /^0b[01]+$/i, h = /^0o[0-7]+$/i, l = parseInt; t.exports = function (t) { if ("number" == typeof t) return t; if (r(t)) return NaN; if (s(t)) { var e = "function" == typeof t.valueOf ? t.valueOf() : t; t = s(e) ? e + "" : e } if ("string" != typeof t) return 0 === t ? t : +t; t = n(t); var i = a.test(t); return i || h.test(t) ? l(t.slice(2), i ? 2 : 8) : o.test(t) ? NaN : +t } }, function (t, e, i) { var n = i(55), s = /^\s+/; t.exports = function (t) { return t ? t.slice(0, n(t) + 1).replace(s, "") : t } }, function (t, e) { var i = /\s/; t.exports = function (t) { for (var e = t.length; e-- && i.test(t.charAt(e));); return e } }, function (t, e, i) { var n = i(57), s = i(60); t.exports = function (t) { return "symbol" == typeof t || s(t) && "[object Symbol]" == n(t) } }, function (t, e, i) { var n = i(27), s = i(58), r = i(59), o = n ? n.toStringTag : void 0; t.exports = function (t) { return null == t ? void 0 === t ? "[object Undefined]" : "[object Null]" : o && o in Object(t) ? s(t) : r(t) } }, function (t, e, i) { var n = i(27), s = Object.prototype, r = s.hasOwnProperty, o = s.toString, a = n ? n.toStringTag : void 0; t.exports = function (t) { var e = r.call(t, a), i = t[a]; try { t[a] = void 0; var n = !0 } catch (t) { } var s = o.call(t); return n && (e ? t[a] = i : delete t[a]), s } }, function (t, e) { var i = Object.prototype.toString; t.exports = function (t) { return i.call(t) } }, function (t, e) { t.exports = function (t) { return null != t && "object" == typeof t } }]).default })); \ No newline at end of file +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("JSZip")):"function"==typeof define&&define.amd?define(["JSZip"],e):"object"==typeof exports?exports.ePub=e(require("JSZip")):t.ePub=e(t.JSZip)}(window,(function(t){return function(t){var e={};function i(n){if(e[n])return e[n].exports;var s=e[n]={i:n,l:!1,exports:{}};return t[n].call(s.exports,s,s.exports,i),s.l=!0,s.exports}return i.m=t,i.c=e,i.d=function(t,e,n){i.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},i.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},i.t=function(t,e){if(1&e&&(t=i(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var s in t)i.d(n,s,function(e){return t[e]}.bind(null,s));return n},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p="/dist/",i(i.s=30)}([function(t,e,i){"use strict";i.r(e),i.d(e,"requestAnimationFrame",(function(){return s})),i.d(e,"uuid",(function(){return o})),i.d(e,"documentHeight",(function(){return a})),i.d(e,"isElement",(function(){return h})),i.d(e,"isNumber",(function(){return l})),i.d(e,"isFloat",(function(){return c})),i.d(e,"prefixed",(function(){return u})),i.d(e,"defaults",(function(){return d})),i.d(e,"extend",(function(){return f})),i.d(e,"insert",(function(){return p})),i.d(e,"locationOf",(function(){return g})),i.d(e,"indexOfSorted",(function(){return m})),i.d(e,"bounds",(function(){return v})),i.d(e,"borders",(function(){return y})),i.d(e,"nodeBounds",(function(){return b})),i.d(e,"windowBounds",(function(){return w})),i.d(e,"indexOfNode",(function(){return x})),i.d(e,"indexOfTextNode",(function(){return E})),i.d(e,"indexOfElementNode",(function(){return S})),i.d(e,"isXml",(function(){return N})),i.d(e,"createBlob",(function(){return _})),i.d(e,"createBlobUrl",(function(){return T})),i.d(e,"revokeBlobUrl",(function(){return C})),i.d(e,"createBase64Url",(function(){return O})),i.d(e,"type",(function(){return I})),i.d(e,"parse",(function(){return R})),i.d(e,"qs",(function(){return k})),i.d(e,"qsa",(function(){return A})),i.d(e,"qsp",(function(){return L})),i.d(e,"sprint",(function(){return j})),i.d(e,"treeWalker",(function(){return D})),i.d(e,"walk",(function(){return P})),i.d(e,"blob2base64",(function(){return M})),i.d(e,"defer",(function(){return z})),i.d(e,"querySelectorByType",(function(){return B})),i.d(e,"findChildren",(function(){return q})),i.d(e,"parents",(function(){return F})),i.d(e,"filterChildren",(function(){return U})),i.d(e,"getParentByTagName",(function(){return W})),i.d(e,"RangeObject",(function(){return H}));var n=i(15);const s="undefined"!=typeof window&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame),r="undefined"!=typeof URL?URL:"undefined"!=typeof window?window.URL||window.webkitURL||window.mozURL:void 0;function o(){var t=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var i=(t+16*Math.random())%16|0;return t=Math.floor(t/16),("x"==e?i:7&i|8).toString(16)}))}function a(){return Math.max(document.documentElement.clientHeight,document.body.scrollHeight,document.documentElement.scrollHeight,document.body.offsetHeight,document.documentElement.offsetHeight)}function h(t){return!(!t||1!=t.nodeType)}function l(t){return!isNaN(parseFloat(t))&&isFinite(t)}function c(t){let e=parseFloat(t);return!1!==l(t)&&("string"==typeof t&&t.indexOf(".")>-1||Math.floor(e)!==e)}function u(t){var e=["-webkit-","-webkit-","-moz-","-o-","-ms-"],i=t.toLowerCase();if("undefined"==typeof document||void 0!==document.body.style[i])return t;for(var n=0;n<5;n++)if(void 0!==document.body.style[e[n]+i])return e[n]+i;return t}function d(t){for(var e=1,i=arguments.length;ee?1:t=0?h:h+1:0===r?h:-1===r?g(t,e,i,h,a):g(t,e,i,o,h))}function m(t,e,i,n,s){var r,o=n||0,a=s||e.length,h=parseInt(o+(a-o)/2);return i||(i=function(t,e){return t>e?1:t-1}function _(t,e){return new Blob([t],{type:e})}function T(t,e){var i=_(t,e);return r.createObjectURL(i)}function C(t){return r.revokeObjectURL(t)}function O(t,e){if("string"==typeof t)return"data:"+e+";base64,"+btoa(t)}function I(t){return Object.prototype.toString.call(t).slice(8,-1)}function R(t,e,i){var s;return s="undefined"==typeof DOMParser||i?n.DOMParser:DOMParser,65279===t.charCodeAt(0)&&(t=t.slice(1)),(new s).parseFromString(t,e)}function k(t,e){var i;if(!t)throw new Error("No Element Provided");return void 0!==t.querySelector?t.querySelector(e):(i=t.getElementsByTagName(e)).length?i[0]:void 0}function A(t,e){return void 0!==t.querySelector?t.querySelectorAll(e):t.getElementsByTagName(e)}function L(t,e,i){var n,s;if(void 0!==t.querySelector){for(var r in e+="[",i)e+=r+"~='"+i[r]+"'";return e+="]",t.querySelector(e)}if(n=t.getElementsByTagName(e),s=Array.prototype.slice.call(n,0).filter((function(t){for(var e in i)if(t.getAttribute(e)===i[e])return!0;return!1})))return s[0]}function j(t,e){void 0!==(t.ownerDocument||t).createTreeWalker?D(t,e,NodeFilter.SHOW_TEXT):P(t,(function(t){t&&3===t.nodeType&&e(t)}))}function D(t,e,i){var n=document.createTreeWalker(t,i,null,!1);let s;for(;s=n.nextNode();)e(s)}function P(t,e){if(e(t))return!0;if(t=t.firstChild)do{if(P(t,e))return!0;t=t.nextSibling}while(t)}function M(t){return new Promise((function(e,i){var n=new FileReader;n.readAsDataURL(t),n.onloadend=function(){e(n.result)}}))}function z(){this.resolve=null,this.reject=null,this.id=o(),this.promise=new Promise(((t,e)=>{this.resolve=t,this.reject=e})),Object.freeze(this)}function B(t,e,i){var n;if(void 0!==t.querySelector&&(n=t.querySelector(`${e}[*|type="${i}"]`)),n&&0!==n.length)return n;n=A(t,e);for(var s=0;s1&&(e=n[1],i.terminal=this.parseTerminal(e)),""===s[0]&&s.shift(),i.steps=s.map(function(t){return this.parseStep(t)}.bind(this)),i}parseStep(t){var e,i,n,s,r;if((s=t.match(/\[(.*)\]/))&&s[1]&&(r=s[1]),i=parseInt(t),!isNaN(i))return i%2==0?(e="element",n=i/2-1):(e="text",n=(i-1)/2),{type:e,index:n,id:r||null}}parseTerminal(t){var e,i,s=t.match(/\[(.*)\]/);return s&&s[1]?(e=parseInt(t.split("[")[0]),i=s[1]):e=parseInt(t),Object(n.isNumber)(e)||(e=null),{offset:e,assertion:i}}getChapterComponent(t){return t.split("!")[0]}getPathComponent(t){var e=t.split("!");if(e[1])return e[1].split(",")[0]}getRange(t){var e=t.split(",");return 3===e.length&&[e[1],e[2]]}getCharecterOffsetComponent(t){return t.split(":")[1]||""}joinSteps(t){return t?t.map((function(t){var e="";return"element"===t.type&&(e+=2*(t.index+1)),"text"===t.type&&(e+=1+2*t.index),t.id&&(e+="["+t.id+"]"),e})).join("/"):""}segmentString(t){var e="/";return e+=this.joinSteps(t.steps),t.terminal&&null!=t.terminal.offset&&(e+=":"+t.terminal.offset),t.terminal&&null!=t.terminal.assertion&&(e+="["+t.terminal.assertion+"]"),e}toString(){var t="epubcfi(";return t+=this.segmentString(this.base),t+="!",t+=this.segmentString(this.path),this.range&&this.start&&(t+=",",t+=this.segmentString(this.start)),this.range&&this.end&&(t+=",",t+=this.segmentString(this.end)),t+")"}compare(t,e){var i,n,r,o;if("string"==typeof t&&(t=new s(t)),"string"==typeof e&&(e=new s(e)),t.spinePos>e.spinePos)return 1;if(t.spinePosn[a].index)return 1;if(i[a].indexo.offset?1:r.offset=0&&(s.terminal.offset=e,"text"!=s.steps[s.steps.length-1].type&&s.steps.push({type:"text",index:0})),s}equalStep(t,e){return!(!t||!e)&&t.index===e.index&&t.id===e.id&&t.type===e.type}fromRange(t,e,i){var n={range:!1,base:{},path:{},start:null,end:null},s=t.startContainer,r=t.endContainer,o=t.startOffset,a=t.endOffset,h=!1;if(i&&(h=null!=s.ownerDocument.querySelector("."+i)),"string"==typeof e?(n.base=this.parseComponent(e),n.spinePos=n.base.steps[1].index):"object"==typeof e&&(n.base=e),t.collapsed)h&&(o=this.patchOffset(s,o,i)),n.path=this.pathTo(s,o,i);else{n.range=!0,h&&(o=this.patchOffset(s,o,i)),n.start=this.pathTo(s,o,i),h&&(a=this.patchOffset(r,a,i)),n.end=this.pathTo(r,a,i),n.path={steps:[],terminal:null};var l,c=n.start.steps.length;for(l=0;l0&&3===s&&3===r?o[n]=a:e===s&&(a+=1,o[n]=a),r=s;return o}position(t){var e,i;return 1===t.nodeType?((e=t.parentNode.children)||(e=Object(n.findChildren)(t.parentNode)),i=Array.prototype.indexOf.call(e,t)):i=(e=this.textNodes(t.parentNode)).indexOf(t),i}filteredPosition(t,e){var i,n;return 1===t.nodeType?(i=t.parentNode.children,n=this.normalizedMap(i,1,e)):(i=t.parentNode.childNodes,t.parentNode.classList.contains(e)&&(i=(t=t.parentNode).parentNode.childNodes),n=this.normalizedMap(i,3,e)),n[Array.prototype.indexOf.call(i,t)]}stepsToXpath(t){var e=[".","*"];return t.forEach((function(t){var i=t.index+1;t.id?e.push("*[position()="+i+" and @id='"+t.id+"']"):"text"===t.type?e.push("text()["+i+"]"):e.push("*["+i+"]")})),e.join("/")}stepsToQuerySelector(t){var e=["html"];return t.forEach((function(t){var i=t.index+1;t.id?e.push("#"+t.id):"text"===t.type||e.push("*:nth-child("+i+")")})),e.join(">")}textNodes(t,e){return Array.prototype.slice.call(t.childNodes).filter((function(t){return 3===t.nodeType||!(!e||!t.classList.contains(e))}))}walkToNode(t,e,i){var s,r,o=e||document,a=o.documentElement,h=t.length;for(r=0;r(r=(s=a[t]).textContent.length))){o=1===s.nodeType?s.childNodes[0]:s;break}e-=r}}return{container:o,offset:e}}toRange(t,e){var i,s,r,o,a,h,l,c,u=t||document,d=!!e&&null!=u.querySelector("."+e);if(i=void 0!==u.createRange?u.createRange():new n.RangeObject,this.range?(s=this.start,h=this.path.steps.concat(s.steps),o=this.findNode(h,u,d?e:null),r=this.end,l=this.path.steps.concat(r.steps),a=this.findNode(l,u,d?e:null)):(s=this.path,h=this.path.steps,o=this.findNode(this.path.steps,u,d?e:null)),!o)return console.log("No startContainer found for",this.toString()),null;try{null!=s.terminal.offset?i.setStart(o,s.terminal.offset):i.setStart(o,0)}catch(t){c=this.fixMiss(h,s.terminal.offset,u,d?e:null),i.setStart(c.container,c.offset)}if(a)try{null!=r.terminal.offset?i.setEnd(a,r.terminal.offset):i.setEnd(a,0)}catch(t){c=this.fixMiss(l,this.end.terminal.offset,u,d?e:null),i.setEnd(c.container,c.offset)}return i}isCfiString(t){return"string"==typeof t&&0===t.indexOf("epubcfi(")&&")"===t[t.length-1]}generateChapterComponent(t,e,i){var n="/"+2*(t+1)+"/";return n+=2*(parseInt(e)+1),i&&(n+="["+i+"]"),n}collapse(t){this.range&&(this.range=!1,t?(this.path.steps=this.path.steps.concat(this.start.steps),this.path.terminal=this.start.terminal):(this.path.steps=this.path.steps.concat(this.end.steps),this.path.terminal=this.end.terminal))}}e.a=s},function(t,e,i){"use strict";var n,s,r,o,a,h,l,c=i(31),u=i(45),d=Function.prototype.apply,f=Function.prototype.call,p=Object.create,g=Object.defineProperty,m=Object.defineProperties,v=Object.prototype.hasOwnProperty,y={configurable:!0,enumerable:!1,writable:!0};s=function(t,e){var i,s;return u(e),s=this,n.call(this,t,i=function(){r.call(s,t,i),d.call(e,this,arguments)}),i.__eeOnceListener__=e,this},a={on:n=function(t,e){var i;return u(e),v.call(this,"__ee__")?i=this.__ee__:(i=y.value=p(null),g(this,"__ee__",y),y.value=null),i[t]?"object"==typeof i[t]?i[t].push(e):i[t]=[i[t],e]:i[t]=e,this},once:s,off:r=function(t,e){var i,n,s,r;if(u(e),!v.call(this,"__ee__"))return this;if(!(i=this.__ee__)[t])return this;if("object"==typeof(n=i[t]))for(r=0;s=n[r];++r)s!==e&&s.__eeOnceListener__!==e||(2===n.length?i[t]=n[r?0:1]:n.splice(r,1));else n!==e&&n.__eeOnceListener__!==e||delete i[t];return this},emit:o=function(t){var e,i,n,s,r;if(v.call(this,"__ee__")&&(s=this.__ee__[t]))if("object"==typeof s){for(i=arguments.length,r=new Array(i-1),e=1;e-1&&(t=new URL(t).pathname),e=this.parse(t),this.path=t,this.isDirectory(t)?this.directory=t:this.directory=e.dir+"/",this.filename=e.base,this.extension=e.ext.slice(1)}parse(t){return s.a.parse(t)}isAbsolute(t){return s.a.isAbsolute(t||this.path)}isDirectory(t){return"/"===t.charAt(t.length-1)}resolve(t){return s.a.resolve(this.directory,t)}relative(t){return t&&t.indexOf("://")>-1?t:s.a.relative(this.directory,t)}splitPath(t){return this.splitPathRe.exec(t).slice(1)}toString(){return this.path}}},function(t,e,i){"use strict";var n=i(4),s=i(7),r=i.n(s);e.a=class{constructor(t,e){var i=t.indexOf("://")>-1,s=t;if(this.Url=void 0,this.href=t,this.protocol="",this.origin="",this.hash="",this.hash="",this.search="",this.base=e,!i&&!1!==e&&"string"!=typeof e&&window&&window.location&&(this.base=window.location.href),i||this.base)try{this.base?this.Url=new URL(t,this.base):this.Url=new URL(t),this.href=this.Url.href,this.protocol=this.Url.protocol,this.origin=this.Url.origin,this.hash=this.Url.hash,this.search=this.Url.search,s=this.Url.pathname+(this.Url.search?this.Url.search:"")}catch(t){this.Url=void 0,this.base&&(s=new n.a(this.base).resolve(s))}this.Path=new n.a(s),this.directory=this.Path.directory,this.filename=this.Path.filename,this.extension=this.Path.extension}path(){return this.Path}resolve(t){var e;return t.indexOf("://")>-1?t:(e=r.a.resolve(this.directory,t),this.origin+e)}relative(t){return r.a.relative(t,this.directory)}toString(){return this.href}}},function(t,e,i){"use strict";e.a=class{constructor(t){this.context=t||this,this.hooks=[]}register(){for(var t=0;t2){for(var a=n.length-1,h=a;h>=0&&47!==n.charCodeAt(h);--h);if(h!==a){n=-1===h?"":n.slice(0,h),s=o,r=0;continue}}else if(2===n.length||1===n.length){n="",s=o,r=0;continue}e&&(n.length>0?n+="/..":n="..")}else n.length>0?n+="/"+t.slice(s+1,o):n=t.slice(s+1,o);s=o,r=0}else 46===i&&-1!==r?++r:r=-1}return n}var o={resolve:function(){for(var t,e="",i=!1,o=arguments.length-1;o>=-1&&!i;o--){var a;o>=0?a=arguments[o]:(void 0===t&&(t=n.cwd()),a=t),s(a),0!==a.length&&(e=a+"/"+e,i=47===a.charCodeAt(0))}return e=r(e,!i),i?e.length>0?"/"+e:"/":e.length>0?e:"."},normalize:function(t){if(s(t),0===t.length)return".";var e=47===t.charCodeAt(0),i=47===t.charCodeAt(t.length-1);return 0!==(t=r(t,!e)).length||e||(t="."),t.length>0&&i&&(t+="/"),e?"/"+t:t},isAbsolute:function(t){return s(t),t.length>0&&47===t.charCodeAt(0)},join:function(){if(0===arguments.length)return".";for(var t,e=0;e0&&(void 0===t?t=i:t+="/"+i)}return void 0===t?".":o.normalize(t)},relative:function(t,e){if(s(t),s(e),t===e)return"";if((t=o.resolve(t))===(e=o.resolve(e)))return"";for(var i=1;il){if(47===e.charCodeAt(a+u))return e.slice(a+u+1);if(0===u)return e.slice(a+u)}else r>l&&(47===t.charCodeAt(i+u)?c=u:0===u&&(c=0));break}var d=t.charCodeAt(i+u);if(d!==e.charCodeAt(a+u))break;47===d&&(c=u)}var f="";for(u=i+c+1;u<=n;++u)u!==n&&47!==t.charCodeAt(u)||(0===f.length?f+="..":f+="/..");return f.length>0?f+e.slice(a+c):(a+=c,47===e.charCodeAt(a)&&++a,e.slice(a))},_makeLong:function(t){return t},dirname:function(t){if(s(t),0===t.length)return".";for(var e=t.charCodeAt(0),i=47===e,n=-1,r=!0,o=t.length-1;o>=1;--o)if(47===(e=t.charCodeAt(o))){if(!r){n=o;break}}else r=!1;return-1===n?i?"/":".":i&&1===n?"//":t.slice(0,n)},basename:function(t,e){if(void 0!==e&&"string"!=typeof e)throw new TypeError('"ext" argument must be a string');s(t);var i,n=0,r=-1,o=!0;if(void 0!==e&&e.length>0&&e.length<=t.length){if(e.length===t.length&&e===t)return"";var a=e.length-1,h=-1;for(i=t.length-1;i>=0;--i){var l=t.charCodeAt(i);if(47===l){if(!o){n=i+1;break}}else-1===h&&(o=!1,h=i+1),a>=0&&(l===e.charCodeAt(a)?-1==--a&&(r=i):(a=-1,r=h))}return n===r?r=h:-1===r&&(r=t.length),t.slice(n,r)}for(i=t.length-1;i>=0;--i)if(47===t.charCodeAt(i)){if(!o){n=i+1;break}}else-1===r&&(o=!1,r=i+1);return-1===r?"":t.slice(n,r)},extname:function(t){s(t);for(var e=-1,i=0,n=-1,r=!0,o=0,a=t.length-1;a>=0;--a){var h=t.charCodeAt(a);if(47!==h)-1===n&&(r=!1,n=a+1),46===h?-1===e?e=a:1!==o&&(o=1):-1!==e&&(o=-1);else if(!r){i=a+1;break}}return-1===e||-1===n||0===o||1===o&&e===n-1&&e===i+1?"":t.slice(e,n)},format:function(t){if(null===t||"object"!=typeof t)throw new TypeError('Parameter "pathObject" must be an object, not '+typeof t);return function(t,e){var i=e.dir||e.root,n=e.base||(e.name||"")+(e.ext||"");return i?i===e.root?i+n:i+"/"+n:n}(0,t)},parse:function(t){s(t);var e={root:"",dir:"",base:"",ext:"",name:""};if(0===t.length)return e;var i,n=t.charCodeAt(0),r=47===n;r?(e.root="/",i=1):i=0;for(var o=-1,a=0,h=-1,l=!0,c=t.length-1,u=0;c>=i;--c)if(47!==(n=t.charCodeAt(c)))-1===h&&(l=!1,h=c+1),46===n?-1===o?o=c:1!==u&&(u=1):-1!==o&&(u=-1);else if(!l){a=c+1;break}return-1===o||-1===h||0===u||1===u&&o===h-1&&o===a+1?-1!==h&&(e.base=e.name=0===a&&r?t.slice(1,h):t.slice(a,h)):(0===a&&r?(e.name=t.slice(1,o),e.base=t.slice(1,h)):(e.name=t.slice(a,o),e.base=t.slice(a,h)),e.ext=t.slice(o,h)),a>0?e.dir=t.slice(0,a-1):r&&(e.dir="/"),e},sep:"/",delimiter:":",posix:null};t.exports=o},function(t,e,i){"use strict";i.d(e,"a",(function(){return r})),i.d(e,"b",(function(){return o})),i.d(e,"d",(function(){return a})),i.d(e,"c",(function(){return h})),i.d(e,"e",(function(){return l}));var n=i(0),s=i(5);function r(t,e){var i,s,r=e.url,o=r.indexOf("://")>-1;t&&(s=Object(n.qs)(t,"head"),(i=Object(n.qs)(s,"base"))||(i=t.createElement("base"),s.insertBefore(i,s.firstChild)),!o&&window&&window.location&&(r=window.location.origin+r),i.setAttribute("href",r))}function o(t,e){var i,s,r=e.canonical;t&&(i=Object(n.qs)(t,"head"),(s=Object(n.qs)(i,"link[rel='canonical']"))?s.setAttribute("href",r):((s=t.createElement("link")).setAttribute("rel","canonical"),s.setAttribute("href",r),i.appendChild(s)))}function a(t,e){var i,s,r=e.idref;t&&(i=Object(n.qs)(t,"head"),(s=Object(n.qs)(i,"link[property='dc.identifier']"))?s.setAttribute("content",r):((s=t.createElement("meta")).setAttribute("name","dc.identifier"),s.setAttribute("content",r),i.appendChild(s)))}function h(t,e){var i=t.querySelectorAll("a[href]");if(i.length)for(var r=Object(n.qs)(t.ownerDocument,"base"),o=r?r.getAttribute("href"):void 0,a=function(t){var i=t.getAttribute("href");if(0!==i.indexOf("mailto:"))if(i.indexOf("://")>-1)t.setAttribute("target","_blank");else{var n;try{n=new s.a(i,o)}catch(t){}t.onclick=function(){return n&&n.hash?e(n.Path.path+n.hash):e(n?n.Path.path:i),!1}}}.bind(this),h=0;h{this._q.length?this.dequeue().then(function(){this.run()}.bind(this)):(this.defered.resolve(),this.running=void 0)})),1==this.paused&&(this.paused=!1),this.defered.promise}flush(){return this.running?this.running:this._q.length?(this.running=this.dequeue().then(function(){return this.running=void 0,this.flush()}.bind(this)),this.running):void 0}clear(){this._q=[]}length(){return this._q.length}pause(){this.paused=!0}stop(){this._q=[],this.running=!1,this.paused=!0}}},function(t,e,i){"use strict";var n=i(3),s=i.n(n),r=i(0),o=i(11),a=i(9),h=i(28),l=i.n(h),c=class{constructor(t){this.settings=t||{},this.id="epubjs-container-"+Object(r.uuid)(),this.container=this.create(this.settings),this.settings.hidden&&(this.wrapper=this.wrap(this.container))}create(t){let e=t.height,i=t.width,n=t.overflow||!1,s=t.axis||"vertical",o=t.direction;Object(r.extend)(this.settings,t),t.height&&Object(r.isNumber)(t.height)&&(e=t.height+"px"),t.width&&Object(r.isNumber)(t.width)&&(i=t.width+"px");let a=document.createElement("div");return a.id=this.id,a.classList.add("epub-container"),a.style.wordSpacing="0",a.style.lineHeight="0",a.style.verticalAlign="top",a.style.position="relative","horizontal"===s&&(a.style.display="flex",a.style.flexDirection="row",a.style.flexWrap="nowrap"),i&&(a.style.width=i),e&&(a.style.height=e),n&&("scroll"===n&&"vertical"===s?(a.style["overflow-y"]=n,a.style["overflow-x"]="hidden"):"scroll"===n&&"horizontal"===s?(a.style["overflow-y"]="hidden",a.style["overflow-x"]=n):a.style.overflow=n),o&&(a.dir=o,a.style.direction=o),o&&this.settings.fullsize&&(document.body.style.direction=o),a}wrap(t){var e=document.createElement("div");return e.style.visibility="hidden",e.style.overflow="hidden",e.style.width="0",e.style.height="0",e.appendChild(t),e}getElement(t){var e;if(Object(r.isElement)(t)?e=t:"string"==typeof t&&(e=document.getElementById(t)),!e)throw new Error("Not an Element");return e}attachTo(t){var e,i=this.getElement(t);if(i)return e=this.settings.hidden?this.wrapper:this.container,i.appendChild(e),this.element=i,i}getContainer(){return this.container}onResize(t){Object(r.isNumber)(this.settings.width)&&Object(r.isNumber)(this.settings.height)||(this.resizeFunc=l()(t,50),window.addEventListener("resize",this.resizeFunc,!1))}onOrientationChange(t){this.orientationChangeFunc=t,window.addEventListener("orientationchange",this.orientationChangeFunc,!1)}size(t,e){var i;let n=t||this.settings.width,s=e||this.settings.height;null===t?(i=this.element.getBoundingClientRect()).width&&(t=Math.floor(i.width),this.container.style.width=t+"px"):Object(r.isNumber)(t)?this.container.style.width=t+"px":this.container.style.width=t,null===e?(i=i||this.element.getBoundingClientRect()).height&&(e=i.height,this.container.style.height=e+"px"):Object(r.isNumber)(e)?this.container.style.height=e+"px":this.container.style.height=e,Object(r.isNumber)(t)||(t=this.container.clientWidth),Object(r.isNumber)(e)||(e=this.container.clientHeight),this.containerStyles=window.getComputedStyle(this.container),this.containerPadding={left:parseFloat(this.containerStyles["padding-left"])||0,right:parseFloat(this.containerStyles["padding-right"])||0,top:parseFloat(this.containerStyles["padding-top"])||0,bottom:parseFloat(this.containerStyles["padding-bottom"])||0};let o=Object(r.windowBounds)(),a=window.getComputedStyle(document.body),h=parseFloat(a["padding-left"])||0,l=parseFloat(a["padding-right"])||0,c=parseFloat(a["padding-top"])||0,u=parseFloat(a["padding-bottom"])||0;return n||(t=o.width-h-l),(this.settings.fullsize&&!s||!s)&&(e=o.height-c-u),{width:t-this.containerPadding.left-this.containerPadding.right,height:e-this.containerPadding.top-this.containerPadding.bottom}}bounds(){let t;return"visible"!==this.container.style.overflow&&(t=this.container&&this.container.getBoundingClientRect()),t&&t.width&&t.height?t:Object(r.windowBounds)()}getSheet(){var t=document.createElement("style");return t.appendChild(document.createTextNode("")),document.head.appendChild(t),t.sheet}addStyleRules(t,e){var i="#"+this.id+" ",n="";this.sheet||(this.sheet=this.getSheet()),e.forEach((function(t){for(var e in t)t.hasOwnProperty(e)&&(n+=e+":"+t[e]+";")})),this.sheet.insertRule(i+t+" {"+n+"}",0)}axis(t){"horizontal"===t?(this.container.style.display="flex",this.container.style.flexDirection="row",this.container.style.flexWrap="nowrap"):this.container.style.display="block",this.settings.axis=t}direction(t){this.container&&(this.container.dir=t,this.container.style.direction=t),this.settings.fullsize&&(document.body.style.direction=t),this.settings.dir=t}overflow(t){this.container&&("scroll"===t&&"vertical"===this.settings.axis?(this.container.style["overflow-y"]=t,this.container.style["overflow-x"]="hidden"):"scroll"===t&&"horizontal"===this.settings.axis?(this.container.style["overflow-y"]="hidden",this.container.style["overflow-x"]=t):this.container.style.overflow=t),this.settings.overflow=t}destroy(){this.element&&(this.settings.hidden?this.wrapper:this.container,this.element.contains(this.container)&&this.element.removeChild(this.container),window.removeEventListener("resize",this.resizeFunc),window.removeEventListener("orientationChange",this.orientationChangeFunc))}},u=class{constructor(t){this.container=t,this._views=[],this.length=0,this.hidden=!1}all(){return this._views}first(){return this._views[0]}last(){return this._views[this._views.length-1]}indexOf(t){return this._views.indexOf(t)}slice(){return this._views.slice.apply(this._views,arguments)}get(t){return this._views[t]}append(t){return this._views.push(t),this.container&&this.container.appendChild(t.element),this.length++,t}prepend(t){return this._views.unshift(t),this.container&&this.container.insertBefore(t.element,this.container.firstChild),this.length++,t}insert(t,e){return this._views.splice(e,0,t),this.container&&(e-1&&this._views.splice(e,1),this.destroy(t),this.length--}destroy(t){t.displayed&&t.destroy(),this.container&&this.container.removeChild(t.element),t=null}forEach(){return this._views.forEach.apply(this._views,arguments)}clear(){var t,e=this.length;if(this.length){for(var i=0;i0?t="default":"undefined"!=typeof Element&&Element.prototype.scrollIntoView?(e.children[0].children[1].scrollIntoView(),e.scrollLeft<0&&(t="negative")):(e.scrollLeft=1,0===e.scrollLeft&&(t="negative")),document.body.removeChild(e),t}(),this.stage=new c({width:e.width,height:e.height,overflow:this.overflow,hidden:this.settings.hidden,axis:this.settings.axis,fullsize:this.settings.fullsize,direction:this.settings.direction}),this.stage.attachTo(t),this.container=this.stage.getContainer(),this.views=new u(this.container),this._bounds=this.bounds(),this._stageSize=this.stage.size(),this.viewSettings.width=this._stageSize.width,this.viewSettings.height=this._stageSize.height,this.stage.onResize(this.onResized.bind(this)),this.stage.onOrientationChange(this.onOrientationChange.bind(this)),this.addEventListeners(),this.layout&&this.updateLayout(),this.rendered=!0}addEventListeners(){var t;window.addEventListener("unload",function(t){this.destroy()}.bind(this)),t=this.settings.fullsize?window:this.container,this._onScroll=this.onScroll.bind(this),t.addEventListener("scroll",this._onScroll)}removeEventListeners(){(this.settings.fullsize?window:this.container).removeEventListener("scroll",this._onScroll),this._onScroll=void 0}destroy(){clearTimeout(this.orientationTimeout),clearTimeout(this.resizeTimeout),clearTimeout(this.afterScrolled),this.clear(),this.removeEventListeners(),this.stage.destroy(),this.rendered=!1}onOrientationChange(t){let{orientation:e}=window;this.optsSettings.resizeOnOrientationChange&&this.resize(),clearTimeout(this.orientationTimeout),this.orientationTimeout=setTimeout(function(){this.orientationTimeout=void 0,this.optsSettings.resizeOnOrientationChange&&this.resize(),this.emit(d.c.MANAGERS.ORIENTATION_CHANGE,e)}.bind(this),500)}onResized(t){this.resize()}resize(t,e,i){let n=this.stage.size(t,e);this.winBounds=Object(r.windowBounds)(),this.orientationTimeout&&this.winBounds.width===this.winBounds.height?this._stageSize=void 0:this._stageSize&&this._stageSize.width===n.width&&this._stageSize.height===n.height||(this._stageSize=n,this._bounds=this.bounds(),this.clear(),this.viewSettings.width=this._stageSize.width,this.viewSettings.height=this._stageSize.height,this.updateLayout(),this.emit(d.c.MANAGERS.RESIZED,{width:this._stageSize.width,height:this._stageSize.height},i))}createView(t,e){return new this.View(t,Object(r.extend)(this.viewSettings,{forceRight:e}))}handleNextPrePaginated(t,e,i){let n;if("pre-paginated"===this.layout.name&&this.layout.divisor>1){if(t||0===e.index)return;if(n=e.next(),n&&!n.properties.includes("page-spread-left"))return i.call(this,n)}}display(t,e){var i=new r.defer,n=i.promise;(e===t.href||Object(r.isNumber)(e))&&(e=void 0);var s=this.views.find(t);if(s&&t&&"pre-paginated"!==this.layout.name){let t=s.offset();if("ltr"===this.settings.direction)this.scrollTo(t.left,t.top,!0);else{let e=s.width();this.scrollTo(t.left+e,t.top,!0)}if(e){let t=s.locationOf(e),i=s.width();this.moveTo(t,i)}return i.resolve(),n}this.clear();let o=!1;return"pre-paginated"===this.layout.name&&2===this.layout.divisor&&t.properties.includes("page-spread-right")&&(o=!0),this.add(t,o).then(function(t){if(e){let i=t.locationOf(e),n=t.width();this.moveTo(i,n)}}.bind(this),(t=>{i.reject(t)})).then(function(){return this.handleNextPrePaginated(o,t,this.add)}.bind(this)).then(function(){this.views.show(),i.resolve()}.bind(this)),n}afterDisplayed(t){this.emit(d.c.MANAGERS.ADDED,t)}afterResized(t){this.emit(d.c.MANAGERS.RESIZE,t.section)}moveTo(t,e){var i=0,n=0;this.isPaginated?((i=Math.floor(t.left/this.layout.delta)*this.layout.delta)+this.layout.delta>this.container.scrollWidth&&(i=this.container.scrollWidth-this.layout.delta),(n=Math.floor(t.top/this.layout.delta)*this.layout.delta)+this.layout.delta>this.container.scrollHeight&&(n=this.container.scrollHeight-this.layout.delta)):n=t.top,"rtl"===this.settings.direction&&(i+=this.layout.delta,i-=e),this.scrollTo(i,n,!0)}add(t,e){var i=this.createView(t,e);return this.views.append(i),i.onDisplayed=this.afterDisplayed.bind(this),i.onResize=this.afterResized.bind(this),i.on(d.c.VIEWS.AXIS,(t=>{this.updateAxis(t)})),i.on(d.c.VIEWS.WRITING_MODE,(t=>{this.updateWritingMode(t)})),i.display(this.request)}append(t,e){var i=this.createView(t,e);return this.views.append(i),i.onDisplayed=this.afterDisplayed.bind(this),i.onResize=this.afterResized.bind(this),i.on(d.c.VIEWS.AXIS,(t=>{this.updateAxis(t)})),i.on(d.c.VIEWS.WRITING_MODE,(t=>{this.updateWritingMode(t)})),i.display(this.request)}prepend(t,e){var i=this.createView(t,e);return i.on(d.c.VIEWS.RESIZED,(t=>{this.counter(t)})),this.views.prepend(i),i.onDisplayed=this.afterDisplayed.bind(this),i.onResize=this.afterResized.bind(this),i.on(d.c.VIEWS.AXIS,(t=>{this.updateAxis(t)})),i.on(d.c.VIEWS.WRITING_MODE,(t=>{this.updateWritingMode(t)})),i.display(this.request)}counter(t){"vertical"===this.settings.axis?this.scrollBy(0,t.heightDelta,!0):this.scrollBy(t.widthDelta,0,!0)}next(){var t;let e=this.settings.direction;if(this.views.length&&(!this.isPaginated||"horizontal"!==this.settings.axis||e&&"ltr"!==e?this.isPaginated&&"horizontal"===this.settings.axis&&"rtl"===e?(this.scrollLeft=this.container.scrollLeft,"default"===this.settings.rtlScrollType?this.container.scrollLeft>0?this.scrollBy(this.layout.delta,0,!0):t=this.views.last().section.next():this.container.scrollLeft+-1*this.layout.delta>-1*this.container.scrollWidth?this.scrollBy(this.layout.delta,0,!0):t=this.views.last().section.next()):this.isPaginated&&"vertical"===this.settings.axis?(this.scrollTop=this.container.scrollTop,this.container.scrollTop+this.container.offsetHeightt)).then(function(){this.isPaginated||"horizontal"!==this.settings.axis||"rtl"!==this.settings.direction||"default"!==this.settings.rtlScrollType||this.scrollTo(this.container.scrollWidth,0,!0),this.views.show()}.bind(this))}}prev(){var t;let e=this.settings.direction;if(this.views.length&&(!this.isPaginated||"horizontal"!==this.settings.axis||e&&"ltr"!==e?this.isPaginated&&"horizontal"===this.settings.axis&&"rtl"===e?(this.scrollLeft=this.container.scrollLeft,"default"===this.settings.rtlScrollType?this.container.scrollLeft+this.container.offsetWidth0?this.scrollBy(0,-this.layout.height,!0):t=this.views.first().section.prev()):t=this.views.first().section.prev():(this.scrollLeft=this.container.scrollLeft,this.container.scrollLeft>0?this.scrollBy(-this.layout.delta,0,!0):t=this.views.first().section.prev()),t)){this.clear(),this.updateLayout();let e=!1;return"pre-paginated"===this.layout.name&&2===this.layout.divisor&&"object"!=typeof t.prev()&&(e=!0),this.prepend(t,e).then(function(){var e;if("pre-paginated"===this.layout.name&&this.layout.divisor>1&&(e=t.prev()))return this.prepend(e)}.bind(this),(t=>t)).then(function(){this.isPaginated&&"horizontal"===this.settings.axis&&("rtl"===this.settings.direction?"default"===this.settings.rtlScrollType?this.scrollTo(0,0,!0):this.scrollTo(-1*this.container.scrollWidth+this.layout.delta,0,!0):this.scrollTo(this.container.scrollWidth-this.layout.delta,0,!0)),this.views.show()}.bind(this))}}current(){var t=this.visible();return t.length?t[t.length-1]:null}clear(){this.views&&(this.views.hide(),this.scrollTo(0,0,!0),this.views.clear())}currentLocation(){return this.updateLayout(),this.isPaginated&&"horizontal"===this.settings.axis?this.location=this.paginatedLocation():this.location=this.scrolledLocation(),this.location}scrolledLocation(){let t=this.visible(),e=this.container.getBoundingClientRect(),i=e.height{let o,a,h,l,{index:c,href:u}=t.section,d=t.position(),f=t.width(),p=t.height();s?(o=r+e.top-d.top+0,a=o+i-0,l=this.layout.count(p,i).pages,h=i):(o=r+e.left-d.left+0,a=o+n-0,l=this.layout.count(f,n).pages,h=n);let g=Math.ceil(o/h),m=[],v=Math.ceil(a/h);if("rtl"===this.settings.direction&&!s){let t=g;g=l-v,v=l-t}m=[];for(var y=g;y<=v;y++){let t=y+1;m.push(t)}return{index:c,href:u,pages:m,totalPages:l,mapping:this.mapping.page(t.contents,t.section.cfiBase,o,a)}}))}paginatedLocation(){let t=this.visible(),e=this.container.getBoundingClientRect(),i=0,n=0;return this.settings.fullsize&&(i=window.scrollX),t.map((t=>{let s,r,o,a,{index:h,href:l}=t.section,c=t.position(),u=t.width();"rtl"===this.settings.direction?(s=e.right-i,a=Math.min(Math.abs(s-c.left),this.layout.width)-n,o=c.width-(c.right-s)-n,r=o-a):(s=e.left+i,a=Math.min(c.right-s,this.layout.width)-n,r=s-c.left+n,o=r+a),n+=a;let d=this.mapping.page(t.contents,t.section.cfiBase,r,o),f=this.layout.count(u).pages,p=Math.floor(r/this.layout.pageWidth),g=[],m=Math.floor(o/this.layout.pageWidth);if(p<0&&(p=0,m+=1),"rtl"===this.settings.direction){let t=p;p=f-m,m=f-t}for(var v=p+1;v<=m;v++){let t=v;g.push(t)}return{index:h,href:l,pages:g,totalPages:f,mapping:d}}))}isVisible(t,e,i,n){var s=t.position(),r=n||this.bounds();return"horizontal"===this.settings.axis&&s.right>r.left-e&&s.leftr.top-e&&s.top0&&"pre-paginated"===this.layout.name&&this.display(this.views.first().section)}updateLayout(){this.stage&&(this._stageSize=this.stage.size(),this.isPaginated?(this.layout.calculate(this._stageSize.width,this._stageSize.height,this.settings.gap),this.settings.offset=this.layout.delta/this.layout.divisor):this.layout.calculate(this._stageSize.width,this._stageSize.height),this.viewSettings.width=this.layout.width,this.viewSettings.height=this.layout.height,this.setLayout(this.layout))}setLayout(t){this.viewSettings.layout=t,this.mapping=new o.a(t.props,this.settings.direction,this.settings.axis),this.views&&this.views.forEach((function(e){e&&e.setLayout(t)}))}updateWritingMode(t){this.writingMode=t}updateAxis(t,e){(e||t!==this.settings.axis)&&(this.settings.axis=t,this.stage&&this.stage.axis(t),this.viewSettings.axis=t,this.mapping&&(this.mapping=new o.a(this.layout.props,this.settings.direction,this.settings.axis)),this.layout&&("vertical"===t?this.layout.spread("none"):this.layout.spread(this.layout.settings.spread)))}updateFlow(t,e="auto"){let i="paginated"===t||"auto"===t;this.isPaginated=i,"scrolled-doc"===t||"scrolled-continuous"===t||"scrolled"===t?this.updateAxis("vertical"):this.updateAxis("horizontal"),this.viewSettings.flow=t,this.settings.overflow?this.overflow=this.settings.overflow:this.overflow=i?"hidden":e,this.stage&&this.stage.overflow(this.overflow),this.updateLayout()}getContents(){var t=[];return this.views?(this.views.forEach((function(e){const i=e&&e.contents;i&&t.push(i)})),t):t}direction(t="ltr"){this.settings.direction=t,this.stage&&this.stage.direction(t),this.viewSettings.direction=t,this.updateLayout()}isRendered(){return this.rendered}}s()(f.prototype),e.a=f},function(t,e,i){"use strict";var n=i(2),s=i(0);e.a=class{constructor(t,e,i,n=!1){this.layout=t,this.horizontal="horizontal"===i,this.direction=e||"ltr",this._dev=n}section(t){var e=this.findRanges(t);return this.rangeListToCfiList(t.section.cfiBase,e)}page(t,e,i,s){var r,o=!(!t||!t.document)&&t.document.body;if(o){if(r=this.rangePairToCfiPair(e,{start:this.findStart(o,i,s),end:this.findEnd(o,i,s)}),!0===this._dev){let e=t.document,i=new n.a(r.start).toRange(e),s=new n.a(r.end).toRange(e),o=e.defaultView.getSelection(),a=e.createRange();o.removeAllRanges(),a.setStart(i.startContainer,i.startOffset),a.setEnd(s.endContainer,s.endOffset),o.addRange(a)}return r}}walk(t,e){if(!t||t.nodeType!==Node.TEXT_NODE){var i=function(t){return t.data.trim().length>0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},n=i;n.acceptNode=i;for(var s,r,o=document.createTreeWalker(t,NodeFilter.SHOW_TEXT,n,!1);(s=o.nextNode())&&!(r=e(s)););return r}}findRanges(t){for(var e,i,n=[],s=t.contents.scrollWidth(),r=Math.ceil(s/this.layout.spreadWidth)*this.layout.divisor,o=this.layout.columnWidth,a=this.layout.gap,h=0;h{var n,r,h,l,c;if(c=Object(s.nodeBounds)(t),this.horizontal&&"ltr"===this.direction){if(n=this.horizontal?c.left:c.top,r=this.horizontal?c.right:c.bottom,n>=e&&n<=i)return t;if(r>e)return t;a=t,o.push(t)}else if(this.horizontal&&"rtl"===this.direction){if(n=c.left,(r=c.right)<=i&&r>=e)return t;if(n=e&&h<=i)return t;if(l>e)return t;a=t,o.push(t)}})))return this.findTextStartRange(r,e,i);return this.findTextStartRange(a,e,i)}findEnd(t,e,i){for(var n,r,o=[t],a=t;o.length;)if(n=o.shift(),r=this.walk(n,(t=>{var n,r,h,l,c;if(c=Object(s.nodeBounds)(t),this.horizontal&&"ltr"===this.direction){if(n=Math.round(c.left),r=Math.round(c.right),n>i&&a)return a;if(r>i)return t;a=t,o.push(t)}else if(this.horizontal&&"rtl"===this.direction){if(n=Math.round(this.horizontal?c.left:c.top),(r=Math.round(this.horizontal?c.right:c.bottom))i&&a)return a;if(l>i)return t;a=t,o.push(t)}})))return this.findTextEndRange(r,e,i);return this.findTextEndRange(a,e,i)}findTextStartRange(t,e,i){for(var n,s,r=this.splitTextNodeIntoRanges(t),o=0;o=e)return n}else if(this.horizontal&&"rtl"===this.direction){if(s.right<=i)return n}else if(s.top>=e)return n;return r[0]}findTextEndRange(t,e,i){for(var n,s,r,o,a,h,l,c=this.splitTextNodeIntoRanges(t),u=0;ui&&n)return n;if(a>i)return s}else if(this.horizontal&&"rtl"===this.direction){if(o=r.left,(a=r.right)i&&n)return n;if(l>i)return s}n=s}return c[c.length-1]}splitTextNodeIntoRanges(t,e){var i,n=[],s=(t.textContent||"").trim(),r=t.ownerDocument,o=e||" ",a=s.indexOf(o);if(-1===a||t.nodeType!=Node.TEXT_NODE)return(i=r.createRange()).selectNodeContents(t),[i];for((i=r.createRange()).setStart(t,0),i.setEnd(t,a),n.push(i),i=!1;-1!=a;)(a=s.indexOf(o,a+1))>0&&(i&&(i.setEnd(t,a),n.push(i)),(i=r.createRange()).setStart(t,a+1));return i&&(i.setEnd(t,s.length),n.push(i)),n}rangePairToCfiPair(t,e){var i=e.start,s=e.end;return i.collapse(!0),s.collapse(!1),{start:new n.a(i,t).toString(),end:new n.a(s,t).toString()}}rangeListToCfiList(t,e){for(var i,n=[],s=0;s{"visible"===document.visibilityState&&!1===this.active?(this.active=!0,this.resizeListeners()):(this.active=!1,clearTimeout(this.expanding))}))}transitionListeners(){let t=this.content;t.style.transitionProperty="font, font-size, font-size-adjust, font-stretch, font-variation-settings, font-weight, width, height",t.style.transitionDuration="0.001ms",t.style.transitionTimingFunction="linear",t.style.transitionDelay="0",this._resizeCheck=this.resizeCheck.bind(this),this.document.addEventListener("transitionend",this._resizeCheck)}mediaQueryListeners(){for(var t=this.document.styleSheets,e=function(t){t.matches&&!this._expanding&&setTimeout(this.expand.bind(this),1)}.bind(this),i=0;i{requestAnimationFrame(this.resizeCheck.bind(this))})),this.observer.observe(this.document.documentElement)}mutationObservers(){this.observer=new MutationObserver((t=>{this.resizeCheck()})),this.observer.observe(this.document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})}imageLoadListeners(){for(var t,e=this.document.querySelectorAll("img"),i=0;i0?(n.setStart(e,s.startOffset-2),n.setEnd(e,s.startOffset),i=n.getBoundingClientRect()):i=e.parentNode.getBoundingClientRect()}catch(t){console.error(t,t.stack)}}else i=s.getBoundingClientRect()}}else if("string"==typeof t&&t.indexOf("#")>-1){let e=t.substring(t.indexOf("#")+1),n=this.document.getElementById(e);if(n)if(d){let t=new Range;t.selectNode(n),i=t.getBoundingClientRect()}else i=n.getBoundingClientRect()}return i&&(n.left=i.left,n.top=i.top),n}addStylesheet(t){return new Promise(function(e,i){var n,s=!1;this.document?(n=this.document.querySelector("link[href='"+t+"']"))?e(!0):((n=this.document.createElement("link")).type="text/css",n.rel="stylesheet",n.href=t,n.onload=n.onreadystatechange=function(){s||this.readyState&&"complete"!=this.readyState||(s=!0,setTimeout((()=>{e(!0)}),1))},this.document.head.appendChild(n)):e(!1)}.bind(this))}_getStylesheetNode(t){var e;return t="epubjs-inserted-css-"+(t||""),!!this.document&&((e=this.document.getElementById(t))||((e=this.document.createElement("style")).id=t,this.document.head.appendChild(e)),e)}addStylesheetCss(t,e){return!(!this.document||!t||(this._getStylesheetNode(e).innerHTML=t,0))}addStylesheetRules(t,e){var i;if(this.document&&t&&0!==t.length)if(i=this._getStylesheetNode(e).sheet,"[object Array]"===Object.prototype.toString.call(t))for(var n=0,s=t.length;n{const n=t[e];if(Array.isArray(n))n.forEach((t=>{const n=Object.keys(t).map((e=>`${e}:${t[e]}`)).join(";");i.insertRule(`${e}{${n}}`,i.cssRules.length)}));else{const t=Object.keys(n).map((t=>`${t}:${n[t]}`)).join(";");i.insertRule(`${e}{${t}}`,i.cssRules.length)}}))}addScript(t){return new Promise(function(e,i){var n,s=!1;this.document?((n=this.document.createElement("script")).type="text/javascript",n.async=!0,n.src=t,n.onload=n.onreadystatechange=function(){s||this.readyState&&"complete"!=this.readyState||(s=!0,setTimeout((function(){e(!0)}),1))},this.document.head.appendChild(n)):e(!1)}.bind(this))}addClass(t){var e;this.document&&(e=this.content||this.document.body)&&e.classList.add(t)}removeClass(t){var e;this.document&&(e=this.content||this.document.body)&&e.classList.remove(t)}addEventListeners(){this.document&&(this._triggerEvent=this.triggerEvent.bind(this),l.a.forEach((function(t){this.document.addEventListener(t,this._triggerEvent,{passive:!0})}),this))}removeEventListeners(){this.document&&(l.a.forEach((function(t){this.document.removeEventListener(t,this._triggerEvent,{passive:!0})}),this),this._triggerEvent=void 0)}triggerEvent(t){this.emit(t.type,t)}addSelectionListeners(){this.document&&(this._onSelectionChange=this.onSelectionChange.bind(this),this.document.addEventListener("selectionchange",this._onSelectionChange,{passive:!0}))}removeSelectionListeners(){this.document&&(this.document.removeEventListener("selectionchange",this._onSelectionChange,{passive:!0}),this._onSelectionChange=void 0)}onSelectionChange(t){this.selectionEndTimeout&&clearTimeout(this.selectionEndTimeout),this.selectionEndTimeout=setTimeout(function(){var t=this.window.getSelection();this.triggerSelectedEvent(t)}.bind(this),250)}triggerSelectedEvent(t){var e,i;t&&t.rangeCount>0&&((e=t.getRangeAt(0)).collapsed||(i=new o.a(e,this.cfiBase).toString(),this.emit(l.c.CONTENTS.SELECTED,i),this.emit(l.c.CONTENTS.SELECTED_RANGE,e)))}range(t,e){return new o.a(t).toRange(this.document,e)}cfiFromRange(t,e){return new o.a(t,this.cfiBase,e).toString()}cfiFromNode(t,e){return new o.a(t,this.cfiBase,e).toString()}map(t){return new a.a(t).section()}size(t,e){var i={scale:1,scalable:"no"};this.layoutStyle("scrolling"),t>=0&&(this.width(t),i.width=t,this.css("padding","0 "+t/12+"px")),e>=0&&(this.height(e),i.height=e),this.css("margin","0"),this.css("box-sizing","border-box"),this.viewport(i)}columns(t,e,i,n,s){let o=Object(r.prefixed)("column-axis"),a=Object(r.prefixed)("column-gap"),h=Object(r.prefixed)("column-width"),l=Object(r.prefixed)("column-fill"),c=0===this.writingMode().indexOf("vertical")?"vertical":"horizontal";this.layoutStyle("paginated"),"rtl"===s&&"horizontal"===c&&this.direction(s),this.width(t),this.height(e),this.viewport({width:t,height:e,scale:1,scalable:"no"}),this.css("overflow-y","hidden"),this.css("margin","0",!0),"vertical"===c?(this.css("padding-top",n/2+"px",!0),this.css("padding-bottom",n/2+"px",!0),this.css("padding-left","20px"),this.css("padding-right","20px"),this.css(o,"vertical")):(this.css("padding-top","20px"),this.css("padding-bottom","20px"),this.css("padding-left",n/2+"px",!0),this.css("padding-right",n/2+"px",!0),this.css(o,"horizontal")),this.css("box-sizing","border-box"),this.css("max-width","inherit"),this.css(l,"auto"),this.css(a,n+"px"),this.css(h,i+"px"),this.css("-webkit-line-box-contain","block glyphs replaced")}scaler(t,e,i){var n="scale("+t+")",s="";this.css("transform-origin","top left"),(e>=0||i>=0)&&(s=" translate("+(e||0)+"px, "+(i||0)+"px )"),this.css("transform",n+s)}fit(t,e,i){var n=this.viewport(),s=parseInt(n.width),r=parseInt(n.height),o=t/s,a=e/r,h=o{this.emit(l.c.CONTENTS.LINK_CLICKED,t)}))}writingMode(t){let e=Object(r.prefixed)("writing-mode");return t&&this.documentElement&&(this.documentElement.style[e]=t),this.window.getComputedStyle(this.documentElement)[e]||""}layoutStyle(t){return t&&(this._layoutStyle=t,navigator.epubReadingSystem.layoutStyle=this._layoutStyle),this._layoutStyle||"paginated"}epubReadingSystem(t,e){return navigator.epubReadingSystem={name:t,version:e,layoutStyle:this.layoutStyle(),hasFeature:function(t){switch(t){case"dom-manipulation":case"layout-changes":case"touch-events":case"mouse-events":case"keyboard-events":return!0;default:return!1}}},navigator.epubReadingSystem}destroy(){this.removeListeners()}}s()(f.prototype),e.a=f},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Underline=e.Highlight=e.Mark=e.Pane=void 0;var n=function(){function t(t,e){for(var i=0;i1&&void 0!==arguments[1]?arguments[1]:document.body;l(this,t),this.target=e,this.element=s.default.createElement("svg"),this.marks=[],this.element.style.position="absolute",this.element.setAttribute("pointer-events","none"),r.default.proxyMouse(this.target,this.marks),this.container=i,this.container.appendChild(this.element),this.render()}return n(t,[{key:"addMark",value:function(t){var e=s.default.createElement("g");return this.element.appendChild(e),t.bind(e,this.container),this.marks.push(t),t.render(),t}},{key:"removeMark",value:function(t){var e=this.marks.indexOf(t);if(-1!==e){var i=t.unbind();this.element.removeChild(i),this.marks.splice(e,1)}}},{key:"render",value:function(){var t,e,i,n;!function(t,e){t.style.setProperty("top",e.top+"px","important"),t.style.setProperty("left",e.left+"px","important"),t.style.setProperty("height",e.height+"px","important"),t.style.setProperty("width",e.width+"px","important")}(this.element,(t=this.target,e=this.container,i=e.getBoundingClientRect(),n=t.getBoundingClientRect(),{top:n.top-i.top,left:n.left-i.left,height:t.scrollHeight,width:t.scrollWidth}));var s=!0,r=!1,o=void 0;try{for(var a,h=this.marks[Symbol.iterator]();!(s=(a=h.next()).done);s=!0)a.value.render()}catch(t){r=!0,o=t}finally{try{!s&&h.return&&h.return()}finally{if(r)throw o}}}}]),t}();var c=e.Mark=function(){function t(){l(this,t),this.element=null}return n(t,[{key:"bind",value:function(t,e){this.element=t,this.container=e}},{key:"unbind",value:function(){var t=this.element;return this.element=null,t}},{key:"render",value:function(){}},{key:"dispatchEvent",value:function(t){this.element&&this.element.dispatchEvent(t)}},{key:"getBoundingClientRect",value:function(){return this.element.getBoundingClientRect()}},{key:"getClientRects",value:function(){for(var t=[],e=this.element.firstChild;e;)t.push(e.getBoundingClientRect()),e=e.nextSibling;return t}},{key:"filteredRanges",value:function(){var t=Array.from(this.range.getClientRects());return t.filter((function(e){for(var i=0;i=n.left&&s.top>=n.top&&s.bottom<=n.bottom)return!1}var n,s;return!0}))}}]),t}(),u=e.Highlight=function(t){function e(t,i,n,s){l(this,e);var r=a(this,(e.__proto__||Object.getPrototypeOf(e)).call(this));return r.range=t,r.className=i,r.data=n||{},r.attributes=s||{},r}return h(e,t),n(e,[{key:"bind",value:function(t,i){for(var n in function t(e,i,n){null===e&&(e=Function.prototype);var s=Object.getOwnPropertyDescriptor(e,i);if(void 0===s){var r=Object.getPrototypeOf(e);return null===r?void 0:t(r,i,n)}if("value"in s)return s.value;var o=s.get;return void 0!==o?o.call(n):void 0}(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"bind",this).call(this,t,i),this.data)this.data.hasOwnProperty(n)&&(this.element.dataset[n]=this.data[n]);for(var n in this.attributes)this.attributes.hasOwnProperty(n)&&this.element.setAttribute(n,this.attributes[n]);this.className&&this.element.classList.add(this.className)}},{key:"render",value:function(){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);for(var t=this.element.ownerDocument.createDocumentFragment(),e=this.filteredRanges(),i=this.element.getBoundingClientRect(),n=this.container.getBoundingClientRect(),r=0,o=e.length;r=0&&(this._minSpreadWidth=e),this._spread}calculate(t,e,i){var n,s,r,o,a,h=i||0,l=t,c=e,u=Math.floor(l/12);a=this._spread&&l>=this._minSpreadWidth?2:1,"reflowable"!==this.name||"paginated"!==this._flow||i>=0||(h=u%2==0?u:u-1),"pre-paginated"===this.name&&(h=0),a>1?r=(n=l/a-h)+h:(n=l,r=l),"pre-paginated"===this.name&&a>1&&(l=n),s=n*a+h,o=l,this.width=l,this.height=c,this.spreadWidth=s,this.pageWidth=r,this.delta=o,this.columnWidth=n,this.gap=h,this.divisor=a,this.update({width:l,height:c,spreadWidth:s,pageWidth:r,delta:o,columnWidth:n,gap:h,divisor:a})}format(t,e,i){return"pre-paginated"===this.name?t.fit(this.columnWidth,this.height,e):"paginated"===this._flow?t.columns(this.width,this.height,this.columnWidth,this.gap,this.settings.direction):i&&"horizontal"===i?t.size(null,this.height):t.size(this.width,null)}count(t,e){let i,n;return"pre-paginated"===this.name?(i=1,n=1):"paginated"===this._flow?(e=e||this.delta,i=Math.ceil(t/e),n=i*this.divisor):(e=e||this.height,i=Math.ceil(t/e),n=i),{spreads:i,pages:n}}update(t){if(Object.keys(t).forEach((e=>{this.props[e]===t[e]&&delete t[e]})),Object.keys(t).length>0){let e=Object(r.extend)(this.props,t);this.emit(l.c.LAYOUT.UPDATED,e,t)}}}s()(c.prototype);var u=c,d=i(5),f=class{constructor(t){this.rendition=t,this._themes={default:{rules:{},url:"",serialized:""}},this._overrides={},this._current="default",this._injected=[],this.rendition.hooks.content.register(this.inject.bind(this)),this.rendition.hooks.content.register(this.overrides.bind(this))}register(){if(0!==arguments.length)return 1===arguments.length&&"object"==typeof arguments[0]?this.registerThemes(arguments[0]):1===arguments.length&&"string"==typeof arguments[0]?this.default(arguments[0]):2===arguments.length&&"string"==typeof arguments[1]?this.registerUrl(arguments[0],arguments[1]):2===arguments.length&&"object"==typeof arguments[1]?this.registerRules(arguments[0],arguments[1]):void 0}default(t){if(t)return"string"==typeof t?this.registerUrl("default",t):"object"==typeof t?this.registerRules("default",t):void 0}registerThemes(t){for(var e in t)t.hasOwnProperty(e)&&("string"==typeof t[e]?this.registerUrl(e,t[e]):this.registerRules(e,t[e]))}registerCss(t,e){this._themes[t]={serialized:e},(this._injected[t]||"default"==t)&&this.update(t)}registerUrl(t,e){var i=new d.a(e);this._themes[t]={url:i.toString()},(this._injected[t]||"default"==t)&&this.update(t)}registerRules(t,e){this._themes[t]={rules:e},(this._injected[t]||"default"==t)&&this.update(t)}select(t){var e=this._current;this._current=t,this.update(t),this.rendition.getContents().forEach((i=>{i.removeClass(e),i.addClass(t)}))}update(t){this.rendition.getContents().forEach((e=>{this.add(t,e)}))}inject(t){var e,i=[],n=this._themes;for(var s in n)!n.hasOwnProperty(s)||s!==this._current&&"default"!==s||(((e=n[s]).rules&&Object.keys(e.rules).length>0||e.url&&-1===i.indexOf(e.url))&&this.add(s,t),this._injected.push(s));"default"!=this._current&&t.addClass(this._current)}add(t,e){var i=this._themes[t];i&&e&&(i.url?e.addStylesheet(i.url):i.serialized?(e.addStylesheetCss(i.serialized,t),i.injected=!0):i.rules&&(e.addStylesheetRules(i.rules,t),i.injected=!0))}override(t,e,i){var n=this.rendition.getContents();this._overrides[t]={value:e,priority:!0===i},n.forEach((e=>{e.css(t,this._overrides[t].value,this._overrides[t].priority)}))}removeOverride(t){var e=this.rendition.getContents();delete this._overrides[t],e.forEach((e=>{e.css(t)}))}overrides(t){var e=this._overrides;for(var i in e)e.hasOwnProperty(i)&&t.css(i,e[i].value,e[i].priority)}fontSize(t){this.override("font-size",t)}font(t){this.override("font-family",t,!0)}destroy(){this.rendition=void 0,this._themes=void 0,this._overrides=void 0,this._current=void 0,this._injected=void 0}};i(12);class p{constructor({type:t,cfiRange:e,data:i,sectionIndex:n,cb:s,className:r,styles:o}){this.type=t,this.cfiRange=e,this.data=i,this.sectionIndex=n,this.mark=void 0,this.cb=s,this.className=r,this.styles=o}update(t){this.data=t}attach(t){let e,{cfiRange:i,data:n,type:s,mark:r,cb:o,className:a,styles:h}=this;return"highlight"===s?e=t.highlight(i,n,o,a,h):"underline"===s?e=t.underline(i,n,o,a,h):"mark"===s&&(e=t.mark(i,n,o)),this.mark=e,this.emit(l.c.ANNOTATION.ATTACH,e),e}detach(t){let e,{cfiRange:i,type:n}=this;return t&&("highlight"===n?e=t.unhighlight(i):"underline"===n?e=t.ununderline(i):"mark"===n&&(e=t.unmark(i))),this.mark=void 0,this.emit(l.c.ANNOTATION.DETACH,e),e}text(){}}s()(p.prototype);var g=class{constructor(t){this.rendition=t,this.highlights=[],this.underlines=[],this.marks=[],this._annotations={},this._annotationsBySectionIndex={},this.rendition.hooks.render.register(this.inject.bind(this)),this.rendition.hooks.unloaded.register(this.clear.bind(this))}add(t,e,i,n,s,r){let o=encodeURI(e+t),h=new a.a(e).spinePos,l=new p({type:t,cfiRange:e,data:i,sectionIndex:h,cb:n,className:s,styles:r});return this._annotations[o]=l,h in this._annotationsBySectionIndex?this._annotationsBySectionIndex[h].push(o):this._annotationsBySectionIndex[h]=[o],this.rendition.views().forEach((t=>{l.sectionIndex===t.index&&l.attach(t)})),l}remove(t,e){let i=encodeURI(t+e);if(i in this._annotations){let t=this._annotations[i];if(e&&t.type!==e)return;this.rendition.views().forEach((e=>{this._removeFromAnnotationBySectionIndex(t.sectionIndex,i),t.sectionIndex===e.index&&t.detach(e)})),delete this._annotations[i]}}_removeFromAnnotationBySectionIndex(t,e){this._annotationsBySectionIndex[t]=this._annotationsAt(t).filter((t=>t!==e))}_annotationsAt(t){return this._annotationsBySectionIndex[t]}highlight(t,e,i,n,s){return this.add("highlight",t,e,i,n,s)}underline(t,e,i,n,s){return this.add("underline",t,e,i,n,s)}mark(t,e,i){return this.add("mark",t,e,i)}each(){return this._annotations.forEach.apply(this._annotations,arguments)}inject(t){let e=t.index;e in this._annotationsBySectionIndex&&this._annotationsBySectionIndex[e].forEach((e=>{this._annotations[e].attach(t)}))}clear(t){let e=t.index;e in this._annotationsBySectionIndex&&this._annotationsBySectionIndex[e].forEach((e=>{this._annotations[e].detach(t)}))}show(){}hide(){}},m=i(20),v=i(10),y=i(22);class b{constructor(t,e){this.settings=Object(r.extend)(this.settings||{},{width:null,height:null,ignoreClass:"",manager:"default",view:"iframe",flow:null,layout:null,spread:null,minSpreadWidth:800,stylesheet:null,resizeOnOrientationChange:!0,script:null,snap:!1,defaultDirection:"ltr",allowScriptedContent:!1,allowPopups:!1}),Object(r.extend)(this.settings,e),"object"==typeof this.settings.manager&&(this.manager=this.settings.manager),this.book=t,this.hooks={},this.hooks.display=new o.a(this),this.hooks.serialize=new o.a(this),this.hooks.content=new o.a(this),this.hooks.unloaded=new o.a(this),this.hooks.layout=new o.a(this),this.hooks.render=new o.a(this),this.hooks.show=new o.a(this),this.hooks.content.register(this.handleLinks.bind(this)),this.hooks.content.register(this.passEvents.bind(this)),this.hooks.content.register(this.adjustImages.bind(this)),this.book.spine.hooks.content.register(this.injectIdentifier.bind(this)),this.settings.stylesheet&&this.book.spine.hooks.content.register(this.injectStylesheet.bind(this)),this.settings.script&&this.book.spine.hooks.content.register(this.injectScript.bind(this)),this.themes=new f(this),this.annotations=new g(this),this.epubcfi=new a.a,this.q=new h.a(this),this.location=void 0,this.q.enqueue(this.book.opened),this.starting=new r.defer,this.started=this.starting.promise,this.q.enqueue(this.start)}setManager(t){this.manager=t}requireManager(t){return"string"==typeof t&&"default"===t?v.a:"string"==typeof t&&"continuous"===t?y.a:t}requireView(t){return"string"==typeof t&&"iframe"===t?m.a:t}start(){switch(this.settings.layout||"pre-paginated"!==this.book.package.metadata.layout&&"true"!==this.book.displayOptions.fixedLayout||(this.settings.layout="pre-paginated"),this.book.package.metadata.spread){case"none":this.settings.spread="none";break;case"both":this.settings.spread=!0}this.manager||(this.ViewManager=this.requireManager(this.settings.manager),this.View=this.requireView(this.settings.view),this.manager=new this.ViewManager({view:this.View,queue:this.q,request:this.book.load.bind(this.book),settings:this.settings})),this.direction(this.book.package.metadata.direction||this.settings.defaultDirection),this.settings.globalLayoutProperties=this.determineLayoutProperties(this.book.package.metadata),this.flow(this.settings.globalLayoutProperties.flow),this.layout(this.settings.globalLayoutProperties),this.manager.on(l.c.MANAGERS.ADDED,this.afterDisplayed.bind(this)),this.manager.on(l.c.MANAGERS.REMOVED,this.afterRemoved.bind(this)),this.manager.on(l.c.MANAGERS.RESIZED,this.onResized.bind(this)),this.manager.on(l.c.MANAGERS.ORIENTATION_CHANGE,this.onOrientationChange.bind(this)),this.manager.on(l.c.MANAGERS.SCROLLED,this.reportLocation.bind(this)),this.emit(l.c.RENDITION.STARTED),this.starting.resolve()}attachTo(t){return this.q.enqueue(function(){this.manager.render(t,{width:this.settings.width,height:this.settings.height}),this.emit(l.c.RENDITION.ATTACHED)}.bind(this))}display(t){return this.displaying&&this.displaying.resolve(),this.q.enqueue(this._display,t)}_display(t){if(this.book){this.epubcfi.isCfiString(t);var e,i=new r.defer,n=i.promise;return this.displaying=i,this.book.locations.length()&&Object(r.isFloat)(t)&&(t=this.book.locations.cfiFromPercentage(parseFloat(t))),(e=this.book.spine.get(t))?(this.manager.display(e,t).then((()=>{i.resolve(e),this.displaying=void 0,this.emit(l.c.RENDITION.DISPLAYED,e),this.reportLocation()}),(t=>{this.emit(l.c.RENDITION.DISPLAY_ERROR,t)})),n):(i.reject(new Error("No Section Found")),n)}}afterDisplayed(t){t.on(l.c.VIEWS.MARK_CLICKED,((e,i)=>this.triggerMarkEvent(e,i,t.contents))),this.hooks.render.trigger(t,this).then((()=>{t.contents?this.hooks.content.trigger(t.contents,this).then((()=>{this.emit(l.c.RENDITION.RENDERED,t.section,t)})):this.emit(l.c.RENDITION.RENDERED,t.section,t)}))}afterRemoved(t){this.hooks.unloaded.trigger(t,this).then((()=>{this.emit(l.c.RENDITION.REMOVED,t.section,t)}))}onResized(t,e){this.emit(l.c.RENDITION.RESIZED,{width:t.width,height:t.height},e),this.location&&this.location.start&&this.display(e||this.location.start.cfi)}onOrientationChange(t){this.emit(l.c.RENDITION.ORIENTATION_CHANGE,t)}moveTo(t){this.manager.moveTo(t)}resize(t,e,i){t&&(this.settings.width=t),e&&(this.settings.height=e),this.manager.resize(t,e,i)}clear(){this.manager.clear()}next(){return this.q.enqueue(this.manager.next.bind(this.manager)).then(this.reportLocation.bind(this))}prev(){return this.q.enqueue(this.manager.prev.bind(this.manager)).then(this.reportLocation.bind(this))}determineLayoutProperties(t){var e=this.settings.layout||t.layout||"reflowable",i=this.settings.spread||t.spread||"auto",n=this.settings.orientation||t.orientation||"auto",s=this.settings.flow||t.flow||"auto",r=t.viewport||"",o=this.settings.minSpreadWidth||t.minSpreadWidth||800,a=this.settings.direction||t.direction||"ltr";return(0===this.settings.width||this.settings.width>0)&&(0===this.settings.height||this.settings.height),{layout:e,spread:i,orientation:n,flow:s,viewport:r,minSpreadWidth:o,direction:a}}flow(t){var e=t;"scrolled"!==t&&"scrolled-doc"!==t&&"scrolled-continuous"!==t||(e="scrolled"),"auto"!==t&&"paginated"!==t||(e="paginated"),this.settings.flow=t,this._layout&&this._layout.flow(e),this.manager&&this._layout&&this.manager.applyLayout(this._layout),this.manager&&this.manager.updateFlow(e),this.manager&&this.manager.isRendered()&&this.location&&(this.manager.clear(),this.display(this.location.start.cfi))}layout(t){return t&&(this._layout=new u(t),this._layout.spread(t.spread,this.settings.minSpreadWidth),this._layout.on(l.c.LAYOUT.UPDATED,((t,e)=>{this.emit(l.c.RENDITION.LAYOUT,t,e)}))),this.manager&&this._layout&&this.manager.applyLayout(this._layout),this._layout}spread(t,e){this.settings.spread=t,e&&(this.settings.minSpreadWidth=e),this._layout&&this._layout.spread(t,e),this.manager&&this.manager.isRendered()&&this.manager.updateLayout()}direction(t){this.settings.direction=t||"ltr",this.manager&&this.manager.direction(this.settings.direction),this.manager&&this.manager.isRendered()&&this.location&&(this.manager.clear(),this.display(this.location.start.cfi))}reportLocation(){return this.q.enqueue(function(){requestAnimationFrame(function(){var t=this.manager.currentLocation();if(t&&t.then&&"function"==typeof t.then)t.then(function(t){let e=this.located(t);e&&e.start&&e.end&&(this.location=e,this.emit(l.c.RENDITION.LOCATION_CHANGED,{index:this.location.start.index,href:this.location.start.href,start:this.location.start.cfi,end:this.location.end.cfi,percentage:this.location.start.percentage}),this.emit(l.c.RENDITION.RELOCATED,this.location))}.bind(this));else if(t){let e=this.located(t);if(!e||!e.start||!e.end)return;this.location=e,this.emit(l.c.RENDITION.LOCATION_CHANGED,{index:this.location.start.index,href:this.location.start.href,start:this.location.start.cfi,end:this.location.end.cfi,percentage:this.location.start.percentage}),this.emit(l.c.RENDITION.RELOCATED,this.location)}}.bind(this))}.bind(this))}currentLocation(){var t=this.manager.currentLocation();if(t&&t.then&&"function"==typeof t.then)t.then(function(t){return this.located(t)}.bind(this));else if(t)return this.located(t)}located(t){if(!t.length)return{};let e=t[0],i=t[t.length-1],n={start:{index:e.index,href:e.href,cfi:e.mapping.start,displayed:{page:e.pages[0]||1,total:e.totalPages}},end:{index:i.index,href:i.href,cfi:i.mapping.end,displayed:{page:i.pages[i.pages.length-1]||1,total:i.totalPages}}},s=this.book.locations.locationFromCfi(e.mapping.start),r=this.book.locations.locationFromCfi(i.mapping.end);null!=s&&(n.start.location=s,n.start.percentage=this.book.locations.percentageFromLocation(s)),null!=r&&(n.end.location=r,n.end.percentage=this.book.locations.percentageFromLocation(r));let o=this.book.pageList.pageFromCfi(e.mapping.start),a=this.book.pageList.pageFromCfi(i.mapping.end);return-1!=o&&(n.start.page=o),-1!=a&&(n.end.page=a),i.index===this.book.spine.last().index&&n.end.displayed.page>=n.end.displayed.total&&(n.atEnd=!0),e.index===this.book.spine.first().index&&1===n.start.displayed.page&&(n.atStart=!0),n}destroy(){this.manager&&this.manager.destroy(),this.book=void 0}passEvents(t){l.a.forEach((e=>{t.on(e,(e=>this.triggerViewEvent(e,t)))})),t.on(l.c.CONTENTS.SELECTED,(e=>this.triggerSelectedEvent(e,t)))}triggerViewEvent(t,e){this.emit(t.type,t,e)}triggerSelectedEvent(t,e){this.emit(l.c.RENDITION.SELECTED,t,e)}triggerMarkEvent(t,e,i){this.emit(l.c.RENDITION.MARK_CLICKED,t,e,i)}getRange(t,e){var i=new a.a(t),n=this.manager.visible().filter((function(t){if(i.spinePos===t.index)return!0}));if(n.length)return n[0].contents.range(i,e)}adjustImages(t){if("pre-paginated"===this._layout.name)return new Promise((function(t){t()}));let e=t.window.getComputedStyle(t.content,null),i=.95*(t.content.offsetHeight-(parseFloat(e.paddingTop)+parseFloat(e.paddingBottom))),n=parseFloat(e.paddingLeft)+parseFloat(e.paddingRight);return t.addStylesheetRules({img:{"max-width":(this._layout.columnWidth?this._layout.columnWidth-n+"px":"100%")+"!important","max-height":i+"px!important","object-fit":"contain","page-break-inside":"avoid","break-inside":"avoid","box-sizing":"border-box"},svg:{"max-width":(this._layout.columnWidth?this._layout.columnWidth-n+"px":"100%")+"!important","max-height":i+"px!important","page-break-inside":"avoid","break-inside":"avoid"}}),new Promise((function(t,e){setTimeout((function(){t()}),1)}))}getContents(){return this.manager?this.manager.getContents():[]}views(){return(this.manager?this.manager.views:void 0)||[]}handleLinks(t){t&&t.on(l.c.CONTENTS.LINK_CLICKED,(t=>{let e=this.book.path.relative(t);this.display(e)}))}injectStylesheet(t,e){let i=t.createElement("link");i.setAttribute("type","text/css"),i.setAttribute("rel","stylesheet"),i.setAttribute("href",this.settings.stylesheet),t.getElementsByTagName("head")[0].appendChild(i)}injectScript(t,e){let i=t.createElement("script");i.setAttribute("type","text/javascript"),i.setAttribute("src",this.settings.script),i.textContent=" ",t.getElementsByTagName("head")[0].appendChild(i)}injectIdentifier(t,e){let i=this.book.packaging.metadata.identifier,n=t.createElement("meta");n.setAttribute("name","dc.relation.ispartof"),i&&n.setAttribute("content",i),t.getElementsByTagName("head")[0].appendChild(n)}}s()(b.prototype),e.a=b},function(t,e){var i;i=function(){return this}();try{i=i||new Function("return this")()}catch(t){"object"==typeof window&&(i=window)}t.exports=i},function(t,e,i){"use strict";var n=i(38)();t.exports=function(t){return t!==n&&null!==t}},function(t,e){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},function(t,e,i){"use strict";var n=i(3),s=i.n(n),r=i(0),o=i(2),a=i(12),h=i(1),l=i(13);class c{constructor(t,e){this.settings=Object(r.extend)({ignoreClass:"",axis:void 0,direction:void 0,width:0,height:0,layout:void 0,globalLayoutProperties:{},method:void 0,forceRight:!1,allowScriptedContent:!1,allowPopups:!1},e||{}),this.id="epubjs-view-"+Object(r.uuid)(),this.section=t,this.index=t.index,this.element=this.container(this.settings.axis),this.added=!1,this.displayed=!1,this.rendered=!1,this.fixedWidth=0,this.fixedHeight=0,this.epubcfi=new o.a,this.layout=this.settings.layout,this.pane=void 0,this.highlights={},this.underlines={},this.marks={}}container(t){var e=document.createElement("div");return e.classList.add("epub-view"),e.style.height="0px",e.style.width="0px",e.style.overflow="hidden",e.style.position="relative",e.style.display="block",e.style.flex=t&&"horizontal"==t?"none":"initial",e}create(){return this.iframe||(this.element||(this.element=this.createContainer()),this.iframe=document.createElement("iframe"),this.iframe.id=this.id,this.iframe.scrolling="no",this.iframe.style.overflow="hidden",this.iframe.seamless="seamless",this.iframe.style.border="none",this.iframe.sandbox="allow-same-origin",this.settings.allowScriptedContent&&(this.iframe.sandbox+=" allow-scripts"),this.settings.allowPopups&&(this.iframe.sandbox+=" allow-popups"),this.iframe.setAttribute("enable-annotation","true"),this.resizing=!0,this.element.style.visibility="hidden",this.iframe.style.visibility="hidden",this.iframe.style.width="0",this.iframe.style.height="0",this._width=0,this._height=0,this.element.setAttribute("ref",this.index),this.added=!0,this.elementBounds=Object(r.bounds)(this.element),"srcdoc"in this.iframe?this.supportsSrcdoc=!0:this.supportsSrcdoc=!1,this.settings.method||(this.settings.method=this.supportsSrcdoc?"srcdoc":"write")),this.iframe}render(t,e){return this.create(),this.size(),this.sectionRender||(this.sectionRender=this.section.render(t)),this.sectionRender.then(function(t){return this.load(t)}.bind(this)).then(function(){let t,e=this.contents.writingMode();return t="scrolled"===this.settings.flow?0===e.indexOf("vertical")?"horizontal":"vertical":0===e.indexOf("vertical")?"vertical":"horizontal",0===e.indexOf("vertical")&&"paginated"===this.settings.flow&&(this.layout.delta=this.layout.height),this.setAxis(t),this.emit(h.c.VIEWS.AXIS,t),this.setWritingMode(e),this.emit(h.c.VIEWS.WRITING_MODE,e),this.layout.format(this.contents,this.section,this.axis),this.addListeners(),new Promise(((t,e)=>{this.expand(),this.settings.forceRight&&(this.element.style.marginLeft=this.width()+"px"),t()}))}.bind(this),function(t){return this.emit(h.c.VIEWS.LOAD_ERROR,t),new Promise(((e,i)=>{i(t)}))}.bind(this)).then(function(){this.emit(h.c.VIEWS.RENDERED,this.section)}.bind(this))}reset(){this.iframe&&(this.iframe.style.width="0",this.iframe.style.height="0",this._width=0,this._height=0,this._textWidth=void 0,this._contentWidth=void 0,this._textHeight=void 0,this._contentHeight=void 0),this._needsReframe=!0}size(t,e){var i=t||this.settings.width,n=e||this.settings.height;"pre-paginated"===this.layout.name?this.lock("both",i,n):"horizontal"===this.settings.axis?this.lock("height",i,n):this.lock("width",i,n),this.settings.width=i,this.settings.height=n}lock(t,e,i){var n,s=Object(r.borders)(this.element);n=this.iframe?Object(r.borders)(this.iframe):{width:0,height:0},"width"==t&&Object(r.isNumber)(e)&&(this.lockedWidth=e-s.width-n.width),"height"==t&&Object(r.isNumber)(i)&&(this.lockedHeight=i-s.height-n.height),"both"===t&&Object(r.isNumber)(e)&&Object(r.isNumber)(i)&&(this.lockedWidth=e-s.width-n.width,this.lockedHeight=i-s.height-n.height),this.displayed&&this.iframe&&this.expand()}expand(t){var e,i=this.lockedWidth,n=this.lockedHeight;this.iframe&&!this._expanding&&(this._expanding=!0,"pre-paginated"===this.layout.name?(i=this.layout.columnWidth,n=this.layout.height):"horizontal"===this.settings.axis?((i=this.contents.textWidth())%this.layout.pageWidth>0&&(i=Math.ceil(i/this.layout.pageWidth)*this.layout.pageWidth),this.settings.forceEvenPages&&(e=i/this.layout.pageWidth,this.layout.divisor>1&&"reflowable"===this.layout.name&&e%2>0&&(i+=this.layout.pageWidth))):"vertical"===this.settings.axis&&(n=this.contents.textHeight(),"paginated"===this.settings.flow&&n%this.layout.height>0&&(n=Math.ceil(n/this.layout.height)*this.layout.height)),(this._needsReframe||i!=this._width||n!=this._height)&&this.reframe(i,n),this._expanding=!1)}reframe(t,e){var i;Object(r.isNumber)(t)&&(this.element.style.width=t+"px",this.iframe.style.width=t+"px",this._width=t),Object(r.isNumber)(e)&&(this.element.style.height=e+"px",this.iframe.style.height=e+"px",this._height=e),i={width:t,height:e,widthDelta:this.prevBounds?t-this.prevBounds.width:t,heightDelta:this.prevBounds?e-this.prevBounds.height:e},this.pane&&this.pane.render(),requestAnimationFrame((()=>{let t;for(let e in this.marks)this.marks.hasOwnProperty(e)&&(t=this.marks[e],this.placeMark(t.element,t.range))})),this.onResize(this,i),this.emit(h.c.VIEWS.RESIZED,i),this.prevBounds=i,this.elementBounds=Object(r.bounds)(this.element)}load(t){var e=new r.defer,i=e.promise;if(!this.iframe)return e.reject(new Error("No Iframe Available")),i;if(this.iframe.onload=function(t){this.onLoad(t,e)}.bind(this),"blobUrl"===this.settings.method)this.blobUrl=Object(r.createBlobUrl)(t,"application/xhtml+xml"),this.iframe.src=this.blobUrl,this.element.appendChild(this.iframe);else if("srcdoc"===this.settings.method)this.iframe.srcdoc=t,this.element.appendChild(this.iframe);else{if(this.element.appendChild(this.iframe),this.document=this.iframe.contentDocument,!this.document)return e.reject(new Error("No Document Available")),i;if(this.iframe.contentDocument.open(),window.MSApp&&MSApp.execUnsafeLocalFunction){var n=this;MSApp.execUnsafeLocalFunction((function(){n.iframe.contentDocument.write(t)}))}else this.iframe.contentDocument.write(t);this.iframe.contentDocument.close()}return i}onLoad(t,e){this.window=this.iframe.contentWindow,this.document=this.iframe.contentDocument,this.contents=new a.a(this.document,this.document.body,this.section.cfiBase,this.section.index),this.rendering=!1;var i=this.document.querySelector("link[rel='canonical']");i?i.setAttribute("href",this.section.canonical):((i=this.document.createElement("link")).setAttribute("rel","canonical"),i.setAttribute("href",this.section.canonical),this.document.querySelector("head").appendChild(i)),this.contents.on(h.c.CONTENTS.EXPAND,(()=>{this.displayed&&this.iframe&&(this.expand(),this.contents&&this.layout.format(this.contents))})),this.contents.on(h.c.CONTENTS.RESIZE,(t=>{this.displayed&&this.iframe&&(this.expand(),this.contents&&this.layout.format(this.contents))})),e.resolve(this.contents)}setLayout(t){this.layout=t,this.contents&&(this.layout.format(this.contents),this.expand())}setAxis(t){this.settings.axis=t,this.element.style.flex="horizontal"==t?"none":"initial",this.size()}setWritingMode(t){this.writingMode=t}addListeners(){}removeListeners(t){}display(t){var e=new r.defer;return this.displayed?e.resolve(this):this.render(t).then(function(){this.emit(h.c.VIEWS.DISPLAYED,this),this.onDisplayed(this),this.displayed=!0,e.resolve(this)}.bind(this),(function(t){e.reject(t,this)})),e.promise}show(){this.element.style.visibility="visible",this.iframe&&(this.iframe.style.visibility="visible",this.iframe.style.transform="translateZ(0)",this.iframe.offsetWidth,this.iframe.style.transform=null),this.emit(h.c.VIEWS.SHOWN,this)}hide(){this.element.style.visibility="hidden",this.iframe.style.visibility="hidden",this.stopExpanding=!0,this.emit(h.c.VIEWS.HIDDEN,this)}offset(){return{top:this.element.offsetTop,left:this.element.offsetLeft}}width(){return this._width}height(){return this._height}position(){return this.element.getBoundingClientRect()}locationOf(t){this.iframe.getBoundingClientRect();var e=this.contents.locationOf(t,this.settings.ignoreClass);return{left:e.left,top:e.top}}onDisplayed(t){}onResize(t,e){}bounds(t){return!t&&this.elementBounds||(this.elementBounds=Object(r.bounds)(this.element)),this.elementBounds}highlight(t,e={},i,n="epubjs-hl",s={}){if(!this.contents)return;const r=Object.assign({fill:"yellow","fill-opacity":"0.3","mix-blend-mode":"multiply"},s);let o=this.contents.range(t),a=()=>{this.emit(h.c.VIEWS.MARK_CLICKED,t,e)};e.epubcfi=t,this.pane||(this.pane=new l.Pane(this.iframe,this.element));let c=new l.Highlight(o,n,e,r),u=this.pane.addMark(c);return this.highlights[t]={mark:u,element:u.element,listeners:[a,i]},u.element.setAttribute("ref",n),u.element.addEventListener("click",a),u.element.addEventListener("touchstart",a),i&&(u.element.addEventListener("click",i),u.element.addEventListener("touchstart",i)),u}underline(t,e={},i,n="epubjs-ul",s={}){if(!this.contents)return;const r=Object.assign({stroke:"black","stroke-opacity":"0.3","mix-blend-mode":"multiply"},s);let o=this.contents.range(t),a=()=>{this.emit(h.c.VIEWS.MARK_CLICKED,t,e)};e.epubcfi=t,this.pane||(this.pane=new l.Pane(this.iframe,this.element));let c=new l.Underline(o,n,e,r),u=this.pane.addMark(c);return this.underlines[t]={mark:u,element:u.element,listeners:[a,i]},u.element.setAttribute("ref",n),u.element.addEventListener("click",a),u.element.addEventListener("touchstart",a),i&&(u.element.addEventListener("click",i),u.element.addEventListener("touchstart",i)),u}mark(t,e={},i){if(!this.contents)return;if(t in this.marks)return this.marks[t];let n=this.contents.range(t);if(!n)return;let s=n.commonAncestorContainer,r=1===s.nodeType?s:s.parentNode,o=i=>{this.emit(h.c.VIEWS.MARK_CLICKED,t,e)};n.collapsed&&1===s.nodeType?(n=new Range,n.selectNodeContents(s)):n.collapsed&&(n=new Range,n.selectNodeContents(r));let a=this.document.createElement("a");return a.setAttribute("ref","epubjs-mk"),a.style.position="absolute",a.dataset.epubcfi=t,e&&Object.keys(e).forEach((t=>{a.dataset[t]=e[t]})),i&&(a.addEventListener("click",i),a.addEventListener("touchstart",i)),a.addEventListener("click",o),a.addEventListener("touchstart",o),this.placeMark(a,n),this.element.appendChild(a),this.marks[t]={element:a,range:n,listeners:[o,i]},r}placeMark(t,e){let i,n,s;if("pre-paginated"===this.layout.name||"horizontal"!==this.settings.axis){let t=e.getBoundingClientRect();i=t.top,n=t.right}else{let t,o=e.getClientRects();for(var r=0;r!=o.length;r++)t=o[r],(!s||t.left{t&&(e.element.removeEventListener("click",t),e.element.removeEventListener("touchstart",t))})),delete this.highlights[t])}ununderline(t){let e;t in this.underlines&&(e=this.underlines[t],this.pane.removeMark(e.mark),e.listeners.forEach((t=>{t&&(e.element.removeEventListener("click",t),e.element.removeEventListener("touchstart",t))})),delete this.underlines[t])}unmark(t){let e;t in this.marks&&(e=this.marks[t],this.element.removeChild(e.element),e.listeners.forEach((t=>{t&&(e.element.removeEventListener("click",t),e.element.removeEventListener("touchstart",t))})),delete this.marks[t])}destroy(){for(let t in this.highlights)this.unhighlight(t);for(let t in this.underlines)this.ununderline(t);for(let t in this.marks)this.unmark(t);this.blobUrl&&Object(r.revokeBlobUrl)(this.blobUrl),this.displayed&&(this.displayed=!1,this.removeListeners(),this.contents.destroy(),this.stopExpanding=!0,this.element.removeChild(this.iframe),this.pane&&(this.pane.element.remove(),this.pane=void 0),this.iframe=void 0,this.contents=void 0,this._textWidth=null,this._textHeight=null,this._width=null,this._height=null)}}s()(c.prototype),e.a=c},function(t,e,i){var n=i(19),s=i(51),r=i(53),o=Math.max,a=Math.min;t.exports=function(t,e,i){var h,l,c,u,d,f,p=0,g=!1,m=!1,v=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function y(e){var i=h,n=l;return h=l=void 0,p=e,u=t.apply(n,i)}function b(t){var i=t-f;return void 0===f||i>=e||i<0||m&&t-p>=c}function w(){var t=s();if(b(t))return x(t);d=setTimeout(w,function(t){var i=e-(t-f);return m?a(i,c-(t-p)):i}(t))}function x(t){return d=void 0,v&&h?y(t):(h=l=void 0,u)}function E(){var t=s(),i=b(t);if(h=arguments,l=this,f=t,i){if(void 0===d)return function(t){return p=t,d=setTimeout(w,e),g?y(t):u}(f);if(m)return clearTimeout(d),d=setTimeout(w,e),y(f)}return void 0===d&&(d=setTimeout(w,e)),u}return e=r(e)||0,n(i)&&(g=!!i.leading,c=(m="maxWait"in i)?o(r(i.maxWait)||0,e):c,v="trailing"in i?!!i.trailing:v),E.cancel=function(){void 0!==d&&clearTimeout(d),p=0,h=f=l=d=void 0},E.flush=function(){return void 0===d?u:x(s())},E}},function(t,e,i){"use strict";var n=i(0),s=i(10),r=i(1),o=i(3),a=i.n(o);const h=Math.PI/2,l={easeOutSine:function(t){return Math.sin(t*h)},easeInOutSine:function(t){return-.5*(Math.cos(Math.PI*t)-1)},easeInOutQuint:function(t){return(t/=.5)<1?.5*Math.pow(t,5):.5*(Math.pow(t-2,5)+2)},easeInCubic:function(t){return Math.pow(t,3)}};class c{constructor(t,e){this.settings=Object(n.extend)({duration:80,minVelocity:.2,minDistance:10,easing:l.easeInCubic},e||{}),this.supportsTouch=this.supportsTouch(),this.supportsTouch&&this.setup(t)}setup(t){this.manager=t,this.layout=this.manager.layout,this.fullsize=this.manager.settings.fullsize,this.fullsize?(this.element=this.manager.stage.element,this.scroller=window,this.disableScroll()):(this.element=this.manager.stage.container,this.scroller=this.element,this.element.style.WebkitOverflowScrolling="touch"),this.manager.settings.offset=this.layout.width,this.manager.settings.afterScrolledTimeout=2*this.settings.duration,this.isVertical="vertical"===this.manager.settings.axis,this.manager.isPaginated&&!this.isVertical&&(this.touchCanceler=!1,this.resizeCanceler=!1,this.snapping=!1,this.scrollLeft,this.scrollTop,this.startTouchX=void 0,this.startTouchY=void 0,this.startTime=void 0,this.endTouchX=void 0,this.endTouchY=void 0,this.endTime=void 0,this.addListeners())}supportsTouch(){return!!("ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch)}disableScroll(){this.element.style.overflow="hidden"}enableScroll(){this.element.style.overflow=""}addListeners(){this._onResize=this.onResize.bind(this),window.addEventListener("resize",this._onResize),this._onScroll=this.onScroll.bind(this),this.scroller.addEventListener("scroll",this._onScroll),this._onTouchStart=this.onTouchStart.bind(this),this.scroller.addEventListener("touchstart",this._onTouchStart,{passive:!0}),this.on("touchstart",this._onTouchStart),this._onTouchMove=this.onTouchMove.bind(this),this.scroller.addEventListener("touchmove",this._onTouchMove,{passive:!0}),this.on("touchmove",this._onTouchMove),this._onTouchEnd=this.onTouchEnd.bind(this),this.scroller.addEventListener("touchend",this._onTouchEnd,{passive:!0}),this.on("touchend",this._onTouchEnd),this._afterDisplayed=this.afterDisplayed.bind(this),this.manager.on(r.c.MANAGERS.ADDED,this._afterDisplayed)}removeListeners(){window.removeEventListener("resize",this._onResize),this._onResize=void 0,this.scroller.removeEventListener("scroll",this._onScroll),this._onScroll=void 0,this.scroller.removeEventListener("touchstart",this._onTouchStart,{passive:!0}),this.off("touchstart",this._onTouchStart),this._onTouchStart=void 0,this.scroller.removeEventListener("touchmove",this._onTouchMove,{passive:!0}),this.off("touchmove",this._onTouchMove),this._onTouchMove=void 0,this.scroller.removeEventListener("touchend",this._onTouchEnd,{passive:!0}),this.off("touchend",this._onTouchEnd),this._onTouchEnd=void 0,this.manager.off(r.c.MANAGERS.ADDED,this._afterDisplayed),this._afterDisplayed=void 0}afterDisplayed(t){let e=t.contents;["touchstart","touchmove","touchend"].forEach((t=>{e.on(t,(t=>this.triggerViewEvent(t,e)))}))}triggerViewEvent(t,e){this.emit(t.type,t,e)}onScroll(t){this.scrollLeft=this.fullsize?window.scrollX:this.scroller.scrollLeft,this.scrollTop=this.fullsize?window.scrollY:this.scroller.scrollTop}onResize(t){this.resizeCanceler=!0}onTouchStart(t){let{screenX:e,screenY:i}=t.touches[0];this.fullsize&&this.enableScroll(),this.touchCanceler=!0,this.startTouchX||(this.startTouchX=e,this.startTouchY=i,this.startTime=this.now()),this.endTouchX=e,this.endTouchY=i,this.endTime=this.now()}onTouchMove(t){let{screenX:e,screenY:i}=t.touches[0],n=Math.abs(i-this.endTouchY);this.touchCanceler=!0,!this.fullsize&&n<10&&(this.element.scrollLeft-=e-this.endTouchX),this.endTouchX=e,this.endTouchY=i,this.endTime=this.now()}onTouchEnd(t){this.fullsize&&this.disableScroll(),this.touchCanceler=!1;let e=this.wasSwiped();0!==e?this.snap(e):this.snap(),this.startTouchX=void 0,this.startTouchY=void 0,this.startTime=void 0,this.endTouchX=void 0,this.endTouchY=void 0,this.endTime=void 0}wasSwiped(){let t=this.layout.pageWidth*this.layout.divisor,e=this.endTouchX-this.startTouchX,i=Math.abs(e),n=e/(this.endTime-this.startTime),s=this.settings.minVelocity;return i<=this.settings.minDistance||i>=t?0:n>s?-1:n<-s?1:void 0}needsSnap(){return this.scrollLeft%(this.layout.pageWidth*this.layout.divisor)!=0}snap(t=0){let e=this.scrollLeft,i=this.layout.pageWidth*this.layout.divisor,n=Math.round(e/i)*i;return t&&(n+=t*i),this.smoothScrollTo(n)}smoothScrollTo(t){const e=new n.defer,i=this.scrollLeft,s=this.now(),r=this.settings.duration,o=this.settings.easing;return this.snapping=!0,function n(){const a=this.now(),h=Math.min(1,(a-s)/r);if(o(h),this.touchCanceler||this.resizeCanceler)return this.resizeCanceler=!1,this.snapping=!1,void e.resolve();h<1?(window.requestAnimationFrame(n.bind(this)),this.scrollTo(i+(t-i)*h,0)):(this.scrollTo(t,0),this.snapping=!1,e.resolve())}.call(this),e.promise}scrollTo(t=0,e=0){this.fullsize?window.scroll(t,e):(this.scroller.scrollLeft=t,this.scroller.scrollTop=e)}now(){return"now"in window.performance?performance.now():(new Date).getTime()}destroy(){this.scroller&&(this.fullsize&&this.enableScroll(),this.removeListeners(),this.scroller=void 0)}}a()(c.prototype);var u=c,d=i(21),f=i.n(d);class p extends s.a{constructor(t){super(t),this.name="continuous",this.settings=Object(n.extend)(this.settings||{},{infinite:!0,overflow:void 0,axis:void 0,writingMode:void 0,flow:"scrolled",offset:500,offsetDelta:250,width:void 0,height:void 0,snap:!1,afterScrolledTimeout:10,allowScriptedContent:!1,allowPopups:!1}),Object(n.extend)(this.settings,t.settings||{}),"undefined"!=t.settings.gap&&0===t.settings.gap&&(this.settings.gap=t.settings.gap),this.viewSettings={ignoreClass:this.settings.ignoreClass,axis:this.settings.axis,flow:this.settings.flow,layout:this.layout,width:0,height:0,forceEvenPages:!1,allowScriptedContent:this.settings.allowScriptedContent,allowPopups:this.settings.allowPopups},this.scrollTop=0,this.scrollLeft=0}display(t,e){return s.a.prototype.display.call(this,t,e).then(function(){return this.fill()}.bind(this))}fill(t){var e=t||new n.defer;return this.q.enqueue((()=>this.check())).then((t=>{t?this.fill(e):e.resolve()})),e.promise}moveTo(t){var e=0,i=0;this.isPaginated?(e=Math.floor(t.left/this.layout.delta)*this.layout.delta,this.settings.offsetDelta):(i=t.top,t.top,this.settings.offsetDelta),(e>0||i>0)&&this.scrollBy(e,i,!0)}afterResized(t){this.emit(r.c.MANAGERS.RESIZE,t.section)}removeShownListeners(t){t.onDisplayed=function(){}}add(t){var e=this.createView(t);return this.views.append(e),e.on(r.c.VIEWS.RESIZED,(t=>{e.expanded=!0})),e.on(r.c.VIEWS.AXIS,(t=>{this.updateAxis(t)})),e.on(r.c.VIEWS.WRITING_MODE,(t=>{this.updateWritingMode(t)})),e.onDisplayed=this.afterDisplayed.bind(this),e.onResize=this.afterResized.bind(this),e.display(this.request)}append(t){var e=this.createView(t);return e.on(r.c.VIEWS.RESIZED,(t=>{e.expanded=!0})),e.on(r.c.VIEWS.AXIS,(t=>{this.updateAxis(t)})),e.on(r.c.VIEWS.WRITING_MODE,(t=>{this.updateWritingMode(t)})),this.views.append(e),e.onDisplayed=this.afterDisplayed.bind(this),e}prepend(t){var e=this.createView(t);return e.on(r.c.VIEWS.RESIZED,(t=>{this.counter(t),e.expanded=!0})),e.on(r.c.VIEWS.AXIS,(t=>{this.updateAxis(t)})),e.on(r.c.VIEWS.WRITING_MODE,(t=>{this.updateWritingMode(t)})),this.views.prepend(e),e.onDisplayed=this.afterDisplayed.bind(this),e}counter(t){"vertical"===this.settings.axis?this.scrollBy(0,t.heightDelta,!0):this.scrollBy(t.widthDelta,0,!0)}update(t){for(var e,i=this.bounds(),s=this.views.all(),r=s.length,o=[],a=void 0!==t?t:this.settings.offset||0,h=new n.defer,l=[],c=0;c{e.hide()}));l.push(t)}o.push(e)}else this.q.enqueue(e.destroy.bind(e)),clearTimeout(this.trimTimeout),this.trimTimeout=setTimeout(function(){this.q.enqueue(this.trim.bind(this))}.bind(this),250);return l.length?Promise.all(l).catch((t=>{h.reject(t)})):(h.resolve(),h.promise)}check(t,e){var i=new n.defer,s=[],r="horizontal"===this.settings.axis,o=this.settings.offset||0;t&&r&&(o=t),e&&!r&&(o=e);var a=this._bounds;let h=r?this.scrollLeft:this.scrollTop,l=r?Math.floor(a.width):a.height,c=r?this.container.scrollWidth:this.container.scrollHeight,u=this.writingMode&&0===this.writingMode.indexOf("vertical")?"vertical":"horizontal",d=this.settings.rtlScrollType,f="rtl"===this.settings.direction;this.settings.fullsize?(r&&f&&"negative"===d||!r&&f&&"default"===d)&&(h*=-1):(f&&"default"===d&&"horizontal"===u&&(h=c-l-h),f&&"negative"===d&&"horizontal"===u&&(h*=-1));let p=h-o;h+l+o>=c&&(()=>{let t=this.views.last(),e=t&&t.section.next();e&&s.push(this.append(e))})(),p<0&&(()=>{let t=this.views.first(),e=t&&t.section.prev();e&&s.push(this.prepend(e))})();let g=s.map((t=>t.display(this.request)));return s.length?Promise.all(g).then((()=>this.check())).then((()=>this.update(o)),(t=>t)):(this.q.enqueue(function(){this.update()}.bind(this)),i.resolve(!1),i.promise)}trim(){for(var t=new n.defer,e=this.views.displayed(),i=e[0],s=e[e.length-1],r=this.views.indexOf(i),o=this.views.indexOf(s),a=this.views.slice(0,r),h=this.views.slice(o+1),l=0;l=43)}})).catch((function(){return!1}))}(t).then((function(t){return u=t}))}function g(t){var e=d[t.name],i={};i.promise=new o((function(t,e){i.resolve=t,i.reject=e})),e.deferredOperations.push(i),e.dbReady?e.dbReady=e.dbReady.then((function(){return i.promise})):e.dbReady=i.promise}function m(t){var e=d[t.name].deferredOperations.pop();if(e)return e.resolve(),e.promise}function v(t,e){var i=d[t.name].deferredOperations.pop();if(i)return i.reject(e),i.promise}function y(t,e){return new o((function(i,n){if(d[t.name]=d[t.name]||{forages:[],db:null,dbReady:null,deferredOperations:[]},t.db){if(!e)return i(t.db);g(t),t.db.close()}var r=[t.name];e&&r.push(t.version);var o=s.open.apply(s,r);e&&(o.onupgradeneeded=function(e){var i=o.result;try{i.createObjectStore(t.storeName),e.oldVersion<=1&&i.createObjectStore("local-forage-detect-blob-support")}catch(i){if("ConstraintError"!==i.name)throw i;console.warn('The database "'+t.name+'" has been upgraded from version '+e.oldVersion+" to version "+e.newVersion+', but the storage "'+t.storeName+'" already exists.')}}),o.onerror=function(t){t.preventDefault(),n(o.error)},o.onsuccess=function(){var e=o.result;e.onversionchange=function(t){t.target.close()},i(e),m(t)}}))}function b(t){return y(t,!1)}function w(t){return y(t,!0)}function x(t,e){if(!t.db)return!0;var i=!t.db.objectStoreNames.contains(t.storeName),n=t.versiont.db.version;if(n&&(t.version!==e&&console.warn('The database "'+t.name+"\" can't be downgraded from version "+t.db.version+" to version "+t.version+"."),t.version=t.db.version),s||i){if(i){var r=t.db.version+1;r>t.version&&(t.version=r)}return!0}return!1}function E(t){return r([function(t){for(var e=t.length,i=new ArrayBuffer(e),n=new Uint8Array(i),s=0;s0&&(!t.db||"InvalidStateError"===s.name||"NotFoundError"===s.name))return o.resolve().then((function(){if(!t.db||"NotFoundError"===s.name&&!t.db.objectStoreNames.contains(t.storeName)&&t.version<=t.db.version)return t.db&&(t.version=t.db.version+1),w(t)})).then((function(){return function(t){g(t);for(var e=d[t.name],i=e.forages,n=0;n>4,c[h++]=(15&n)<<4|s>>2,c[h++]=(3&s)<<6|63&r;return l}function k(t){var e,i=new Uint8Array(t),n="";for(e=0;e>2],n+=C[(3&i[e])<<4|i[e+1]>>4],n+=C[(15&i[e+1])<<2|i[e+2]>>6],n+=C[63&i[e+2]];return i.length%3==2?n=n.substring(0,n.length-1)+"=":i.length%3==1&&(n=n.substring(0,n.length-2)+"=="),n}var A={serialize:function(t,e){var i="";if(t&&(i=I.call(t)),t&&("[object ArrayBuffer]"===i||t.buffer&&"[object ArrayBuffer]"===I.call(t.buffer))){var n,s="__lfsc__:";t instanceof ArrayBuffer?(n=t,s+="arbf"):(n=t.buffer,"[object Int8Array]"===i?s+="si08":"[object Uint8Array]"===i?s+="ui08":"[object Uint8ClampedArray]"===i?s+="uic8":"[object Int16Array]"===i?s+="si16":"[object Uint16Array]"===i?s+="ur16":"[object Int32Array]"===i?s+="si32":"[object Uint32Array]"===i?s+="ui32":"[object Float32Array]"===i?s+="fl32":"[object Float64Array]"===i?s+="fl64":e(new Error("Failed to get type for BinaryArray"))),e(s+k(n))}else if("[object Blob]"===i){var r=new FileReader;r.onload=function(){var i="~~local_forage_type~"+t.type+"~"+k(this.result);e("__lfsc__:blob"+i)},r.readAsArrayBuffer(t)}else try{e(JSON.stringify(t))}catch(i){console.error("Couldn't convert value into a JSON string: ",t),e(null,i)}},deserialize:function(t){if("__lfsc__:"!==t.substring(0,9))return JSON.parse(t);var e,i=t.substring(13),n=t.substring(9,13);if("blob"===n&&O.test(i)){var s=i.match(O);e=s[1],i=i.substring(s[0].length)}var o=R(i);switch(n){case"arbf":return o;case"blob":return r([o],{type:e});case"si08":return new Int8Array(o);case"ui08":return new Uint8Array(o);case"uic8":return new Uint8ClampedArray(o);case"si16":return new Int16Array(o);case"ur16":return new Uint16Array(o);case"si32":return new Int32Array(o);case"ui32":return new Uint32Array(o);case"fl32":return new Float32Array(o);case"fl64":return new Float64Array(o);default:throw new Error("Unkown type: "+n)}},stringToBuffer:R,bufferToString:k};function L(t,e,i,n){t.executeSql("CREATE TABLE IF NOT EXISTS "+e.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],i,n)}function j(t,e,i,n,s,r){t.executeSql(i,n,s,(function(t,o){o.code===o.SYNTAX_ERR?t.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[e.storeName],(function(t,a){a.rows.length?r(t,o):L(t,e,(function(){t.executeSql(i,n,s,r)}),r)}),r):r(t,o)}),r)}function D(t,e,i,n){var s=this;t=l(t);var r=new o((function(r,o){s.ready().then((function(){void 0===e&&(e=null);var a=e,h=s._dbInfo;h.serializer.serialize(e,(function(e,l){l?o(l):h.db.transaction((function(i){j(i,h,"INSERT OR REPLACE INTO "+h.storeName+" (key, value) VALUES (?, ?)",[t,e],(function(){r(a)}),(function(t,e){o(e)}))}),(function(e){if(e.code===e.QUOTA_ERR){if(n>0)return void r(D.apply(s,[t,a,i,n-1]));o(e)}}))}))})).catch(o)}));return a(r,i),r}var P={_driver:"webSQLStorage",_initStorage:function(t){var e=this,i={db:null};if(t)for(var n in t)i[n]="string"!=typeof t[n]?t[n].toString():t[n];var s=new o((function(t,n){try{i.db=openDatabase(i.name,String(i.version),i.description,i.size)}catch(t){return n(t)}i.db.transaction((function(s){L(s,i,(function(){e._dbInfo=i,t()}),(function(t,e){n(e)}))}),n)}));return i.serializer=A,s},_support:"function"==typeof openDatabase,iterate:function(t,e){var i=this,n=new o((function(e,n){i.ready().then((function(){var s=i._dbInfo;s.db.transaction((function(i){j(i,s,"SELECT * FROM "+s.storeName,[],(function(i,n){for(var r=n.rows,o=r.length,a=0;a '__WebKitDatabaseInfoTable__'",[],(function(i,n){for(var s=[],r=0;r0?(this._dbInfo=e,e.serializer=A,o.resolve()):o.reject()},_support:function(){try{return"undefined"!=typeof localStorage&&"setItem"in localStorage&&!!localStorage.setItem}catch(t){return!1}}(),iterate:function(t,e){var i=this,n=i.ready().then((function(){for(var e=i._dbInfo,n=e.keyPrefix,s=n.length,r=localStorage.length,o=1,a=0;a=0;i--){var n=localStorage.key(i);0===n.indexOf(t)&&localStorage.removeItem(n)}}));return a(i,t),i},length:function(t){var e=this.keys().then((function(t){return t.length}));return a(e,t),e},key:function(t,e){var i=this,n=i.ready().then((function(){var e,n=i._dbInfo;try{e=localStorage.key(t)}catch(t){e=null}return e&&(e=e.substring(n.keyPrefix.length)),e}));return a(n,e),n},keys:function(t){var e=this,i=e.ready().then((function(){for(var t=e._dbInfo,i=localStorage.length,n=[],s=0;s=0;e--){var i=localStorage.key(e);0===i.indexOf(t)&&localStorage.removeItem(i)}})):o.reject("Invalid arguments"),e),n}},B=function(t,e){for(var i,n,s=t.length,r=0;r=0,i=new("undefined"==typeof XMLSerializer||e?d.DOMParser:XMLSerializer);return this.output=i.serializeToString(t),this.output}.bind(this)).then(function(){return this.hooks.serialize.trigger(this.output,this)}.bind(this)).then(function(){e.resolve(this.output)}.bind(this)).catch((function(t){e.reject(t)})),i}find(t){var e=this,i=[],n=t.toLowerCase();return Object(r.sprint)(e.document,(function(t){!function(t){for(var s,r,o,a=t.textContent.toLowerCase(),h=e.document.createRange(),l=-1;-1!=r;)-1!=(r=a.indexOf(n,l+1))&&((h=e.document.createRange()).setStart(t,r),h.setEnd(t,r+n.length),s=e.cfiFromRange(h),o=t.textContent.length<150?t.textContent:"..."+(o=t.textContent.substring(r-75,r+75))+"...",i.push({cfi:s,excerpt:o})),l=r}(t)})),i}search(t,e=5){if(void 0===document.createTreeWalker)return this.find(t);let i=[];const n=this,s=t.toLowerCase(),r=function(t){const e=t.reduce(((t,e)=>t+e.textContent),"").toLowerCase().indexOf(s);if(-1!=e){const r=0,o=e+s.length;let a=0,h=0;if(et+e.textContent.length),0);u.setEnd(c,d>o?o:o-d),s=n.cfiFromRange(u);let f=t.slice(0,a+1).reduce(((t,e)=>t+e.textContent),"");f.length>150&&(f=f.substring(e-75,e+75),f="..."+f+"..."),i.push({cfi:s,excerpt:f})}}},o=document.createTreeWalker(n.document,NodeFilter.SHOW_TEXT,null,!1);let a,h=[];for(;a=o.nextNode();)h.push(a),h.length==e&&(r(h.slice(0,e)),h=h.slice(1,e));return h.length>0&&r(h),i}reconcileLayoutSettings(t){var e={layout:t.layout,spread:t.spread,orientation:t.orientation};return this.properties.forEach((function(t){var i,n,s=t.replace("rendition:",""),r=s.indexOf("-");-1!=r&&(i=s.slice(0,r),n=s.slice(r+1),e[i]=n)})),e}cfiFromRange(t){return new h.a(t,this.cfiBase).toString()}cfiFromElement(t){return new h.a(t,this.cfiBase).toString()}unload(){this.document=void 0,this.contents=void 0,this.output=void 0}destroy(){this.unload(),this.hooks.serialize.clear(),this.hooks.content.clear(),this.hooks=void 0,this.idref=void 0,this.linear=void 0,this.properties=void 0,this.index=void 0,this.href=void 0,this.url=void 0,this.next=void 0,this.prev=void 0,this.cfiBase=void 0}},p=class{constructor(){this.spineItems=[],this.spineByHref={},this.spineById={},this.hooks={},this.hooks.serialize=new l.a,this.hooks.content=new l.a,this.hooks.content.register(c.a),this.hooks.content.register(c.b),this.hooks.content.register(c.d),this.epubcfi=new h.a,this.loaded=!1,this.items=void 0,this.manifest=void 0,this.spineNodeIndex=void 0,this.baseUrl=void 0,this.length=void 0}unpack(t,e,i){this.items=t.spine,this.manifest=t.manifest,this.spineNodeIndex=t.spineNodeIndex,this.baseUrl=t.baseUrl||t.basePath||"",this.length=this.items.length,this.items.forEach(((t,n)=>{var s,r=this.manifest[t.idref];t.index=n,t.cfiBase=this.epubcfi.generateChapterComponent(this.spineNodeIndex,t.index,t.id),t.href&&(t.url=e(t.href,!0),t.canonical=i(t.href)),r&&(t.href=r.href,t.url=e(t.href,!0),t.canonical=i(t.href),r.properties.length&&t.properties.push.apply(t.properties,r.properties)),"yes"===t.linear?(t.prev=function(){let e=t.index;for(;e>0;){let t=this.get(e-1);if(t&&t.linear)return t;e-=1}}.bind(this),t.next=function(){let e=t.index;for(;e-1)return delete this.spineByHref[t.href],delete this.spineById[t.idref],this.spineItems.splice(e,1)}each(){return this.spineItems.forEach.apply(this.spineItems,arguments)}first(){let t=0;do{let e=this.get(t);if(e&&e.linear)return e;t+=1}while(t=0)}destroy(){this.each((t=>t.destroy())),this.spineItems=void 0,this.spineByHref=void 0,this.spineById=void 0,this.hooks.serialize.clear(),this.hooks.content.clear(),this.hooks=void 0,this.epubcfi=void 0,this.loaded=!1,this.items=void 0,this.manifest=void 0,this.spineNodeIndex=void 0,this.baseUrl=void 0,this.length=void 0}},g=i(9),m=i(1);class v{constructor(t,e,i){this.spine=t,this.request=e,this.pause=i||100,this.q=new g.a(this),this.epubcfi=new h.a,this._locations=[],this._locationsWords=[],this.total=0,this.break=150,this._current=0,this._wordCounter=0,this.currentLocation="",this._currentCfi="",this.processingTimeout=void 0}generate(t){return t&&(this.break=t),this.q.pause(),this.spine.each(function(t){t.linear&&this.q.enqueue(this.process.bind(this),t)}.bind(this)),this.q.run().then(function(){return this.total=this._locations.length-1,this._currentCfi&&(this.currentLocation=this._currentCfi),this._locations}.bind(this))}createRange(){return{startContainer:void 0,startOffset:void 0,endContainer:void 0,endOffset:void 0}}process(t){return t.load(this.request).then(function(e){var i=new r.defer,n=this.parse(e,t.cfiBase);return this._locations=this._locations.concat(n),t.unload(),this.processingTimeout=setTimeout((()=>i.resolve(n)),this.pause),i.promise}.bind(this))}parse(t,e,i){var n,s,o=[],a=t.ownerDocument,l=Object(r.qs)(a,"body"),c=0,u=i||this.break;if(Object(r.sprint)(l,function(t){var i,r=t.length,a=0;if(0===t.textContent.trim().length)return!1;for(0==c&&((n=this.createRange()).startContainer=t,n.startOffset=0),(i=u-c)>r&&(c+=r,a=r);a=r)c+=r-a,a=r;else{a+=i,n.endContainer=t,n.endOffset=a;let s=new h.a(n,e).toString();o.push(s),c=0}s=t}.bind(this)),n&&n.startContainer&&s){n.endContainer=s,n.endOffset=s.length;let t=new h.a(n,e).toString();o.push(t),c=0}return o}generateFromWords(t,e,i){var n=t?new h.a(t):void 0;return this.q.pause(),this._locationsWords=[],this._wordCounter=0,this.spine.each(function(t){t.linear&&(n?t.index>=n.spinePos&&this.q.enqueue(this.processWords.bind(this),t,e,n,i):this.q.enqueue(this.processWords.bind(this),t,e,n,i))}.bind(this)),this.q.run().then(function(){return this._currentCfi&&(this.currentLocation=this._currentCfi),this._locationsWords}.bind(this))}processWords(t,e,i,n){return n&&this._locationsWords.length>=n?Promise.resolve():t.load(this.request).then(function(s){var o=new r.defer,a=this.parseWords(s,t,e,i),h=n-this._locationsWords.length;return this._locationsWords=this._locationsWords.concat(a.length>=n?a.slice(0,h):a),t.unload(),this.processingTimeout=setTimeout((()=>o.resolve(a)),this.pause),o.promise}.bind(this))}countWords(t){return(t=(t=(t=t.replace(/(^\s*)|(\s*$)/gi,"")).replace(/[ ]{2,}/gi," ")).replace(/\n /,"\n")).split(" ").length}parseWords(t,e,i,n){var s,o=e.cfiBase,a=[],l=t.ownerDocument,c=Object(r.qs)(l,"body"),u=i,d=!n||n.spinePos!==e.index;return n&&e.index===n.spinePos&&(s=n.findNode(n.range?n.path.steps.concat(n.start.steps):n.path.steps,t.ownerDocument)),Object(r.sprint)(c,function(t){if(!d){if(t!==s)return!1;d=!0}if(t.textContent.length<10&&0===t.textContent.trim().length)return!1;var e,i=this.countWords(t.textContent),n=0;if(0===i)return!1;for((e=u-this._wordCounter)>i&&(this._wordCounter+=i,n=i);n=i)this._wordCounter+=i-n,n=i;else{n+=e;let i=new h.a(t,o);a.push({cfi:i.toString(),wordCount:this._wordCounter}),this._wordCounter=0}}.bind(this)),a}locationFromCfi(t){let e;return h.a.prototype.isCfiString(t)&&(t=new h.a(t)),0===this._locations.length?-1:(e=Object(r.locationOf)(t,this._locations,this.epubcfi.compare),e>this.total?this.total:e)}percentageFromCfi(t){if(0===this._locations.length)return null;var e=this.locationFromCfi(t);return this.percentageFromLocation(e)}percentageFromLocation(t){return t&&this.total?t/this.total:0}cfiFromLocation(t){var e=-1;return"number"!=typeof t&&(t=parseInt(t)),t>=0&&t1&&console.warn("Normalize cfiFromPercentage value to between 0 - 1"),t>=1){let t=new h.a(this._locations[this.total]);return t.collapse(),t.toString()}return e=Math.ceil(this.total*t),this.cfiFromLocation(e)}load(t){return this._locations="string"==typeof t?JSON.parse(t):t,this.total=this._locations.length-1,this._locations}save(){return JSON.stringify(this._locations)}getCurrent(){return this._current}setCurrent(t){var e;if("string"==typeof t)this._currentCfi=t;else{if("number"!=typeof t)return;this._current=t}0!==this._locations.length&&("string"==typeof t?(e=this.locationFromCfi(t),this._current=e):e=t,this.emit(m.c.LOCATIONS.CHANGED,{percentage:this.percentageFromLocation(e)}))}get currentLocation(){return this._current}set currentLocation(t){this.setCurrent(t)}length(){return this._locations.length}destroy(){this.spine=void 0,this.request=void 0,this.pause=void 0,this.q.stop(),this.q=void 0,this.epubcfi=void 0,this._locations=void 0,this.total=void 0,this.break=void 0,this._current=void 0,this.currentLocation=void 0,this._currentCfi=void 0,clearTimeout(this.processingTimeout)}}s()(v.prototype);var y=v,b=i(7),w=i.n(b),x=class{constructor(t){this.packagePath="",this.directory="",this.encoding="",t&&this.parse(t)}parse(t){var e;if(!t)throw new Error("Container File Not Found");if(!(e=Object(r.qs)(t,"rootfile")))throw new Error("No RootFile Found");this.packagePath=e.getAttribute("full-path"),this.directory=w.a.dirname(this.packagePath),this.encoding=t.xmlEncoding}destroy(){this.packagePath=void 0,this.directory=void 0,this.encoding=void 0}},E=class{constructor(t){this.manifest={},this.navPath="",this.ncxPath="",this.coverPath="",this.spineNodeIndex=0,this.spine=[],this.metadata={},t&&this.parse(t)}parse(t){var e,i,n;if(!t)throw new Error("Package File Not Found");if(!(e=Object(r.qs)(t,"metadata")))throw new Error("No Metadata Found");if(!(i=Object(r.qs)(t,"manifest")))throw new Error("No Manifest Found");if(!(n=Object(r.qs)(t,"spine")))throw new Error("No Spine Found");return this.manifest=this.parseManifest(i),this.navPath=this.findNavPath(i),this.ncxPath=this.findNcxPath(i,n),this.coverPath=this.findCoverPath(t),this.spineNodeIndex=Object(r.indexOfElementNode)(n),this.spine=this.parseSpine(n,this.manifest),this.uniqueIdentifier=this.findUniqueIdentifier(t),this.metadata=this.parseMetadata(e),this.metadata.direction=n.getAttribute("page-progression-direction"),{metadata:this.metadata,spine:this.spine,manifest:this.manifest,navPath:this.navPath,ncxPath:this.ncxPath,coverPath:this.coverPath,spineNodeIndex:this.spineNodeIndex}}parseMetadata(t){var e={};return e.title=this.getElementText(t,"title"),e.creator=this.getElementText(t,"creator"),e.description=this.getElementText(t,"description"),e.pubdate=this.getElementText(t,"date"),e.publisher=this.getElementText(t,"publisher"),e.identifier=this.getElementText(t,"identifier"),e.language=this.getElementText(t,"language"),e.rights=this.getElementText(t,"rights"),e.modified_date=this.getPropertyText(t,"dcterms:modified"),e.layout=this.getPropertyText(t,"rendition:layout"),e.orientation=this.getPropertyText(t,"rendition:orientation"),e.flow=this.getPropertyText(t,"rendition:flow"),e.viewport=this.getPropertyText(t,"rendition:viewport"),e.media_active_class=this.getPropertyText(t,"media:active-class"),e.spread=this.getPropertyText(t,"rendition:spread"),e}parseManifest(t){var e={},i=Object(r.qsa)(t,"item");return Array.prototype.slice.call(i).forEach((function(t){var i=t.getAttribute("id"),n=t.getAttribute("href")||"",s=t.getAttribute("media-type")||"",r=t.getAttribute("media-overlay")||"",o=t.getAttribute("properties")||"";e[i]={href:n,type:s,overlay:r,properties:o.length?o.split(" "):[]}})),e}parseSpine(t,e){var i=[],n=Object(r.qsa)(t,"itemref");return Array.prototype.slice.call(n).forEach((function(t,e){var n=t.getAttribute("idref"),s=t.getAttribute("properties")||"",r=s.length?s.split(" "):[],o={id:t.getAttribute("id"),idref:n,linear:t.getAttribute("linear")||"yes",properties:r,index:e};i.push(o)})),i}findUniqueIdentifier(t){var e=t.documentElement.getAttribute("unique-identifier");if(!e)return"";var i=t.getElementById(e);return i&&"identifier"===i.localName&&"http://purl.org/dc/elements/1.1/"===i.namespaceURI&&i.childNodes.length>0?i.childNodes[0].nodeValue.trim():""}findNavPath(t){var e=Object(r.qsp)(t,"item",{properties:"nav"});return!!e&&e.getAttribute("href")}findNcxPath(t,e){var i,n=Object(r.qsp)(t,"item",{"media-type":"application/x-dtbncx+xml"});return n||(i=e.getAttribute("toc"))&&(n=t.querySelector("#"+i)),!!n&&n.getAttribute("href")}findCoverPath(t){Object(r.qs)(t,"package").getAttribute("version");var e=Object(r.qsp)(t,"item",{properties:"cover-image"});if(e)return e.getAttribute("href");var i=Object(r.qsp)(t,"meta",{name:"cover"});if(i){var n=i.getAttribute("content"),s=t.getElementById(n);return s?s.getAttribute("href"):""}return!1}getElementText(t,e){var i,n=t.getElementsByTagNameNS("http://purl.org/dc/elements/1.1/",e);return n&&0!==n.length&&(i=n[0]).childNodes.length?i.childNodes[0].nodeValue:""}getPropertyText(t,e){var i=Object(r.qsp)(t,"meta",{property:e});return i&&i.childNodes.length?i.childNodes[0].nodeValue:""}load(t){this.metadata=t.metadata;let e=t.readingOrder||t.spine;return this.spine=e.map(((t,e)=>(t.index=e,t.linear=t.linear||"yes",t))),t.resources.forEach(((t,e)=>{this.manifest[e]=t,t.rel&&"cover"===t.rel[0]&&(this.coverPath=t.href)})),this.spineNodeIndex=0,this.toc=t.toc.map(((t,e)=>(t.label=t.title,t))),{metadata:this.metadata,spine:this.spine,manifest:this.manifest,navPath:this.navPath,ncxPath:this.ncxPath,coverPath:this.coverPath,spineNodeIndex:this.spineNodeIndex,toc:this.toc}}destroy(){this.manifest=void 0,this.navPath=void 0,this.ncxPath=void 0,this.coverPath=void 0,this.spineNodeIndex=void 0,this.spine=void 0,this.metadata=void 0}},S=class{constructor(t){this.toc=[],this.tocByHref={},this.tocById={},this.landmarks=[],this.landmarksByType={},this.length=0,t&&this.parse(t)}parse(t){let e,i,n=t.nodeType;n&&(e=Object(r.qs)(t,"html"),i=Object(r.qs)(t,"ncx")),n?e?(this.toc=this.parseNav(t),this.landmarks=this.parseLandmarks(t)):i&&(this.toc=this.parseNcx(t)):this.toc=this.load(t),this.length=0,this.unpack(this.toc)}unpack(t){for(var e,i=0;i(t.label=t.title,t.subitems=t.children?this.load(t.children):[],t)))}forEach(t){return this.toc.forEach(t)}},N={application:{ecmascript:["es","ecma"],javascript:"js",ogg:"ogx",pdf:"pdf",postscript:["ps","ai","eps","epsi","epsf","eps2","eps3"],"rdf+xml":"rdf",smil:["smi","smil"],"xhtml+xml":["xhtml","xht"],xml:["xml","xsl","xsd","opf","ncx"],zip:"zip","x-httpd-eruby":"rhtml","x-latex":"latex","x-maker":["frm","maker","frame","fm","fb","book","fbdoc"],"x-object":"o","x-shockwave-flash":["swf","swfl"],"x-silverlight":"scr","epub+zip":"epub","font-tdpfr":"pfr","inkml+xml":["ink","inkml"],json:"json","jsonml+json":"jsonml","mathml+xml":"mathml","metalink+xml":"metalink",mp4:"mp4s","omdoc+xml":"omdoc",oxps:"oxps","vnd.amazon.ebook":"azw",widget:"wgt","x-dtbook+xml":"dtb","x-dtbresource+xml":"res","x-font-bdf":"bdf","x-font-ghostscript":"gsf","x-font-linux-psf":"psf","x-font-otf":"otf","x-font-pcf":"pcf","x-font-snf":"snf","x-font-ttf":["ttf","ttc"],"x-font-type1":["pfa","pfb","pfm","afm"],"x-font-woff":"woff","x-mobipocket-ebook":["prc","mobi"],"x-mspublisher":"pub","x-nzb":"nzb","x-tgif":"obj","xaml+xml":"xaml","xml-dtd":"dtd","xproc+xml":"xpl","xslt+xml":"xslt","internet-property-stream":"acx","x-compress":"z","x-compressed":"tgz","x-gzip":"gz"},audio:{flac:"flac",midi:["mid","midi","kar","rmi"],mpeg:["mpga","mpega","mp2","mp3","m4a","mp2a","m2a","m3a"],mpegurl:"m3u",ogg:["oga","ogg","spx"],"x-aiff":["aif","aiff","aifc"],"x-ms-wma":"wma","x-wav":"wav",adpcm:"adp",mp4:"mp4a",webm:"weba","x-aac":"aac","x-caf":"caf","x-matroska":"mka","x-pn-realaudio-plugin":"rmp",xm:"xm",mid:["mid","rmi"]},image:{gif:"gif",ief:"ief",jpeg:["jpeg","jpg","jpe"],pcx:"pcx",png:"png","svg+xml":["svg","svgz"],tiff:["tiff","tif"],"x-icon":"ico",bmp:"bmp",webp:"webp","x-pict":["pic","pct"],"x-tga":"tga","cis-cod":"cod"},text:{"cache-manifest":["manifest","appcache"],css:"css",csv:"csv",html:["html","htm","shtml","stm"],mathml:"mml",plain:["txt","text","brf","conf","def","list","log","in","bas"],richtext:"rtx","tab-separated-values":"tsv","x-bibtex":"bib"},video:{mpeg:["mpeg","mpg","mpe","m1v","m2v","mp2","mpa","mpv2"],mp4:["mp4","mp4v","mpg4"],quicktime:["qt","mov"],ogg:"ogv","vnd.mpegurl":["mxu","m4u"],"x-flv":"flv","x-la-asf":["lsf","lsx"],"x-mng":"mng","x-ms-asf":["asf","asx","asr"],"x-ms-wm":"wm","x-ms-wmv":"wmv","x-ms-wmx":"wmx","x-ms-wvx":"wvx","x-msvideo":"avi","x-sgi-movie":"movie","x-matroska":["mpv","mkv","mk3d","mks"],"3gpp2":"3g2",h261:"h261",h263:"h263",h264:"h264",jpeg:"jpgv",jpm:["jpm","jpgm"],mj2:["mj2","mjp2"],"vnd.ms-playready.media.pyv":"pyv","vnd.uvvu.mp4":["uvu","uvvu"],"vnd.vivo":"viv",webm:"webm","x-f4v":"f4v","x-m4v":"m4v","x-ms-vob":"vob","x-smv":"smv"}},_=function(){var t,e,i,n,s={};for(t in N)if(N.hasOwnProperty(t))for(e in N[t])if(N[t].hasOwnProperty(e))if("string"==typeof(i=N[t][e]))s[i]=t+"/"+e;else for(n=0;nObject(r.blob2base64)(t))).then((t=>Object(r.createBase64Url)(t,i))):this.settings.request(t,"blob").then((t=>Object(r.createBlobUrl)(t,i)))}replacements(){if("none"===this.settings.replacements)return new Promise(function(t){t(this.urls)}.bind(this));var t=this.urls.map((t=>{var e=this.settings.resolver(t);return this.createUrl(e).catch((t=>(console.error(t),null)))}));return Promise.all(t).then((t=>(this.replacementUrls=t.filter((t=>"string"==typeof t)),t)))}replaceCss(t,e){var i=[];return t=t||this.settings.archive,e=e||this.settings.resolver,this.cssUrls.forEach(function(n){var s=this.createCssFile(n,t,e).then(function(t){var e=this.urls.indexOf(n);e>-1&&(this.replacementUrls[e]=t)}.bind(this));i.push(s)}.bind(this)),Promise.all(i)}createCssFile(t){if(w.a.isAbsolute(t))return new Promise((function(t){t()}));var e,i=this.settings.resolver(t);e=this.settings.archive?this.settings.archive.getText(i):this.settings.request(i,"text");var n=this.urls.map((t=>{var e=this.settings.resolver(t);return new a.a(i).relative(e)}));return e?e.then((t=>(t=Object(c.e)(t,n,this.replacementUrls),"base64"===this.settings.replacements?Object(r.createBase64Url)(t,"text/css"):Object(r.createBlobUrl)(t,"text/css"))),(t=>new Promise((function(t){t()})))):new Promise((function(t){t()}))}relativeTo(t,e){return e=e||this.settings.resolver,this.urls.map(function(i){var n=e(i);return new a.a(t).relative(n)}.bind(this))}get(t){var e=this.urls.indexOf(t);if(-1!==e)return this.replacementUrls.length?new Promise(function(t,i){t(this.replacementUrls[e])}.bind(this)):this.createUrl(t)}substitute(t,e){var i;return i=e?this.relativeTo(e):this.urls,Object(c.e)(t,i,this.replacementUrls)}destroy(){this.settings=void 0,this.manifest=void 0,this.resources=void 0,this.replacementUrls=void 0,this.html=void 0,this.assets=void 0,this.css=void 0,this.urls=void 0,this.cssUrls=void 0}},O=class{constructor(t){this.pages=[],this.locations=[],this.epubcfi=new h.a,this.firstPage=0,this.lastPage=0,this.totalPages=0,this.toc=void 0,this.ncx=void 0,t&&(this.pageList=this.parse(t)),this.pageList&&this.pageList.length&&this.process(this.pageList)}parse(t){var e=Object(r.qs)(t,"html"),i=Object(r.qs)(t,"ncx");return e?this.parseNav(t):i?this.parseNcx(t):void 0}parseNav(t){var e,i,n=Object(r.querySelectorByType)(t,"nav","page-list"),s=n?Object(r.qsa)(n,"li"):[],o=s.length,a=[];if(!s||0===o)return a;for(e=0;e1&&e[1],href:s,packageUrl:i,page:a}):{href:s,page:a}}process(t){t.forEach((function(t){this.pages.push(t.page),t.cfi&&this.locations.push(t.cfi)}),this),this.firstPage=parseInt(this.pages[0]),this.lastPage=parseInt(this.pages[this.pages.length-1]),this.totalPages=this.lastPage-this.firstPage}pageFromCfi(t){var e=-1;if(0===this.locations.length)return-1;var i=Object(r.indexOfSorted)(t,this.locations,this.epubcfi.compare);return-1!=i?e=this.pages[i]:void 0!==(e=(i=Object(r.locationOf)(t,this.locations,this.epubcfi.compare))-1>=0?this.pages[i-1]:this.pages[0])||(e=-1),e}cfiFromPage(t){var e=-1;"number"!=typeof t&&(t=parseInt(t));var i=this.pages.indexOf(t);return-1!=i&&(e=this.locations[i]),e}pageFromPercentage(t){return Math.round(this.totalPages*t)}percentageFromPage(t){var e=(t-this.firstPage)/this.totalPages;return Math.round(1e3*e)/1e3}percentageFromCfi(t){var e=this.pageFromCfi(t);return this.percentageFromPage(e)}destroy(){this.pages=void 0,this.locations=void 0,this.epubcfi=void 0,this.pageList=void 0,this.toc=void 0,this.ncx=void 0}},I=i(16),R=i(29),k=i.n(R),A=class{constructor(){this.zip=void 0,this.urlCache={},this.checkRequirements()}checkRequirements(){try{this.zip=new k.a}catch(t){throw new Error("JSZip lib not loaded")}}open(t,e){return this.zip.loadAsync(t,{base64:e})}openUrl(t,e){return u(t,"binary").then(function(t){return this.zip.loadAsync(t,{base64:e})}.bind(this))}request(t,e){var i,n=new r.defer,s=new a.a(t);return e||(e=s.extension),(i="blob"==e?this.getBlob(t):this.getText(t))?i.then(function(t){let i=this.handleResponse(t,e);n.resolve(i)}.bind(this)):n.reject({message:"File not found in the epub: "+t,stack:(new Error).stack}),n.promise}handleResponse(t,e){return"json"==e?JSON.parse(t):Object(r.isXml)(e)?Object(r.parse)(t,"text/xml"):"xhtml"==e?Object(r.parse)(t,"application/xhtml+xml"):"html"==e||"htm"==e?Object(r.parse)(t,"text/html"):t}getBlob(t,e){var i=window.decodeURIComponent(t.substr(1)),n=this.zip.file(i);if(n)return e=e||T(n.name),n.async("uint8array").then((function(t){return new Blob([t],{type:e})}))}getText(t,e){var i=window.decodeURIComponent(t.substr(1)),n=this.zip.file(i);if(n)return n.async("string").then((function(t){return t}))}getBase64(t,e){var i=window.decodeURIComponent(t.substr(1)),n=this.zip.file(i);if(n)return e=e||T(n.name),n.async("base64").then((function(t){return"data:"+e+";base64,"+t}))}createUrl(t,e){var i,n,s=new r.defer,o=window.URL||window.webkitURL||window.mozURL,a=e&&e.base64;return t in this.urlCache?(s.resolve(this.urlCache[t]),s.promise):(a?(n=this.getBase64(t))&&n.then(function(e){this.urlCache[t]=e,s.resolve(e)}.bind(this)):(n=this.getBlob(t))&&n.then(function(e){i=o.createObjectURL(e),this.urlCache[t]=i,s.resolve(i)}.bind(this)),n||s.reject({message:"File not found in the epub: "+t,stack:(new Error).stack}),s.promise)}revokeUrl(t){var e=window.URL||window.webkitURL||window.mozURL,i=this.urlCache[t];i&&e.revokeObjectURL(i)}destroy(){var t=window.URL||window.webkitURL||window.mozURL;for(let e in this.urlCache)t.revokeObjectURL(e);this.zip=void 0,this.urlCache={}}},L=i(23),j=i.n(L);class D{constructor(t,e,i){this.urlCache={},this.storage=void 0,this.name=t,this.requester=e||u,this.resolver=i,this.online=!0,this.checkRequirements(),this.addListeners()}checkRequirements(){try{let t;void 0===j.a&&(t=j.a),this.storage=t.createInstance({name:this.name})}catch(t){throw new Error("localForage lib not loaded")}}addListeners(){this._status=this.status.bind(this),window.addEventListener("online",this._status),window.addEventListener("offline",this._status)}removeListeners(){window.removeEventListener("online",this._status),window.removeEventListener("offline",this._status),this._status=void 0}status(t){let e=navigator.onLine;this.online=e,e?this.emit("online",this):this.emit("offline",this)}add(t,e){let i=t.resources.map((t=>{let{href:i}=t,n=this.resolver(i),s=window.encodeURIComponent(n);return this.storage.getItem(s).then((t=>!t||e?this.requester(n,"binary").then((t=>this.storage.setItem(s,t))):t))}));return Promise.all(i)}put(t,e,i){let n=window.encodeURIComponent(t);return this.storage.getItem(n).then((s=>s||this.requester(t,"binary",e,i).then((t=>this.storage.setItem(n,t)))))}request(t,e,i,n){return this.online?this.requester(t,e,i,n).then((e=>(this.put(t),e))):this.retrieve(t,e)}retrieve(t,e){new r.defer;var i=new a.a(t);return e||(e=i.extension),("blob"==e?this.getBlob(t):this.getText(t)).then((i=>{var n,s=new r.defer;return i?(n=this.handleResponse(i,e),s.resolve(n)):s.reject({message:"File not found in storage: "+t,stack:(new Error).stack}),s.promise}))}handleResponse(t,e){return"json"==e?JSON.parse(t):Object(r.isXml)(e)?Object(r.parse)(t,"text/xml"):"xhtml"==e?Object(r.parse)(t,"application/xhtml+xml"):"html"==e||"htm"==e?Object(r.parse)(t,"text/html"):t}getBlob(t,e){let i=window.encodeURIComponent(t);return this.storage.getItem(i).then((function(i){if(i)return e=e||T(t),new Blob([i],{type:e})}))}getText(t,e){let i=window.encodeURIComponent(t);return e=e||T(t),this.storage.getItem(i).then((function(t){var i,n=new r.defer,s=new FileReader;if(t)return i=new Blob([t],{type:e}),s.addEventListener("loadend",(()=>{n.resolve(s.result)})),s.readAsText(i,e),n.promise}))}getBase64(t,e){let i=window.encodeURIComponent(t);return e=e||T(t),this.storage.getItem(i).then((t=>{var i,n=new r.defer,s=new FileReader;if(t)return i=new Blob([t],{type:e}),s.addEventListener("loadend",(()=>{n.resolve(s.result)})),s.readAsDataURL(i,e),n.promise}))}createUrl(t,e){var i,n,s=new r.defer,o=window.URL||window.webkitURL||window.mozURL,a=e&&e.base64;return t in this.urlCache?(s.resolve(this.urlCache[t]),s.promise):(a?(n=this.getBase64(t))&&n.then(function(e){this.urlCache[t]=e,s.resolve(e)}.bind(this)):(n=this.getBlob(t))&&n.then(function(e){i=o.createObjectURL(e),this.urlCache[t]=i,s.resolve(i)}.bind(this)),n||s.reject({message:"File not found in storage: "+t,stack:(new Error).stack}),s.promise)}revokeUrl(t){var e=window.URL||window.webkitURL||window.mozURL,i=this.urlCache[t];i&&e.revokeObjectURL(i)}destroy(){var t=window.URL||window.webkitURL||window.mozURL;for(let e in this.urlCache)t.revokeObjectURL(e);this.urlCache={},this.removeListeners()}}s()(D.prototype);var P=D,M=class{constructor(t){this.interactive="",this.fixedLayout="",this.openToSpread="",this.orientationLock="",t&&this.parse(t)}parse(t){if(!t)return this;const e=Object(r.qs)(t,"display_options");return e?(Object(r.qsa)(e,"option").forEach((t=>{let e="";switch(t.childNodes.length&&(e=t.childNodes[0].nodeValue),t.attributes.name.value){case"interactive":this.interactive=e;break;case"fixed-layout":this.fixedLayout=e;break;case"open-to-spread":this.openToSpread=e;break;case"orientation-lock":this.orientationLock=e}})),this):this}destroy(){this.interactive=void 0,this.fixedLayout=void 0,this.openToSpread=void 0,this.orientationLock=void 0}};const z="binary",B="base64",q="epub",F="json";class U{constructor(t,e){void 0===e&&"string"!=typeof t&&t instanceof Blob==0&&t instanceof ArrayBuffer==0&&(e=t,t=void 0),this.settings=Object(r.extend)(this.settings||{},{requestMethod:void 0,requestCredentials:void 0,requestHeaders:void 0,encoding:void 0,replacements:void 0,canonical:void 0,openAs:void 0,store:void 0}),Object(r.extend)(this.settings,e),this.opening=new r.defer,this.opened=this.opening.promise,this.isOpen=!1,this.loading={manifest:new r.defer,spine:new r.defer,metadata:new r.defer,cover:new r.defer,navigation:new r.defer,pageList:new r.defer,resources:new r.defer,displayOptions:new r.defer},this.loaded={manifest:this.loading.manifest.promise,spine:this.loading.spine.promise,metadata:this.loading.metadata.promise,cover:this.loading.cover.promise,navigation:this.loading.navigation.promise,pageList:this.loading.pageList.promise,resources:this.loading.resources.promise,displayOptions:this.loading.displayOptions.promise},this.ready=Promise.all([this.loaded.manifest,this.loaded.spine,this.loaded.metadata,this.loaded.cover,this.loaded.navigation,this.loaded.resources,this.loaded.displayOptions]),this.isRendered=!1,this.request=this.settings.requestMethod||u,this.spine=new p,this.locations=new y(this.spine,this.load.bind(this)),this.navigation=void 0,this.pageList=void 0,this.url=void 0,this.path=void 0,this.archived=!1,this.archive=void 0,this.storage=void 0,this.resources=void 0,this.rendition=void 0,this.container=void 0,this.packaging=void 0,this.displayOptions=void 0,this.settings.store&&this.store(this.settings.store),t&&this.open(t,this.settings.openAs).catch((e=>{var i=new Error("Cannot load book at "+t);this.emit(m.c.BOOK.OPEN_FAILED,i)}))}open(t,e){var i,n=e||this.determineType(t);return n===z?(this.archived=!0,this.url=new o.a("/",""),i=this.openEpub(t)):n===B?(this.archived=!0,this.url=new o.a("/",""),i=this.openEpub(t,n)):n===q?(this.archived=!0,this.url=new o.a("/",""),i=this.request(t,"binary",this.settings.requestCredentials,this.settings.requestHeaders).then(this.openEpub.bind(this))):"opf"==n?(this.url=new o.a(t),i=this.openPackaging(this.url.Path.toString())):n==F?(this.url=new o.a(t),i=this.openManifest(this.url.Path.toString())):(this.url=new o.a(t),i=this.openContainer("META-INF/container.xml").then(this.openPackaging.bind(this))),i}openEpub(t,e){return this.unarchive(t,e||this.settings.encoding).then((()=>this.openContainer("META-INF/container.xml"))).then((t=>this.openPackaging(t)))}openContainer(t){return this.load(t).then((t=>(this.container=new x(t),this.resolve(this.container.packagePath))))}openPackaging(t){return this.path=new a.a(t),this.load(t).then((t=>(this.packaging=new E(t),this.unpack(this.packaging))))}openManifest(t){return this.path=new a.a(t),this.load(t).then((t=>(this.packaging=new E,this.packaging.load(t),this.unpack(this.packaging))))}load(t){var e=this.resolve(t);return this.archived?this.archive.request(e):this.request(e,null,this.settings.requestCredentials,this.settings.requestHeaders)}resolve(t,e){if(t){var i=t;return t.indexOf("://")>-1?t:(this.path&&(i=this.path.resolve(t)),0!=e&&this.url&&(i=this.url.resolve(i)),i)}}canonical(t){return t?this.settings.canonical?this.settings.canonical(t):this.resolve(t,!0):""}determineType(t){var e;return"base64"===this.settings.encoding?B:"string"!=typeof t?z:((e=new o.a(t).path().extension)&&(e=e.replace(/\?.*$/,"")),e?"epub"===e?q:"opf"===e?"opf":"json"===e?F:void 0:"directory")}unpack(t){this.package=t,""===this.packaging.metadata.layout?this.load(this.url.resolve("META-INF/com.apple.ibooks.display-options.xml")).then((t=>{this.displayOptions=new M(t),this.loading.displayOptions.resolve(this.displayOptions)})).catch((t=>{this.displayOptions=new M,this.loading.displayOptions.resolve(this.displayOptions)})):(this.displayOptions=new M,this.loading.displayOptions.resolve(this.displayOptions)),this.spine.unpack(this.packaging,this.resolve.bind(this),this.canonical.bind(this)),this.resources=new C(this.packaging.manifest,{archive:this.archive,resolver:this.resolve.bind(this),request:this.request.bind(this),replacements:this.settings.replacements||(this.archived?"blobUrl":"base64")}),this.loadNavigation(this.packaging).then((()=>{this.loading.navigation.resolve(this.navigation)})),this.packaging.coverPath&&(this.cover=this.resolve(this.packaging.coverPath)),this.loading.manifest.resolve(this.packaging.manifest),this.loading.metadata.resolve(this.packaging.metadata),this.loading.spine.resolve(this.spine),this.loading.cover.resolve(this.cover),this.loading.resources.resolve(this.resources),this.loading.pageList.resolve(this.pageList),this.isOpen=!0,this.archived||this.settings.replacements&&"none"!=this.settings.replacements?this.replacements().then((()=>{this.loaded.displayOptions.then((()=>{this.opening.resolve(this)}))})).catch((t=>{console.error(t)})):this.loaded.displayOptions.then((()=>{this.opening.resolve(this)}))}loadNavigation(t){let e=t.navPath||t.ncxPath,i=t.toc;return i?new Promise(((e,n)=>{this.navigation=new S(i),t.pageList&&(this.pageList=new O(t.pageList)),e(this.navigation)})):e?this.load(e,"xml").then((t=>(this.navigation=new S(t),this.pageList=new O(t),this.navigation))):new Promise(((t,e)=>{this.navigation=new S,this.pageList=new O,t(this.navigation)}))}section(t){return this.spine.get(t)}renderTo(t,e){return this.rendition=new I.a(this,e),this.rendition.attachTo(t),this.rendition}setRequestCredentials(t){this.settings.requestCredentials=t}setRequestHeaders(t){this.settings.requestHeaders=t}unarchive(t,e){return this.archive=new A,this.archive.open(t,e)}store(t){let e=this.settings.replacements&&"none"!==this.settings.replacements,i=this.url,n=this.settings.requestMethod||u.bind(this);return this.storage=new P(t,n,this.resolve.bind(this)),this.request=this.storage.request.bind(this.storage),this.opened.then((()=>{this.archived&&(this.storage.requester=this.archive.request.bind(this.archive));let t=(t,e)=>{e.output=this.resources.substitute(t,e.url)};this.resources.settings.replacements=e||"blobUrl",this.resources.replacements().then((()=>this.resources.replaceCss())),this.storage.on("offline",(()=>{this.url=new o.a("/",""),this.spine.hooks.serialize.register(t)})),this.storage.on("online",(()=>{this.url=i,this.spine.hooks.serialize.deregister(t)}))})),this.storage}coverUrl(){return this.loaded.cover.then((()=>this.cover?this.archived?this.archive.createUrl(this.cover):this.cover:null))}replacements(){return this.spine.hooks.serialize.register(((t,e)=>{e.output=this.resources.substitute(t,e.url)})),this.resources.replacements().then((()=>this.resources.replaceCss()))}getRange(t){var e=new h.a(t),i=this.spine.get(e.spinePos),n=this.load.bind(this);return i?i.load(n).then((function(t){return e.toRange(i.document)})):new Promise(((t,e)=>{e("CFI could not be found")}))}key(t){var e=t||this.packaging.metadata.identifier||this.url.filename;return`epubjs:${m.b}:${e}`}destroy(){this.opened=void 0,this.loading=void 0,this.loaded=void 0,this.ready=void 0,this.isOpen=!1,this.isRendered=!1,this.spine&&this.spine.destroy(),this.locations&&this.locations.destroy(),this.pageList&&this.pageList.destroy(),this.archive&&this.archive.destroy(),this.resources&&this.resources.destroy(),this.container&&this.container.destroy(),this.packaging&&this.packaging.destroy(),this.rendition&&this.rendition.destroy(),this.displayOptions&&this.displayOptions.destroy(),this.spine=void 0,this.locations=void 0,this.pageList=void 0,this.archive=void 0,this.resources=void 0,this.container=void 0,this.packaging=void 0,this.rendition=void 0,this.navigation=void 0,this.url=void 0,this.path=void 0,this.archived=!1}}s()(U.prototype),e.a=U},function(t,e,i){var n=i(14).NAMESPACE;function s(t){return""!==t}function r(t,e){return t.hasOwnProperty(e)||(t[e]=!0),t}function o(t){if(!t)return[];var e=function(t){return t?t.split(/[\t\n\f\r ]+/).filter(s):[]}(t);return Object.keys(e.reduce(r,{}))}function a(t,e){for(var i in t)e[i]=t[i]}function h(t,e){var i=t.prototype;if(!(i instanceof e)){function n(){}n.prototype=e.prototype,a(i,n=new n),t.prototype=i=n}i.constructor!=t&&("function"!=typeof t&&console.error("unknown Class:"+t),i.constructor=t)}var l={},c=l.ELEMENT_NODE=1,u=l.ATTRIBUTE_NODE=2,d=l.TEXT_NODE=3,f=l.CDATA_SECTION_NODE=4,p=l.ENTITY_REFERENCE_NODE=5,g=l.ENTITY_NODE=6,m=l.PROCESSING_INSTRUCTION_NODE=7,v=l.COMMENT_NODE=8,y=l.DOCUMENT_NODE=9,b=l.DOCUMENT_TYPE_NODE=10,w=l.DOCUMENT_FRAGMENT_NODE=11,x=l.NOTATION_NODE=12,E={},S={},N=(E.INDEX_SIZE_ERR=(S[1]="Index size error",1),E.DOMSTRING_SIZE_ERR=(S[2]="DOMString size error",2),E.HIERARCHY_REQUEST_ERR=(S[3]="Hierarchy request error",3)),_=(E.WRONG_DOCUMENT_ERR=(S[4]="Wrong document",4),E.INVALID_CHARACTER_ERR=(S[5]="Invalid character",5),E.NO_DATA_ALLOWED_ERR=(S[6]="No data allowed",6),E.NO_MODIFICATION_ALLOWED_ERR=(S[7]="No modification allowed",7),E.NOT_FOUND_ERR=(S[8]="Not found",8)),T=(E.NOT_SUPPORTED_ERR=(S[9]="Not supported",9),E.INUSE_ATTRIBUTE_ERR=(S[10]="Attribute in use",10));function C(t,e){if(e instanceof Error)var i=e;else i=this,Error.call(this,S[t]),this.message=S[t],Error.captureStackTrace&&Error.captureStackTrace(this,C);return i.code=t,e&&(this.message=this.message+": "+e),i}function O(){}function I(t,e){this._node=t,this._refresh=e,R(this)}function R(t){var e=t._node._inc||t._node.ownerDocument._inc;if(t._inc!=e){var i=t._refresh(t._node);at(t,"length",i.length),a(i,t),t._inc=e}}function k(){}function A(t,e){for(var i=t.length;i--;)if(t[i]===e)return i}function L(t,e,i,s){if(s?e[A(e,s)]=i:e[e.length++]=i,t){i.ownerElement=t;var r=t.ownerDocument;r&&(s&&q(r,t,s),function(t,e,i){t&&t._inc++,i.namespaceURI===n.XMLNS&&(e._nsMap[i.prefix?i.localName:""]=i.value)}(r,t,i))}}function j(t,e,i){var n=A(e,i);if(!(n>=0))throw C(_,new Error(t.tagName+"@"+i));for(var s=e.length-1;n"==t&&">")||"&"==t&&"&"||'"'==t&&"""||"&#"+t.charCodeAt()+";"}function z(t,e){if(e(t))return!0;if(t=t.firstChild)do{if(z(t,e))return!0}while(t=t.nextSibling)}function B(){}function q(t,e,i,s){t&&t._inc++,i.namespaceURI===n.XMLNS&&delete e._nsMap[i.prefix?i.localName:""]}function F(t,e,i){if(t&&t._inc){t._inc++;var n=e.childNodes;if(i)n[n.length++]=i;else{for(var s=e.firstChild,r=0;s;)n[r++]=s,s=s.nextSibling;n.length=r}}}function U(t,e){var i=e.previousSibling,n=e.nextSibling;return i?i.nextSibling=n:t.firstChild=n,n?n.previousSibling=i:t.lastChild=i,F(t.ownerDocument,t),e}function W(t,e,i){var n=e.parentNode;if(n&&n.removeChild(e),e.nodeType===w){var s=e.firstChild;if(null==s)return e;var r=e.lastChild}else s=r=e;var o=i?i.previousSibling:t.lastChild;s.previousSibling=o,r.nextSibling=i,o?o.nextSibling=s:t.firstChild=s,null==i?t.lastChild=r:i.previousSibling=r;do{s.parentNode=t}while(s!==r&&(s=s.nextSibling));return F(t.ownerDocument||t,t),e.nodeType==w&&(e.firstChild=e.lastChild=null),e}function H(){this._nsMap={}}function V(){}function X(){}function G(){}function Y(){}function $(){}function K(){}function Z(){}function J(){}function Q(){}function tt(){}function et(){}function it(){}function nt(t,e){var i=[],n=9==this.nodeType&&this.documentElement||this,s=n.prefix,r=n.namespaceURI;if(r&&null==s&&null==(s=n.lookupPrefix(r)))var o=[{namespace:r,prefix:null}];return ot(this,i,t,e,o),i.join("")}function st(t,e,i){var s=t.prefix||"",r=t.namespaceURI;if(!r)return!1;if("xml"===s&&r===n.XML||r===n.XMLNS)return!1;for(var o=i.length;o--;){var a=i[o];if(a.prefix===s)return a.namespace!==r}return!0}function rt(t,e,i){t.push(" ",e,'="',i.replace(/[<&"]/g,M),'"')}function ot(t,e,i,s,r){if(r||(r=[]),s){if(!(t=s(t)))return;if("string"==typeof t)return void e.push(t)}switch(t.nodeType){case c:var o=t.attributes,a=o.length,h=t.firstChild,l=t.tagName,g=l;if(!(i=n.isHTML(t.namespaceURI)||i)&&!t.prefix&&t.namespaceURI){for(var x,E=0;E=0;S--)if(""===(N=r[S]).prefix&&N.namespace===t.namespaceURI){x=N.namespace;break}if(x!==t.namespaceURI)for(S=r.length-1;S>=0;S--){var N;if((N=r[S]).namespace===t.namespaceURI){N.prefix&&(g=N.prefix+":"+l);break}}}e.push("<",g);for(var _=0;_"),i&&/^script$/i.test(l))for(;h;)h.data?e.push(h.data):ot(h,e,i,s,r.slice()),h=h.nextSibling;else for(;h;)ot(h,e,i,s,r.slice()),h=h.nextSibling;e.push("")}else e.push("/>");return;case y:case w:for(h=t.firstChild;h;)ot(h,e,i,s,r.slice()),h=h.nextSibling;return;case u:return rt(e,t.name,t.value);case d:return e.push(t.data.replace(/[<&]/g,M).replace(/]]>/g,"]]>"));case f:return e.push("");case v:return e.push("\x3c!--",t.data,"--\x3e");case b:var I=t.publicId,R=t.systemId;if(e.push("");else if(R&&"."!=R)e.push(" SYSTEM ",R,">");else{var k=t.internalSubset;k&&e.push(" [",k,"]"),e.push(">")}return;case m:return e.push("");case p:return e.push("&",t.nodeName,";");default:e.push("??",t.nodeName)}}function at(t,e,i){t[e]=i}E.INVALID_STATE_ERR=(S[11]="Invalid state",11),E.SYNTAX_ERR=(S[12]="Syntax error",12),E.INVALID_MODIFICATION_ERR=(S[13]="Invalid modification",13),E.NAMESPACE_ERR=(S[14]="Invalid namespace",14),E.INVALID_ACCESS_ERR=(S[15]="Invalid access",15),C.prototype=Error.prototype,a(E,C),O.prototype={length:0,item:function(t){return this[t]||null},toString:function(t,e){for(var i=[],n=0;n0},lookupPrefix:function(t){for(var e=this;e;){var i=e._nsMap;if(i)for(var n in i)if(i[n]==t)return n;e=e.nodeType==u?e.ownerDocument:e.parentNode}return null},lookupNamespaceURI:function(t){for(var e=this;e;){var i=e._nsMap;if(i&&t in i)return i[t];e=e.nodeType==u?e.ownerDocument:e.parentNode}return null},isDefaultNamespace:function(t){return null==this.lookupPrefix(t)}},a(l,P),a(l,P.prototype),B.prototype={nodeName:"#document",nodeType:y,doctype:null,documentElement:null,_inc:1,insertBefore:function(t,e){if(t.nodeType==w){for(var i=t.firstChild;i;){var n=i.nextSibling;this.insertBefore(i,e),i=n}return t}return null==this.documentElement&&t.nodeType==c&&(this.documentElement=t),W(this,t,e),t.ownerDocument=this,t},removeChild:function(t){return this.documentElement==t&&(this.documentElement=null),U(this,t)},importNode:function(t,e){return function t(e,i,n){var s;switch(i.nodeType){case c:(s=i.cloneNode(!1)).ownerDocument=e;case w:break;case u:n=!0}if(s||(s=i.cloneNode(!1)),s.ownerDocument=e,s.parentNode=null,n)for(var r=i.firstChild;r;)s.appendChild(t(e,r,n)),r=r.nextSibling;return s}(this,t,e)},getElementById:function(t){var e=null;return z(this.documentElement,(function(i){if(i.nodeType==c&&i.getAttribute("id")==t)return e=i,!0})),e},getElementsByClassName:function(t){var e=o(t);return new I(this,(function(i){var n=[];return e.length>0&&z(i.documentElement,(function(s){if(s!==i&&s.nodeType===c){var r=s.getAttribute("class");if(r){var a=t===r;if(!a){var h=o(r);a=e.every((l=h,function(t){return l&&-1!==l.indexOf(t)}))}a&&n.push(s)}}var l})),n}))},createElement:function(t){var e=new H;return e.ownerDocument=this,e.nodeName=t,e.tagName=t,e.localName=t,e.childNodes=new O,(e.attributes=new k)._ownerElement=e,e},createDocumentFragment:function(){var t=new tt;return t.ownerDocument=this,t.childNodes=new O,t},createTextNode:function(t){var e=new G;return e.ownerDocument=this,e.appendData(t),e},createComment:function(t){var e=new Y;return e.ownerDocument=this,e.appendData(t),e},createCDATASection:function(t){var e=new $;return e.ownerDocument=this,e.appendData(t),e},createProcessingInstruction:function(t,e){var i=new et;return i.ownerDocument=this,i.tagName=i.target=t,i.nodeValue=i.data=e,i},createAttribute:function(t){var e=new V;return e.ownerDocument=this,e.name=t,e.nodeName=t,e.localName=t,e.specified=!0,e},createEntityReference:function(t){var e=new Q;return e.ownerDocument=this,e.nodeName=t,e},createElementNS:function(t,e){var i=new H,n=e.split(":"),s=i.attributes=new k;return i.childNodes=new O,i.ownerDocument=this,i.nodeName=e,i.tagName=e,i.namespaceURI=t,2==n.length?(i.prefix=n[0],i.localName=n[1]):i.localName=e,s._ownerElement=i,i},createAttributeNS:function(t,e){var i=new V,n=e.split(":");return i.ownerDocument=this,i.nodeName=e,i.name=e,i.namespaceURI=t,i.specified=!0,2==n.length?(i.prefix=n[0],i.localName=n[1]):i.localName=e,i}},h(B,P),H.prototype={nodeType:c,hasAttribute:function(t){return null!=this.getAttributeNode(t)},getAttribute:function(t){var e=this.getAttributeNode(t);return e&&e.value||""},getAttributeNode:function(t){return this.attributes.getNamedItem(t)},setAttribute:function(t,e){var i=this.ownerDocument.createAttribute(t);i.value=i.nodeValue=""+e,this.setAttributeNode(i)},removeAttribute:function(t){var e=this.getAttributeNode(t);e&&this.removeAttributeNode(e)},appendChild:function(t){return t.nodeType===w?this.insertBefore(t,null):function(t,e){var i=e.parentNode;if(i){var n=t.lastChild;i.removeChild(e),n=t.lastChild}return n=t.lastChild,e.parentNode=t,e.previousSibling=n,e.nextSibling=null,n?n.nextSibling=e:t.firstChild=e,t.lastChild=e,F(t.ownerDocument,t,e),e}(this,t)},setAttributeNode:function(t){return this.attributes.setNamedItem(t)},setAttributeNodeNS:function(t){return this.attributes.setNamedItemNS(t)},removeAttributeNode:function(t){return this.attributes.removeNamedItem(t.nodeName)},removeAttributeNS:function(t,e){var i=this.getAttributeNodeNS(t,e);i&&this.removeAttributeNode(i)},hasAttributeNS:function(t,e){return null!=this.getAttributeNodeNS(t,e)},getAttributeNS:function(t,e){var i=this.getAttributeNodeNS(t,e);return i&&i.value||""},setAttributeNS:function(t,e,i){var n=this.ownerDocument.createAttributeNS(t,e);n.value=n.nodeValue=""+i,this.setAttributeNode(n)},getAttributeNodeNS:function(t,e){return this.attributes.getNamedItemNS(t,e)},getElementsByTagName:function(t){return new I(this,(function(e){var i=[];return z(e,(function(n){n===e||n.nodeType!=c||"*"!==t&&n.tagName!=t||i.push(n)})),i}))},getElementsByTagNameNS:function(t,e){return new I(this,(function(i){var n=[];return z(i,(function(s){s===i||s.nodeType!==c||"*"!==t&&s.namespaceURI!==t||"*"!==e&&s.localName!=e||n.push(s)})),n}))}},B.prototype.getElementsByTagName=H.prototype.getElementsByTagName,B.prototype.getElementsByTagNameNS=H.prototype.getElementsByTagNameNS,h(H,P),V.prototype.nodeType=u,h(V,P),X.prototype={data:"",substringData:function(t,e){return this.data.substring(t,t+e)},appendData:function(t){t=this.data+t,this.nodeValue=this.data=t,this.length=t.length},insertData:function(t,e){this.replaceData(t,0,e)},appendChild:function(t){throw new Error(S[N])},deleteData:function(t,e){this.replaceData(t,e,"")},replaceData:function(t,e,i){i=this.data.substring(0,t)+i+this.data.substring(t+e),this.nodeValue=this.data=i,this.length=i.length}},h(X,P),G.prototype={nodeName:"#text",nodeType:d,splitText:function(t){var e=this.data,i=e.substring(t);e=e.substring(0,t),this.data=this.nodeValue=e,this.length=e.length;var n=this.ownerDocument.createTextNode(i);return this.parentNode&&this.parentNode.insertBefore(n,this.nextSibling),n}},h(G,X),Y.prototype={nodeName:"#comment",nodeType:v},h(Y,X),$.prototype={nodeName:"#cdata-section",nodeType:f},h($,X),K.prototype.nodeType=b,h(K,P),Z.prototype.nodeType=x,h(Z,P),J.prototype.nodeType=g,h(J,P),Q.prototype.nodeType=p,h(Q,P),tt.prototype.nodeName="#document-fragment",tt.prototype.nodeType=w,h(tt,P),et.prototype.nodeType=m,h(et,P),it.prototype.serializeToString=function(t,e,i){return nt.call(t,e,i)},P.prototype.toString=nt;try{Object.defineProperty&&(Object.defineProperty(I.prototype,"length",{get:function(){return R(this),this.$$length}}),Object.defineProperty(P.prototype,"textContent",{get:function(){return function t(e){switch(e.nodeType){case c:case w:var i=[];for(e=e.firstChild;e;)7!==e.nodeType&&8!==e.nodeType&&i.push(t(e)),e=e.nextSibling;return i.join("");default:return e.nodeValue}}(this)},set:function(t){switch(this.nodeType){case c:case w:for(;this.firstChild;)this.removeChild(this.firstChild);(t||String(t))&&this.appendChild(this.ownerDocument.createTextNode(t));break;default:this.data=t,this.value=t,this.nodeValue=t}}}),at=function(t,e,i){t["$$"+e]=i})}catch(t){}e.DocumentType=K,e.DOMException=C,e.DOMImplementation=D,e.Element=H,e.Node=P,e.NodeList=O,e.XMLSerializer=it},function(t,e,i){var n=i(52),s="object"==typeof self&&self&&self.Object===Object&&self,r=n||s||Function("return this")();t.exports=r},function(t,e,i){var n=i(26).Symbol;t.exports=n},function(t,e,i){var n=i(21),s=i(19);t.exports=function(t,e,i){var r=!0,o=!0;if("function"!=typeof t)throw new TypeError("Expected a function");return s(i)&&(r="leading"in i?!!i.leading:r,o="trailing"in i?!!i.trailing:o),n(t,e,{leading:r,maxWait:e,trailing:o})}},function(e,i){e.exports=t},function(t,e,i){"use strict";i.r(e),function(t){var n=i(24),s=i(16),r=i(2),o=i(12),a=i(0),h=i(1);function l(t,e){return new n.a(t,e)}i(20),i(10),i(22),l.VERSION=h.b,void 0!==t&&(t.EPUBJS_VERSION=h.b),l.Book=n.a,l.Rendition=s.a,l.Contents=o.a,l.CFI=r.a,l.utils=a,e.default=l}.call(this,i(17))},function(t,e,i){"use strict";var n=i(32),s=i(40),r=i(41),o=i(42);(t.exports=function(t,e){var i,r,a,h,l;return arguments.length<2||"string"!=typeof t?(h=e,e=t,t=null):h=arguments[2],null==t?(i=a=!0,r=!1):(i=o.call(t,"c"),r=o.call(t,"e"),a=o.call(t,"w")),l={value:e,configurable:i,enumerable:r,writable:a},h?n(s(h),l):l}).gs=function(t,e,i){var a,h,l,c;return"string"!=typeof t?(l=i,i=e,e=t,t=null):l=arguments[3],null==e?e=void 0:r(e)?null==i?i=void 0:r(i)||(l=i,i=void 0):(l=e,e=i=void 0),null==t?(a=!0,h=!1):(a=o.call(t,"c"),h=o.call(t,"e")),c={get:e,set:i,configurable:a,enumerable:h},l?n(s(l),c):c}},function(t,e,i){"use strict";t.exports=i(33)()?Object.assign:i(34)},function(t,e,i){"use strict";t.exports=function(){var t,e=Object.assign;return"function"==typeof e&&(e(t={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),t.foo+t.bar+t.trzy==="razdwatrzy")}},function(t,e,i){"use strict";var n=i(35),s=i(39),r=Math.max;t.exports=function(t,e){var i,o,a,h=r(arguments.length,2);for(t=Object(s(t)),a=function(n){try{t[n]=e[n]}catch(t){i||(i=t)}},o=1;o-1}},function(t,e,i){"use strict";t.exports=function(t){if("function"!=typeof t)throw new TypeError(t+" is not a function");return t}},function(t,e,i){var n=i(14),s=i(25),r=i(47),o=i(48),a=s.DOMImplementation,h=n.NAMESPACE,l=o.ParseError,c=o.XMLReader;function u(t){this.options=t||{locator:{}}}function d(){this.cdata=!1}function f(t,e){e.lineNumber=t.lineNumber,e.columnNumber=t.columnNumber}function p(t){if(t)return"\n@"+(t.systemId||"")+"#[line:"+t.lineNumber+",col:"+t.columnNumber+"]"}function g(t,e,i){return"string"==typeof t?t.substr(e,i):t.length>=e+i||e?new java.lang.String(t,e,i)+"":t}function m(t,e){t.currentElement?t.currentElement.appendChild(e):t.doc.appendChild(e)}u.prototype.parseFromString=function(t,e){var i=this.options,n=new c,s=i.domBuilder||new d,o=i.errorHandler,a=i.locator,l=i.xmlns||{},u=/\/x?html?$/.test(e),f=u?r.HTML_ENTITIES:r.XML_ENTITIES;return a&&s.setDocumentLocator(a),n.errorHandler=function(t,e,i){if(!t){if(e instanceof d)return e;t=e}var n={},s=t instanceof Function;function r(e){var r=t[e];!r&&s&&(r=2==t.length?function(i){t(e,i)}:t),n[e]=r&&function(t){r("[xmldom "+e+"]\t"+t+p(i))}||function(){}}return i=i||{},r("warning"),r("error"),r("fatalError"),n}(o,s,a),n.domBuilder=i.domBuilder||s,u&&(l[""]=h.HTML),l.xml=l.xml||h.XML,t&&"string"==typeof t?n.parse(t,l,f):n.errorHandler.error("invalid doc source"),s.doc},d.prototype={startDocument:function(){this.doc=(new a).createDocument(null,null,null),this.locator&&(this.doc.documentURI=this.locator.systemId)},startElement:function(t,e,i,n){var s=this.doc,r=s.createElementNS(t,i||e),o=n.length;m(this,r),this.currentElement=r,this.locator&&f(this.locator,r);for(var a=0;a",lt:"<",quot:'"'}),e.HTML_ENTITIES=n({lt:"<",gt:">",amp:"&",quot:'"',apos:"'",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"­­",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",times:"×",divide:"÷",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",fnof:"ƒ",circ:"ˆ",tilde:"˜",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",bull:"•",hellip:"…",permil:"‰",prime:"′",Prime:"″",lsaquo:"‹",rsaquo:"›",oline:"‾",euro:"€",trade:"™",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦"}),e.entityMap=e.HTML_ENTITIES},function(t,e,i){var n=i(14).NAMESPACE,s=/[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,r=new RegExp("[\\-\\.0-9"+s.source.slice(1,-1)+"\\u00B7\\u0300-\\u036F\\u203F-\\u2040]"),o=new RegExp("^"+s.source+r.source+"*(?::"+s.source+r.source+"*)?$");function a(t,e){this.message=t,this.locator=e,Error.captureStackTrace&&Error.captureStackTrace(this,a)}function h(){}function l(t,e){return e.lineNumber=t.lineNumber,e.columnNumber=t.columnNumber,e}function c(t,e,i,s,r,o){function a(t,e,n){i.attributeNames.hasOwnProperty(t)&&o.fatalError("Attribute "+t+" redefined"),i.addValue(t,e,n)}for(var h,l=++e,c=0;;){var u=t.charAt(l);switch(u){case"=":if(1===c)h=t.slice(e,l),c=3;else{if(2!==c)throw new Error("attribute equal must after attrName");c=3}break;case"'":case'"':if(3===c||1===c){if(1===c&&(o.warning('attribute value must after "="'),h=t.slice(e,l)),e=l+1,!((l=t.indexOf(u,e))>0))throw new Error("attribute value no end '"+u+"' match");a(h,d=t.slice(e,l).replace(/&#?\w+;/g,r),e-1),c=5}else{if(4!=c)throw new Error('attribute value must after "="');a(h,d=t.slice(e,l).replace(/&#?\w+;/g,r),e),o.warning('attribute "'+h+'" missed start quot('+u+")!!"),e=l+1,c=5}break;case"/":switch(c){case 0:i.setTagName(t.slice(e,l));case 5:case 6:case 7:c=7,i.closed=!0;case 4:case 1:case 2:break;default:throw new Error("attribute invalid close char('/')")}break;case"":return o.error("unexpected end of input"),0==c&&i.setTagName(t.slice(e,l)),l;case">":switch(c){case 0:i.setTagName(t.slice(e,l));case 5:case 6:case 7:break;case 4:case 1:"/"===(d=t.slice(e,l)).slice(-1)&&(i.closed=!0,d=d.slice(0,-1));case 2:2===c&&(d=h),4==c?(o.warning('attribute "'+d+'" missed quot(")!'),a(h,d.replace(/&#?\w+;/g,r),e)):(n.isHTML(s[""])&&d.match(/^(?:disabled|checked|selected)$/i)||o.warning('attribute "'+d+'" missed value!! "'+d+'" instead!!'),a(d,d,e));break;case 3:throw new Error("attribute value missed!!")}return l;case"€":u=" ";default:if(u<=" ")switch(c){case 0:i.setTagName(t.slice(e,l)),c=6;break;case 1:h=t.slice(e,l),c=2;break;case 4:var d=t.slice(e,l).replace(/&#?\w+;/g,r);o.warning('attribute "'+d+'" missed quot(")!!'),a(h,d,e);case 5:c=6}else switch(c){case 2:i.tagName,n.isHTML(s[""])&&h.match(/^(?:disabled|checked|selected)$/i)||o.warning('attribute "'+h+'" missed value!! "'+h+'" instead2!!'),a(h,h,e),e=l,c=1;break;case 5:o.warning('attribute space is required"'+h+'"!!');case 6:c=1,e=l;break;case 3:c=4,e=l;break;case 7:throw new Error("elements closed character '/' and '>' must be connected to")}}l++}}function u(t,e,i){for(var s=t.tagName,r=null,o=t.length;o--;){var a=t[o],h=a.qName,l=a.value;if((f=h.indexOf(":"))>0)var c=a.prefix=h.slice(0,f),u=h.slice(f+1),d="xmlns"===c&&u;else u=h,c=null,d="xmlns"===h&&"";a.localName=u,!1!==d&&(null==r&&(r={},p(i,i={})),i[d]=r[d]=l,a.uri=n.XMLNS,e.startPrefixMapping(d,l))}for(o=t.length;o--;)(c=(a=t[o]).prefix)&&("xml"===c&&(a.uri=n.XML),"xmlns"!==c&&(a.uri=i[c||""]));var f;(f=s.indexOf(":"))>0?(c=t.prefix=s.slice(0,f),u=t.localName=s.slice(f+1)):(c=null,u=t.localName=s);var g=t.uri=i[c||""];if(e.startElement(g,u,s,t),!t.closed)return t.currentNSMap=i,t.localNSMap=r,!0;if(e.endElement(g,u,s),r)for(c in r)e.endPrefixMapping(c)}function d(t,e,i,n,s){if(/^(?:script|textarea)$/i.test(i)){var r=t.indexOf("",e),o=t.substring(e+1,r);if(/[&<]/.test(o))return/^script$/i.test(i)?(s.characters(o,0,o.length),r):(o=o.replace(/&#?\w+;/g,n),s.characters(o,0,o.length),r)}return e+1}function f(t,e,i,n){var s=n[i];return null==s&&((s=t.lastIndexOf(""))e?(i.comment(t,e+4,s-e-4),s+3):(n.error("Unclosed comment"),-1):-1;if("CDATA["==t.substr(e+3,6)){var s=t.indexOf("]]>",e+9);return i.startCDATA(),i.characters(t,e+9,s-e-9),i.endCDATA(),s+3}var r=function(t,e){var i,n=[],s=/'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g;for(s.lastIndex=e,s.exec(t);i=s.exec(t);)if(n.push(i),i[1])return n}(t,e),o=r.length;if(o>1&&/!doctype/i.test(r[0][0])){var a=r[1][0],h=!1,l=!1;o>3&&(/^public$/i.test(r[2][0])?(h=r[3][0],l=o>4&&r[4][0]):/^system$/i.test(r[2][0])&&(l=r[3][0]));var c=r[o-1];return i.startDTD(a,h,l),i.endDTD(),c.index+c[0].length}return-1}function m(t,e,i){var n=t.indexOf("?>",e);if(n){var s=t.substring(e,n).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/);return s?(s[0].length,i.processingInstruction(s[1],s[2]),n+2):-1}return-1}function v(){this.attributeNames={}}a.prototype=new Error,a.prototype.name=a.name,h.prototype={parse:function(t,e,i){var s=this.domBuilder;s.startDocument(),p(e,e={}),function(t,e,i,s,r){function o(t){var e=t.slice(1,-1);return e in i?i[e]:"#"===e.charAt(0)?function(t){if(t>65535){var e=55296+((t-=65536)>>10),i=56320+(1023&t);return String.fromCharCode(e,i)}return String.fromCharCode(t)}(parseInt(e.substr(1).replace("x","0x"))):(r.error("entity not found:"+t),t)}function h(e){if(e>N){var i=t.substring(N,e).replace(/&#?\w+;/g,o);x&&p(N),s.characters(i,0,e-N),N=e}}function p(e,i){for(;e>=b&&(i=w.exec(t));)y=i.index,b=y+i[0].length,x.lineNumber++;x.columnNumber=e-y+1}for(var y=0,b=0,w=/.*(?:\r\n?|\n)|.*$/g,x=s.locator,E=[{currentNSMap:e}],S={},N=0;;){try{var _=t.indexOf("<",N);if(_<0){if(!t.substr(N).match(/^\s*$/)){var T=s.doc,C=T.createTextNode(t.substr(N));T.appendChild(C),s.currentElement=C}return}switch(_>N&&h(_),t.charAt(_+1)){case"/":var O=t.indexOf(">",_+3),I=t.substring(_+2,O).replace(/[ \t\n\r]+$/g,""),R=E.pop();O<0?(I=t.substring(_+2).replace(/[\s<].*/,""),r.error("end tag name: "+I+" is not complete:"+R.tagName),O=_+1+I.length):I.match(/\sN?N=O:h(Math.max(_,N)+1)}}(t,e,i,s,this.errorHandler),s.endDocument()}},v.prototype={setTagName:function(t){if(!o.test(t))throw new Error("invalid tagName:"+t);this.tagName=t},addValue:function(t,e,i){if(!o.test(t))throw new Error("invalid attribute:"+t);this.attributeNames[t]=this.length,this[this.length++]={qName:t,value:e,offset:i}},length:0,getLocalName:function(t){return this[t].localName},getLocator:function(t){return this[t].locator},getQName:function(t){return this[t].qName},getURI:function(t){return this[t].uri},getValue:function(t){return this[t].value}},e.XMLReader=h,e.ParseError=a},function(t,e,i){"use strict";function n(t){return document.createElementNS("http://www.w3.org/2000/svg",t)}Object.defineProperty(e,"__esModule",{value:!0}),e.createElement=n,e.default={createElement:n}},function(t,e,i){"use strict";function n(t,e){function i(i){for(var n=e.length-1;n>=0;n--){var o=e[n],a=i.clientX,h=i.clientY;if(i.touches&&i.touches.length&&(a=i.touches[0].clientX,h=i.touches[0].clientY),r(o,t,a,h)){o.dispatchEvent(s(i));break}}}if("iframe"===t.nodeName||"IFRAME"===t.nodeName)try{this.target=t.contentDocument}catch(e){this.target=t}else this.target=t;for(var n=["mouseup","mousedown","click","touchstart"],o=0;oi&&a>e}if(!r(t.getBoundingClientRect(),i,n))return!1;for(var o=t.getClientRects(),a=0,h=o.length;a> 2, o = (3 & t) << 4 | r >> 4, h = 1 < d ? (15 & r) << 2 | i >> 6 : 64, u = 2 < d ? 63 & i : 64, l.push(s.charAt(a) + s.charAt(o) + s.charAt(h) + s.charAt(u)); return l.join("") }, r.decode = function (e) { var t, r, n, a, o, h, u = 0, l = 0; if ("data:" === e.substr(0, 5)) throw new Error("Invalid base64 input, it looks like a data url."); var f, c = 3 * (e = e.replace(/[^A-Za-z0-9+/=]/g, "")).length / 4; if (e.charAt(e.length - 1) === s.charAt(64) && c--, e.charAt(e.length - 2) === s.charAt(64) && c--, c % 1 != 0) throw new Error("Invalid base64 input, bad content length."); for (f = i.uint8array ? new Uint8Array(0 | c) : new Array(0 | c); u < e.length;)t = s.indexOf(e.charAt(u++)) << 2 | (a = s.indexOf(e.charAt(u++))) >> 4, r = (15 & a) << 4 | (o = s.indexOf(e.charAt(u++))) >> 2, n = (3 & o) << 6 | (h = s.indexOf(e.charAt(u++))), f[l++] = t, 64 !== o && (f[l++] = r), 64 !== h && (f[l++] = n); return f } }, { "./support": 30, "./utils": 32 }], 2: [function (e, t, r) { "use strict"; var n = e("./external"), i = e("./stream/DataWorker"), s = e("./stream/Crc32Probe"), a = e("./stream/DataLengthProbe"); function o(e, t, r, n, i) { this.compressedSize = e, this.uncompressedSize = t, this.crc32 = r, this.compression = n, this.compressedContent = i } o.prototype = { getContentWorker: function () { var e = new i(n.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new a("data_length")), t = this; return e.on("end", (function () { if (this.streamInfo.data_length !== t.uncompressedSize) throw new Error("Bug : uncompressed data size mismatch") })), e }, getCompressedWorker: function () { return new i(n.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize", this.compressedSize).withStreamInfo("uncompressedSize", this.uncompressedSize).withStreamInfo("crc32", this.crc32).withStreamInfo("compression", this.compression) } }, o.createWorkerFrom = function (e, t, r) { return e.pipe(new s).pipe(new a("uncompressedSize")).pipe(t.compressWorker(r)).pipe(new a("compressedSize")).withStreamInfo("compression", t) }, t.exports = o }, { "./external": 6, "./stream/Crc32Probe": 25, "./stream/DataLengthProbe": 26, "./stream/DataWorker": 27 }], 3: [function (e, t, r) { "use strict"; var n = e("./stream/GenericWorker"); r.STORE = { magic: "\0\0", compressWorker: function () { return new n("STORE compression") }, uncompressWorker: function () { return new n("STORE decompression") } }, r.DEFLATE = e("./flate") }, { "./flate": 7, "./stream/GenericWorker": 28 }], 4: [function (e, t, r) { "use strict"; var n = e("./utils"), i = function () { for (var e, t = [], r = 0; r < 256; r++) { e = r; for (var n = 0; n < 8; n++)e = 1 & e ? 3988292384 ^ e >>> 1 : e >>> 1; t[r] = e } return t }(); t.exports = function (e, t) { return void 0 !== e && e.length ? "string" !== n.getTypeOf(e) ? function (e, t, r) { var n = i, s = 0 + r; e ^= -1; for (var a = 0; a < s; a++)e = e >>> 8 ^ n[255 & (e ^ t[a])]; return ~e }(0 | t, e, e.length) : function (e, t, r) { var n = i, s = 0 + r; e ^= -1; for (var a = 0; a < s; a++)e = e >>> 8 ^ n[255 & (e ^ t.charCodeAt(a))]; return ~e }(0 | t, e, e.length) : 0 } }, { "./utils": 32 }], 5: [function (e, t, r) { "use strict"; r.base64 = !1, r.binary = !1, r.dir = !1, r.createFolders = !0, r.date = null, r.compression = null, r.compressionOptions = null, r.comment = null, r.unixPermissions = null, r.dosPermissions = null }, {}], 6: [function (e, t, r) { "use strict"; var n; n = "undefined" != typeof Promise ? Promise : e("lie"), t.exports = { Promise: n } }, { lie: 37 }], 7: [function (e, t, r) { "use strict"; var n = "undefined" != typeof Uint8Array && "undefined" != typeof Uint16Array && "undefined" != typeof Uint32Array, i = e("pako"), s = e("./utils"), a = e("./stream/GenericWorker"), o = n ? "uint8array" : "array"; function h(e, t) { a.call(this, "FlateWorker/" + e), this._pako = null, this._pakoAction = e, this._pakoOptions = t, this.meta = {} } r.magic = "\b\0", s.inherits(h, a), h.prototype.processChunk = function (e) { this.meta = e.meta, null === this._pako && this._createPako(), this._pako.push(s.transformTo(o, e.data), !1) }, h.prototype.flush = function () { a.prototype.flush.call(this), null === this._pako && this._createPako(), this._pako.push([], !0) }, h.prototype.cleanUp = function () { a.prototype.cleanUp.call(this), this._pako = null }, h.prototype._createPako = function () { this._pako = new i[this._pakoAction]({ raw: !0, level: this._pakoOptions.level || -1 }); var e = this; this._pako.onData = function (t) { e.push({ data: t, meta: e.meta }) } }, r.compressWorker = function (e) { return new h("Deflate", e) }, r.uncompressWorker = function () { return new h("Inflate", {}) } }, { "./stream/GenericWorker": 28, "./utils": 32, pako: 38 }], 8: [function (e, t, r) { "use strict"; function n(e, t) { var r, n = ""; for (r = 0; r < t; r++)n += String.fromCharCode(255 & e), e >>>= 8; return n } function i(e, t, r, i, a, l) { var f, c, d = e.file, p = e.compression, m = l !== o.utf8encode, _ = s.transformTo("string", l(d.name)), g = s.transformTo("string", o.utf8encode(d.name)), b = d.comment, v = s.transformTo("string", l(b)), y = s.transformTo("string", o.utf8encode(b)), w = g.length !== d.name.length, k = y.length !== b.length, x = "", S = "", z = "", C = d.dir, E = d.date, A = { crc32: 0, compressedSize: 0, uncompressedSize: 0 }; t && !r || (A.crc32 = e.crc32, A.compressedSize = e.compressedSize, A.uncompressedSize = e.uncompressedSize); var I = 0; t && (I |= 8), m || !w && !k || (I |= 2048); var O = 0, B = 0; C && (O |= 16), "UNIX" === a ? (B = 798, O |= function (e, t) { var r = e; return e || (r = t ? 16893 : 33204), (65535 & r) << 16 }(d.unixPermissions, C)) : (B = 20, O |= function (e) { return 63 & (e || 0) }(d.dosPermissions)), f = E.getUTCHours(), f <<= 6, f |= E.getUTCMinutes(), f <<= 5, f |= E.getUTCSeconds() / 2, c = E.getUTCFullYear() - 1980, c <<= 4, c |= E.getUTCMonth() + 1, c <<= 5, c |= E.getUTCDate(), w && (S = n(1, 1) + n(h(_), 4) + g, x += "up" + n(S.length, 2) + S), k && (z = n(1, 1) + n(h(v), 4) + y, x += "uc" + n(z.length, 2) + z); var R = ""; return R += "\n\0", R += n(I, 2), R += p.magic, R += n(f, 2), R += n(c, 2), R += n(A.crc32, 4), R += n(A.compressedSize, 4), R += n(A.uncompressedSize, 4), R += n(_.length, 2), R += n(x.length, 2), { fileRecord: u.LOCAL_FILE_HEADER + R + _ + x, dirRecord: u.CENTRAL_FILE_HEADER + n(B, 2) + R + n(v.length, 2) + "\0\0\0\0" + n(O, 4) + n(i, 4) + _ + x + v } } var s = e("../utils"), a = e("../stream/GenericWorker"), o = e("../utf8"), h = e("../crc32"), u = e("../signature"); function l(e, t, r, n) { a.call(this, "ZipFileWorker"), this.bytesWritten = 0, this.zipComment = t, this.zipPlatform = r, this.encodeFileName = n, this.streamFiles = e, this.accumulate = !1, this.contentBuffer = [], this.dirRecords = [], this.currentSourceOffset = 0, this.entriesCount = 0, this.currentFile = null, this._sources = [] } s.inherits(l, a), l.prototype.push = function (e) { var t = e.meta.percent || 0, r = this.entriesCount, n = this._sources.length; this.accumulate ? this.contentBuffer.push(e) : (this.bytesWritten += e.data.length, a.prototype.push.call(this, { data: e.data, meta: { currentFile: this.currentFile, percent: r ? (t + 100 * (r - n - 1)) / r : 100 } })) }, l.prototype.openedSource = function (e) { this.currentSourceOffset = this.bytesWritten, this.currentFile = e.file.name; var t = this.streamFiles && !e.file.dir; if (t) { var r = i(e, t, !1, this.currentSourceOffset, this.zipPlatform, this.encodeFileName); this.push({ data: r.fileRecord, meta: { percent: 0 } }) } else this.accumulate = !0 }, l.prototype.closedSource = function (e) { this.accumulate = !1; var t = this.streamFiles && !e.file.dir, r = i(e, t, !0, this.currentSourceOffset, this.zipPlatform, this.encodeFileName); if (this.dirRecords.push(r.dirRecord), t) this.push({ data: function (e) { return u.DATA_DESCRIPTOR + n(e.crc32, 4) + n(e.compressedSize, 4) + n(e.uncompressedSize, 4) }(e), meta: { percent: 100 } }); else for (this.push({ data: r.fileRecord, meta: { percent: 0 } }); this.contentBuffer.length;)this.push(this.contentBuffer.shift()); this.currentFile = null }, l.prototype.flush = function () { for (var e = this.bytesWritten, t = 0; t < this.dirRecords.length; t++)this.push({ data: this.dirRecords[t], meta: { percent: 100 } }); var r = this.bytesWritten - e, i = function (e, t, r, i, a) { var o = s.transformTo("string", a(i)); return u.CENTRAL_DIRECTORY_END + "\0\0\0\0" + n(e, 2) + n(e, 2) + n(t, 4) + n(r, 4) + n(o.length, 2) + o }(this.dirRecords.length, r, e, this.zipComment, this.encodeFileName); this.push({ data: i, meta: { percent: 100 } }) }, l.prototype.prepareNextSource = function () { this.previous = this._sources.shift(), this.openedSource(this.previous.streamInfo), this.isPaused ? this.previous.pause() : this.previous.resume() }, l.prototype.registerPrevious = function (e) { this._sources.push(e); var t = this; return e.on("data", (function (e) { t.processChunk(e) })), e.on("end", (function () { t.closedSource(t.previous.streamInfo), t._sources.length ? t.prepareNextSource() : t.end() })), e.on("error", (function (e) { t.error(e) })), this }, l.prototype.resume = function () { return !!a.prototype.resume.call(this) && (!this.previous && this._sources.length ? (this.prepareNextSource(), !0) : this.previous || this._sources.length || this.generatedError ? void 0 : (this.end(), !0)) }, l.prototype.error = function (e) { var t = this._sources; if (!a.prototype.error.call(this, e)) return !1; for (var r = 0; r < t.length; r++)try { t[r].error(e) } catch (e) { } return !0 }, l.prototype.lock = function () { a.prototype.lock.call(this); for (var e = this._sources, t = 0; t < e.length; t++)e[t].lock() }, t.exports = l }, { "../crc32": 4, "../signature": 23, "../stream/GenericWorker": 28, "../utf8": 31, "../utils": 32 }], 9: [function (e, t, r) { "use strict"; var n = e("../compressions"), i = e("./ZipFileWorker"); r.generateWorker = function (e, t, r) { var s = new i(t.streamFiles, r, t.platform, t.encodeFileName), a = 0; try { e.forEach((function (e, r) { a++; var i = function (e, t) { var r = e || t, i = n[r]; if (!i) throw new Error(r + " is not a valid compression method !"); return i }(r.options.compression, t.compression), o = r.options.compressionOptions || t.compressionOptions || {}, h = r.dir, u = r.date; r._compressWorker(i, o).withStreamInfo("file", { name: e, dir: h, date: u, comment: r.comment || "", unixPermissions: r.unixPermissions, dosPermissions: r.dosPermissions }).pipe(s) })), s.entriesCount = a } catch (e) { s.error(e) } return s } }, { "../compressions": 3, "./ZipFileWorker": 8 }], 10: [function (e, t, r) { "use strict"; function n() { if (!(this instanceof n)) return new n; if (arguments.length) throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide."); this.files = Object.create(null), this.comment = null, this.root = "", this.clone = function () { var e = new n; for (var t in this) "function" != typeof this[t] && (e[t] = this[t]); return e } } (n.prototype = e("./object")).loadAsync = e("./load"), n.support = e("./support"), n.defaults = e("./defaults"), n.version = "3.10.1", n.loadAsync = function (e, t) { return (new n).loadAsync(e, t) }, n.external = e("./external"), t.exports = n }, { "./defaults": 5, "./external": 6, "./load": 11, "./object": 15, "./support": 30 }], 11: [function (e, t, r) { "use strict"; var n = e("./utils"), i = e("./external"), s = e("./utf8"), a = e("./zipEntries"), o = e("./stream/Crc32Probe"), h = e("./nodejsUtils"); function u(e) { return new i.Promise((function (t, r) { var n = e.decompressed.getContentWorker().pipe(new o); n.on("error", (function (e) { r(e) })).on("end", (function () { n.streamInfo.crc32 !== e.decompressed.crc32 ? r(new Error("Corrupted zip : CRC32 mismatch")) : t() })).resume() })) } t.exports = function (e, t) { var r = this; return t = n.extend(t || {}, { base64: !1, checkCRC32: !1, optimizedBinaryString: !1, createFolders: !1, decodeFileName: s.utf8decode }), h.isNode && h.isStream(e) ? i.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")) : n.prepareContent("the loaded zip file", e, !0, t.optimizedBinaryString, t.base64).then((function (e) { var r = new a(t); return r.load(e), r })).then((function (e) { var r = [i.Promise.resolve(e)], n = e.files; if (t.checkCRC32) for (var s = 0; s < n.length; s++)r.push(u(n[s])); return i.Promise.all(r) })).then((function (e) { for (var i = e.shift(), s = i.files, a = 0; a < s.length; a++) { var o = s[a], h = o.fileNameStr, u = n.resolve(o.fileNameStr); r.file(u, o.decompressed, { binary: !0, optimizedBinaryString: !0, date: o.date, dir: o.dir, comment: o.fileCommentStr.length ? o.fileCommentStr : null, unixPermissions: o.unixPermissions, dosPermissions: o.dosPermissions, createFolders: t.createFolders }), o.dir || (r.file(u).unsafeOriginalName = h) } return i.zipComment.length && (r.comment = i.zipComment), r })) } }, { "./external": 6, "./nodejsUtils": 14, "./stream/Crc32Probe": 25, "./utf8": 31, "./utils": 32, "./zipEntries": 33 }], 12: [function (e, t, r) { "use strict"; var n = e("../utils"), i = e("../stream/GenericWorker"); function s(e, t) { i.call(this, "Nodejs stream input adapter for " + e), this._upstreamEnded = !1, this._bindStream(t) } n.inherits(s, i), s.prototype._bindStream = function (e) { var t = this; (this._stream = e).pause(), e.on("data", (function (e) { t.push({ data: e, meta: { percent: 0 } }) })).on("error", (function (e) { t.isPaused ? this.generatedError = e : t.error(e) })).on("end", (function () { t.isPaused ? t._upstreamEnded = !0 : t.end() })) }, s.prototype.pause = function () { return !!i.prototype.pause.call(this) && (this._stream.pause(), !0) }, s.prototype.resume = function () { return !!i.prototype.resume.call(this) && (this._upstreamEnded ? this.end() : this._stream.resume(), !0) }, t.exports = s }, { "../stream/GenericWorker": 28, "../utils": 32 }], 13: [function (e, t, r) { "use strict"; var n = e("readable-stream").Readable; function i(e, t, r) { n.call(this, t), this._helper = e; var i = this; e.on("data", (function (e, t) { i.push(e) || i._helper.pause(), r && r(t) })).on("error", (function (e) { i.emit("error", e) })).on("end", (function () { i.push(null) })) } e("../utils").inherits(i, n), i.prototype._read = function () { this._helper.resume() }, t.exports = i }, { "../utils": 32, "readable-stream": 16 }], 14: [function (e, t, r) { "use strict"; t.exports = { isNode: "undefined" != typeof Buffer, newBufferFrom: function (e, t) { if (Buffer.from && Buffer.from !== Uint8Array.from) return Buffer.from(e, t); if ("number" == typeof e) throw new Error('The "data" argument must not be a number'); return new Buffer(e, t) }, allocBuffer: function (e) { if (Buffer.alloc) return Buffer.alloc(e); var t = new Buffer(e); return t.fill(0), t }, isBuffer: function (e) { return Buffer.isBuffer(e) }, isStream: function (e) { return e && "function" == typeof e.on && "function" == typeof e.pause && "function" == typeof e.resume } } }, {}], 15: [function (e, t, r) { "use strict"; function n(e, t, r) { var n, i = s.getTypeOf(t), o = s.extend(r || {}, h); o.date = o.date || new Date, null !== o.compression && (o.compression = o.compression.toUpperCase()), "string" == typeof o.unixPermissions && (o.unixPermissions = parseInt(o.unixPermissions, 8)), o.unixPermissions && 16384 & o.unixPermissions && (o.dir = !0), o.dosPermissions && 16 & o.dosPermissions && (o.dir = !0), o.dir && (e = m(e)), o.createFolders && (n = p(e)) && _.call(this, n, !0); var f, g = "string" === i && !1 === o.binary && !1 === o.base64; r && void 0 !== r.binary || (o.binary = !g), (t instanceof u && 0 === t.uncompressedSize || o.dir || !t || 0 === t.length) && (o.base64 = !1, o.binary = !0, t = "", o.compression = "STORE", i = "string"), f = t instanceof u || t instanceof a ? t : c.isNode && c.isStream(t) ? new d(e, t) : s.prepareContent(e, t, o.binary, o.optimizedBinaryString, o.base64); var b = new l(e, f, o); this.files[e] = b } var i = e("./utf8"), s = e("./utils"), a = e("./stream/GenericWorker"), o = e("./stream/StreamHelper"), h = e("./defaults"), u = e("./compressedObject"), l = e("./zipObject"), f = e("./generate"), c = e("./nodejsUtils"), d = e("./nodejs/NodejsStreamInputAdapter"), p = function (e) { "/" === e.slice(-1) && (e = e.substring(0, e.length - 1)); var t = e.lastIndexOf("/"); return 0 < t ? e.substring(0, t) : "" }, m = function (e) { return "/" !== e.slice(-1) && (e += "/"), e }, _ = function (e, t) { return t = void 0 !== t ? t : h.createFolders, e = m(e), this.files[e] || n.call(this, e, null, { dir: !0, createFolders: t }), this.files[e] }; function g(e) { return "[object RegExp]" === Object.prototype.toString.call(e) } var b = { load: function () { throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.") }, forEach: function (e) { var t, r, n; for (t in this.files) n = this.files[t], (r = t.slice(this.root.length, t.length)) && t.slice(0, this.root.length) === this.root && e(r, n) }, filter: function (e) { var t = []; return this.forEach((function (r, n) { e(r, n) && t.push(n) })), t }, file: function (e, t, r) { if (1 !== arguments.length) return e = this.root + e, n.call(this, e, t, r), this; if (g(e)) { var i = e; return this.filter((function (e, t) { return !t.dir && i.test(e) })) } var s = this.files[this.root + e]; return s && !s.dir ? s : null }, folder: function (e) { if (!e) return this; if (g(e)) return this.filter((function (t, r) { return r.dir && e.test(t) })); var t = this.root + e, r = _.call(this, t), n = this.clone(); return n.root = r.name, n }, remove: function (e) { e = this.root + e; var t = this.files[e]; if (t || ("/" !== e.slice(-1) && (e += "/"), t = this.files[e]), t && !t.dir) delete this.files[e]; else for (var r = this.filter((function (t, r) { return r.name.slice(0, e.length) === e })), n = 0; n < r.length; n++)delete this.files[r[n].name]; return this }, generate: function () { throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.") }, generateInternalStream: function (e) { var t, r = {}; try { if ((r = s.extend(e || {}, { streamFiles: !1, compression: "STORE", compressionOptions: null, type: "", platform: "DOS", comment: null, mimeType: "application/zip", encodeFileName: i.utf8encode })).type = r.type.toLowerCase(), r.compression = r.compression.toUpperCase(), "binarystring" === r.type && (r.type = "string"), !r.type) throw new Error("No output type specified."); s.checkSupport(r.type), "darwin" !== r.platform && "freebsd" !== r.platform && "linux" !== r.platform && "sunos" !== r.platform || (r.platform = "UNIX"), "win32" === r.platform && (r.platform = "DOS"); var n = r.comment || this.comment || ""; t = f.generateWorker(this, r, n) } catch (e) { (t = new a("error")).error(e) } return new o(t, r.type || "string", r.mimeType) }, generateAsync: function (e, t) { return this.generateInternalStream(e).accumulate(t) }, generateNodeStream: function (e, t) { return (e = e || {}).type || (e.type = "nodebuffer"), this.generateInternalStream(e).toNodejsStream(t) } }; t.exports = b }, { "./compressedObject": 2, "./defaults": 5, "./generate": 9, "./nodejs/NodejsStreamInputAdapter": 12, "./nodejsUtils": 14, "./stream/GenericWorker": 28, "./stream/StreamHelper": 29, "./utf8": 31, "./utils": 32, "./zipObject": 35 }], 16: [function (e, t, r) { "use strict"; t.exports = e("stream") }, { stream: void 0 }], 17: [function (e, t, r) { "use strict"; var n = e("./DataReader"); function i(e) { n.call(this, e); for (var t = 0; t < this.data.length; t++)e[t] = 255 & e[t] } e("../utils").inherits(i, n), i.prototype.byteAt = function (e) { return this.data[this.zero + e] }, i.prototype.lastIndexOfSignature = function (e) { for (var t = e.charCodeAt(0), r = e.charCodeAt(1), n = e.charCodeAt(2), i = e.charCodeAt(3), s = this.length - 4; 0 <= s; --s)if (this.data[s] === t && this.data[s + 1] === r && this.data[s + 2] === n && this.data[s + 3] === i) return s - this.zero; return -1 }, i.prototype.readAndCheckSignature = function (e) { var t = e.charCodeAt(0), r = e.charCodeAt(1), n = e.charCodeAt(2), i = e.charCodeAt(3), s = this.readData(4); return t === s[0] && r === s[1] && n === s[2] && i === s[3] }, i.prototype.readData = function (e) { if (this.checkOffset(e), 0 === e) return []; var t = this.data.slice(this.zero + this.index, this.zero + this.index + e); return this.index += e, t }, t.exports = i }, { "../utils": 32, "./DataReader": 18 }], 18: [function (e, t, r) { "use strict"; var n = e("../utils"); function i(e) { this.data = e, this.length = e.length, this.index = 0, this.zero = 0 } i.prototype = { checkOffset: function (e) { this.checkIndex(this.index + e) }, checkIndex: function (e) { if (this.length < this.zero + e || e < 0) throw new Error("End of data reached (data length = " + this.length + ", asked index = " + e + "). Corrupted zip ?") }, setIndex: function (e) { this.checkIndex(e), this.index = e }, skip: function (e) { this.setIndex(this.index + e) }, byteAt: function () { }, readInt: function (e) { var t, r = 0; for (this.checkOffset(e), t = this.index + e - 1; t >= this.index; t--)r = (r << 8) + this.byteAt(t); return this.index += e, r }, readString: function (e) { return n.transformTo("string", this.readData(e)) }, readData: function () { }, lastIndexOfSignature: function () { }, readAndCheckSignature: function () { }, readDate: function () { var e = this.readInt(4); return new Date(Date.UTC(1980 + (e >> 25 & 127), (e >> 21 & 15) - 1, e >> 16 & 31, e >> 11 & 31, e >> 5 & 63, (31 & e) << 1)) } }, t.exports = i }, { "../utils": 32 }], 19: [function (e, t, r) { "use strict"; var n = e("./Uint8ArrayReader"); function i(e) { n.call(this, e) } e("../utils").inherits(i, n), i.prototype.readData = function (e) { this.checkOffset(e); var t = this.data.slice(this.zero + this.index, this.zero + this.index + e); return this.index += e, t }, t.exports = i }, { "../utils": 32, "./Uint8ArrayReader": 21 }], 20: [function (e, t, r) { "use strict"; var n = e("./DataReader"); function i(e) { n.call(this, e) } e("../utils").inherits(i, n), i.prototype.byteAt = function (e) { return this.data.charCodeAt(this.zero + e) }, i.prototype.lastIndexOfSignature = function (e) { return this.data.lastIndexOf(e) - this.zero }, i.prototype.readAndCheckSignature = function (e) { return e === this.readData(4) }, i.prototype.readData = function (e) { this.checkOffset(e); var t = this.data.slice(this.zero + this.index, this.zero + this.index + e); return this.index += e, t }, t.exports = i }, { "../utils": 32, "./DataReader": 18 }], 21: [function (e, t, r) { "use strict"; var n = e("./ArrayReader"); function i(e) { n.call(this, e) } e("../utils").inherits(i, n), i.prototype.readData = function (e) { if (this.checkOffset(e), 0 === e) return new Uint8Array(0); var t = this.data.subarray(this.zero + this.index, this.zero + this.index + e); return this.index += e, t }, t.exports = i }, { "../utils": 32, "./ArrayReader": 17 }], 22: [function (e, t, r) { "use strict"; var n = e("../utils"), i = e("../support"), s = e("./ArrayReader"), a = e("./StringReader"), o = e("./NodeBufferReader"), h = e("./Uint8ArrayReader"); t.exports = function (e) { var t = n.getTypeOf(e); return n.checkSupport(t), "string" !== t || i.uint8array ? "nodebuffer" === t ? new o(e) : i.uint8array ? new h(n.transformTo("uint8array", e)) : new s(n.transformTo("array", e)) : new a(e) } }, { "../support": 30, "../utils": 32, "./ArrayReader": 17, "./NodeBufferReader": 19, "./StringReader": 20, "./Uint8ArrayReader": 21 }], 23: [function (e, t, r) { "use strict"; r.LOCAL_FILE_HEADER = "PK", r.CENTRAL_FILE_HEADER = "PK", r.CENTRAL_DIRECTORY_END = "PK", r.ZIP64_CENTRAL_DIRECTORY_LOCATOR = "PK", r.ZIP64_CENTRAL_DIRECTORY_END = "PK", r.DATA_DESCRIPTOR = "PK\b" }, {}], 24: [function (e, t, r) { "use strict"; var n = e("./GenericWorker"), i = e("../utils"); function s(e) { n.call(this, "ConvertWorker to " + e), this.destType = e } i.inherits(s, n), s.prototype.processChunk = function (e) { this.push({ data: i.transformTo(this.destType, e.data), meta: e.meta }) }, t.exports = s }, { "../utils": 32, "./GenericWorker": 28 }], 25: [function (e, t, r) { "use strict"; var n = e("./GenericWorker"), i = e("../crc32"); function s() { n.call(this, "Crc32Probe"), this.withStreamInfo("crc32", 0) } e("../utils").inherits(s, n), s.prototype.processChunk = function (e) { this.streamInfo.crc32 = i(e.data, this.streamInfo.crc32 || 0), this.push(e) }, t.exports = s }, { "../crc32": 4, "../utils": 32, "./GenericWorker": 28 }], 26: [function (e, t, r) { "use strict"; var n = e("../utils"), i = e("./GenericWorker"); function s(e) { i.call(this, "DataLengthProbe for " + e), this.propName = e, this.withStreamInfo(e, 0) } n.inherits(s, i), s.prototype.processChunk = function (e) { if (e) { var t = this.streamInfo[this.propName] || 0; this.streamInfo[this.propName] = t + e.data.length } i.prototype.processChunk.call(this, e) }, t.exports = s }, { "../utils": 32, "./GenericWorker": 28 }], 27: [function (e, t, r) { "use strict"; var n = e("../utils"), i = e("./GenericWorker"); function s(e) { i.call(this, "DataWorker"); var t = this; this.dataIsReady = !1, this.index = 0, this.max = 0, this.data = null, this.type = "", this._tickScheduled = !1, e.then((function (e) { t.dataIsReady = !0, t.data = e, t.max = e && e.length || 0, t.type = n.getTypeOf(e), t.isPaused || t._tickAndRepeat() }), (function (e) { t.error(e) })) } n.inherits(s, i), s.prototype.cleanUp = function () { i.prototype.cleanUp.call(this), this.data = null }, s.prototype.resume = function () { return !!i.prototype.resume.call(this) && (!this._tickScheduled && this.dataIsReady && (this._tickScheduled = !0, n.delay(this._tickAndRepeat, [], this)), !0) }, s.prototype._tickAndRepeat = function () { this._tickScheduled = !1, this.isPaused || this.isFinished || (this._tick(), this.isFinished || (n.delay(this._tickAndRepeat, [], this), this._tickScheduled = !0)) }, s.prototype._tick = function () { if (this.isPaused || this.isFinished) return !1; var e = null, t = Math.min(this.max, this.index + 16384); if (this.index >= this.max) return this.end(); switch (this.type) { case "string": e = this.data.substring(this.index, t); break; case "uint8array": e = this.data.subarray(this.index, t); break; case "array": case "nodebuffer": e = this.data.slice(this.index, t) }return this.index = t, this.push({ data: e, meta: { percent: this.max ? this.index / this.max * 100 : 0 } }) }, t.exports = s }, { "../utils": 32, "./GenericWorker": 28 }], 28: [function (e, t, r) { "use strict"; function n(e) { this.name = e || "default", this.streamInfo = {}, this.generatedError = null, this.extraStreamInfo = {}, this.isPaused = !0, this.isFinished = !1, this.isLocked = !1, this._listeners = { data: [], end: [], error: [] }, this.previous = null } n.prototype = { push: function (e) { this.emit("data", e) }, end: function () { if (this.isFinished) return !1; this.flush(); try { this.emit("end"), this.cleanUp(), this.isFinished = !0 } catch (e) { this.emit("error", e) } return !0 }, error: function (e) { return !this.isFinished && (this.isPaused ? this.generatedError = e : (this.isFinished = !0, this.emit("error", e), this.previous && this.previous.error(e), this.cleanUp()), !0) }, on: function (e, t) { return this._listeners[e].push(t), this }, cleanUp: function () { this.streamInfo = this.generatedError = this.extraStreamInfo = null, this._listeners = [] }, emit: function (e, t) { if (this._listeners[e]) for (var r = 0; r < this._listeners[e].length; r++)this._listeners[e][r].call(this, t) }, pipe: function (e) { return e.registerPrevious(this) }, registerPrevious: function (e) { if (this.isLocked) throw new Error("The stream '" + this + "' has already been used."); this.streamInfo = e.streamInfo, this.mergeStreamInfo(), this.previous = e; var t = this; return e.on("data", (function (e) { t.processChunk(e) })), e.on("end", (function () { t.end() })), e.on("error", (function (e) { t.error(e) })), this }, pause: function () { return !this.isPaused && !this.isFinished && (this.isPaused = !0, this.previous && this.previous.pause(), !0) }, resume: function () { if (!this.isPaused || this.isFinished) return !1; var e = this.isPaused = !1; return this.generatedError && (this.error(this.generatedError), e = !0), this.previous && this.previous.resume(), !e }, flush: function () { }, processChunk: function (e) { this.push(e) }, withStreamInfo: function (e, t) { return this.extraStreamInfo[e] = t, this.mergeStreamInfo(), this }, mergeStreamInfo: function () { for (var e in this.extraStreamInfo) Object.prototype.hasOwnProperty.call(this.extraStreamInfo, e) && (this.streamInfo[e] = this.extraStreamInfo[e]) }, lock: function () { if (this.isLocked) throw new Error("The stream '" + this + "' has already been used."); this.isLocked = !0, this.previous && this.previous.lock() }, toString: function () { var e = "Worker " + this.name; return this.previous ? this.previous + " -> " + e : e } }, t.exports = n }, {}], 29: [function (e, t, r) { "use strict"; var n = e("../utils"), i = e("./ConvertWorker"), s = e("./GenericWorker"), a = e("../base64"), o = e("../support"), h = e("../external"), u = null; if (o.nodestream) try { u = e("../nodejs/NodejsStreamOutputAdapter") } catch (e) { } function l(e, t, r) { var a = t; switch (t) { case "blob": case "arraybuffer": a = "uint8array"; break; case "base64": a = "string" }try { this._internalType = a, this._outputType = t, this._mimeType = r, n.checkSupport(a), this._worker = e.pipe(new i(a)), e.lock() } catch (e) { this._worker = new s("error"), this._worker.error(e) } } l.prototype = { accumulate: function (e) { return function (e, t) { return new h.Promise((function (r, i) { var s = [], o = e._internalType, h = e._outputType, u = e._mimeType; e.on("data", (function (e, r) { s.push(e), t && t(r) })).on("error", (function (e) { s = [], i(e) })).on("end", (function () { try { var e = function (e, t, r) { switch (e) { case "blob": return n.newBlob(n.transformTo("arraybuffer", t), r); case "base64": return a.encode(t); default: return n.transformTo(e, t) } }(h, function (e, t) { var r, n = 0, i = null, s = 0; for (r = 0; r < t.length; r++)s += t[r].length; switch (e) { case "string": return t.join(""); case "array": return Array.prototype.concat.apply([], t); case "uint8array": for (i = new Uint8Array(s), r = 0; r < t.length; r++)i.set(t[r], n), n += t[r].length; return i; case "nodebuffer": return Buffer.concat(t); default: throw new Error("concat : unsupported type '" + e + "'") } }(o, s), u); r(e) } catch (e) { i(e) } s = [] })).resume() })) }(this, e) }, on: function (e, t) { var r = this; return "data" === e ? this._worker.on(e, (function (e) { t.call(r, e.data, e.meta) })) : this._worker.on(e, (function () { n.delay(t, arguments, r) })), this }, resume: function () { return n.delay(this._worker.resume, [], this._worker), this }, pause: function () { return this._worker.pause(), this }, toNodejsStream: function (e) { if (n.checkSupport("nodestream"), "nodebuffer" !== this._outputType) throw new Error(this._outputType + " is not supported by this method"); return new u(this, { objectMode: "nodebuffer" !== this._outputType }, e) } }, t.exports = l }, { "../base64": 1, "../external": 6, "../nodejs/NodejsStreamOutputAdapter": 13, "../support": 30, "../utils": 32, "./ConvertWorker": 24, "./GenericWorker": 28 }], 30: [function (e, t, r) { "use strict"; if (r.base64 = !0, r.array = !0, r.string = !0, r.arraybuffer = "undefined" != typeof ArrayBuffer && "undefined" != typeof Uint8Array, r.nodebuffer = "undefined" != typeof Buffer, r.uint8array = "undefined" != typeof Uint8Array, "undefined" == typeof ArrayBuffer) r.blob = !1; else { var n = new ArrayBuffer(0); try { r.blob = 0 === new Blob([n], { type: "application/zip" }).size } catch (e) { try { var i = new (self.BlobBuilder || self.WebKitBlobBuilder || self.MozBlobBuilder || self.MSBlobBuilder); i.append(n), r.blob = 0 === i.getBlob("application/zip").size } catch (e) { r.blob = !1 } } } try { r.nodestream = !!e("readable-stream").Readable } catch (e) { r.nodestream = !1 } }, { "readable-stream": 16 }], 31: [function (e, t, r) { "use strict"; for (var n = e("./utils"), i = e("./support"), s = e("./nodejsUtils"), a = e("./stream/GenericWorker"), o = new Array(256), h = 0; h < 256; h++)o[h] = 252 <= h ? 6 : 248 <= h ? 5 : 240 <= h ? 4 : 224 <= h ? 3 : 192 <= h ? 2 : 1; function u() { a.call(this, "utf-8 decode"), this.leftOver = null } function l() { a.call(this, "utf-8 encode") } o[254] = o[254] = 1, r.utf8encode = function (e) { return i.nodebuffer ? s.newBufferFrom(e, "utf-8") : function (e) { var t, r, n, s, a, o = e.length, h = 0; for (s = 0; s < o; s++)55296 == (64512 & (r = e.charCodeAt(s))) && s + 1 < o && 56320 == (64512 & (n = e.charCodeAt(s + 1))) && (r = 65536 + (r - 55296 << 10) + (n - 56320), s++), h += r < 128 ? 1 : r < 2048 ? 2 : r < 65536 ? 3 : 4; for (t = i.uint8array ? new Uint8Array(h) : new Array(h), s = a = 0; a < h; s++)55296 == (64512 & (r = e.charCodeAt(s))) && s + 1 < o && 56320 == (64512 & (n = e.charCodeAt(s + 1))) && (r = 65536 + (r - 55296 << 10) + (n - 56320), s++), r < 128 ? t[a++] = r : (r < 2048 ? t[a++] = 192 | r >>> 6 : (r < 65536 ? t[a++] = 224 | r >>> 12 : (t[a++] = 240 | r >>> 18, t[a++] = 128 | r >>> 12 & 63), t[a++] = 128 | r >>> 6 & 63), t[a++] = 128 | 63 & r); return t }(e) }, r.utf8decode = function (e) { return i.nodebuffer ? n.transformTo("nodebuffer", e).toString("utf-8") : function (e) { var t, r, i, s, a = e.length, h = new Array(2 * a); for (t = r = 0; t < a;)if ((i = e[t++]) < 128) h[r++] = i; else if (4 < (s = o[i])) h[r++] = 65533, t += s - 1; else { for (i &= 2 === s ? 31 : 3 === s ? 15 : 7; 1 < s && t < a;)i = i << 6 | 63 & e[t++], s--; 1 < s ? h[r++] = 65533 : i < 65536 ? h[r++] = i : (i -= 65536, h[r++] = 55296 | i >> 10 & 1023, h[r++] = 56320 | 1023 & i) } return h.length !== r && (h.subarray ? h = h.subarray(0, r) : h.length = r), n.applyFromCharCode(h) }(e = n.transformTo(i.uint8array ? "uint8array" : "array", e)) }, n.inherits(u, a), u.prototype.processChunk = function (e) { var t = n.transformTo(i.uint8array ? "uint8array" : "array", e.data); if (this.leftOver && this.leftOver.length) { if (i.uint8array) { var s = t; (t = new Uint8Array(s.length + this.leftOver.length)).set(this.leftOver, 0), t.set(s, this.leftOver.length) } else t = this.leftOver.concat(t); this.leftOver = null } var a = function (e, t) { var r; for ((t = t || e.length) > e.length && (t = e.length), r = t - 1; 0 <= r && 128 == (192 & e[r]);)r--; return r < 0 || 0 === r ? t : r + o[e[r]] > t ? r : t }(t), h = t; a !== t.length && (i.uint8array ? (h = t.subarray(0, a), this.leftOver = t.subarray(a, t.length)) : (h = t.slice(0, a), this.leftOver = t.slice(a, t.length))), this.push({ data: r.utf8decode(h), meta: e.meta }) }, u.prototype.flush = function () { this.leftOver && this.leftOver.length && (this.push({ data: r.utf8decode(this.leftOver), meta: {} }), this.leftOver = null) }, r.Utf8DecodeWorker = u, n.inherits(l, a), l.prototype.processChunk = function (e) { this.push({ data: r.utf8encode(e.data), meta: e.meta }) }, r.Utf8EncodeWorker = l }, { "./nodejsUtils": 14, "./stream/GenericWorker": 28, "./support": 30, "./utils": 32 }], 32: [function (e, t, r) { "use strict"; var n = e("./support"), i = e("./base64"), s = e("./nodejsUtils"), a = e("./external"); function o(e) { return e } function h(e, t) { for (var r = 0; r < e.length; ++r)t[r] = 255 & e.charCodeAt(r); return t } e("setimmediate"), r.newBlob = function (e, t) { r.checkSupport("blob"); try { return new Blob([e], { type: t }) } catch (r) { try { var n = new (self.BlobBuilder || self.WebKitBlobBuilder || self.MozBlobBuilder || self.MSBlobBuilder); return n.append(e), n.getBlob(t) } catch (e) { throw new Error("Bug : can't construct the Blob.") } } }; var u = { stringifyByChunk: function (e, t, r) { var n = [], i = 0, s = e.length; if (s <= r) return String.fromCharCode.apply(null, e); for (; i < s;)"array" === t || "nodebuffer" === t ? n.push(String.fromCharCode.apply(null, e.slice(i, Math.min(i + r, s)))) : n.push(String.fromCharCode.apply(null, e.subarray(i, Math.min(i + r, s)))), i += r; return n.join("") }, stringifyByChar: function (e) { for (var t = "", r = 0; r < e.length; r++)t += String.fromCharCode(e[r]); return t }, applyCanBeUsed: { uint8array: function () { try { return n.uint8array && 1 === String.fromCharCode.apply(null, new Uint8Array(1)).length } catch (e) { return !1 } }(), nodebuffer: function () { try { return n.nodebuffer && 1 === String.fromCharCode.apply(null, s.allocBuffer(1)).length } catch (e) { return !1 } }() } }; function l(e) { var t = 65536, n = r.getTypeOf(e), i = !0; if ("uint8array" === n ? i = u.applyCanBeUsed.uint8array : "nodebuffer" === n && (i = u.applyCanBeUsed.nodebuffer), i) for (; 1 < t;)try { return u.stringifyByChunk(e, n, t) } catch (e) { t = Math.floor(t / 2) } return u.stringifyByChar(e) } function f(e, t) { for (var r = 0; r < e.length; r++)t[r] = e[r]; return t } r.applyFromCharCode = l; var c = {}; c.string = { string: o, array: function (e) { return h(e, new Array(e.length)) }, arraybuffer: function (e) { return c.string.uint8array(e).buffer }, uint8array: function (e) { return h(e, new Uint8Array(e.length)) }, nodebuffer: function (e) { return h(e, s.allocBuffer(e.length)) } }, c.array = { string: l, array: o, arraybuffer: function (e) { return new Uint8Array(e).buffer }, uint8array: function (e) { return new Uint8Array(e) }, nodebuffer: function (e) { return s.newBufferFrom(e) } }, c.arraybuffer = { string: function (e) { return l(new Uint8Array(e)) }, array: function (e) { return f(new Uint8Array(e), new Array(e.byteLength)) }, arraybuffer: o, uint8array: function (e) { return new Uint8Array(e) }, nodebuffer: function (e) { return s.newBufferFrom(new Uint8Array(e)) } }, c.uint8array = { string: l, array: function (e) { return f(e, new Array(e.length)) }, arraybuffer: function (e) { return e.buffer }, uint8array: o, nodebuffer: function (e) { return s.newBufferFrom(e) } }, c.nodebuffer = { string: l, array: function (e) { return f(e, new Array(e.length)) }, arraybuffer: function (e) { return c.nodebuffer.uint8array(e).buffer }, uint8array: function (e) { return f(e, new Uint8Array(e.length)) }, nodebuffer: o }, r.transformTo = function (e, t) { if (t = t || "", !e) return t; r.checkSupport(e); var n = r.getTypeOf(t); return c[n][e](t) }, r.resolve = function (e) { for (var t = e.split("/"), r = [], n = 0; n < t.length; n++) { var i = t[n]; "." === i || "" === i && 0 !== n && n !== t.length - 1 || (".." === i ? r.pop() : r.push(i)) } return r.join("/") }, r.getTypeOf = function (e) { return "string" == typeof e ? "string" : "[object Array]" === Object.prototype.toString.call(e) ? "array" : n.nodebuffer && s.isBuffer(e) ? "nodebuffer" : n.uint8array && e instanceof Uint8Array ? "uint8array" : n.arraybuffer && e instanceof ArrayBuffer ? "arraybuffer" : void 0 }, r.checkSupport = function (e) { if (!n[e.toLowerCase()]) throw new Error(e + " is not supported by this platform") }, r.MAX_VALUE_16BITS = 65535, r.MAX_VALUE_32BITS = -1, r.pretty = function (e) { var t, r, n = ""; for (r = 0; r < (e || "").length; r++)n += "\\x" + ((t = e.charCodeAt(r)) < 16 ? "0" : "") + t.toString(16).toUpperCase(); return n }, r.delay = function (e, t, r) { setImmediate((function () { e.apply(r || null, t || []) })) }, r.inherits = function (e, t) { function r() { } r.prototype = t.prototype, e.prototype = new r }, r.extend = function () { var e, t, r = {}; for (e = 0; e < arguments.length; e++)for (t in arguments[e]) Object.prototype.hasOwnProperty.call(arguments[e], t) && void 0 === r[t] && (r[t] = arguments[e][t]); return r }, r.prepareContent = function (e, t, s, o, u) { return a.Promise.resolve(t).then((function (e) { return n.blob && (e instanceof Blob || -1 !== ["[object File]", "[object Blob]"].indexOf(Object.prototype.toString.call(e))) && "undefined" != typeof FileReader ? new a.Promise((function (t, r) { var n = new FileReader; n.onload = function (e) { t(e.target.result) }, n.onerror = function (e) { r(e.target.error) }, n.readAsArrayBuffer(e) })) : e })).then((function (t) { var l = r.getTypeOf(t); return l ? ("arraybuffer" === l ? t = r.transformTo("uint8array", t) : "string" === l && (u ? t = i.decode(t) : s && !0 !== o && (t = function (e) { return h(e, n.uint8array ? new Uint8Array(e.length) : new Array(e.length)) }(t))), t) : a.Promise.reject(new Error("Can't read the data of '" + e + "'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?")) })) } }, { "./base64": 1, "./external": 6, "./nodejsUtils": 14, "./support": 30, setimmediate: 54 }], 33: [function (e, t, r) { "use strict"; var n = e("./reader/readerFor"), i = e("./utils"), s = e("./signature"), a = e("./zipEntry"), o = e("./support"); function h(e) { this.files = [], this.loadOptions = e } h.prototype = { checkSignature: function (e) { if (!this.reader.readAndCheckSignature(e)) { this.reader.index -= 4; var t = this.reader.readString(4); throw new Error("Corrupted zip or bug: unexpected signature (" + i.pretty(t) + ", expected " + i.pretty(e) + ")") } }, isSignature: function (e, t) { var r = this.reader.index; this.reader.setIndex(e); var n = this.reader.readString(4) === t; return this.reader.setIndex(r), n }, readBlockEndOfCentral: function () { this.diskNumber = this.reader.readInt(2), this.diskWithCentralDirStart = this.reader.readInt(2), this.centralDirRecordsOnThisDisk = this.reader.readInt(2), this.centralDirRecords = this.reader.readInt(2), this.centralDirSize = this.reader.readInt(4), this.centralDirOffset = this.reader.readInt(4), this.zipCommentLength = this.reader.readInt(2); var e = this.reader.readData(this.zipCommentLength), t = o.uint8array ? "uint8array" : "array", r = i.transformTo(t, e); this.zipComment = this.loadOptions.decodeFileName(r) }, readBlockZip64EndOfCentral: function () { this.zip64EndOfCentralSize = this.reader.readInt(8), this.reader.skip(4), this.diskNumber = this.reader.readInt(4), this.diskWithCentralDirStart = this.reader.readInt(4), this.centralDirRecordsOnThisDisk = this.reader.readInt(8), this.centralDirRecords = this.reader.readInt(8), this.centralDirSize = this.reader.readInt(8), this.centralDirOffset = this.reader.readInt(8), this.zip64ExtensibleData = {}; for (var e, t, r, n = this.zip64EndOfCentralSize - 44; 0 < n;)e = this.reader.readInt(2), t = this.reader.readInt(4), r = this.reader.readData(t), this.zip64ExtensibleData[e] = { id: e, length: t, value: r } }, readBlockZip64EndOfCentralLocator: function () { if (this.diskWithZip64CentralDirStart = this.reader.readInt(4), this.relativeOffsetEndOfZip64CentralDir = this.reader.readInt(8), this.disksCount = this.reader.readInt(4), 1 < this.disksCount) throw new Error("Multi-volumes zip are not supported") }, readLocalFiles: function () { var e, t; for (e = 0; e < this.files.length; e++)t = this.files[e], this.reader.setIndex(t.localHeaderOffset), this.checkSignature(s.LOCAL_FILE_HEADER), t.readLocalPart(this.reader), t.handleUTF8(), t.processAttributes() }, readCentralDir: function () { var e; for (this.reader.setIndex(this.centralDirOffset); this.reader.readAndCheckSignature(s.CENTRAL_FILE_HEADER);)(e = new a({ zip64: this.zip64 }, this.loadOptions)).readCentralPart(this.reader), this.files.push(e); if (this.centralDirRecords !== this.files.length && 0 !== this.centralDirRecords && 0 === this.files.length) throw new Error("Corrupted zip or bug: expected " + this.centralDirRecords + " records in central dir, got " + this.files.length) }, readEndOfCentral: function () { var e = this.reader.lastIndexOfSignature(s.CENTRAL_DIRECTORY_END); if (e < 0) throw this.isSignature(0, s.LOCAL_FILE_HEADER) ? new Error("Corrupted zip: can't find end of central directory") : new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html"); this.reader.setIndex(e); var t = e; if (this.checkSignature(s.CENTRAL_DIRECTORY_END), this.readBlockEndOfCentral(), this.diskNumber === i.MAX_VALUE_16BITS || this.diskWithCentralDirStart === i.MAX_VALUE_16BITS || this.centralDirRecordsOnThisDisk === i.MAX_VALUE_16BITS || this.centralDirRecords === i.MAX_VALUE_16BITS || this.centralDirSize === i.MAX_VALUE_32BITS || this.centralDirOffset === i.MAX_VALUE_32BITS) { if (this.zip64 = !0, (e = this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR)) < 0) throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator"); if (this.reader.setIndex(e), this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR), this.readBlockZip64EndOfCentralLocator(), !this.isSignature(this.relativeOffsetEndOfZip64CentralDir, s.ZIP64_CENTRAL_DIRECTORY_END) && (this.relativeOffsetEndOfZip64CentralDir = this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_END), this.relativeOffsetEndOfZip64CentralDir < 0)) throw new Error("Corrupted zip: can't find the ZIP64 end of central directory"); this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir), this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_END), this.readBlockZip64EndOfCentral() } var r = this.centralDirOffset + this.centralDirSize; this.zip64 && (r += 20, r += 12 + this.zip64EndOfCentralSize); var n = t - r; if (0 < n) this.isSignature(t, s.CENTRAL_FILE_HEADER) || (this.reader.zero = n); else if (n < 0) throw new Error("Corrupted zip: missing " + Math.abs(n) + " bytes.") }, prepareReader: function (e) { this.reader = n(e) }, load: function (e) { this.prepareReader(e), this.readEndOfCentral(), this.readCentralDir(), this.readLocalFiles() } }, t.exports = h }, { "./reader/readerFor": 22, "./signature": 23, "./support": 30, "./utils": 32, "./zipEntry": 34 }], 34: [function (e, t, r) { "use strict"; var n = e("./reader/readerFor"), i = e("./utils"), s = e("./compressedObject"), a = e("./crc32"), o = e("./utf8"), h = e("./compressions"), u = e("./support"); function l(e, t) { this.options = e, this.loadOptions = t } l.prototype = { isEncrypted: function () { return !(1 & ~this.bitFlag) }, useUTF8: function () { return !(2048 & ~this.bitFlag) }, readLocalPart: function (e) { var t, r; if (e.skip(22), this.fileNameLength = e.readInt(2), r = e.readInt(2), this.fileName = e.readData(this.fileNameLength), e.skip(r), -1 === this.compressedSize || -1 === this.uncompressedSize) throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)"); if (null === (t = function (e) { for (var t in h) if (Object.prototype.hasOwnProperty.call(h, t) && h[t].magic === e) return h[t]; return null }(this.compressionMethod))) throw new Error("Corrupted zip : compression " + i.pretty(this.compressionMethod) + " unknown (inner file : " + i.transformTo("string", this.fileName) + ")"); this.decompressed = new s(this.compressedSize, this.uncompressedSize, this.crc32, t, e.readData(this.compressedSize)) }, readCentralPart: function (e) { this.versionMadeBy = e.readInt(2), e.skip(2), this.bitFlag = e.readInt(2), this.compressionMethod = e.readString(2), this.date = e.readDate(), this.crc32 = e.readInt(4), this.compressedSize = e.readInt(4), this.uncompressedSize = e.readInt(4); var t = e.readInt(2); if (this.extraFieldsLength = e.readInt(2), this.fileCommentLength = e.readInt(2), this.diskNumberStart = e.readInt(2), this.internalFileAttributes = e.readInt(2), this.externalFileAttributes = e.readInt(4), this.localHeaderOffset = e.readInt(4), this.isEncrypted()) throw new Error("Encrypted zip are not supported"); e.skip(t), this.readExtraFields(e), this.parseZIP64ExtraField(e), this.fileComment = e.readData(this.fileCommentLength) }, processAttributes: function () { this.unixPermissions = null, this.dosPermissions = null; var e = this.versionMadeBy >> 8; this.dir = !!(16 & this.externalFileAttributes), 0 == e && (this.dosPermissions = 63 & this.externalFileAttributes), 3 == e && (this.unixPermissions = this.externalFileAttributes >> 16 & 65535), this.dir || "/" !== this.fileNameStr.slice(-1) || (this.dir = !0) }, parseZIP64ExtraField: function () { if (this.extraFields[1]) { var e = n(this.extraFields[1].value); this.uncompressedSize === i.MAX_VALUE_32BITS && (this.uncompressedSize = e.readInt(8)), this.compressedSize === i.MAX_VALUE_32BITS && (this.compressedSize = e.readInt(8)), this.localHeaderOffset === i.MAX_VALUE_32BITS && (this.localHeaderOffset = e.readInt(8)), this.diskNumberStart === i.MAX_VALUE_32BITS && (this.diskNumberStart = e.readInt(4)) } }, readExtraFields: function (e) { var t, r, n, i = e.index + this.extraFieldsLength; for (this.extraFields || (this.extraFields = {}); e.index + 4 < i;)t = e.readInt(2), r = e.readInt(2), n = e.readData(r), this.extraFields[t] = { id: t, length: r, value: n }; e.setIndex(i) }, handleUTF8: function () { var e = u.uint8array ? "uint8array" : "array"; if (this.useUTF8()) this.fileNameStr = o.utf8decode(this.fileName), this.fileCommentStr = o.utf8decode(this.fileComment); else { var t = this.findExtraFieldUnicodePath(); if (null !== t) this.fileNameStr = t; else { var r = i.transformTo(e, this.fileName); this.fileNameStr = this.loadOptions.decodeFileName(r) } var n = this.findExtraFieldUnicodeComment(); if (null !== n) this.fileCommentStr = n; else { var s = i.transformTo(e, this.fileComment); this.fileCommentStr = this.loadOptions.decodeFileName(s) } } }, findExtraFieldUnicodePath: function () { var e = this.extraFields[28789]; if (e) { var t = n(e.value); return 1 !== t.readInt(1) || a(this.fileName) !== t.readInt(4) ? null : o.utf8decode(t.readData(e.length - 5)) } return null }, findExtraFieldUnicodeComment: function () { var e = this.extraFields[25461]; if (e) { var t = n(e.value); return 1 !== t.readInt(1) || a(this.fileComment) !== t.readInt(4) ? null : o.utf8decode(t.readData(e.length - 5)) } return null } }, t.exports = l }, { "./compressedObject": 2, "./compressions": 3, "./crc32": 4, "./reader/readerFor": 22, "./support": 30, "./utf8": 31, "./utils": 32 }], 35: [function (e, t, r) { "use strict"; function n(e, t, r) { this.name = e, this.dir = r.dir, this.date = r.date, this.comment = r.comment, this.unixPermissions = r.unixPermissions, this.dosPermissions = r.dosPermissions, this._data = t, this._dataBinary = r.binary, this.options = { compression: r.compression, compressionOptions: r.compressionOptions } } var i = e("./stream/StreamHelper"), s = e("./stream/DataWorker"), a = e("./utf8"), o = e("./compressedObject"), h = e("./stream/GenericWorker"); n.prototype = { internalStream: function (e) { var t = null, r = "string"; try { if (!e) throw new Error("No output type specified."); var n = "string" === (r = e.toLowerCase()) || "text" === r; "binarystring" !== r && "text" !== r || (r = "string"), t = this._decompressWorker(); var s = !this._dataBinary; s && !n && (t = t.pipe(new a.Utf8EncodeWorker)), !s && n && (t = t.pipe(new a.Utf8DecodeWorker)) } catch (e) { (t = new h("error")).error(e) } return new i(t, r, "") }, async: function (e, t) { return this.internalStream(e).accumulate(t) }, nodeStream: function (e, t) { return this.internalStream(e || "nodebuffer").toNodejsStream(t) }, _compressWorker: function (e, t) { if (this._data instanceof o && this._data.compression.magic === e.magic) return this._data.getCompressedWorker(); var r = this._decompressWorker(); return this._dataBinary || (r = r.pipe(new a.Utf8EncodeWorker)), o.createWorkerFrom(r, e, t) }, _decompressWorker: function () { return this._data instanceof o ? this._data.getContentWorker() : this._data instanceof h ? this._data : new s(this._data) } }; for (var u = ["asText", "asBinary", "asNodeBuffer", "asUint8Array", "asArrayBuffer"], l = function () { throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.") }, f = 0; f < u.length; f++)n.prototype[u[f]] = l; t.exports = n }, { "./compressedObject": 2, "./stream/DataWorker": 27, "./stream/GenericWorker": 28, "./stream/StreamHelper": 29, "./utf8": 31 }], 36: [function (e, t, r) { (function (e) { "use strict"; var r, n, i = e.MutationObserver || e.WebKitMutationObserver; if (i) { var s = 0, a = new i(l), o = e.document.createTextNode(""); a.observe(o, { characterData: !0 }), r = function () { o.data = s = ++s % 2 } } else if (e.setImmediate || void 0 === e.MessageChannel) r = "document" in e && "onreadystatechange" in e.document.createElement("script") ? function () { var t = e.document.createElement("script"); t.onreadystatechange = function () { l(), t.onreadystatechange = null, t.parentNode.removeChild(t), t = null }, e.document.documentElement.appendChild(t) } : function () { setTimeout(l, 0) }; else { var h = new e.MessageChannel; h.port1.onmessage = l, r = function () { h.port2.postMessage(0) } } var u = []; function l() { var e, t; n = !0; for (var r = u.length; r;) { for (t = u, u = [], e = -1; ++e < r;)t[e](); r = u.length } n = !1 } t.exports = function (e) { 1 !== u.push(e) || n || r() } }).call(this, "undefined" != typeof global ? global : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {}) }, {}], 37: [function (e, t, r) { "use strict"; var n = e("immediate"); function i() { } var s = {}, a = ["REJECTED"], o = ["FULFILLED"], h = ["PENDING"]; function u(e) { if ("function" != typeof e) throw new TypeError("resolver must be a function"); this.state = h, this.queue = [], this.outcome = void 0, e !== i && d(this, e) } function l(e, t, r) { this.promise = e, "function" == typeof t && (this.onFulfilled = t, this.callFulfilled = this.otherCallFulfilled), "function" == typeof r && (this.onRejected = r, this.callRejected = this.otherCallRejected) } function f(e, t, r) { n((function () { var n; try { n = t(r) } catch (n) { return s.reject(e, n) } n === e ? s.reject(e, new TypeError("Cannot resolve promise with itself")) : s.resolve(e, n) })) } function c(e) { var t = e && e.then; if (e && ("object" == typeof e || "function" == typeof e) && "function" == typeof t) return function () { t.apply(e, arguments) } } function d(e, t) { var r = !1; function n(t) { r || (r = !0, s.reject(e, t)) } function i(t) { r || (r = !0, s.resolve(e, t)) } var a = p((function () { t(i, n) })); "error" === a.status && n(a.value) } function p(e, t) { var r = {}; try { r.value = e(t), r.status = "success" } catch (e) { r.status = "error", r.value = e } return r } (t.exports = u).prototype.finally = function (e) { if ("function" != typeof e) return this; var t = this.constructor; return this.then((function (r) { return t.resolve(e()).then((function () { return r })) }), (function (r) { return t.resolve(e()).then((function () { throw r })) })) }, u.prototype.catch = function (e) { return this.then(null, e) }, u.prototype.then = function (e, t) { if ("function" != typeof e && this.state === o || "function" != typeof t && this.state === a) return this; var r = new this.constructor(i); return this.state !== h ? f(r, this.state === o ? e : t, this.outcome) : this.queue.push(new l(r, e, t)), r }, l.prototype.callFulfilled = function (e) { s.resolve(this.promise, e) }, l.prototype.otherCallFulfilled = function (e) { f(this.promise, this.onFulfilled, e) }, l.prototype.callRejected = function (e) { s.reject(this.promise, e) }, l.prototype.otherCallRejected = function (e) { f(this.promise, this.onRejected, e) }, s.resolve = function (e, t) { var r = p(c, t); if ("error" === r.status) return s.reject(e, r.value); var n = r.value; if (n) d(e, n); else { e.state = o, e.outcome = t; for (var i = -1, a = e.queue.length; ++i < a;)e.queue[i].callFulfilled(t) } return e }, s.reject = function (e, t) { e.state = a, e.outcome = t; for (var r = -1, n = e.queue.length; ++r < n;)e.queue[r].callRejected(t); return e }, u.resolve = function (e) { return e instanceof this ? e : s.resolve(new this(i), e) }, u.reject = function (e) { var t = new this(i); return s.reject(t, e) }, u.all = function (e) { var t = this; if ("[object Array]" !== Object.prototype.toString.call(e)) return this.reject(new TypeError("must be an array")); var r = e.length, n = !1; if (!r) return this.resolve([]); for (var a = new Array(r), o = 0, h = -1, u = new this(i); ++h < r;)l(e[h], h); return u; function l(e, i) { t.resolve(e).then((function (e) { a[i] = e, ++o !== r || n || (n = !0, s.resolve(u, a)) }), (function (e) { n || (n = !0, s.reject(u, e)) })) } }, u.race = function (e) { if ("[object Array]" !== Object.prototype.toString.call(e)) return this.reject(new TypeError("must be an array")); var t = e.length, r = !1; if (!t) return this.resolve([]); for (var n, a = -1, o = new this(i); ++a < t;)n = e[a], this.resolve(n).then((function (e) { r || (r = !0, s.resolve(o, e)) }), (function (e) { r || (r = !0, s.reject(o, e)) })); return o } }, { immediate: 36 }], 38: [function (e, t, r) { "use strict"; var n = {}; (0, e("./lib/utils/common").assign)(n, e("./lib/deflate"), e("./lib/inflate"), e("./lib/zlib/constants")), t.exports = n }, { "./lib/deflate": 39, "./lib/inflate": 40, "./lib/utils/common": 41, "./lib/zlib/constants": 44 }], 39: [function (e, t, r) { "use strict"; var n = e("./zlib/deflate"), i = e("./utils/common"), s = e("./utils/strings"), a = e("./zlib/messages"), o = e("./zlib/zstream"), h = Object.prototype.toString; function u(e) { if (!(this instanceof u)) return new u(e); this.options = i.assign({ level: -1, method: 8, chunkSize: 16384, windowBits: 15, memLevel: 8, strategy: 0, to: "" }, e || {}); var t = this.options; t.raw && 0 < t.windowBits ? t.windowBits = -t.windowBits : t.gzip && 0 < t.windowBits && t.windowBits < 16 && (t.windowBits += 16), this.err = 0, this.msg = "", this.ended = !1, this.chunks = [], this.strm = new o, this.strm.avail_out = 0; var r = n.deflateInit2(this.strm, t.level, t.method, t.windowBits, t.memLevel, t.strategy); if (0 !== r) throw new Error(a[r]); if (t.header && n.deflateSetHeader(this.strm, t.header), t.dictionary) { var l; if (l = "string" == typeof t.dictionary ? s.string2buf(t.dictionary) : "[object ArrayBuffer]" === h.call(t.dictionary) ? new Uint8Array(t.dictionary) : t.dictionary, 0 !== (r = n.deflateSetDictionary(this.strm, l))) throw new Error(a[r]); this._dict_set = !0 } } function l(e, t) { var r = new u(t); if (r.push(e, !0), r.err) throw r.msg || a[r.err]; return r.result } u.prototype.push = function (e, t) { var r, a, o = this.strm, u = this.options.chunkSize; if (this.ended) return !1; a = t === ~~t ? t : !0 === t ? 4 : 0, "string" == typeof e ? o.input = s.string2buf(e) : "[object ArrayBuffer]" === h.call(e) ? o.input = new Uint8Array(e) : o.input = e, o.next_in = 0, o.avail_in = o.input.length; do { if (0 === o.avail_out && (o.output = new i.Buf8(u), o.next_out = 0, o.avail_out = u), 1 !== (r = n.deflate(o, a)) && 0 !== r) return this.onEnd(r), !(this.ended = !0); 0 !== o.avail_out && (0 !== o.avail_in || 4 !== a && 2 !== a) || ("string" === this.options.to ? this.onData(s.buf2binstring(i.shrinkBuf(o.output, o.next_out))) : this.onData(i.shrinkBuf(o.output, o.next_out))) } while ((0 < o.avail_in || 0 === o.avail_out) && 1 !== r); return 4 === a ? (r = n.deflateEnd(this.strm), this.onEnd(r), this.ended = !0, 0 === r) : 2 !== a || (this.onEnd(0), !(o.avail_out = 0)) }, u.prototype.onData = function (e) { this.chunks.push(e) }, u.prototype.onEnd = function (e) { 0 === e && ("string" === this.options.to ? this.result = this.chunks.join("") : this.result = i.flattenChunks(this.chunks)), this.chunks = [], this.err = e, this.msg = this.strm.msg }, r.Deflate = u, r.deflate = l, r.deflateRaw = function (e, t) { return (t = t || {}).raw = !0, l(e, t) }, r.gzip = function (e, t) { return (t = t || {}).gzip = !0, l(e, t) } }, { "./utils/common": 41, "./utils/strings": 42, "./zlib/deflate": 46, "./zlib/messages": 51, "./zlib/zstream": 53 }], 40: [function (e, t, r) { "use strict"; var n = e("./zlib/inflate"), i = e("./utils/common"), s = e("./utils/strings"), a = e("./zlib/constants"), o = e("./zlib/messages"), h = e("./zlib/zstream"), u = e("./zlib/gzheader"), l = Object.prototype.toString; function f(e) { if (!(this instanceof f)) return new f(e); this.options = i.assign({ chunkSize: 16384, windowBits: 0, to: "" }, e || {}); var t = this.options; t.raw && 0 <= t.windowBits && t.windowBits < 16 && (t.windowBits = -t.windowBits, 0 === t.windowBits && (t.windowBits = -15)), !(0 <= t.windowBits && t.windowBits < 16) || e && e.windowBits || (t.windowBits += 32), 15 < t.windowBits && t.windowBits < 48 && !(15 & t.windowBits) && (t.windowBits |= 15), this.err = 0, this.msg = "", this.ended = !1, this.chunks = [], this.strm = new h, this.strm.avail_out = 0; var r = n.inflateInit2(this.strm, t.windowBits); if (r !== a.Z_OK) throw new Error(o[r]); this.header = new u, n.inflateGetHeader(this.strm, this.header) } function c(e, t) { var r = new f(t); if (r.push(e, !0), r.err) throw r.msg || o[r.err]; return r.result } f.prototype.push = function (e, t) { var r, o, h, u, f, c, d = this.strm, p = this.options.chunkSize, m = this.options.dictionary, _ = !1; if (this.ended) return !1; o = t === ~~t ? t : !0 === t ? a.Z_FINISH : a.Z_NO_FLUSH, "string" == typeof e ? d.input = s.binstring2buf(e) : "[object ArrayBuffer]" === l.call(e) ? d.input = new Uint8Array(e) : d.input = e, d.next_in = 0, d.avail_in = d.input.length; do { if (0 === d.avail_out && (d.output = new i.Buf8(p), d.next_out = 0, d.avail_out = p), (r = n.inflate(d, a.Z_NO_FLUSH)) === a.Z_NEED_DICT && m && (c = "string" == typeof m ? s.string2buf(m) : "[object ArrayBuffer]" === l.call(m) ? new Uint8Array(m) : m, r = n.inflateSetDictionary(this.strm, c)), r === a.Z_BUF_ERROR && !0 === _ && (r = a.Z_OK, _ = !1), r !== a.Z_STREAM_END && r !== a.Z_OK) return this.onEnd(r), !(this.ended = !0); d.next_out && (0 !== d.avail_out && r !== a.Z_STREAM_END && (0 !== d.avail_in || o !== a.Z_FINISH && o !== a.Z_SYNC_FLUSH) || ("string" === this.options.to ? (h = s.utf8border(d.output, d.next_out), u = d.next_out - h, f = s.buf2string(d.output, h), d.next_out = u, d.avail_out = p - u, u && i.arraySet(d.output, d.output, h, u, 0), this.onData(f)) : this.onData(i.shrinkBuf(d.output, d.next_out)))), 0 === d.avail_in && 0 === d.avail_out && (_ = !0) } while ((0 < d.avail_in || 0 === d.avail_out) && r !== a.Z_STREAM_END); return r === a.Z_STREAM_END && (o = a.Z_FINISH), o === a.Z_FINISH ? (r = n.inflateEnd(this.strm), this.onEnd(r), this.ended = !0, r === a.Z_OK) : o !== a.Z_SYNC_FLUSH || (this.onEnd(a.Z_OK), !(d.avail_out = 0)) }, f.prototype.onData = function (e) { this.chunks.push(e) }, f.prototype.onEnd = function (e) { e === a.Z_OK && ("string" === this.options.to ? this.result = this.chunks.join("") : this.result = i.flattenChunks(this.chunks)), this.chunks = [], this.err = e, this.msg = this.strm.msg }, r.Inflate = f, r.inflate = c, r.inflateRaw = function (e, t) { return (t = t || {}).raw = !0, c(e, t) }, r.ungzip = c }, { "./utils/common": 41, "./utils/strings": 42, "./zlib/constants": 44, "./zlib/gzheader": 47, "./zlib/inflate": 49, "./zlib/messages": 51, "./zlib/zstream": 53 }], 41: [function (e, t, r) { "use strict"; var n = "undefined" != typeof Uint8Array && "undefined" != typeof Uint16Array && "undefined" != typeof Int32Array; r.assign = function (e) { for (var t = Array.prototype.slice.call(arguments, 1); t.length;) { var r = t.shift(); if (r) { if ("object" != typeof r) throw new TypeError(r + "must be non-object"); for (var n in r) r.hasOwnProperty(n) && (e[n] = r[n]) } } return e }, r.shrinkBuf = function (e, t) { return e.length === t ? e : e.subarray ? e.subarray(0, t) : (e.length = t, e) }; var i = { arraySet: function (e, t, r, n, i) { if (t.subarray && e.subarray) e.set(t.subarray(r, r + n), i); else for (var s = 0; s < n; s++)e[i + s] = t[r + s] }, flattenChunks: function (e) { var t, r, n, i, s, a; for (t = n = 0, r = e.length; t < r; t++)n += e[t].length; for (a = new Uint8Array(n), t = i = 0, r = e.length; t < r; t++)s = e[t], a.set(s, i), i += s.length; return a } }, s = { arraySet: function (e, t, r, n, i) { for (var s = 0; s < n; s++)e[i + s] = t[r + s] }, flattenChunks: function (e) { return [].concat.apply([], e) } }; r.setTyped = function (e) { e ? (r.Buf8 = Uint8Array, r.Buf16 = Uint16Array, r.Buf32 = Int32Array, r.assign(r, i)) : (r.Buf8 = Array, r.Buf16 = Array, r.Buf32 = Array, r.assign(r, s)) }, r.setTyped(n) }, {}], 42: [function (e, t, r) { "use strict"; var n = e("./common"), i = !0, s = !0; try { String.fromCharCode.apply(null, [0]) } catch (e) { i = !1 } try { String.fromCharCode.apply(null, new Uint8Array(1)) } catch (e) { s = !1 } for (var a = new n.Buf8(256), o = 0; o < 256; o++)a[o] = 252 <= o ? 6 : 248 <= o ? 5 : 240 <= o ? 4 : 224 <= o ? 3 : 192 <= o ? 2 : 1; function h(e, t) { if (t < 65537 && (e.subarray && s || !e.subarray && i)) return String.fromCharCode.apply(null, n.shrinkBuf(e, t)); for (var r = "", a = 0; a < t; a++)r += String.fromCharCode(e[a]); return r } a[254] = a[254] = 1, r.string2buf = function (e) { var t, r, i, s, a, o = e.length, h = 0; for (s = 0; s < o; s++)55296 == (64512 & (r = e.charCodeAt(s))) && s + 1 < o && 56320 == (64512 & (i = e.charCodeAt(s + 1))) && (r = 65536 + (r - 55296 << 10) + (i - 56320), s++), h += r < 128 ? 1 : r < 2048 ? 2 : r < 65536 ? 3 : 4; for (t = new n.Buf8(h), s = a = 0; a < h; s++)55296 == (64512 & (r = e.charCodeAt(s))) && s + 1 < o && 56320 == (64512 & (i = e.charCodeAt(s + 1))) && (r = 65536 + (r - 55296 << 10) + (i - 56320), s++), r < 128 ? t[a++] = r : (r < 2048 ? t[a++] = 192 | r >>> 6 : (r < 65536 ? t[a++] = 224 | r >>> 12 : (t[a++] = 240 | r >>> 18, t[a++] = 128 | r >>> 12 & 63), t[a++] = 128 | r >>> 6 & 63), t[a++] = 128 | 63 & r); return t }, r.buf2binstring = function (e) { return h(e, e.length) }, r.binstring2buf = function (e) { for (var t = new n.Buf8(e.length), r = 0, i = t.length; r < i; r++)t[r] = e.charCodeAt(r); return t }, r.buf2string = function (e, t) { var r, n, i, s, o = t || e.length, u = new Array(2 * o); for (r = n = 0; r < o;)if ((i = e[r++]) < 128) u[n++] = i; else if (4 < (s = a[i])) u[n++] = 65533, r += s - 1; else { for (i &= 2 === s ? 31 : 3 === s ? 15 : 7; 1 < s && r < o;)i = i << 6 | 63 & e[r++], s--; 1 < s ? u[n++] = 65533 : i < 65536 ? u[n++] = i : (i -= 65536, u[n++] = 55296 | i >> 10 & 1023, u[n++] = 56320 | 1023 & i) } return h(u, n) }, r.utf8border = function (e, t) { var r; for ((t = t || e.length) > e.length && (t = e.length), r = t - 1; 0 <= r && 128 == (192 & e[r]);)r--; return r < 0 || 0 === r ? t : r + a[e[r]] > t ? r : t } }, { "./common": 41 }], 43: [function (e, t, r) { "use strict"; t.exports = function (e, t, r, n) { for (var i = 65535 & e, s = e >>> 16 & 65535, a = 0; 0 !== r;) { for (r -= a = 2e3 < r ? 2e3 : r; s = s + (i = i + t[n++] | 0) | 0, --a;); i %= 65521, s %= 65521 } return i | s << 16 } }, {}], 44: [function (e, t, r) { "use strict"; t.exports = { Z_NO_FLUSH: 0, Z_PARTIAL_FLUSH: 1, Z_SYNC_FLUSH: 2, Z_FULL_FLUSH: 3, Z_FINISH: 4, Z_BLOCK: 5, Z_TREES: 6, Z_OK: 0, Z_STREAM_END: 1, Z_NEED_DICT: 2, Z_ERRNO: -1, Z_STREAM_ERROR: -2, Z_DATA_ERROR: -3, Z_BUF_ERROR: -5, Z_NO_COMPRESSION: 0, Z_BEST_SPEED: 1, Z_BEST_COMPRESSION: 9, Z_DEFAULT_COMPRESSION: -1, Z_FILTERED: 1, Z_HUFFMAN_ONLY: 2, Z_RLE: 3, Z_FIXED: 4, Z_DEFAULT_STRATEGY: 0, Z_BINARY: 0, Z_TEXT: 1, Z_UNKNOWN: 2, Z_DEFLATED: 8 } }, {}], 45: [function (e, t, r) { "use strict"; var n = function () { for (var e, t = [], r = 0; r < 256; r++) { e = r; for (var n = 0; n < 8; n++)e = 1 & e ? 3988292384 ^ e >>> 1 : e >>> 1; t[r] = e } return t }(); t.exports = function (e, t, r, i) { var s = n, a = i + r; e ^= -1; for (var o = i; o < a; o++)e = e >>> 8 ^ s[255 & (e ^ t[o])]; return ~e } }, {}], 46: [function (e, t, r) { "use strict"; var n, i = e("../utils/common"), s = e("./trees"), a = e("./adler32"), o = e("./crc32"), h = e("./messages"), u = -2, l = 258, f = 262, c = 113; function d(e, t) { return e.msg = h[t], t } function p(e) { return (e << 1) - (4 < e ? 9 : 0) } function m(e) { for (var t = e.length; 0 <= --t;)e[t] = 0 } function _(e) { var t = e.state, r = t.pending; r > e.avail_out && (r = e.avail_out), 0 !== r && (i.arraySet(e.output, t.pending_buf, t.pending_out, r, e.next_out), e.next_out += r, t.pending_out += r, e.total_out += r, e.avail_out -= r, t.pending -= r, 0 === t.pending && (t.pending_out = 0)) } function g(e, t) { s._tr_flush_block(e, 0 <= e.block_start ? e.block_start : -1, e.strstart - e.block_start, t), e.block_start = e.strstart, _(e.strm) } function b(e, t) { e.pending_buf[e.pending++] = t } function v(e, t) { e.pending_buf[e.pending++] = t >>> 8 & 255, e.pending_buf[e.pending++] = 255 & t } function y(e, t) { var r, n, i = e.max_chain_length, s = e.strstart, a = e.prev_length, o = e.nice_match, h = e.strstart > e.w_size - f ? e.strstart - (e.w_size - f) : 0, u = e.window, c = e.w_mask, d = e.prev, p = e.strstart + l, m = u[s + a - 1], _ = u[s + a]; e.prev_length >= e.good_match && (i >>= 2), o > e.lookahead && (o = e.lookahead); do { if (u[(r = t) + a] === _ && u[r + a - 1] === m && u[r] === u[s] && u[++r] === u[s + 1]) { s += 2, r++; do { } while (u[++s] === u[++r] && u[++s] === u[++r] && u[++s] === u[++r] && u[++s] === u[++r] && u[++s] === u[++r] && u[++s] === u[++r] && u[++s] === u[++r] && u[++s] === u[++r] && s < p); if (n = l - (p - s), s = p - l, a < n) { if (e.match_start = t, o <= (a = n)) break; m = u[s + a - 1], _ = u[s + a] } } } while ((t = d[t & c]) > h && 0 != --i); return a <= e.lookahead ? a : e.lookahead } function w(e) { var t, r, n, s, h, u, l, c, d, p, m = e.w_size; do { if (s = e.window_size - e.lookahead - e.strstart, e.strstart >= m + (m - f)) { for (i.arraySet(e.window, e.window, m, m, 0), e.match_start -= m, e.strstart -= m, e.block_start -= m, t = r = e.hash_size; n = e.head[--t], e.head[t] = m <= n ? n - m : 0, --r;); for (t = r = m; n = e.prev[--t], e.prev[t] = m <= n ? n - m : 0, --r;); s += m } if (0 === e.strm.avail_in) break; if (u = e.strm, l = e.window, c = e.strstart + e.lookahead, p = void 0, (d = s) < (p = u.avail_in) && (p = d), r = 0 === p ? 0 : (u.avail_in -= p, i.arraySet(l, u.input, u.next_in, p, c), 1 === u.state.wrap ? u.adler = a(u.adler, l, p, c) : 2 === u.state.wrap && (u.adler = o(u.adler, l, p, c)), u.next_in += p, u.total_in += p, p), e.lookahead += r, e.lookahead + e.insert >= 3) for (h = e.strstart - e.insert, e.ins_h = e.window[h], e.ins_h = (e.ins_h << e.hash_shift ^ e.window[h + 1]) & e.hash_mask; e.insert && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[h + 3 - 1]) & e.hash_mask, e.prev[h & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = h, h++, e.insert--, !(e.lookahead + e.insert < 3));); } while (e.lookahead < f && 0 !== e.strm.avail_in) } function k(e, t) { for (var r, n; ;) { if (e.lookahead < f) { if (w(e), e.lookahead < f && 0 === t) return 1; if (0 === e.lookahead) break } if (r = 0, e.lookahead >= 3 && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + 3 - 1]) & e.hash_mask, r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart), 0 !== r && e.strstart - r <= e.w_size - f && (e.match_length = y(e, r)), e.match_length >= 3) if (n = s._tr_tally(e, e.strstart - e.match_start, e.match_length - 3), e.lookahead -= e.match_length, e.match_length <= e.max_lazy_match && e.lookahead >= 3) { for (e.match_length--; e.strstart++, e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + 3 - 1]) & e.hash_mask, r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart, 0 != --e.match_length;); e.strstart++ } else e.strstart += e.match_length, e.match_length = 0, e.ins_h = e.window[e.strstart], e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + 1]) & e.hash_mask; else n = s._tr_tally(e, 0, e.window[e.strstart]), e.lookahead--, e.strstart++; if (n && (g(e, !1), 0 === e.strm.avail_out)) return 1 } return e.insert = e.strstart < 2 ? e.strstart : 2, 4 === t ? (g(e, !0), 0 === e.strm.avail_out ? 3 : 4) : e.last_lit && (g(e, !1), 0 === e.strm.avail_out) ? 1 : 2 } function x(e, t) { for (var r, n, i; ;) { if (e.lookahead < f) { if (w(e), e.lookahead < f && 0 === t) return 1; if (0 === e.lookahead) break } if (r = 0, e.lookahead >= 3 && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + 3 - 1]) & e.hash_mask, r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart), e.prev_length = e.match_length, e.prev_match = e.match_start, e.match_length = 2, 0 !== r && e.prev_length < e.max_lazy_match && e.strstart - r <= e.w_size - f && (e.match_length = y(e, r), e.match_length <= 5 && (1 === e.strategy || 3 === e.match_length && 4096 < e.strstart - e.match_start) && (e.match_length = 2)), e.prev_length >= 3 && e.match_length <= e.prev_length) { for (i = e.strstart + e.lookahead - 3, n = s._tr_tally(e, e.strstart - 1 - e.prev_match, e.prev_length - 3), e.lookahead -= e.prev_length - 1, e.prev_length -= 2; ++e.strstart <= i && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + 3 - 1]) & e.hash_mask, r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart), 0 != --e.prev_length;); if (e.match_available = 0, e.match_length = 2, e.strstart++, n && (g(e, !1), 0 === e.strm.avail_out)) return 1 } else if (e.match_available) { if ((n = s._tr_tally(e, 0, e.window[e.strstart - 1])) && g(e, !1), e.strstart++, e.lookahead--, 0 === e.strm.avail_out) return 1 } else e.match_available = 1, e.strstart++, e.lookahead-- } return e.match_available && (n = s._tr_tally(e, 0, e.window[e.strstart - 1]), e.match_available = 0), e.insert = e.strstart < 2 ? e.strstart : 2, 4 === t ? (g(e, !0), 0 === e.strm.avail_out ? 3 : 4) : e.last_lit && (g(e, !1), 0 === e.strm.avail_out) ? 1 : 2 } function S(e, t, r, n, i) { this.good_length = e, this.max_lazy = t, this.nice_length = r, this.max_chain = n, this.func = i } function z() { this.strm = null, this.status = 0, this.pending_buf = null, this.pending_buf_size = 0, this.pending_out = 0, this.pending = 0, this.wrap = 0, this.gzhead = null, this.gzindex = 0, this.method = 8, this.last_flush = -1, this.w_size = 0, this.w_bits = 0, this.w_mask = 0, this.window = null, this.window_size = 0, this.prev = null, this.head = null, this.ins_h = 0, this.hash_size = 0, this.hash_bits = 0, this.hash_mask = 0, this.hash_shift = 0, this.block_start = 0, this.match_length = 0, this.prev_match = 0, this.match_available = 0, this.strstart = 0, this.match_start = 0, this.lookahead = 0, this.prev_length = 0, this.max_chain_length = 0, this.max_lazy_match = 0, this.level = 0, this.strategy = 0, this.good_match = 0, this.nice_match = 0, this.dyn_ltree = new i.Buf16(1146), this.dyn_dtree = new i.Buf16(122), this.bl_tree = new i.Buf16(78), m(this.dyn_ltree), m(this.dyn_dtree), m(this.bl_tree), this.l_desc = null, this.d_desc = null, this.bl_desc = null, this.bl_count = new i.Buf16(16), this.heap = new i.Buf16(573), m(this.heap), this.heap_len = 0, this.heap_max = 0, this.depth = new i.Buf16(573), m(this.depth), this.l_buf = 0, this.lit_bufsize = 0, this.last_lit = 0, this.d_buf = 0, this.opt_len = 0, this.static_len = 0, this.matches = 0, this.insert = 0, this.bi_buf = 0, this.bi_valid = 0 } function C(e) { var t; return e && e.state ? (e.total_in = e.total_out = 0, e.data_type = 2, (t = e.state).pending = 0, t.pending_out = 0, t.wrap < 0 && (t.wrap = -t.wrap), t.status = t.wrap ? 42 : c, e.adler = 2 === t.wrap ? 0 : 1, t.last_flush = 0, s._tr_init(t), 0) : d(e, u) } function E(e) { var t = C(e); return 0 === t && function (e) { e.window_size = 2 * e.w_size, m(e.head), e.max_lazy_match = n[e.level].max_lazy, e.good_match = n[e.level].good_length, e.nice_match = n[e.level].nice_length, e.max_chain_length = n[e.level].max_chain, e.strstart = 0, e.block_start = 0, e.lookahead = 0, e.insert = 0, e.match_length = e.prev_length = 2, e.match_available = 0, e.ins_h = 0 }(e.state), t } function A(e, t, r, n, s, a) { if (!e) return u; var o = 1; if (-1 === t && (t = 6), n < 0 ? (o = 0, n = -n) : 15 < n && (o = 2, n -= 16), s < 1 || 9 < s || 8 !== r || n < 8 || 15 < n || t < 0 || 9 < t || a < 0 || 4 < a) return d(e, u); 8 === n && (n = 9); var h = new z; return (e.state = h).strm = e, h.wrap = o, h.gzhead = null, h.w_bits = n, h.w_size = 1 << h.w_bits, h.w_mask = h.w_size - 1, h.hash_bits = s + 7, h.hash_size = 1 << h.hash_bits, h.hash_mask = h.hash_size - 1, h.hash_shift = ~~((h.hash_bits + 3 - 1) / 3), h.window = new i.Buf8(2 * h.w_size), h.head = new i.Buf16(h.hash_size), h.prev = new i.Buf16(h.w_size), h.lit_bufsize = 1 << s + 6, h.pending_buf_size = 4 * h.lit_bufsize, h.pending_buf = new i.Buf8(h.pending_buf_size), h.d_buf = 1 * h.lit_bufsize, h.l_buf = 3 * h.lit_bufsize, h.level = t, h.strategy = a, h.method = r, E(e) } n = [new S(0, 0, 0, 0, (function (e, t) { var r = 65535; for (r > e.pending_buf_size - 5 && (r = e.pending_buf_size - 5); ;) { if (e.lookahead <= 1) { if (w(e), 0 === e.lookahead && 0 === t) return 1; if (0 === e.lookahead) break } e.strstart += e.lookahead, e.lookahead = 0; var n = e.block_start + r; if ((0 === e.strstart || e.strstart >= n) && (e.lookahead = e.strstart - n, e.strstart = n, g(e, !1), 0 === e.strm.avail_out)) return 1; if (e.strstart - e.block_start >= e.w_size - f && (g(e, !1), 0 === e.strm.avail_out)) return 1 } return e.insert = 0, 4 === t ? (g(e, !0), 0 === e.strm.avail_out ? 3 : 4) : (e.strstart > e.block_start && (g(e, !1), e.strm.avail_out), 1) })), new S(4, 4, 8, 4, k), new S(4, 5, 16, 8, k), new S(4, 6, 32, 32, k), new S(4, 4, 16, 16, x), new S(8, 16, 32, 32, x), new S(8, 16, 128, 128, x), new S(8, 32, 128, 256, x), new S(32, 128, 258, 1024, x), new S(32, 258, 258, 4096, x)], r.deflateInit = function (e, t) { return A(e, t, 8, 15, 8, 0) }, r.deflateInit2 = A, r.deflateReset = E, r.deflateResetKeep = C, r.deflateSetHeader = function (e, t) { return e && e.state ? 2 !== e.state.wrap ? u : (e.state.gzhead = t, 0) : u }, r.deflate = function (e, t) { var r, i, a, h; if (!e || !e.state || 5 < t || t < 0) return e ? d(e, u) : u; if (i = e.state, !e.output || !e.input && 0 !== e.avail_in || 666 === i.status && 4 !== t) return d(e, 0 === e.avail_out ? -5 : u); if (i.strm = e, r = i.last_flush, i.last_flush = t, 42 === i.status) if (2 === i.wrap) e.adler = 0, b(i, 31), b(i, 139), b(i, 8), i.gzhead ? (b(i, (i.gzhead.text ? 1 : 0) + (i.gzhead.hcrc ? 2 : 0) + (i.gzhead.extra ? 4 : 0) + (i.gzhead.name ? 8 : 0) + (i.gzhead.comment ? 16 : 0)), b(i, 255 & i.gzhead.time), b(i, i.gzhead.time >> 8 & 255), b(i, i.gzhead.time >> 16 & 255), b(i, i.gzhead.time >> 24 & 255), b(i, 9 === i.level ? 2 : 2 <= i.strategy || i.level < 2 ? 4 : 0), b(i, 255 & i.gzhead.os), i.gzhead.extra && i.gzhead.extra.length && (b(i, 255 & i.gzhead.extra.length), b(i, i.gzhead.extra.length >> 8 & 255)), i.gzhead.hcrc && (e.adler = o(e.adler, i.pending_buf, i.pending, 0)), i.gzindex = 0, i.status = 69) : (b(i, 0), b(i, 0), b(i, 0), b(i, 0), b(i, 0), b(i, 9 === i.level ? 2 : 2 <= i.strategy || i.level < 2 ? 4 : 0), b(i, 3), i.status = c); else { var f = 8 + (i.w_bits - 8 << 4) << 8; f |= (2 <= i.strategy || i.level < 2 ? 0 : i.level < 6 ? 1 : 6 === i.level ? 2 : 3) << 6, 0 !== i.strstart && (f |= 32), f += 31 - f % 31, i.status = c, v(i, f), 0 !== i.strstart && (v(i, e.adler >>> 16), v(i, 65535 & e.adler)), e.adler = 1 } if (69 === i.status) if (i.gzhead.extra) { for (a = i.pending; i.gzindex < (65535 & i.gzhead.extra.length) && (i.pending !== i.pending_buf_size || (i.gzhead.hcrc && i.pending > a && (e.adler = o(e.adler, i.pending_buf, i.pending - a, a)), _(e), a = i.pending, i.pending !== i.pending_buf_size));)b(i, 255 & i.gzhead.extra[i.gzindex]), i.gzindex++; i.gzhead.hcrc && i.pending > a && (e.adler = o(e.adler, i.pending_buf, i.pending - a, a)), i.gzindex === i.gzhead.extra.length && (i.gzindex = 0, i.status = 73) } else i.status = 73; if (73 === i.status) if (i.gzhead.name) { a = i.pending; do { if (i.pending === i.pending_buf_size && (i.gzhead.hcrc && i.pending > a && (e.adler = o(e.adler, i.pending_buf, i.pending - a, a)), _(e), a = i.pending, i.pending === i.pending_buf_size)) { h = 1; break } h = i.gzindex < i.gzhead.name.length ? 255 & i.gzhead.name.charCodeAt(i.gzindex++) : 0, b(i, h) } while (0 !== h); i.gzhead.hcrc && i.pending > a && (e.adler = o(e.adler, i.pending_buf, i.pending - a, a)), 0 === h && (i.gzindex = 0, i.status = 91) } else i.status = 91; if (91 === i.status) if (i.gzhead.comment) { a = i.pending; do { if (i.pending === i.pending_buf_size && (i.gzhead.hcrc && i.pending > a && (e.adler = o(e.adler, i.pending_buf, i.pending - a, a)), _(e), a = i.pending, i.pending === i.pending_buf_size)) { h = 1; break } h = i.gzindex < i.gzhead.comment.length ? 255 & i.gzhead.comment.charCodeAt(i.gzindex++) : 0, b(i, h) } while (0 !== h); i.gzhead.hcrc && i.pending > a && (e.adler = o(e.adler, i.pending_buf, i.pending - a, a)), 0 === h && (i.status = 103) } else i.status = 103; if (103 === i.status && (i.gzhead.hcrc ? (i.pending + 2 > i.pending_buf_size && _(e), i.pending + 2 <= i.pending_buf_size && (b(i, 255 & e.adler), b(i, e.adler >> 8 & 255), e.adler = 0, i.status = c)) : i.status = c), 0 !== i.pending) { if (_(e), 0 === e.avail_out) return i.last_flush = -1, 0 } else if (0 === e.avail_in && p(t) <= p(r) && 4 !== t) return d(e, -5); if (666 === i.status && 0 !== e.avail_in) return d(e, -5); if (0 !== e.avail_in || 0 !== i.lookahead || 0 !== t && 666 !== i.status) { var y = 2 === i.strategy ? function (e, t) { for (var r; ;) { if (0 === e.lookahead && (w(e), 0 === e.lookahead)) { if (0 === t) return 1; break } if (e.match_length = 0, r = s._tr_tally(e, 0, e.window[e.strstart]), e.lookahead--, e.strstart++, r && (g(e, !1), 0 === e.strm.avail_out)) return 1 } return e.insert = 0, 4 === t ? (g(e, !0), 0 === e.strm.avail_out ? 3 : 4) : e.last_lit && (g(e, !1), 0 === e.strm.avail_out) ? 1 : 2 }(i, t) : 3 === i.strategy ? function (e, t) { for (var r, n, i, a, o = e.window; ;) { if (e.lookahead <= l) { if (w(e), e.lookahead <= l && 0 === t) return 1; if (0 === e.lookahead) break } if (e.match_length = 0, e.lookahead >= 3 && 0 < e.strstart && (n = o[i = e.strstart - 1]) === o[++i] && n === o[++i] && n === o[++i]) { a = e.strstart + l; do { } while (n === o[++i] && n === o[++i] && n === o[++i] && n === o[++i] && n === o[++i] && n === o[++i] && n === o[++i] && n === o[++i] && i < a); e.match_length = l - (a - i), e.match_length > e.lookahead && (e.match_length = e.lookahead) } if (e.match_length >= 3 ? (r = s._tr_tally(e, 1, e.match_length - 3), e.lookahead -= e.match_length, e.strstart += e.match_length, e.match_length = 0) : (r = s._tr_tally(e, 0, e.window[e.strstart]), e.lookahead--, e.strstart++), r && (g(e, !1), 0 === e.strm.avail_out)) return 1 } return e.insert = 0, 4 === t ? (g(e, !0), 0 === e.strm.avail_out ? 3 : 4) : e.last_lit && (g(e, !1), 0 === e.strm.avail_out) ? 1 : 2 }(i, t) : n[i.level].func(i, t); if (3 !== y && 4 !== y || (i.status = 666), 1 === y || 3 === y) return 0 === e.avail_out && (i.last_flush = -1), 0; if (2 === y && (1 === t ? s._tr_align(i) : 5 !== t && (s._tr_stored_block(i, 0, 0, !1), 3 === t && (m(i.head), 0 === i.lookahead && (i.strstart = 0, i.block_start = 0, i.insert = 0))), _(e), 0 === e.avail_out)) return i.last_flush = -1, 0 } return 4 !== t ? 0 : i.wrap <= 0 ? 1 : (2 === i.wrap ? (b(i, 255 & e.adler), b(i, e.adler >> 8 & 255), b(i, e.adler >> 16 & 255), b(i, e.adler >> 24 & 255), b(i, 255 & e.total_in), b(i, e.total_in >> 8 & 255), b(i, e.total_in >> 16 & 255), b(i, e.total_in >> 24 & 255)) : (v(i, e.adler >>> 16), v(i, 65535 & e.adler)), _(e), 0 < i.wrap && (i.wrap = -i.wrap), 0 !== i.pending ? 0 : 1) }, r.deflateEnd = function (e) { var t; return e && e.state ? 42 !== (t = e.state.status) && 69 !== t && 73 !== t && 91 !== t && 103 !== t && t !== c && 666 !== t ? d(e, u) : (e.state = null, t === c ? d(e, -3) : 0) : u }, r.deflateSetDictionary = function (e, t) { var r, n, s, o, h, l, f, c, d = t.length; if (!e || !e.state) return u; if (2 === (o = (r = e.state).wrap) || 1 === o && 42 !== r.status || r.lookahead) return u; for (1 === o && (e.adler = a(e.adler, t, d, 0)), r.wrap = 0, d >= r.w_size && (0 === o && (m(r.head), r.strstart = 0, r.block_start = 0, r.insert = 0), c = new i.Buf8(r.w_size), i.arraySet(c, t, d - r.w_size, r.w_size, 0), t = c, d = r.w_size), h = e.avail_in, l = e.next_in, f = e.input, e.avail_in = d, e.next_in = 0, e.input = t, w(r); r.lookahead >= 3;) { for (n = r.strstart, s = r.lookahead - 2; r.ins_h = (r.ins_h << r.hash_shift ^ r.window[n + 3 - 1]) & r.hash_mask, r.prev[n & r.w_mask] = r.head[r.ins_h], r.head[r.ins_h] = n, n++, --s;); r.strstart = n, r.lookahead = 2, w(r) } return r.strstart += r.lookahead, r.block_start = r.strstart, r.insert = r.lookahead, r.lookahead = 0, r.match_length = r.prev_length = 2, r.match_available = 0, e.next_in = l, e.input = f, e.avail_in = h, r.wrap = o, 0 }, r.deflateInfo = "pako deflate (from Nodeca project)" }, { "../utils/common": 41, "./adler32": 43, "./crc32": 45, "./messages": 51, "./trees": 52 }], 47: [function (e, t, r) { "use strict"; t.exports = function () { this.text = 0, this.time = 0, this.xflags = 0, this.os = 0, this.extra = null, this.extra_len = 0, this.name = "", this.comment = "", this.hcrc = 0, this.done = !1 } }, {}], 48: [function (e, t, r) { "use strict"; t.exports = function (e, t) { var r, n, i, s, a, o, h, u, l, f, c, d, p, m, _, g, b, v, y, w, k, x, S, z, C; r = e.state, n = e.next_in, z = e.input, i = n + (e.avail_in - 5), s = e.next_out, C = e.output, a = s - (t - e.avail_out), o = s + (e.avail_out - 257), h = r.dmax, u = r.wsize, l = r.whave, f = r.wnext, c = r.window, d = r.hold, p = r.bits, m = r.lencode, _ = r.distcode, g = (1 << r.lenbits) - 1, b = (1 << r.distbits) - 1; e: do { p < 15 && (d += z[n++] << p, p += 8, d += z[n++] << p, p += 8), v = m[d & g]; t: for (; ;) { if (d >>>= y = v >>> 24, p -= y, 0 == (y = v >>> 16 & 255)) C[s++] = 65535 & v; else { if (!(16 & y)) { if (!(64 & y)) { v = m[(65535 & v) + (d & (1 << y) - 1)]; continue t } if (32 & y) { r.mode = 12; break e } e.msg = "invalid literal/length code", r.mode = 30; break e } w = 65535 & v, (y &= 15) && (p < y && (d += z[n++] << p, p += 8), w += d & (1 << y) - 1, d >>>= y, p -= y), p < 15 && (d += z[n++] << p, p += 8, d += z[n++] << p, p += 8), v = _[d & b]; r: for (; ;) { if (d >>>= y = v >>> 24, p -= y, !(16 & (y = v >>> 16 & 255))) { if (!(64 & y)) { v = _[(65535 & v) + (d & (1 << y) - 1)]; continue r } e.msg = "invalid distance code", r.mode = 30; break e } if (k = 65535 & v, p < (y &= 15) && (d += z[n++] << p, (p += 8) < y && (d += z[n++] << p, p += 8)), h < (k += d & (1 << y) - 1)) { e.msg = "invalid distance too far back", r.mode = 30; break e } if (d >>>= y, p -= y, (y = s - a) < k) { if (l < (y = k - y) && r.sane) { e.msg = "invalid distance too far back", r.mode = 30; break e } if (S = c, (x = 0) === f) { if (x += u - y, y < w) { for (w -= y; C[s++] = c[x++], --y;); x = s - k, S = C } } else if (f < y) { if (x += u + f - y, (y -= f) < w) { for (w -= y; C[s++] = c[x++], --y;); if (x = 0, f < w) { for (w -= y = f; C[s++] = c[x++], --y;); x = s - k, S = C } } } else if (x += f - y, y < w) { for (w -= y; C[s++] = c[x++], --y;); x = s - k, S = C } for (; 2 < w;)C[s++] = S[x++], C[s++] = S[x++], C[s++] = S[x++], w -= 3; w && (C[s++] = S[x++], 1 < w && (C[s++] = S[x++])) } else { for (x = s - k; C[s++] = C[x++], C[s++] = C[x++], C[s++] = C[x++], 2 < (w -= 3);); w && (C[s++] = C[x++], 1 < w && (C[s++] = C[x++])) } break } } break } } while (n < i && s < o); n -= w = p >> 3, d &= (1 << (p -= w << 3)) - 1, e.next_in = n, e.next_out = s, e.avail_in = n < i ? i - n + 5 : 5 - (n - i), e.avail_out = s < o ? o - s + 257 : 257 - (s - o), r.hold = d, r.bits = p } }, {}], 49: [function (e, t, r) { "use strict"; var n = e("../utils/common"), i = e("./adler32"), s = e("./crc32"), a = e("./inffast"), o = e("./inftrees"), h = -2; function u(e) { return (e >>> 24 & 255) + (e >>> 8 & 65280) + ((65280 & e) << 8) + ((255 & e) << 24) } function l() { this.mode = 0, this.last = !1, this.wrap = 0, this.havedict = !1, this.flags = 0, this.dmax = 0, this.check = 0, this.total = 0, this.head = null, this.wbits = 0, this.wsize = 0, this.whave = 0, this.wnext = 0, this.window = null, this.hold = 0, this.bits = 0, this.length = 0, this.offset = 0, this.extra = 0, this.lencode = null, this.distcode = null, this.lenbits = 0, this.distbits = 0, this.ncode = 0, this.nlen = 0, this.ndist = 0, this.have = 0, this.next = null, this.lens = new n.Buf16(320), this.work = new n.Buf16(288), this.lendyn = null, this.distdyn = null, this.sane = 0, this.back = 0, this.was = 0 } function f(e) { var t; return e && e.state ? (t = e.state, e.total_in = e.total_out = t.total = 0, e.msg = "", t.wrap && (e.adler = 1 & t.wrap), t.mode = 1, t.last = 0, t.havedict = 0, t.dmax = 32768, t.head = null, t.hold = 0, t.bits = 0, t.lencode = t.lendyn = new n.Buf32(852), t.distcode = t.distdyn = new n.Buf32(592), t.sane = 1, t.back = -1, 0) : h } function c(e) { var t; return e && e.state ? ((t = e.state).wsize = 0, t.whave = 0, t.wnext = 0, f(e)) : h } function d(e, t) { var r, n; return e && e.state ? (n = e.state, t < 0 ? (r = 0, t = -t) : (r = 1 + (t >> 4), t < 48 && (t &= 15)), t && (t < 8 || 15 < t) ? h : (null !== n.window && n.wbits !== t && (n.window = null), n.wrap = r, n.wbits = t, c(e))) : h } function p(e, t) { var r, n; return e ? (n = new l, (e.state = n).window = null, 0 !== (r = d(e, t)) && (e.state = null), r) : h } var m, _, g = !0; function b(e) { if (g) { var t; for (m = new n.Buf32(512), _ = new n.Buf32(32), t = 0; t < 144;)e.lens[t++] = 8; for (; t < 256;)e.lens[t++] = 9; for (; t < 280;)e.lens[t++] = 7; for (; t < 288;)e.lens[t++] = 8; for (o(1, e.lens, 0, 288, m, 0, e.work, { bits: 9 }), t = 0; t < 32;)e.lens[t++] = 5; o(2, e.lens, 0, 32, _, 0, e.work, { bits: 5 }), g = !1 } e.lencode = m, e.lenbits = 9, e.distcode = _, e.distbits = 5 } function v(e, t, r, i) { var s, a = e.state; return null === a.window && (a.wsize = 1 << a.wbits, a.wnext = 0, a.whave = 0, a.window = new n.Buf8(a.wsize)), i >= a.wsize ? (n.arraySet(a.window, t, r - a.wsize, a.wsize, 0), a.wnext = 0, a.whave = a.wsize) : (i < (s = a.wsize - a.wnext) && (s = i), n.arraySet(a.window, t, r - i, s, a.wnext), (i -= s) ? (n.arraySet(a.window, t, r - i, i, 0), a.wnext = i, a.whave = a.wsize) : (a.wnext += s, a.wnext === a.wsize && (a.wnext = 0), a.whave < a.wsize && (a.whave += s))), 0 } r.inflateReset = c, r.inflateReset2 = d, r.inflateResetKeep = f, r.inflateInit = function (e) { return p(e, 15) }, r.inflateInit2 = p, r.inflate = function (e, t) { var r, l, f, c, d, p, m, _, g, y, w, k, x, S, z, C, E, A, I, O, B, R, T, D, F = 0, N = new n.Buf8(4), U = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]; if (!e || !e.state || !e.output || !e.input && 0 !== e.avail_in) return h; 12 === (r = e.state).mode && (r.mode = 13), d = e.next_out, f = e.output, m = e.avail_out, c = e.next_in, l = e.input, p = e.avail_in, _ = r.hold, g = r.bits, y = p, w = m, R = 0; e: for (; ;)switch (r.mode) { case 1: if (0 === r.wrap) { r.mode = 13; break } for (; g < 16;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (2 & r.wrap && 35615 === _) { N[r.check = 0] = 255 & _, N[1] = _ >>> 8 & 255, r.check = s(r.check, N, 2, 0), g = _ = 0, r.mode = 2; break } if (r.flags = 0, r.head && (r.head.done = !1), !(1 & r.wrap) || (((255 & _) << 8) + (_ >> 8)) % 31) { e.msg = "incorrect header check", r.mode = 30; break } if (8 != (15 & _)) { e.msg = "unknown compression method", r.mode = 30; break } if (g -= 4, B = 8 + (15 & (_ >>>= 4)), 0 === r.wbits) r.wbits = B; else if (B > r.wbits) { e.msg = "invalid window size", r.mode = 30; break } r.dmax = 1 << B, e.adler = r.check = 1, r.mode = 512 & _ ? 10 : 12, g = _ = 0; break; case 2: for (; g < 16;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (r.flags = _, 8 != (255 & r.flags)) { e.msg = "unknown compression method", r.mode = 30; break } if (57344 & r.flags) { e.msg = "unknown header flags set", r.mode = 30; break } r.head && (r.head.text = _ >> 8 & 1), 512 & r.flags && (N[0] = 255 & _, N[1] = _ >>> 8 & 255, r.check = s(r.check, N, 2, 0)), g = _ = 0, r.mode = 3; case 3: for (; g < 32;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } r.head && (r.head.time = _), 512 & r.flags && (N[0] = 255 & _, N[1] = _ >>> 8 & 255, N[2] = _ >>> 16 & 255, N[3] = _ >>> 24 & 255, r.check = s(r.check, N, 4, 0)), g = _ = 0, r.mode = 4; case 4: for (; g < 16;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } r.head && (r.head.xflags = 255 & _, r.head.os = _ >> 8), 512 & r.flags && (N[0] = 255 & _, N[1] = _ >>> 8 & 255, r.check = s(r.check, N, 2, 0)), g = _ = 0, r.mode = 5; case 5: if (1024 & r.flags) { for (; g < 16;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } r.length = _, r.head && (r.head.extra_len = _), 512 & r.flags && (N[0] = 255 & _, N[1] = _ >>> 8 & 255, r.check = s(r.check, N, 2, 0)), g = _ = 0 } else r.head && (r.head.extra = null); r.mode = 6; case 6: if (1024 & r.flags && (p < (k = r.length) && (k = p), k && (r.head && (B = r.head.extra_len - r.length, r.head.extra || (r.head.extra = new Array(r.head.extra_len)), n.arraySet(r.head.extra, l, c, k, B)), 512 & r.flags && (r.check = s(r.check, l, k, c)), p -= k, c += k, r.length -= k), r.length)) break e; r.length = 0, r.mode = 7; case 7: if (2048 & r.flags) { if (0 === p) break e; for (k = 0; B = l[c + k++], r.head && B && r.length < 65536 && (r.head.name += String.fromCharCode(B)), B && k < p;); if (512 & r.flags && (r.check = s(r.check, l, k, c)), p -= k, c += k, B) break e } else r.head && (r.head.name = null); r.length = 0, r.mode = 8; case 8: if (4096 & r.flags) { if (0 === p) break e; for (k = 0; B = l[c + k++], r.head && B && r.length < 65536 && (r.head.comment += String.fromCharCode(B)), B && k < p;); if (512 & r.flags && (r.check = s(r.check, l, k, c)), p -= k, c += k, B) break e } else r.head && (r.head.comment = null); r.mode = 9; case 9: if (512 & r.flags) { for (; g < 16;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (_ !== (65535 & r.check)) { e.msg = "header crc mismatch", r.mode = 30; break } g = _ = 0 } r.head && (r.head.hcrc = r.flags >> 9 & 1, r.head.done = !0), e.adler = r.check = 0, r.mode = 12; break; case 10: for (; g < 32;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } e.adler = r.check = u(_), g = _ = 0, r.mode = 11; case 11: if (0 === r.havedict) return e.next_out = d, e.avail_out = m, e.next_in = c, e.avail_in = p, r.hold = _, r.bits = g, 2; e.adler = r.check = 1, r.mode = 12; case 12: if (5 === t || 6 === t) break e; case 13: if (r.last) { _ >>>= 7 & g, g -= 7 & g, r.mode = 27; break } for (; g < 3;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } switch (r.last = 1 & _, g -= 1, 3 & (_ >>>= 1)) { case 0: r.mode = 14; break; case 1: if (b(r), r.mode = 20, 6 !== t) break; _ >>>= 2, g -= 2; break e; case 2: r.mode = 17; break; case 3: e.msg = "invalid block type", r.mode = 30 }_ >>>= 2, g -= 2; break; case 14: for (_ >>>= 7 & g, g -= 7 & g; g < 32;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if ((65535 & _) != (_ >>> 16 ^ 65535)) { e.msg = "invalid stored block lengths", r.mode = 30; break } if (r.length = 65535 & _, g = _ = 0, r.mode = 15, 6 === t) break e; case 15: r.mode = 16; case 16: if (k = r.length) { if (p < k && (k = p), m < k && (k = m), 0 === k) break e; n.arraySet(f, l, c, k, d), p -= k, c += k, m -= k, d += k, r.length -= k; break } r.mode = 12; break; case 17: for (; g < 14;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (r.nlen = 257 + (31 & _), _ >>>= 5, g -= 5, r.ndist = 1 + (31 & _), _ >>>= 5, g -= 5, r.ncode = 4 + (15 & _), _ >>>= 4, g -= 4, 286 < r.nlen || 30 < r.ndist) { e.msg = "too many length or distance symbols", r.mode = 30; break } r.have = 0, r.mode = 18; case 18: for (; r.have < r.ncode;) { for (; g < 3;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } r.lens[U[r.have++]] = 7 & _, _ >>>= 3, g -= 3 } for (; r.have < 19;)r.lens[U[r.have++]] = 0; if (r.lencode = r.lendyn, r.lenbits = 7, T = { bits: r.lenbits }, R = o(0, r.lens, 0, 19, r.lencode, 0, r.work, T), r.lenbits = T.bits, R) { e.msg = "invalid code lengths set", r.mode = 30; break } r.have = 0, r.mode = 19; case 19: for (; r.have < r.nlen + r.ndist;) { for (; C = (F = r.lencode[_ & (1 << r.lenbits) - 1]) >>> 16 & 255, E = 65535 & F, !((z = F >>> 24) <= g);) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (E < 16) _ >>>= z, g -= z, r.lens[r.have++] = E; else { if (16 === E) { for (D = z + 2; g < D;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (_ >>>= z, g -= z, 0 === r.have) { e.msg = "invalid bit length repeat", r.mode = 30; break } B = r.lens[r.have - 1], k = 3 + (3 & _), _ >>>= 2, g -= 2 } else if (17 === E) { for (D = z + 3; g < D;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } g -= z, B = 0, k = 3 + (7 & (_ >>>= z)), _ >>>= 3, g -= 3 } else { for (D = z + 7; g < D;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } g -= z, B = 0, k = 11 + (127 & (_ >>>= z)), _ >>>= 7, g -= 7 } if (r.have + k > r.nlen + r.ndist) { e.msg = "invalid bit length repeat", r.mode = 30; break } for (; k--;)r.lens[r.have++] = B } } if (30 === r.mode) break; if (0 === r.lens[256]) { e.msg = "invalid code -- missing end-of-block", r.mode = 30; break } if (r.lenbits = 9, T = { bits: r.lenbits }, R = o(1, r.lens, 0, r.nlen, r.lencode, 0, r.work, T), r.lenbits = T.bits, R) { e.msg = "invalid literal/lengths set", r.mode = 30; break } if (r.distbits = 6, r.distcode = r.distdyn, T = { bits: r.distbits }, R = o(2, r.lens, r.nlen, r.ndist, r.distcode, 0, r.work, T), r.distbits = T.bits, R) { e.msg = "invalid distances set", r.mode = 30; break } if (r.mode = 20, 6 === t) break e; case 20: r.mode = 21; case 21: if (6 <= p && 258 <= m) { e.next_out = d, e.avail_out = m, e.next_in = c, e.avail_in = p, r.hold = _, r.bits = g, a(e, w), d = e.next_out, f = e.output, m = e.avail_out, c = e.next_in, l = e.input, p = e.avail_in, _ = r.hold, g = r.bits, 12 === r.mode && (r.back = -1); break } for (r.back = 0; C = (F = r.lencode[_ & (1 << r.lenbits) - 1]) >>> 16 & 255, E = 65535 & F, !((z = F >>> 24) <= g);) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (C && !(240 & C)) { for (A = z, I = C, O = E; C = (F = r.lencode[O + ((_ & (1 << A + I) - 1) >> A)]) >>> 16 & 255, E = 65535 & F, !(A + (z = F >>> 24) <= g);) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } _ >>>= A, g -= A, r.back += A } if (_ >>>= z, g -= z, r.back += z, r.length = E, 0 === C) { r.mode = 26; break } if (32 & C) { r.back = -1, r.mode = 12; break } if (64 & C) { e.msg = "invalid literal/length code", r.mode = 30; break } r.extra = 15 & C, r.mode = 22; case 22: if (r.extra) { for (D = r.extra; g < D;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } r.length += _ & (1 << r.extra) - 1, _ >>>= r.extra, g -= r.extra, r.back += r.extra } r.was = r.length, r.mode = 23; case 23: for (; C = (F = r.distcode[_ & (1 << r.distbits) - 1]) >>> 16 & 255, E = 65535 & F, !((z = F >>> 24) <= g);) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (!(240 & C)) { for (A = z, I = C, O = E; C = (F = r.distcode[O + ((_ & (1 << A + I) - 1) >> A)]) >>> 16 & 255, E = 65535 & F, !(A + (z = F >>> 24) <= g);) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } _ >>>= A, g -= A, r.back += A } if (_ >>>= z, g -= z, r.back += z, 64 & C) { e.msg = "invalid distance code", r.mode = 30; break } r.offset = E, r.extra = 15 & C, r.mode = 24; case 24: if (r.extra) { for (D = r.extra; g < D;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } r.offset += _ & (1 << r.extra) - 1, _ >>>= r.extra, g -= r.extra, r.back += r.extra } if (r.offset > r.dmax) { e.msg = "invalid distance too far back", r.mode = 30; break } r.mode = 25; case 25: if (0 === m) break e; if (k = w - m, r.offset > k) { if ((k = r.offset - k) > r.whave && r.sane) { e.msg = "invalid distance too far back", r.mode = 30; break } x = k > r.wnext ? (k -= r.wnext, r.wsize - k) : r.wnext - k, k > r.length && (k = r.length), S = r.window } else S = f, x = d - r.offset, k = r.length; for (m < k && (k = m), m -= k, r.length -= k; f[d++] = S[x++], --k;); 0 === r.length && (r.mode = 21); break; case 26: if (0 === m) break e; f[d++] = r.length, m--, r.mode = 21; break; case 27: if (r.wrap) { for (; g < 32;) { if (0 === p) break e; p--, _ |= l[c++] << g, g += 8 } if (w -= m, e.total_out += w, r.total += w, w && (e.adler = r.check = r.flags ? s(r.check, f, w, d - w) : i(r.check, f, w, d - w)), w = m, (r.flags ? _ : u(_)) !== r.check) { e.msg = "incorrect data check", r.mode = 30; break } g = _ = 0 } r.mode = 28; case 28: if (r.wrap && r.flags) { for (; g < 32;) { if (0 === p) break e; p--, _ += l[c++] << g, g += 8 } if (_ !== (4294967295 & r.total)) { e.msg = "incorrect length check", r.mode = 30; break } g = _ = 0 } r.mode = 29; case 29: R = 1; break e; case 30: R = -3; break e; case 31: return -4; default: return h }return e.next_out = d, e.avail_out = m, e.next_in = c, e.avail_in = p, r.hold = _, r.bits = g, (r.wsize || w !== e.avail_out && r.mode < 30 && (r.mode < 27 || 4 !== t)) && v(e, e.output, e.next_out, w - e.avail_out) ? (r.mode = 31, -4) : (y -= e.avail_in, w -= e.avail_out, e.total_in += y, e.total_out += w, r.total += w, r.wrap && w && (e.adler = r.check = r.flags ? s(r.check, f, w, e.next_out - w) : i(r.check, f, w, e.next_out - w)), e.data_type = r.bits + (r.last ? 64 : 0) + (12 === r.mode ? 128 : 0) + (20 === r.mode || 15 === r.mode ? 256 : 0), (0 == y && 0 === w || 4 === t) && 0 === R && (R = -5), R) }, r.inflateEnd = function (e) { if (!e || !e.state) return h; var t = e.state; return t.window && (t.window = null), e.state = null, 0 }, r.inflateGetHeader = function (e, t) { var r; return e && e.state && 2 & (r = e.state).wrap ? ((r.head = t).done = !1, 0) : h }, r.inflateSetDictionary = function (e, t) { var r, n = t.length; return e && e.state ? 0 !== (r = e.state).wrap && 11 !== r.mode ? h : 11 === r.mode && i(1, t, n, 0) !== r.check ? -3 : v(e, t, n, n) ? (r.mode = 31, -4) : (r.havedict = 1, 0) : h }, r.inflateInfo = "pako inflate (from Nodeca project)" }, { "../utils/common": 41, "./adler32": 43, "./crc32": 45, "./inffast": 48, "./inftrees": 50 }], 50: [function (e, t, r) { "use strict"; var n = e("../utils/common"), i = [3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0], s = [16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78], a = [1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0], o = [16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64]; t.exports = function (e, t, r, h, u, l, f, c) { var d, p, m, _, g, b, v, y, w, k = c.bits, x = 0, S = 0, z = 0, C = 0, E = 0, A = 0, I = 0, O = 0, B = 0, R = 0, T = null, D = 0, F = new n.Buf16(16), N = new n.Buf16(16), U = null, P = 0; for (x = 0; x <= 15; x++)F[x] = 0; for (S = 0; S < h; S++)F[t[r + S]]++; for (E = k, C = 15; 1 <= C && 0 === F[C]; C--); if (C < E && (E = C), 0 === C) return u[l++] = 20971520, u[l++] = 20971520, c.bits = 1, 0; for (z = 1; z < C && 0 === F[z]; z++); for (E < z && (E = z), x = O = 1; x <= 15; x++)if (O <<= 1, (O -= F[x]) < 0) return -1; if (0 < O && (0 === e || 1 !== C)) return -1; for (N[1] = 0, x = 1; x < 15; x++)N[x + 1] = N[x] + F[x]; for (S = 0; S < h; S++)0 !== t[r + S] && (f[N[t[r + S]]++] = S); if (b = 0 === e ? (T = U = f, 19) : 1 === e ? (T = i, D -= 257, U = s, P -= 257, 256) : (T = a, U = o, -1), x = z, g = l, I = S = R = 0, m = -1, _ = (B = 1 << (A = E)) - 1, 1 === e && 852 < B || 2 === e && 592 < B) return 1; for (; ;) { for (v = x - I, w = f[S] < b ? (y = 0, f[S]) : f[S] > b ? (y = U[P + f[S]], T[D + f[S]]) : (y = 96, 0), d = 1 << x - I, z = p = 1 << A; u[g + (R >> I) + (p -= d)] = v << 24 | y << 16 | w, 0 !== p;); for (d = 1 << x - 1; R & d;)d >>= 1; if (0 !== d ? (R &= d - 1, R += d) : R = 0, S++, 0 == --F[x]) { if (x === C) break; x = t[r + f[S]] } if (E < x && (R & _) !== m) { for (0 === I && (I = E), g += z, O = 1 << (A = x - I); A + I < C && !((O -= F[A + I]) <= 0);)A++, O <<= 1; if (B += 1 << A, 1 === e && 852 < B || 2 === e && 592 < B) return 1; u[m = R & _] = E << 24 | A << 16 | g - l } } return 0 !== R && (u[g + R] = x - I << 24 | 64 << 16), c.bits = E, 0 } }, { "../utils/common": 41 }], 51: [function (e, t, r) { "use strict"; t.exports = { 2: "need dictionary", 1: "stream end", 0: "", "-1": "file error", "-2": "stream error", "-3": "data error", "-4": "insufficient memory", "-5": "buffer error", "-6": "incompatible version" } }, {}], 52: [function (e, t, r) { "use strict"; var n = e("../utils/common"); function i(e) { for (var t = e.length; 0 <= --t;)e[t] = 0 } var s = [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0], a = [0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13], o = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7], h = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15], u = new Array(576); i(u); var l = new Array(60); i(l); var f = new Array(512); i(f); var c = new Array(256); i(c); var d = new Array(29); i(d); var p, m, _, g = new Array(30); function b(e, t, r, n, i) { this.static_tree = e, this.extra_bits = t, this.extra_base = r, this.elems = n, this.max_length = i, this.has_stree = e && e.length } function v(e, t) { this.dyn_tree = e, this.max_code = 0, this.stat_desc = t } function y(e) { return e < 256 ? f[e] : f[256 + (e >>> 7)] } function w(e, t) { e.pending_buf[e.pending++] = 255 & t, e.pending_buf[e.pending++] = t >>> 8 & 255 } function k(e, t, r) { e.bi_valid > 16 - r ? (e.bi_buf |= t << e.bi_valid & 65535, w(e, e.bi_buf), e.bi_buf = t >> 16 - e.bi_valid, e.bi_valid += r - 16) : (e.bi_buf |= t << e.bi_valid & 65535, e.bi_valid += r) } function x(e, t, r) { k(e, r[2 * t], r[2 * t + 1]) } function S(e, t) { for (var r = 0; r |= 1 & e, e >>>= 1, r <<= 1, 0 < --t;); return r >>> 1 } function z(e, t, r) { var n, i, s = new Array(16), a = 0; for (n = 1; n <= 15; n++)s[n] = a = a + r[n - 1] << 1; for (i = 0; i <= t; i++) { var o = e[2 * i + 1]; 0 !== o && (e[2 * i] = S(s[o]++, o)) } } function C(e) { var t; for (t = 0; t < 286; t++)e.dyn_ltree[2 * t] = 0; for (t = 0; t < 30; t++)e.dyn_dtree[2 * t] = 0; for (t = 0; t < 19; t++)e.bl_tree[2 * t] = 0; e.dyn_ltree[512] = 1, e.opt_len = e.static_len = 0, e.last_lit = e.matches = 0 } function E(e) { 8 < e.bi_valid ? w(e, e.bi_buf) : 0 < e.bi_valid && (e.pending_buf[e.pending++] = e.bi_buf), e.bi_buf = 0, e.bi_valid = 0 } function A(e, t, r, n) { var i = 2 * t, s = 2 * r; return e[i] < e[s] || e[i] === e[s] && n[t] <= n[r] } function I(e, t, r) { for (var n = e.heap[r], i = r << 1; i <= e.heap_len && (i < e.heap_len && A(t, e.heap[i + 1], e.heap[i], e.depth) && i++, !A(t, n, e.heap[i], e.depth));)e.heap[r] = e.heap[i], r = i, i <<= 1; e.heap[r] = n } function O(e, t, r) { var n, i, o, h, u = 0; if (0 !== e.last_lit) for (; n = e.pending_buf[e.d_buf + 2 * u] << 8 | e.pending_buf[e.d_buf + 2 * u + 1], i = e.pending_buf[e.l_buf + u], u++, 0 === n ? x(e, i, t) : (x(e, (o = c[i]) + 256 + 1, t), 0 !== (h = s[o]) && k(e, i -= d[o], h), x(e, o = y(--n), r), 0 !== (h = a[o]) && k(e, n -= g[o], h)), u < e.last_lit;); x(e, 256, t) } function B(e, t) { var r, n, i, s = t.dyn_tree, a = t.stat_desc.static_tree, o = t.stat_desc.has_stree, h = t.stat_desc.elems, u = -1; for (e.heap_len = 0, e.heap_max = 573, r = 0; r < h; r++)0 !== s[2 * r] ? (e.heap[++e.heap_len] = u = r, e.depth[r] = 0) : s[2 * r + 1] = 0; for (; e.heap_len < 2;)s[2 * (i = e.heap[++e.heap_len] = u < 2 ? ++u : 0)] = 1, e.depth[i] = 0, e.opt_len--, o && (e.static_len -= a[2 * i + 1]); for (t.max_code = u, r = e.heap_len >> 1; 1 <= r; r--)I(e, s, r); for (i = h; r = e.heap[1], e.heap[1] = e.heap[e.heap_len--], I(e, s, 1), n = e.heap[1], e.heap[--e.heap_max] = r, e.heap[--e.heap_max] = n, s[2 * i] = s[2 * r] + s[2 * n], e.depth[i] = (e.depth[r] >= e.depth[n] ? e.depth[r] : e.depth[n]) + 1, s[2 * r + 1] = s[2 * n + 1] = i, e.heap[1] = i++, I(e, s, 1), 2 <= e.heap_len;); e.heap[--e.heap_max] = e.heap[1], function (e, t) { var r, n, i, s, a, o, h = t.dyn_tree, u = t.max_code, l = t.stat_desc.static_tree, f = t.stat_desc.has_stree, c = t.stat_desc.extra_bits, d = t.stat_desc.extra_base, p = t.stat_desc.max_length, m = 0; for (s = 0; s <= 15; s++)e.bl_count[s] = 0; for (h[2 * e.heap[e.heap_max] + 1] = 0, r = e.heap_max + 1; r < 573; r++)p < (s = h[2 * h[2 * (n = e.heap[r]) + 1] + 1] + 1) && (s = p, m++), h[2 * n + 1] = s, u < n || (e.bl_count[s]++, a = 0, d <= n && (a = c[n - d]), o = h[2 * n], e.opt_len += o * (s + a), f && (e.static_len += o * (l[2 * n + 1] + a))); if (0 !== m) { do { for (s = p - 1; 0 === e.bl_count[s];)s--; e.bl_count[s]--, e.bl_count[s + 1] += 2, e.bl_count[p]--, m -= 2 } while (0 < m); for (s = p; 0 !== s; s--)for (n = e.bl_count[s]; 0 !== n;)u < (i = e.heap[--r]) || (h[2 * i + 1] !== s && (e.opt_len += (s - h[2 * i + 1]) * h[2 * i], h[2 * i + 1] = s), n--) } }(e, t), z(s, u, e.bl_count) } function R(e, t, r) { var n, i, s = -1, a = t[1], o = 0, h = 7, u = 4; for (0 === a && (h = 138, u = 3), t[2 * (r + 1) + 1] = 65535, n = 0; n <= r; n++)i = a, a = t[2 * (n + 1) + 1], ++o < h && i === a || (o < u ? e.bl_tree[2 * i] += o : 0 !== i ? (i !== s && e.bl_tree[2 * i]++, e.bl_tree[32]++) : o <= 10 ? e.bl_tree[34]++ : e.bl_tree[36]++, s = i, u = (o = 0) === a ? (h = 138, 3) : i === a ? (h = 6, 3) : (h = 7, 4)) } function T(e, t, r) { var n, i, s = -1, a = t[1], o = 0, h = 7, u = 4; for (0 === a && (h = 138, u = 3), n = 0; n <= r; n++)if (i = a, a = t[2 * (n + 1) + 1], !(++o < h && i === a)) { if (o < u) for (; x(e, i, e.bl_tree), 0 != --o;); else 0 !== i ? (i !== s && (x(e, i, e.bl_tree), o--), x(e, 16, e.bl_tree), k(e, o - 3, 2)) : o <= 10 ? (x(e, 17, e.bl_tree), k(e, o - 3, 3)) : (x(e, 18, e.bl_tree), k(e, o - 11, 7)); s = i, u = (o = 0) === a ? (h = 138, 3) : i === a ? (h = 6, 3) : (h = 7, 4) } } i(g); var D = !1; function F(e, t, r, i) { k(e, 0 + (i ? 1 : 0), 3), function (e, t, r) { E(e), w(e, r), w(e, ~r), n.arraySet(e.pending_buf, e.window, t, r, e.pending), e.pending += r }(e, t, r) } r._tr_init = function (e) { D || (function () { var e, t, r, n, i, h = new Array(16); for (n = r = 0; n < 28; n++)for (d[n] = r, e = 0; e < 1 << s[n]; e++)c[r++] = n; for (c[r - 1] = n, n = i = 0; n < 16; n++)for (g[n] = i, e = 0; e < 1 << a[n]; e++)f[i++] = n; for (i >>= 7; n < 30; n++)for (g[n] = i << 7, e = 0; e < 1 << a[n] - 7; e++)f[256 + i++] = n; for (t = 0; t <= 15; t++)h[t] = 0; for (e = 0; e <= 143;)u[2 * e + 1] = 8, e++, h[8]++; for (; e <= 255;)u[2 * e + 1] = 9, e++, h[9]++; for (; e <= 279;)u[2 * e + 1] = 7, e++, h[7]++; for (; e <= 287;)u[2 * e + 1] = 8, e++, h[8]++; for (z(u, 287, h), e = 0; e < 30; e++)l[2 * e + 1] = 5, l[2 * e] = S(e, 5); p = new b(u, s, 257, 286, 15), m = new b(l, a, 0, 30, 15), _ = new b(new Array(0), o, 0, 19, 7) }(), D = !0), e.l_desc = new v(e.dyn_ltree, p), e.d_desc = new v(e.dyn_dtree, m), e.bl_desc = new v(e.bl_tree, _), e.bi_buf = 0, e.bi_valid = 0, C(e) }, r._tr_stored_block = F, r._tr_flush_block = function (e, t, r, n) { var i, s, a = 0; 0 < e.level ? (2 === e.strm.data_type && (e.strm.data_type = function (e) { var t, r = 4093624447; for (t = 0; t <= 31; t++, r >>>= 1)if (1 & r && 0 !== e.dyn_ltree[2 * t]) return 0; if (0 !== e.dyn_ltree[18] || 0 !== e.dyn_ltree[20] || 0 !== e.dyn_ltree[26]) return 1; for (t = 32; t < 256; t++)if (0 !== e.dyn_ltree[2 * t]) return 1; return 0 }(e)), B(e, e.l_desc), B(e, e.d_desc), a = function (e) { var t; for (R(e, e.dyn_ltree, e.l_desc.max_code), R(e, e.dyn_dtree, e.d_desc.max_code), B(e, e.bl_desc), t = 18; 3 <= t && 0 === e.bl_tree[2 * h[t] + 1]; t--); return e.opt_len += 3 * (t + 1) + 5 + 5 + 4, t }(e), i = e.opt_len + 3 + 7 >>> 3, (s = e.static_len + 3 + 7 >>> 3) <= i && (i = s)) : i = s = r + 5, r + 4 <= i && -1 !== t ? F(e, t, r, n) : 4 === e.strategy || s === i ? (k(e, 2 + (n ? 1 : 0), 3), O(e, u, l)) : (k(e, 4 + (n ? 1 : 0), 3), function (e, t, r, n) { var i; for (k(e, t - 257, 5), k(e, r - 1, 5), k(e, n - 4, 4), i = 0; i < n; i++)k(e, e.bl_tree[2 * h[i] + 1], 3); T(e, e.dyn_ltree, t - 1), T(e, e.dyn_dtree, r - 1) }(e, e.l_desc.max_code + 1, e.d_desc.max_code + 1, a + 1), O(e, e.dyn_ltree, e.dyn_dtree)), C(e), n && E(e) }, r._tr_tally = function (e, t, r) { return e.pending_buf[e.d_buf + 2 * e.last_lit] = t >>> 8 & 255, e.pending_buf[e.d_buf + 2 * e.last_lit + 1] = 255 & t, e.pending_buf[e.l_buf + e.last_lit] = 255 & r, e.last_lit++, 0 === t ? e.dyn_ltree[2 * r]++ : (e.matches++, t--, e.dyn_ltree[2 * (c[r] + 256 + 1)]++, e.dyn_dtree[2 * y(t)]++), e.last_lit === e.lit_bufsize - 1 }, r._tr_align = function (e) { k(e, 2, 3), x(e, 256, u), function (e) { 16 === e.bi_valid ? (w(e, e.bi_buf), e.bi_buf = 0, e.bi_valid = 0) : 8 <= e.bi_valid && (e.pending_buf[e.pending++] = 255 & e.bi_buf, e.bi_buf >>= 8, e.bi_valid -= 8) }(e) } }, { "../utils/common": 41 }], 53: [function (e, t, r) { "use strict"; t.exports = function () { this.input = null, this.next_in = 0, this.avail_in = 0, this.total_in = 0, this.output = null, this.next_out = 0, this.avail_out = 0, this.total_out = 0, this.msg = "", this.state = null, this.data_type = 2, this.adler = 0 } }, {}], 54: [function (e, t, r) { (function (e) { !function (e) { "use strict"; if (!e.setImmediate) { var t, r, n, i, s = 1, a = {}, o = !1, h = e.document, u = Object.getPrototypeOf && Object.getPrototypeOf(e); u = u && u.setTimeout ? u : e, t = "[object process]" === {}.toString.call(e.process) ? function (e) { process.nextTick((function () { f(e) })) } : function () { if (e.postMessage && !e.importScripts) { var t = !0, r = e.onmessage; return e.onmessage = function () { t = !1 }, e.postMessage("", "*"), e.onmessage = r, t } }() ? (i = "setImmediate$" + Math.random() + "$", e.addEventListener ? e.addEventListener("message", c, !1) : e.attachEvent("onmessage", c), function (t) { e.postMessage(i + t, "*") }) : e.MessageChannel ? ((n = new MessageChannel).port1.onmessage = function (e) { f(e.data) }, function (e) { n.port2.postMessage(e) }) : h && "onreadystatechange" in h.createElement("script") ? (r = h.documentElement, function (e) { var t = h.createElement("script"); t.onreadystatechange = function () { f(e), t.onreadystatechange = null, r.removeChild(t), t = null }, r.appendChild(t) }) : function (e) { setTimeout(f, 0, e) }, u.setImmediate = function (e) { "function" != typeof e && (e = new Function("" + e)); for (var r = new Array(arguments.length - 1), n = 0; n < r.length; n++)r[n] = arguments[n + 1]; var i = { callback: e, args: r }; return a[s] = i, t(s), s++ }, u.clearImmediate = l } function l(e) { delete a[e] } function f(e) { if (o) setTimeout(f, 0, e); else { var t = a[e]; if (t) { o = !0; try { !function (e) { var t = e.callback, r = e.args; switch (r.length) { case 0: t(); break; case 1: t(r[0]); break; case 2: t(r[0], r[1]); break; case 3: t(r[0], r[1], r[2]); break; default: t.apply(void 0, r) } }(t) } finally { l(e), o = !1 } } } } function c(t) { t.source === e && "string" == typeof t.data && 0 === t.data.indexOf(i) && f(+t.data.slice(i.length)) } }("undefined" == typeof self ? void 0 === e ? this : e : self) }).call(this, "undefined" != typeof global ? global : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {}) }, {}] }, {}, [10])(10) })); \ No newline at end of file +!function(e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).JSZip=e()}((function(){return function e(t,r,n){function i(a,o){if(!r[a]){if(!t[a]){var h="function"==typeof require&&require;if(!o&&h)return h(a,!0);if(s)return s(a,!0);var u=new Error("Cannot find module '"+a+"'");throw u.code="MODULE_NOT_FOUND",u}var l=r[a]={exports:{}};t[a][0].call(l.exports,(function(e){return i(t[a][1][e]||e)}),l,l.exports,e,t,r,n)}return r[a].exports}for(var s="function"==typeof require&&require,a=0;a>2,o=(3&t)<<4|r>>4,h=1>6:64,u=2>4,r=(15&a)<<4|(o=s.indexOf(e.charAt(u++)))>>2,n=(3&o)<<6|(h=s.indexOf(e.charAt(u++))),f[l++]=t,64!==o&&(f[l++]=r),64!==h&&(f[l++]=n);return f}},{"./support":30,"./utils":32}],2:[function(e,t,r){"use strict";var n=e("./external"),i=e("./stream/DataWorker"),s=e("./stream/Crc32Probe"),a=e("./stream/DataLengthProbe");function o(e,t,r,n,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=r,this.compression=n,this.compressedContent=i}o.prototype={getContentWorker:function(){var e=new i(n.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new a("data_length")),t=this;return e.on("end",(function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")})),e},getCompressedWorker:function(){return new i(n.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},o.createWorkerFrom=function(e,t,r){return e.pipe(new s).pipe(new a("uncompressedSize")).pipe(t.compressWorker(r)).pipe(new a("compressedSize")).withStreamInfo("compression",t)},t.exports=o},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,r){"use strict";var n=e("./stream/GenericWorker");r.STORE={magic:"\0\0",compressWorker:function(){return new n("STORE compression")},uncompressWorker:function(){return new n("STORE decompression")}},r.DEFLATE=e("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,r){"use strict";var n=e("./utils"),i=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();t.exports=function(e,t){return void 0!==e&&e.length?"string"!==n.getTypeOf(e)?function(e,t,r){var n=i,s=0+r;e^=-1;for(var a=0;a>>8^n[255&(e^t[a])];return~e}(0|t,e,e.length):function(e,t,r){var n=i,s=0+r;e^=-1;for(var a=0;a>>8^n[255&(e^t.charCodeAt(a))];return~e}(0|t,e,e.length):0}},{"./utils":32}],5:[function(e,t,r){"use strict";r.base64=!1,r.binary=!1,r.dir=!1,r.createFolders=!0,r.date=null,r.compression=null,r.compressionOptions=null,r.comment=null,r.unixPermissions=null,r.dosPermissions=null},{}],6:[function(e,t,r){"use strict";var n;n="undefined"!=typeof Promise?Promise:e("lie"),t.exports={Promise:n}},{lie:37}],7:[function(e,t,r){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,i=e("pako"),s=e("./utils"),a=e("./stream/GenericWorker"),o=n?"uint8array":"array";function h(e,t){a.call(this,"FlateWorker/"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}r.magic="\b\0",s.inherits(h,a),h.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(s.transformTo(o,e.data),!1)},h.prototype.flush=function(){a.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},h.prototype.cleanUp=function(){a.prototype.cleanUp.call(this),this._pako=null},h.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},r.compressWorker=function(e){return new h("Deflate",e)},r.uncompressWorker=function(){return new h("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,r){"use strict";function n(e,t){var r,n="";for(r=0;r>>=8;return n}function i(e,t,r,i,a,l){var f,c,d=e.file,p=e.compression,m=l!==o.utf8encode,_=s.transformTo("string",l(d.name)),g=s.transformTo("string",o.utf8encode(d.name)),b=d.comment,v=s.transformTo("string",l(b)),y=s.transformTo("string",o.utf8encode(b)),w=g.length!==d.name.length,k=y.length!==b.length,x="",S="",z="",C=d.dir,E=d.date,A={crc32:0,compressedSize:0,uncompressedSize:0};t&&!r||(A.crc32=e.crc32,A.compressedSize=e.compressedSize,A.uncompressedSize=e.uncompressedSize);var I=0;t&&(I|=8),m||!w&&!k||(I|=2048);var O=0,B=0;C&&(O|=16),"UNIX"===a?(B=798,O|=function(e,t){var r=e;return e||(r=t?16893:33204),(65535&r)<<16}(d.unixPermissions,C)):(B=20,O|=function(e){return 63&(e||0)}(d.dosPermissions)),f=E.getUTCHours(),f<<=6,f|=E.getUTCMinutes(),f<<=5,f|=E.getUTCSeconds()/2,c=E.getUTCFullYear()-1980,c<<=4,c|=E.getUTCMonth()+1,c<<=5,c|=E.getUTCDate(),w&&(S=n(1,1)+n(h(_),4)+g,x+="up"+n(S.length,2)+S),k&&(z=n(1,1)+n(h(v),4)+y,x+="uc"+n(z.length,2)+z);var R="";return R+="\n\0",R+=n(I,2),R+=p.magic,R+=n(f,2),R+=n(c,2),R+=n(A.crc32,4),R+=n(A.compressedSize,4),R+=n(A.uncompressedSize,4),R+=n(_.length,2),R+=n(x.length,2),{fileRecord:u.LOCAL_FILE_HEADER+R+_+x,dirRecord:u.CENTRAL_FILE_HEADER+n(B,2)+R+n(v.length,2)+"\0\0\0\0"+n(O,4)+n(i,4)+_+x+v}}var s=e("../utils"),a=e("../stream/GenericWorker"),o=e("../utf8"),h=e("../crc32"),u=e("../signature");function l(e,t,r,n){a.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=r,this.encodeFileName=n,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}s.inherits(l,a),l.prototype.push=function(e){var t=e.meta.percent||0,r=this.entriesCount,n=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,a.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:r?(t+100*(r-n-1))/r:100}}))},l.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var r=i(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:r.fileRecord,meta:{percent:0}})}else this.accumulate=!0},l.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,r=i(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(r.dirRecord),t)this.push({data:function(e){return u.DATA_DESCRIPTOR+n(e.crc32,4)+n(e.compressedSize,4)+n(e.uncompressedSize,4)}(e),meta:{percent:100}});else for(this.push({data:r.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},l.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t=this.index;t--)r=(r<<8)+this.byteAt(t);return this.index+=e,r},readString:function(e){return n.transformTo("string",this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},t.exports=i},{"../utils":32}],19:[function(e,t,r){"use strict";var n=e("./Uint8ArrayReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(e,t,r){"use strict";var n=e("./DataReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],21:[function(e,t,r){"use strict";var n=e("./ArrayReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./ArrayReader":17}],22:[function(e,t,r){"use strict";var n=e("../utils"),i=e("../support"),s=e("./ArrayReader"),a=e("./StringReader"),o=e("./NodeBufferReader"),h=e("./Uint8ArrayReader");t.exports=function(e){var t=n.getTypeOf(e);return n.checkSupport(t),"string"!==t||i.uint8array?"nodebuffer"===t?new o(e):i.uint8array?new h(n.transformTo("uint8array",e)):new s(n.transformTo("array",e)):new a(e)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,t,r){"use strict";r.LOCAL_FILE_HEADER="PK",r.CENTRAL_FILE_HEADER="PK",r.CENTRAL_DIRECTORY_END="PK",r.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",r.ZIP64_CENTRAL_DIRECTORY_END="PK",r.DATA_DESCRIPTOR="PK\b"},{}],24:[function(e,t,r){"use strict";var n=e("./GenericWorker"),i=e("../utils");function s(e){n.call(this,"ConvertWorker to "+e),this.destType=e}i.inherits(s,n),s.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},t.exports=s},{"../utils":32,"./GenericWorker":28}],25:[function(e,t,r){"use strict";var n=e("./GenericWorker"),i=e("../crc32");function s(){n.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}e("../utils").inherits(s,n),s.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=s},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./GenericWorker");function s(e){i.call(this,"DataLengthProbe for "+e),this.propName=e,this.withStreamInfo(e,0)}n.inherits(s,i),s.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},t.exports=s},{"../utils":32,"./GenericWorker":28}],27:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./GenericWorker");function s(e){i.call(this,"DataWorker");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,e.then((function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=n.getTypeOf(e),t.isPaused||t._tickAndRepeat()}),(function(e){t.error(e)}))}n.inherits(s,i),s.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},s.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,n.delay(this._tickAndRepeat,[],this)),!0)},s.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(n.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},s.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":e=this.data.substring(this.index,t);break;case"uint8array":e=this.data.subarray(this.index,t);break;case"array":case"nodebuffer":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=s},{"../utils":32,"./GenericWorker":28}],28:[function(e,t,r){"use strict";function n(e){this.name=e||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}n.prototype={push:function(e){this.emit("data",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit("error",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit("error",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var r=0;r "+e:e}},t.exports=n},{}],29:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./ConvertWorker"),s=e("./GenericWorker"),a=e("../base64"),o=e("../support"),h=e("../external"),u=null;if(o.nodestream)try{u=e("../nodejs/NodejsStreamOutputAdapter")}catch(e){}function l(e,t,r){var a=t;switch(t){case"blob":case"arraybuffer":a="uint8array";break;case"base64":a="string"}try{this._internalType=a,this._outputType=t,this._mimeType=r,n.checkSupport(a),this._worker=e.pipe(new i(a)),e.lock()}catch(e){this._worker=new s("error"),this._worker.error(e)}}l.prototype={accumulate:function(e){return function(e,t){return new h.Promise((function(r,i){var s=[],o=e._internalType,h=e._outputType,u=e._mimeType;e.on("data",(function(e,r){s.push(e),t&&t(r)})).on("error",(function(e){s=[],i(e)})).on("end",(function(){try{var e=function(e,t,r){switch(e){case"blob":return n.newBlob(n.transformTo("arraybuffer",t),r);case"base64":return a.encode(t);default:return n.transformTo(e,t)}}(h,function(e,t){var r,n=0,i=null,s=0;for(r=0;r>>6:(r<65536?t[a++]=224|r>>>12:(t[a++]=240|r>>>18,t[a++]=128|r>>>12&63),t[a++]=128|r>>>6&63),t[a++]=128|63&r);return t}(e)},r.utf8decode=function(e){return i.nodebuffer?n.transformTo("nodebuffer",e).toString("utf-8"):function(e){var t,r,i,s,a=e.length,h=new Array(2*a);for(t=r=0;t>10&1023,h[r++]=56320|1023&i)}return h.length!==r&&(h.subarray?h=h.subarray(0,r):h.length=r),n.applyFromCharCode(h)}(e=n.transformTo(i.uint8array?"uint8array":"array",e))},n.inherits(u,a),u.prototype.processChunk=function(e){var t=n.transformTo(i.uint8array?"uint8array":"array",e.data);if(this.leftOver&&this.leftOver.length){if(i.uint8array){var s=t;(t=new Uint8Array(s.length+this.leftOver.length)).set(this.leftOver,0),t.set(s,this.leftOver.length)}else t=this.leftOver.concat(t);this.leftOver=null}var a=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;0<=r&&128==(192&e[r]);)r--;return r<0||0===r?t:r+o[e[r]]>t?r:t}(t),h=t;a!==t.length&&(i.uint8array?(h=t.subarray(0,a),this.leftOver=t.subarray(a,t.length)):(h=t.slice(0,a),this.leftOver=t.slice(a,t.length))),this.push({data:r.utf8decode(h),meta:e.meta})},u.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:r.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},r.Utf8DecodeWorker=u,n.inherits(l,a),l.prototype.processChunk=function(e){this.push({data:r.utf8encode(e.data),meta:e.meta})},r.Utf8EncodeWorker=l},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,r){"use strict";var n=e("./support"),i=e("./base64"),s=e("./nodejsUtils"),a=e("./external");function o(e){return e}function h(e,t){for(var r=0;r>8;this.dir=!!(16&this.externalFileAttributes),0==e&&(this.dosPermissions=63&this.externalFileAttributes),3==e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=n(this.extraFields[1].value);this.uncompressedSize===i.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===i.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===i.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===i.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,r,n,i=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4>>6:(r<65536?t[a++]=224|r>>>12:(t[a++]=240|r>>>18,t[a++]=128|r>>>12&63),t[a++]=128|r>>>6&63),t[a++]=128|63&r);return t},r.buf2binstring=function(e){return h(e,e.length)},r.binstring2buf=function(e){for(var t=new n.Buf8(e.length),r=0,i=t.length;r>10&1023,u[n++]=56320|1023&i)}return h(u,n)},r.utf8border=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;0<=r&&128==(192&e[r]);)r--;return r<0||0===r?t:r+a[e[r]]>t?r:t}},{"./common":41}],43:[function(e,t,r){"use strict";t.exports=function(e,t,r,n){for(var i=65535&e,s=e>>>16&65535,a=0;0!==r;){for(r-=a=2e3>>1:e>>>1;t[r]=e}return t}();t.exports=function(e,t,r,i){var s=n,a=i+r;e^=-1;for(var o=i;o>>8^s[255&(e^t[o])];return~e}},{}],46:[function(e,t,r){"use strict";var n,i=e("../utils/common"),s=e("./trees"),a=e("./adler32"),o=e("./crc32"),h=e("./messages"),u=-2,l=258,f=262,c=113;function d(e,t){return e.msg=h[t],t}function p(e){return(e<<1)-(4e.avail_out&&(r=e.avail_out),0!==r&&(i.arraySet(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))}function g(e,t){s._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,_(e.strm)}function b(e,t){e.pending_buf[e.pending++]=t}function v(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function y(e,t){var r,n,i=e.max_chain_length,s=e.strstart,a=e.prev_length,o=e.nice_match,h=e.strstart>e.w_size-f?e.strstart-(e.w_size-f):0,u=e.window,c=e.w_mask,d=e.prev,p=e.strstart+l,m=u[s+a-1],_=u[s+a];e.prev_length>=e.good_match&&(i>>=2),o>e.lookahead&&(o=e.lookahead);do{if(u[(r=t)+a]===_&&u[r+a-1]===m&&u[r]===u[s]&&u[++r]===u[s+1]){s+=2,r++;do{}while(u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&sh&&0!=--i);return a<=e.lookahead?a:e.lookahead}function w(e){var t,r,n,s,h,u,l,c,d,p,m=e.w_size;do{if(s=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-f)){for(i.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,t=r=e.hash_size;n=e.head[--t],e.head[t]=m<=n?n-m:0,--r;);for(t=r=m;n=e.prev[--t],e.prev[t]=m<=n?n-m:0,--r;);s+=m}if(0===e.strm.avail_in)break;if(u=e.strm,l=e.window,c=e.strstart+e.lookahead,p=void 0,(d=s)<(p=u.avail_in)&&(p=d),r=0===p?0:(u.avail_in-=p,i.arraySet(l,u.input,u.next_in,p,c),1===u.state.wrap?u.adler=a(u.adler,l,p,c):2===u.state.wrap&&(u.adler=o(u.adler,l,p,c)),u.next_in+=p,u.total_in+=p,p),e.lookahead+=r,e.lookahead+e.insert>=3)for(h=e.strstart-e.insert,e.ins_h=e.window[h],e.ins_h=(e.ins_h<=3&&(e.ins_h=(e.ins_h<=3)if(n=s._tr_tally(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<=3&&(e.ins_h=(e.ins_h<=3&&e.match_length<=e.prev_length){for(i=e.strstart+e.lookahead-3,n=s._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=i&&(e.ins_h=(e.ins_h<e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(w(e),0===e.lookahead&&0===t)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,g(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-f&&(g(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(g(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(g(e,!1),e.strm.avail_out),1)})),new S(4,4,8,4,k),new S(4,5,16,8,k),new S(4,6,32,32,k),new S(4,4,16,16,x),new S(8,16,32,32,x),new S(8,16,128,128,x),new S(8,32,128,256,x),new S(32,128,258,1024,x),new S(32,258,258,4096,x)],r.deflateInit=function(e,t){return A(e,t,8,15,8,0)},r.deflateInit2=A,r.deflateReset=E,r.deflateResetKeep=C,r.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?u:(e.state.gzhead=t,0):u},r.deflate=function(e,t){var r,i,a,h;if(!e||!e.state||5>8&255),b(i,i.gzhead.time>>16&255),b(i,i.gzhead.time>>24&255),b(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),b(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(b(i,255&i.gzhead.extra.length),b(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=o(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(b(i,0),b(i,0),b(i,0),b(i,0),b(i,0),b(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),b(i,3),i.status=c);else{var f=8+(i.w_bits-8<<4)<<8;f|=(2<=i.strategy||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(f|=32),f+=31-f%31,i.status=c,v(i,f),0!==i.strstart&&(v(i,e.adler>>>16),v(i,65535&e.adler)),e.adler=1}if(69===i.status)if(i.gzhead.extra){for(a=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),_(e),a=i.pending,i.pending!==i.pending_buf_size));)b(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(73===i.status)if(i.gzhead.name){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),_(e),a=i.pending,i.pending===i.pending_buf_size)){h=1;break}h=i.gzindexa&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),0===h&&(i.gzindex=0,i.status=91)}else i.status=91;if(91===i.status)if(i.gzhead.comment){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),_(e),a=i.pending,i.pending===i.pending_buf_size)){h=1;break}h=i.gzindexa&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),0===h&&(i.status=103)}else i.status=103;if(103===i.status&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&_(e),i.pending+2<=i.pending_buf_size&&(b(i,255&e.adler),b(i,e.adler>>8&255),e.adler=0,i.status=c)):i.status=c),0!==i.pending){if(_(e),0===e.avail_out)return i.last_flush=-1,0}else if(0===e.avail_in&&p(t)<=p(r)&&4!==t)return d(e,-5);if(666===i.status&&0!==e.avail_in)return d(e,-5);if(0!==e.avail_in||0!==i.lookahead||0!==t&&666!==i.status){var y=2===i.strategy?function(e,t){for(var r;;){if(0===e.lookahead&&(w(e),0===e.lookahead)){if(0===t)return 1;break}if(e.match_length=0,r=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(g(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(g(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(g(e,!1),0===e.strm.avail_out)?1:2}(i,t):3===i.strategy?function(e,t){for(var r,n,i,a,o=e.window;;){if(e.lookahead<=l){if(w(e),e.lookahead<=l&&0===t)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&0e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=3?(r=s._tr_tally(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(g(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(g(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(g(e,!1),0===e.strm.avail_out)?1:2}(i,t):n[i.level].func(i,t);if(3!==y&&4!==y||(i.status=666),1===y||3===y)return 0===e.avail_out&&(i.last_flush=-1),0;if(2===y&&(1===t?s._tr_align(i):5!==t&&(s._tr_stored_block(i,0,0,!1),3===t&&(m(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),_(e),0===e.avail_out))return i.last_flush=-1,0}return 4!==t?0:i.wrap<=0?1:(2===i.wrap?(b(i,255&e.adler),b(i,e.adler>>8&255),b(i,e.adler>>16&255),b(i,e.adler>>24&255),b(i,255&e.total_in),b(i,e.total_in>>8&255),b(i,e.total_in>>16&255),b(i,e.total_in>>24&255)):(v(i,e.adler>>>16),v(i,65535&e.adler)),_(e),0=r.w_size&&(0===o&&(m(r.head),r.strstart=0,r.block_start=0,r.insert=0),c=new i.Buf8(r.w_size),i.arraySet(c,t,d-r.w_size,r.w_size,0),t=c,d=r.w_size),h=e.avail_in,l=e.next_in,f=e.input,e.avail_in=d,e.next_in=0,e.input=t,w(r);r.lookahead>=3;){for(n=r.strstart,s=r.lookahead-2;r.ins_h=(r.ins_h<>>=y=v>>>24,p-=y,0==(y=v>>>16&255))C[s++]=65535&v;else{if(!(16&y)){if(!(64&y)){v=m[(65535&v)+(d&(1<>>=y,p-=y),p<15&&(d+=z[n++]<>>=y=v>>>24,p-=y,!(16&(y=v>>>16&255))){if(!(64&y)){v=_[(65535&v)+(d&(1<>>=y,p-=y,(y=s-a)>3,d&=(1<<(p-=w<<3))-1,e.next_in=n,e.next_out=s,e.avail_in=n>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function l(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new n.Buf16(320),this.work=new n.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function f(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=1,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new n.Buf32(852),t.distcode=t.distdyn=new n.Buf32(592),t.sane=1,t.back=-1,0):h}function c(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,f(e)):h}function d(e,t){var r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15=a.wsize?(n.arraySet(a.window,t,r-a.wsize,a.wsize,0),a.wnext=0,a.whave=a.wsize):(i<(s=a.wsize-a.wnext)&&(s=i),n.arraySet(a.window,t,r-i,s,a.wnext),(i-=s)?(n.arraySet(a.window,t,r-i,i,0),a.wnext=i,a.whave=a.wsize):(a.wnext+=s,a.wnext===a.wsize&&(a.wnext=0),a.whave>>8&255,r.check=s(r.check,N,2,0),g=_=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&_)<<8)+(_>>8))%31){e.msg="incorrect header check",r.mode=30;break}if(8!=(15&_)){e.msg="unknown compression method",r.mode=30;break}if(g-=4,B=8+(15&(_>>>=4)),0===r.wbits)r.wbits=B;else if(B>r.wbits){e.msg="invalid window size",r.mode=30;break}r.dmax=1<>8&1),512&r.flags&&(N[0]=255&_,N[1]=_>>>8&255,r.check=s(r.check,N,2,0)),g=_=0,r.mode=3;case 3:for(;g<32;){if(0===p)break e;p--,_+=l[c++]<>>8&255,N[2]=_>>>16&255,N[3]=_>>>24&255,r.check=s(r.check,N,4,0)),g=_=0,r.mode=4;case 4:for(;g<16;){if(0===p)break e;p--,_+=l[c++]<>8),512&r.flags&&(N[0]=255&_,N[1]=_>>>8&255,r.check=s(r.check,N,2,0)),g=_=0,r.mode=5;case 5:if(1024&r.flags){for(;g<16;){if(0===p)break e;p--,_+=l[c++]<>>8&255,r.check=s(r.check,N,2,0)),g=_=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&(p<(k=r.length)&&(k=p),k&&(r.head&&(B=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),n.arraySet(r.head.extra,l,c,k,B)),512&r.flags&&(r.check=s(r.check,l,k,c)),p-=k,c+=k,r.length-=k),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===p)break e;for(k=0;B=l[c+k++],r.head&&B&&r.length<65536&&(r.head.name+=String.fromCharCode(B)),B&&k>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=12;break;case 10:for(;g<32;){if(0===p)break e;p--,_+=l[c++]<>>=7&g,g-=7&g,r.mode=27;break}for(;g<3;){if(0===p)break e;p--,_+=l[c++]<>>=1)){case 0:r.mode=14;break;case 1:if(b(r),r.mode=20,6!==t)break;_>>>=2,g-=2;break e;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=30}_>>>=2,g-=2;break;case 14:for(_>>>=7&g,g-=7&g;g<32;){if(0===p)break e;p--,_+=l[c++]<>>16^65535)){e.msg="invalid stored block lengths",r.mode=30;break}if(r.length=65535&_,g=_=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(k=r.length){if(p>>=5,g-=5,r.ndist=1+(31&_),_>>>=5,g-=5,r.ncode=4+(15&_),_>>>=4,g-=4,286>>=3,g-=3}for(;r.have<19;)r.lens[U[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,T={bits:r.lenbits},R=o(0,r.lens,0,19,r.lencode,0,r.work,T),r.lenbits=T.bits,R){e.msg="invalid code lengths set",r.mode=30;break}r.have=0,r.mode=19;case 19:for(;r.have>>16&255,E=65535&F,!((z=F>>>24)<=g);){if(0===p)break e;p--,_+=l[c++]<>>=z,g-=z,r.lens[r.have++]=E;else{if(16===E){for(D=z+2;g>>=z,g-=z,0===r.have){e.msg="invalid bit length repeat",r.mode=30;break}B=r.lens[r.have-1],k=3+(3&_),_>>>=2,g-=2}else if(17===E){for(D=z+3;g>>=z)),_>>>=3,g-=3}else{for(D=z+7;g>>=z)),_>>>=7,g-=7}if(r.have+k>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=30;break}for(;k--;)r.lens[r.have++]=B}}if(30===r.mode)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=30;break}if(r.lenbits=9,T={bits:r.lenbits},R=o(1,r.lens,0,r.nlen,r.lencode,0,r.work,T),r.lenbits=T.bits,R){e.msg="invalid literal/lengths set",r.mode=30;break}if(r.distbits=6,r.distcode=r.distdyn,T={bits:r.distbits},R=o(2,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,T),r.distbits=T.bits,R){e.msg="invalid distances set",r.mode=30;break}if(r.mode=20,6===t)break e;case 20:r.mode=21;case 21:if(6<=p&&258<=m){e.next_out=d,e.avail_out=m,e.next_in=c,e.avail_in=p,r.hold=_,r.bits=g,a(e,w),d=e.next_out,f=e.output,m=e.avail_out,c=e.next_in,l=e.input,p=e.avail_in,_=r.hold,g=r.bits,12===r.mode&&(r.back=-1);break}for(r.back=0;C=(F=r.lencode[_&(1<>>16&255,E=65535&F,!((z=F>>>24)<=g);){if(0===p)break e;p--,_+=l[c++]<>A)])>>>16&255,E=65535&F,!(A+(z=F>>>24)<=g);){if(0===p)break e;p--,_+=l[c++]<>>=A,g-=A,r.back+=A}if(_>>>=z,g-=z,r.back+=z,r.length=E,0===C){r.mode=26;break}if(32&C){r.back=-1,r.mode=12;break}if(64&C){e.msg="invalid literal/length code",r.mode=30;break}r.extra=15&C,r.mode=22;case 22:if(r.extra){for(D=r.extra;g>>=r.extra,g-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;C=(F=r.distcode[_&(1<>>16&255,E=65535&F,!((z=F>>>24)<=g);){if(0===p)break e;p--,_+=l[c++]<>A)])>>>16&255,E=65535&F,!(A+(z=F>>>24)<=g);){if(0===p)break e;p--,_+=l[c++]<>>=A,g-=A,r.back+=A}if(_>>>=z,g-=z,r.back+=z,64&C){e.msg="invalid distance code",r.mode=30;break}r.offset=E,r.extra=15&C,r.mode=24;case 24:if(r.extra){for(D=r.extra;g>>=r.extra,g-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=30;break}r.mode=25;case 25:if(0===m)break e;if(k=w-m,r.offset>k){if((k=r.offset-k)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=30;break}x=k>r.wnext?(k-=r.wnext,r.wsize-k):r.wnext-k,k>r.length&&(k=r.length),S=r.window}else S=f,x=d-r.offset,k=r.length;for(mb?(y=U[P+f[S]],T[D+f[S]]):(y=96,0),d=1<>I)+(p-=d)]=v<<24|y<<16|w,0!==p;);for(d=1<>=1;if(0!==d?(R&=d-1,R+=d):R=0,S++,0==--F[x]){if(x===C)break;x=t[r+f[S]]}if(E>>7)]}function w(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function k(e,t,r){e.bi_valid>16-r?(e.bi_buf|=t<>16-e.bi_valid,e.bi_valid+=r-16):(e.bi_buf|=t<>>=1,r<<=1,0<--t;);return r>>>1}function z(e,t,r){var n,i,s=new Array(16),a=0;for(n=1;n<=15;n++)s[n]=a=a+r[n-1]<<1;for(i=0;i<=t;i++){var o=e[2*i+1];0!==o&&(e[2*i]=S(s[o]++,o))}}function C(e){var t;for(t=0;t<286;t++)e.dyn_ltree[2*t]=0;for(t=0;t<30;t++)e.dyn_dtree[2*t]=0;for(t=0;t<19;t++)e.bl_tree[2*t]=0;e.dyn_ltree[512]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function E(e){8>1;1<=r;r--)I(e,s,r);for(i=h;r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],I(e,s,1),n=e.heap[1],e.heap[--e.heap_max]=r,e.heap[--e.heap_max]=n,s[2*i]=s[2*r]+s[2*n],e.depth[i]=(e.depth[r]>=e.depth[n]?e.depth[r]:e.depth[n])+1,s[2*r+1]=s[2*n+1]=i,e.heap[1]=i++,I(e,s,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,t){var r,n,i,s,a,o,h=t.dyn_tree,u=t.max_code,l=t.stat_desc.static_tree,f=t.stat_desc.has_stree,c=t.stat_desc.extra_bits,d=t.stat_desc.extra_base,p=t.stat_desc.max_length,m=0;for(s=0;s<=15;s++)e.bl_count[s]=0;for(h[2*e.heap[e.heap_max]+1]=0,r=e.heap_max+1;r<573;r++)p<(s=h[2*h[2*(n=e.heap[r])+1]+1]+1)&&(s=p,m++),h[2*n+1]=s,u>=7;n<30;n++)for(g[n]=i<<7,e=0;e<1<>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;t<256;t++)if(0!==e.dyn_ltree[2*t])return 1;return 0}(e)),B(e,e.l_desc),B(e,e.d_desc),a=function(e){var t;for(R(e,e.dyn_ltree,e.l_desc.max_code),R(e,e.dyn_dtree,e.d_desc.max_code),B(e,e.bl_desc),t=18;3<=t&&0===e.bl_tree[2*h[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),i=e.opt_len+3+7>>>3,(s=e.static_len+3+7>>>3)<=i&&(i=s)):i=s=r+5,r+4<=i&&-1!==t?F(e,t,r,n):4===e.strategy||s===i?(k(e,2+(n?1:0),3),O(e,u,l)):(k(e,4+(n?1:0),3),function(e,t,r,n){var i;for(k(e,t-257,5),k(e,r-1,5),k(e,n-4,4),i=0;i>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(c[r]+256+1)]++,e.dyn_dtree[2*y(t)]++),e.last_lit===e.lit_bufsize-1},r._tr_align=function(e){k(e,2,3),x(e,256,u),function(e){16===e.bi_valid?(w(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{"../utils/common":41}],53:[function(e,t,r){"use strict";t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,r){(function(e){!function(e){"use strict";if(!e.setImmediate){var t,r,n,i,s=1,a={},o=!1,h=e.document,u=Object.getPrototypeOf&&Object.getPrototypeOf(e);u=u&&u.setTimeout?u:e,t="[object process]"==={}.toString.call(e.process)?function(e){process.nextTick((function(){f(e)}))}:function(){if(e.postMessage&&!e.importScripts){var t=!0,r=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=r,t}}()?(i="setImmediate$"+Math.random()+"$",e.addEventListener?e.addEventListener("message",c,!1):e.attachEvent("onmessage",c),function(t){e.postMessage(i+t,"*")}):e.MessageChannel?((n=new MessageChannel).port1.onmessage=function(e){f(e.data)},function(e){n.port2.postMessage(e)}):h&&"onreadystatechange"in h.createElement("script")?(r=h.documentElement,function(e){var t=h.createElement("script");t.onreadystatechange=function(){f(e),t.onreadystatechange=null,r.removeChild(t),t=null},r.appendChild(t)}):function(e){setTimeout(f,0,e)},u.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var r=new Array(arguments.length-1),n=0;n> 2] |= t[n] << y[3 & h++]; else if (a) for (h = this.start; n < f && h < 64; ++n)(s = t.charCodeAt(n)) < 128 ? u[h++] = s : s < 2048 ? (u[h++] = 192 | s >> 6, u[h++] = 128 | 63 & s) : s < 55296 || s >= 57344 ? (u[h++] = 224 | s >> 12, u[h++] = 128 | s >> 6 & 63, u[h++] = 128 | 63 & s) : (s = 65536 + ((1023 & s) << 10 | 1023 & t.charCodeAt(++n)), u[h++] = 240 | s >> 18, u[h++] = 128 | s >> 12 & 63, u[h++] = 128 | s >> 6 & 63, u[h++] = 128 | 63 & s); else for (h = this.start; n < f && h < 64; ++n)(s = t.charCodeAt(n)) < 128 ? o[h >> 2] |= s << y[3 & h++] : s < 2048 ? (o[h >> 2] |= (192 | s >> 6) << y[3 & h++], o[h >> 2] |= (128 | 63 & s) << y[3 & h++]) : s < 55296 || s >= 57344 ? (o[h >> 2] |= (224 | s >> 12) << y[3 & h++], o[h >> 2] |= (128 | s >> 6 & 63) << y[3 & h++], o[h >> 2] |= (128 | 63 & s) << y[3 & h++]) : (s = 65536 + ((1023 & s) << 10 | 1023 & t.charCodeAt(++n)), o[h >> 2] |= (240 | s >> 18) << y[3 & h++], o[h >> 2] |= (128 | s >> 12 & 63) << y[3 & h++], o[h >> 2] |= (128 | s >> 6 & 63) << y[3 & h++], o[h >> 2] |= (128 | 63 & s) << y[3 & h++]); this.lastByteIndex = h, this.bytes += h - this.start, h >= 64 ? (this.start = h - 64, this.hash(), this.hashed = !0) : this.start = h } return this.bytes > 4294967295 && (this.hBytes += this.bytes / 4294967296 | 0, this.bytes = this.bytes % 4294967296), this } }, t.prototype.finalize = function () { if (!this.finalized) { this.finalized = !0; var t = this.blocks, r = this.lastByteIndex; t[r >> 2] |= u[3 & r], r >= 56 && (this.hashed || this.hash(), t[0] = t[16], t[16] = t[1] = t[2] = t[3] = t[4] = t[5] = t[6] = t[7] = t[8] = t[9] = t[10] = t[11] = t[12] = t[13] = t[14] = t[15] = 0), t[14] = this.bytes << 3, t[15] = this.hBytes << 3 | this.bytes >>> 29, this.hash() } }, t.prototype.hash = function () { var t, r, e, i, s, h, n = this.blocks; this.first ? r = ((r = ((t = ((t = n[0] - 680876937) << 7 | t >>> 25) - 271733879 | 0) ^ (e = ((e = (-271733879 ^ (i = ((i = (-1732584194 ^ 2004318071 & t) + n[1] - 117830708) << 12 | i >>> 20) + t | 0) & (-271733879 ^ t)) + n[2] - 1126478375) << 17 | e >>> 15) + i | 0) & (i ^ t)) + n[3] - 1316259209) << 22 | r >>> 10) + e | 0 : (t = this.h0, r = this.h1, e = this.h2, r = ((r += ((t = ((t += ((i = this.h3) ^ r & (e ^ i)) + n[0] - 680876936) << 7 | t >>> 25) + r | 0) ^ (e = ((e += (r ^ (i = ((i += (e ^ t & (r ^ e)) + n[1] - 389564586) << 12 | i >>> 20) + t | 0) & (t ^ r)) + n[2] + 606105819) << 17 | e >>> 15) + i | 0) & (i ^ t)) + n[3] - 1044525330) << 22 | r >>> 10) + e | 0), r = ((r += ((t = ((t += (i ^ r & (e ^ i)) + n[4] - 176418897) << 7 | t >>> 25) + r | 0) ^ (e = ((e += (r ^ (i = ((i += (e ^ t & (r ^ e)) + n[5] + 1200080426) << 12 | i >>> 20) + t | 0) & (t ^ r)) + n[6] - 1473231341) << 17 | e >>> 15) + i | 0) & (i ^ t)) + n[7] - 45705983) << 22 | r >>> 10) + e | 0, r = ((r += ((t = ((t += (i ^ r & (e ^ i)) + n[8] + 1770035416) << 7 | t >>> 25) + r | 0) ^ (e = ((e += (r ^ (i = ((i += (e ^ t & (r ^ e)) + n[9] - 1958414417) << 12 | i >>> 20) + t | 0) & (t ^ r)) + n[10] - 42063) << 17 | e >>> 15) + i | 0) & (i ^ t)) + n[11] - 1990404162) << 22 | r >>> 10) + e | 0, r = ((r += ((t = ((t += (i ^ r & (e ^ i)) + n[12] + 1804603682) << 7 | t >>> 25) + r | 0) ^ (e = ((e += (r ^ (i = ((i += (e ^ t & (r ^ e)) + n[13] - 40341101) << 12 | i >>> 20) + t | 0) & (t ^ r)) + n[14] - 1502002290) << 17 | e >>> 15) + i | 0) & (i ^ t)) + n[15] + 1236535329) << 22 | r >>> 10) + e | 0, r = ((r += ((i = ((i += (r ^ e & ((t = ((t += (e ^ i & (r ^ e)) + n[1] - 165796510) << 5 | t >>> 27) + r | 0) ^ r)) + n[6] - 1069501632) << 9 | i >>> 23) + t | 0) ^ t & ((e = ((e += (t ^ r & (i ^ t)) + n[11] + 643717713) << 14 | e >>> 18) + i | 0) ^ i)) + n[0] - 373897302) << 20 | r >>> 12) + e | 0, r = ((r += ((i = ((i += (r ^ e & ((t = ((t += (e ^ i & (r ^ e)) + n[5] - 701558691) << 5 | t >>> 27) + r | 0) ^ r)) + n[10] + 38016083) << 9 | i >>> 23) + t | 0) ^ t & ((e = ((e += (t ^ r & (i ^ t)) + n[15] - 660478335) << 14 | e >>> 18) + i | 0) ^ i)) + n[4] - 405537848) << 20 | r >>> 12) + e | 0, r = ((r += ((i = ((i += (r ^ e & ((t = ((t += (e ^ i & (r ^ e)) + n[9] + 568446438) << 5 | t >>> 27) + r | 0) ^ r)) + n[14] - 1019803690) << 9 | i >>> 23) + t | 0) ^ t & ((e = ((e += (t ^ r & (i ^ t)) + n[3] - 187363961) << 14 | e >>> 18) + i | 0) ^ i)) + n[8] + 1163531501) << 20 | r >>> 12) + e | 0, r = ((r += ((i = ((i += (r ^ e & ((t = ((t += (e ^ i & (r ^ e)) + n[13] - 1444681467) << 5 | t >>> 27) + r | 0) ^ r)) + n[2] - 51403784) << 9 | i >>> 23) + t | 0) ^ t & ((e = ((e += (t ^ r & (i ^ t)) + n[7] + 1735328473) << 14 | e >>> 18) + i | 0) ^ i)) + n[12] - 1926607734) << 20 | r >>> 12) + e | 0, r = ((r += ((h = (i = ((i += ((s = r ^ e) ^ (t = ((t += (s ^ i) + n[5] - 378558) << 4 | t >>> 28) + r | 0)) + n[8] - 2022574463) << 11 | i >>> 21) + t | 0) ^ t) ^ (e = ((e += (h ^ r) + n[11] + 1839030562) << 16 | e >>> 16) + i | 0)) + n[14] - 35309556) << 23 | r >>> 9) + e | 0, r = ((r += ((h = (i = ((i += ((s = r ^ e) ^ (t = ((t += (s ^ i) + n[1] - 1530992060) << 4 | t >>> 28) + r | 0)) + n[4] + 1272893353) << 11 | i >>> 21) + t | 0) ^ t) ^ (e = ((e += (h ^ r) + n[7] - 155497632) << 16 | e >>> 16) + i | 0)) + n[10] - 1094730640) << 23 | r >>> 9) + e | 0, r = ((r += ((h = (i = ((i += ((s = r ^ e) ^ (t = ((t += (s ^ i) + n[13] + 681279174) << 4 | t >>> 28) + r | 0)) + n[0] - 358537222) << 11 | i >>> 21) + t | 0) ^ t) ^ (e = ((e += (h ^ r) + n[3] - 722521979) << 16 | e >>> 16) + i | 0)) + n[6] + 76029189) << 23 | r >>> 9) + e | 0, r = ((r += ((h = (i = ((i += ((s = r ^ e) ^ (t = ((t += (s ^ i) + n[9] - 640364487) << 4 | t >>> 28) + r | 0)) + n[12] - 421815835) << 11 | i >>> 21) + t | 0) ^ t) ^ (e = ((e += (h ^ r) + n[15] + 530742520) << 16 | e >>> 16) + i | 0)) + n[2] - 995338651) << 23 | r >>> 9) + e | 0, r = ((r += ((i = ((i += (r ^ ((t = ((t += (e ^ (r | ~i)) + n[0] - 198630844) << 6 | t >>> 26) + r | 0) | ~e)) + n[7] + 1126891415) << 10 | i >>> 22) + t | 0) ^ ((e = ((e += (t ^ (i | ~r)) + n[14] - 1416354905) << 15 | e >>> 17) + i | 0) | ~t)) + n[5] - 57434055) << 21 | r >>> 11) + e | 0, r = ((r += ((i = ((i += (r ^ ((t = ((t += (e ^ (r | ~i)) + n[12] + 1700485571) << 6 | t >>> 26) + r | 0) | ~e)) + n[3] - 1894986606) << 10 | i >>> 22) + t | 0) ^ ((e = ((e += (t ^ (i | ~r)) + n[10] - 1051523) << 15 | e >>> 17) + i | 0) | ~t)) + n[1] - 2054922799) << 21 | r >>> 11) + e | 0, r = ((r += ((i = ((i += (r ^ ((t = ((t += (e ^ (r | ~i)) + n[8] + 1873313359) << 6 | t >>> 26) + r | 0) | ~e)) + n[15] - 30611744) << 10 | i >>> 22) + t | 0) ^ ((e = ((e += (t ^ (i | ~r)) + n[6] - 1560198380) << 15 | e >>> 17) + i | 0) | ~t)) + n[13] + 1309151649) << 21 | r >>> 11) + e | 0, r = ((r += ((i = ((i += (r ^ ((t = ((t += (e ^ (r | ~i)) + n[4] - 145523070) << 6 | t >>> 26) + r | 0) | ~e)) + n[11] - 1120210379) << 10 | i >>> 22) + t | 0) ^ ((e = ((e += (t ^ (i | ~r)) + n[2] + 718787259) << 15 | e >>> 17) + i | 0) | ~t)) + n[9] - 343485551) << 21 | r >>> 11) + e | 0, this.first ? (this.h0 = t + 1732584193 | 0, this.h1 = r - 271733879 | 0, this.h2 = e - 1732584194 | 0, this.h3 = i + 271733878 | 0, this.first = !1) : (this.h0 = this.h0 + t | 0, this.h1 = this.h1 + r | 0, this.h2 = this.h2 + e | 0, this.h3 = this.h3 + i | 0) }, t.prototype.hex = function () { this.finalize(); var t = this.h0, r = this.h1, e = this.h2, i = this.h3; return n[t >> 4 & 15] + n[15 & t] + n[t >> 12 & 15] + n[t >> 8 & 15] + n[t >> 20 & 15] + n[t >> 16 & 15] + n[t >> 28 & 15] + n[t >> 24 & 15] + n[r >> 4 & 15] + n[15 & r] + n[r >> 12 & 15] + n[r >> 8 & 15] + n[r >> 20 & 15] + n[r >> 16 & 15] + n[r >> 28 & 15] + n[r >> 24 & 15] + n[e >> 4 & 15] + n[15 & e] + n[e >> 12 & 15] + n[e >> 8 & 15] + n[e >> 20 & 15] + n[e >> 16 & 15] + n[e >> 28 & 15] + n[e >> 24 & 15] + n[i >> 4 & 15] + n[15 & i] + n[i >> 12 & 15] + n[i >> 8 & 15] + n[i >> 20 & 15] + n[i >> 16 & 15] + n[i >> 28 & 15] + n[i >> 24 & 15] }, t.prototype.toString = t.prototype.hex, t.prototype.digest = function () { this.finalize(); var t = this.h0, r = this.h1, e = this.h2, i = this.h3; return [255 & t, t >> 8 & 255, t >> 16 & 255, t >> 24 & 255, 255 & r, r >> 8 & 255, r >> 16 & 255, r >> 24 & 255, 255 & e, e >> 8 & 255, e >> 16 & 255, e >> 24 & 255, 255 & i, i >> 8 & 255, i >> 16 & 255, i >> 24 & 255] }, t.prototype.array = t.prototype.digest, t.prototype.arrayBuffer = function () { this.finalize(); var t = new ArrayBuffer(16), r = new Uint32Array(t); return r[0] = this.h0, r[1] = this.h1, r[2] = this.h2, r[3] = this.h3, t }, t.prototype.buffer = t.prototype.arrayBuffer, t.prototype.base64 = function () { for (var t, r, e, i = "", s = this.array(), h = 0; h < 15;)t = s[h++], r = s[h++], e = s[h++], i += p[t >>> 2] + p[63 & (t << 4 | r >>> 4)] + p[63 & (r << 2 | e >>> 6)] + p[63 & e]; return t = s[h], i + (p[t >>> 2] + p[t << 4 & 63] + "==") }; var _ = v(); f ? module.exports = _ : (i.md5 = _, o && define((function () { return _ }))) }(); \ No newline at end of file +!function(){"use strict";function t(t){if(t)d[0]=d[16]=d[1]=d[2]=d[3]=d[4]=d[5]=d[6]=d[7]=d[8]=d[9]=d[10]=d[11]=d[12]=d[13]=d[14]=d[15]=0,this.blocks=d,this.buffer8=l;else if(a){var r=new ArrayBuffer(68);this.buffer8=new Uint8Array(r),this.blocks=new Uint32Array(r)}else this.blocks=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.h0=this.h1=this.h2=this.h3=this.start=this.bytes=this.hBytes=0,this.finalized=this.hashed=!1,this.first=!0}var r="input is invalid type",e="object"==typeof window,i=e?window:{};i.JS_MD5_NO_WINDOW&&(e=!1);var s=!e&&"object"==typeof self,h=!i.JS_MD5_NO_NODE_JS&&"object"==typeof process&&process.versions&&process.versions.node;h?i=global:s&&(i=self);var f=!i.JS_MD5_NO_COMMON_JS&&"object"==typeof module&&module.exports,o="function"==typeof define&&define.amd,a=!i.JS_MD5_NO_ARRAY_BUFFER&&"undefined"!=typeof ArrayBuffer,n="0123456789abcdef".split(""),u=[128,32768,8388608,-2147483648],y=[0,8,16,24],c=["hex","array","digest","buffer","arrayBuffer","base64"],p="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),d=[],l;if(a){var A=new ArrayBuffer(68);l=new Uint8Array(A),d=new Uint32Array(A)}!i.JS_MD5_NO_NODE_JS&&Array.isArray||(Array.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)}),!a||!i.JS_MD5_NO_ARRAY_BUFFER_IS_VIEW&&ArrayBuffer.isView||(ArrayBuffer.isView=function(t){return"object"==typeof t&&t.buffer&&t.buffer.constructor===ArrayBuffer});var b=function(r){return function(e){return new t(!0).update(e)[r]()}},v=function(){var r=b("hex");h&&(r=w(r)),r.create=function(){return new t},r.update=function(t){return r.create().update(t)};for(var e=0;e>2]|=t[n]<>6,u[h++]=128|63&s):s<55296||s>=57344?(u[h++]=224|s>>12,u[h++]=128|s>>6&63,u[h++]=128|63&s):(s=65536+((1023&s)<<10|1023&t.charCodeAt(++n)),u[h++]=240|s>>18,u[h++]=128|s>>12&63,u[h++]=128|s>>6&63,u[h++]=128|63&s);else for(h=this.start;n>2]|=s<>2]|=(192|s>>6)<>2]|=(128|63&s)<=57344?(o[h>>2]|=(224|s>>12)<>2]|=(128|s>>6&63)<>2]|=(128|63&s)<>2]|=(240|s>>18)<>2]|=(128|s>>12&63)<>2]|=(128|s>>6&63)<>2]|=(128|63&s)<=64?(this.start=h-64,this.hash(),this.hashed=!0):this.start=h}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296|0,this.bytes=this.bytes%4294967296),this}},t.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var t=this.blocks,r=this.lastByteIndex;t[r>>2]|=u[3&r],r>=56&&(this.hashed||this.hash(),t[0]=t[16],t[16]=t[1]=t[2]=t[3]=t[4]=t[5]=t[6]=t[7]=t[8]=t[9]=t[10]=t[11]=t[12]=t[13]=t[14]=t[15]=0),t[14]=this.bytes<<3,t[15]=this.hBytes<<3|this.bytes>>>29,this.hash()}},t.prototype.hash=function(){var t,r,e,i,s,h,n=this.blocks;this.first?r=((r=((t=((t=n[0]-680876937)<<7|t>>>25)-271733879|0)^(e=((e=(-271733879^(i=((i=(-1732584194^2004318071&t)+n[1]-117830708)<<12|i>>>20)+t|0)&(-271733879^t))+n[2]-1126478375)<<17|e>>>15)+i|0)&(i^t))+n[3]-1316259209)<<22|r>>>10)+e|0:(t=this.h0,r=this.h1,e=this.h2,r=((r+=((t=((t+=((i=this.h3)^r&(e^i))+n[0]-680876936)<<7|t>>>25)+r|0)^(e=((e+=(r^(i=((i+=(e^t&(r^e))+n[1]-389564586)<<12|i>>>20)+t|0)&(t^r))+n[2]+606105819)<<17|e>>>15)+i|0)&(i^t))+n[3]-1044525330)<<22|r>>>10)+e|0),r=((r+=((t=((t+=(i^r&(e^i))+n[4]-176418897)<<7|t>>>25)+r|0)^(e=((e+=(r^(i=((i+=(e^t&(r^e))+n[5]+1200080426)<<12|i>>>20)+t|0)&(t^r))+n[6]-1473231341)<<17|e>>>15)+i|0)&(i^t))+n[7]-45705983)<<22|r>>>10)+e|0,r=((r+=((t=((t+=(i^r&(e^i))+n[8]+1770035416)<<7|t>>>25)+r|0)^(e=((e+=(r^(i=((i+=(e^t&(r^e))+n[9]-1958414417)<<12|i>>>20)+t|0)&(t^r))+n[10]-42063)<<17|e>>>15)+i|0)&(i^t))+n[11]-1990404162)<<22|r>>>10)+e|0,r=((r+=((t=((t+=(i^r&(e^i))+n[12]+1804603682)<<7|t>>>25)+r|0)^(e=((e+=(r^(i=((i+=(e^t&(r^e))+n[13]-40341101)<<12|i>>>20)+t|0)&(t^r))+n[14]-1502002290)<<17|e>>>15)+i|0)&(i^t))+n[15]+1236535329)<<22|r>>>10)+e|0,r=((r+=((i=((i+=(r^e&((t=((t+=(e^i&(r^e))+n[1]-165796510)<<5|t>>>27)+r|0)^r))+n[6]-1069501632)<<9|i>>>23)+t|0)^t&((e=((e+=(t^r&(i^t))+n[11]+643717713)<<14|e>>>18)+i|0)^i))+n[0]-373897302)<<20|r>>>12)+e|0,r=((r+=((i=((i+=(r^e&((t=((t+=(e^i&(r^e))+n[5]-701558691)<<5|t>>>27)+r|0)^r))+n[10]+38016083)<<9|i>>>23)+t|0)^t&((e=((e+=(t^r&(i^t))+n[15]-660478335)<<14|e>>>18)+i|0)^i))+n[4]-405537848)<<20|r>>>12)+e|0,r=((r+=((i=((i+=(r^e&((t=((t+=(e^i&(r^e))+n[9]+568446438)<<5|t>>>27)+r|0)^r))+n[14]-1019803690)<<9|i>>>23)+t|0)^t&((e=((e+=(t^r&(i^t))+n[3]-187363961)<<14|e>>>18)+i|0)^i))+n[8]+1163531501)<<20|r>>>12)+e|0,r=((r+=((i=((i+=(r^e&((t=((t+=(e^i&(r^e))+n[13]-1444681467)<<5|t>>>27)+r|0)^r))+n[2]-51403784)<<9|i>>>23)+t|0)^t&((e=((e+=(t^r&(i^t))+n[7]+1735328473)<<14|e>>>18)+i|0)^i))+n[12]-1926607734)<<20|r>>>12)+e|0,r=((r+=((h=(i=((i+=((s=r^e)^(t=((t+=(s^i)+n[5]-378558)<<4|t>>>28)+r|0))+n[8]-2022574463)<<11|i>>>21)+t|0)^t)^(e=((e+=(h^r)+n[11]+1839030562)<<16|e>>>16)+i|0))+n[14]-35309556)<<23|r>>>9)+e|0,r=((r+=((h=(i=((i+=((s=r^e)^(t=((t+=(s^i)+n[1]-1530992060)<<4|t>>>28)+r|0))+n[4]+1272893353)<<11|i>>>21)+t|0)^t)^(e=((e+=(h^r)+n[7]-155497632)<<16|e>>>16)+i|0))+n[10]-1094730640)<<23|r>>>9)+e|0,r=((r+=((h=(i=((i+=((s=r^e)^(t=((t+=(s^i)+n[13]+681279174)<<4|t>>>28)+r|0))+n[0]-358537222)<<11|i>>>21)+t|0)^t)^(e=((e+=(h^r)+n[3]-722521979)<<16|e>>>16)+i|0))+n[6]+76029189)<<23|r>>>9)+e|0,r=((r+=((h=(i=((i+=((s=r^e)^(t=((t+=(s^i)+n[9]-640364487)<<4|t>>>28)+r|0))+n[12]-421815835)<<11|i>>>21)+t|0)^t)^(e=((e+=(h^r)+n[15]+530742520)<<16|e>>>16)+i|0))+n[2]-995338651)<<23|r>>>9)+e|0,r=((r+=((i=((i+=(r^((t=((t+=(e^(r|~i))+n[0]-198630844)<<6|t>>>26)+r|0)|~e))+n[7]+1126891415)<<10|i>>>22)+t|0)^((e=((e+=(t^(i|~r))+n[14]-1416354905)<<15|e>>>17)+i|0)|~t))+n[5]-57434055)<<21|r>>>11)+e|0,r=((r+=((i=((i+=(r^((t=((t+=(e^(r|~i))+n[12]+1700485571)<<6|t>>>26)+r|0)|~e))+n[3]-1894986606)<<10|i>>>22)+t|0)^((e=((e+=(t^(i|~r))+n[10]-1051523)<<15|e>>>17)+i|0)|~t))+n[1]-2054922799)<<21|r>>>11)+e|0,r=((r+=((i=((i+=(r^((t=((t+=(e^(r|~i))+n[8]+1873313359)<<6|t>>>26)+r|0)|~e))+n[15]-30611744)<<10|i>>>22)+t|0)^((e=((e+=(t^(i|~r))+n[6]-1560198380)<<15|e>>>17)+i|0)|~t))+n[13]+1309151649)<<21|r>>>11)+e|0,r=((r+=((i=((i+=(r^((t=((t+=(e^(r|~i))+n[4]-145523070)<<6|t>>>26)+r|0)|~e))+n[11]-1120210379)<<10|i>>>22)+t|0)^((e=((e+=(t^(i|~r))+n[2]+718787259)<<15|e>>>17)+i|0)|~t))+n[9]-343485551)<<21|r>>>11)+e|0,this.first?(this.h0=t+1732584193|0,this.h1=r-271733879|0,this.h2=e-1732584194|0,this.h3=i+271733878|0,this.first=!1):(this.h0=this.h0+t|0,this.h1=this.h1+r|0,this.h2=this.h2+e|0,this.h3=this.h3+i|0)},t.prototype.hex=function(){this.finalize();var t=this.h0,r=this.h1,e=this.h2,i=this.h3;return n[t>>4&15]+n[15&t]+n[t>>12&15]+n[t>>8&15]+n[t>>20&15]+n[t>>16&15]+n[t>>28&15]+n[t>>24&15]+n[r>>4&15]+n[15&r]+n[r>>12&15]+n[r>>8&15]+n[r>>20&15]+n[r>>16&15]+n[r>>28&15]+n[r>>24&15]+n[e>>4&15]+n[15&e]+n[e>>12&15]+n[e>>8&15]+n[e>>20&15]+n[e>>16&15]+n[e>>28&15]+n[e>>24&15]+n[i>>4&15]+n[15&i]+n[i>>12&15]+n[i>>8&15]+n[i>>20&15]+n[i>>16&15]+n[i>>28&15]+n[i>>24&15]},t.prototype.toString=t.prototype.hex,t.prototype.digest=function(){this.finalize();var t=this.h0,r=this.h1,e=this.h2,i=this.h3;return[255&t,t>>8&255,t>>16&255,t>>24&255,255&r,r>>8&255,r>>16&255,r>>24&255,255&e,e>>8&255,e>>16&255,e>>24&255,255&i,i>>8&255,i>>16&255,i>>24&255]},t.prototype.array=t.prototype.digest,t.prototype.arrayBuffer=function(){this.finalize();var t=new ArrayBuffer(16),r=new Uint32Array(t);return r[0]=this.h0,r[1]=this.h1,r[2]=this.h2,r[3]=this.h3,t},t.prototype.buffer=t.prototype.arrayBuffer,t.prototype.base64=function(){for(var t,r,e,i="",s=this.array(),h=0;h<15;)t=s[h++],r=s[h++],e=s[h++],i+=p[t>>>2]+p[63&(t<<4|r>>>4)]+p[63&(r<<2|e>>>6)]+p[63&e];return t=s[h],i+(p[t>>>2]+p[t<<4&63]+"==")};var _=v();f?module.exports=_:(i.md5=_,o&&define((function(){return _})))}(); \ No newline at end of file From 71c8c67c36eb5b82221fcd85ba51f885755a7b62 Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Tue, 14 Jan 2025 16:11:01 +0700 Subject: [PATCH 07/21] :bookmark: still going on working . . . --- src/reader.js | 4 +++- src/sidebar/settings.js | 3 ++- src/toolbar.js | 28 +++++++++++++++++++++++++++- 3 files changed, 32 insertions(+), 3 deletions(-) diff --git a/src/reader.js b/src/reader.js index 5cdcd7d..e1eacae 100644 --- a/src/reader.js +++ b/src/reader.js @@ -230,7 +230,8 @@ export class Reader { fontSize: 100 }, pagination: undefined, // not implemented - fullscreen: document.fullscreenEnabled + fullscreen: document.fullscreenEnabled, + background: [], }; extend(settings || {}, this.settings); @@ -304,6 +305,7 @@ export class Reader { delete cfg.openbook; delete cfg.pagination; delete cfg.fullscreen; + delete cfg.background; localStorage.setItem(this.entryKey, JSON.stringify(cfg)); } diff --git a/src/sidebar/settings.js b/src/sidebar/settings.js index 820a645..80e51eb 100644 --- a/src/sidebar/settings.js +++ b/src/sidebar/settings.js @@ -25,7 +25,8 @@ export class SettingsPanel extends UIPanel { en: "English", fr: "French", ja: "Japanese", - ru: "Russian" + ru: "Russian", + vi: "Vietnamese" }); language.dom.onchange = (e) => { diff --git a/src/toolbar.js b/src/toolbar.js index d2590d7..11dbf42 100644 --- a/src/toolbar.js +++ b/src/toolbar.js @@ -15,8 +15,11 @@ export class Toolbar { "toolbar/openbook", "toolbar/openbook/error", "toolbar/bookmark", - "toolbar/fullscreen" + "toolbar/fullscreen", + "toolbar/background" ]; + + // Toolbar Menu 1 const menu1 = new UIDiv().setClass("menu-1"); const openerBox = new UIDiv().setId("btn-m").setClass("box"); const openerBtn = new UIInput("button"); @@ -58,7 +61,25 @@ export class Toolbar { menu1.add(nextBox); } + // Toolbar Menu 2 const menu2 = new UIDiv().setClass("menu-2"); + + // Button change background + let backgroundBox, backgroundBtn; + if (settings.background) { + backgroundBox = new UIDiv().setId("btn-bg").setClass("box"); + backgroundBtn = new UIInput("color"); + backgroundBtn.dom.title = strings.get(keys[7]); + backgroundBtn.dom.value = "#ffffff"; + backgroundBtn.dom.onchange = (e) => { + const selectedColor = e.target.value; + document.body.style.backgroundColor = selectedColor; + }; + backgroundBox.add(backgroundBtn); + menu2.add(backgroundBox); + } + + // Button open file let openbookBtn; if (settings.openbook) { const onload = (e) => { @@ -102,6 +123,7 @@ export class Toolbar { menu2.add(openbookBox); } + // Button Bookmark let bookmarkBox, bookmarkBtn; if (settings.bookmarks) { bookmarkBox = new UIDiv().setId("btn-b").setClass("box"); @@ -119,6 +141,7 @@ export class Toolbar { menu2.add(bookmarkBox); } + // Button Full Screen let fullscreenBtn; if (settings.fullscreen) { @@ -203,6 +226,9 @@ export class Toolbar { if (settings.fullscreen) { fullscreenBtn.setTitle(strings.get(keys[6])); } + if (settings.background) { + backgroundBtn.setTitle(strings.get(keys[7])); + } }); } From 50f60f20dce1efd3db6ddc3328e35c770ea0a9eb Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Tue, 14 Jan 2025 17:02:23 +0700 Subject: [PATCH 08/21] :art: format code --- dist/img/background.svg | 41 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) diff --git a/dist/img/background.svg b/dist/img/background.svg index e05eb27..fd20f0d 100644 --- a/dist/img/background.svg +++ b/dist/img/background.svg @@ -1 +1,40 @@ - \ No newline at end of file + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From e41e3e1a8bd107600f27d7971600f49c2e515714 Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Wed, 15 Jan 2025 15:01:28 +0700 Subject: [PATCH 09/21] :bug: done fixing and config font-size function --- dist/css/common.css | 39 +++++++++- dist/img/add-icon.svg | 1 + dist/img/minus-icon.svg | 15 ++++ dist/js/epubreader.js | 135 ++++++++++++++++++++++++++++++---- dist/js/epubreader.js.map | 2 +- dist/js/epubreader.min.js | 2 +- dist/js/epubreader.min.js.map | 2 +- package.json | 3 +- src/content.js | 4 + src/reader.js | 6 +- src/sidebar/settings.js | 14 +++- src/toolbar.js | 89 ++++++++++++++++++++-- src/ui.js | 24 +++++- webpack.config.cjs | 10 ++- 14 files changed, 306 insertions(+), 40 deletions(-) create mode 100644 dist/img/add-icon.svg create mode 100644 dist/img/minus-icon.svg diff --git a/dist/css/common.css b/dist/css/common.css index 54380aa..8fa4cfb 100644 --- a/dist/css/common.css +++ b/dist/css/common.css @@ -52,6 +52,38 @@ background-image: url("../img/menu.svg"); } +/* CSS for font-size in toolbar menu-1 */ +#btn-fontsize { + display: flex; + width: auto !important; + align-items: center; +} + +.font-size-px { + font-weight: 600; + color: #6e6d6d; +} + +.btn-font-decrease { + background-image: url("../img/minus-icon.svg"); +} + +.btn-font-increase { + background-image: url("../img/add-icon.svg"); +} + +#btn-fontsize .input-font-size { + cursor: text; + outline: 1px solid #ccc; + border: 1px solid #ccc; + margin: 0; + width: 100px; + padding-left: 10px; + font-size: 1rem; + font-weight: bold; + border-radius: 10px; +} + #btn-p.box input { background-image: url("../img/prev.svg"); } @@ -76,8 +108,13 @@ background-image: url("../img/bookmarks.svg"); } +/* Add style for button change background color */ #btn-bg.box input { - background-image: url("../img/background.svg"); + background: url(../img/background.svg) no-repeat center / cover; +} + +.btn-change-bg { + border-radius: 50%; } #btn-f.box input { diff --git a/dist/img/add-icon.svg b/dist/img/add-icon.svg new file mode 100644 index 0000000..9181626 --- /dev/null +++ b/dist/img/add-icon.svg @@ -0,0 +1 @@ +add \ No newline at end of file diff --git a/dist/img/minus-icon.svg b/dist/img/minus-icon.svg new file mode 100644 index 0000000..28b1f76 --- /dev/null +++ b/dist/img/minus-icon.svg @@ -0,0 +1,15 @@ + + + + + + + + + \ No newline at end of file diff --git a/dist/js/epubreader.js b/dist/js/epubreader.js index dc2a050..002a8d3 100644 --- a/dist/js/epubreader.js +++ b/dist/js/epubreader.js @@ -1017,10 +1017,10 @@ const ERROR_MSG = "is not an instance of UIElement."; * @param {string} tag */ class UIElement { - + constructor(tag) { - this.dom = document.createElement(tag); + this.dom = document.createElement(tag); } add() { @@ -1178,6 +1178,16 @@ class UIDiv extends UIElement { super("div"); } + + setClass(className) { + this.dom.className = className; + return this; + } + + addClass(className) { + this.dom.classList.add(className); + return this; + } } /** @@ -1770,6 +1780,16 @@ class UIBox extends UIElement { this.add(items); } } + +/** + * UIButton + * @param {UIButton} items + */ +class UIButton extends UIElement { + constructor(items) { + super("button"); + } +} ;// CONCATENATED MODULE: ./src/toolbar.js @@ -1806,6 +1826,50 @@ class Toolbar { openerBox.add(openerBtn); menu1.add(openerBox); + // Button "-", "+" and input for font-size + let fontLabel = new UILabel().setClass("font-size-px").setTextContent("Fontsize (px):") + let fontSizeBox = new UIDiv().setId("btn-fontsize").setClass("box"); + let decreaseFontBtn = new UIInput("button").setClass("btn-font-decrease"); + let increaseFontBtn = new UIInput("button").setClass("btn-font-increase"); + let fontSizeInput = new UIInput("text").setClass("input-font-size"); + + let fontSize = settings.fontSize || 16; + fontSizeInput.dom.value = fontSize; + + decreaseFontBtn.dom.textContent = "-"; + decreaseFontBtn.dom.onclick = () => { + fontSize = Math.max(8, fontSize - 1); + fontSizeInput.dom.value = fontSize; + + reader.emit("styleschanged", { fontSize: fontSize }); + }; + + increaseFontBtn.dom.textContent = "+"; + increaseFontBtn.dom.onclick = () => { + fontSize = Math.min(72, fontSize + 1); + fontSizeInput.dom.value = fontSize; + + reader.emit("styleschanged", { fontSize: fontSize }); + }; + + fontSizeInput.dom.onchange = () => { + let newSize = parseInt(fontSizeInput.dom.value, 10); + if (!isNaN(newSize) && newSize >= 8 && newSize <= 72) { + fontSize = newSize; + + reader.emit("styleschanged", { fontSize: fontSize }); + } else { + fontSizeInput.dom.value = fontSize; + } + }; + + fontSizeBox.add(fontLabel); + fontSizeBox.add(decreaseFontBtn); + fontSizeBox.add(fontSizeInput); + fontSizeBox.add(increaseFontBtn); + menu1.add(fontSizeBox); + + let prevBox, prevBtn; let nextBox, nextBtn; if (settings.arrows === "toolbar") { @@ -1836,19 +1900,48 @@ class Toolbar { // Toolbar Menu 2 const menu2 = new UIDiv().setClass("menu-2"); - // Button change background - let backgroundBox, backgroundBtn; + let backgroundBox, backgroundBtn, colorPicker; if (settings.background) { backgroundBox = new UIDiv().setId("btn-bg").setClass("box"); - backgroundBtn = new UIInput("color"); + + backgroundBtn = new UIInput("button").setClass("btn-change-bg"); backgroundBtn.dom.title = strings.get(keys[7]); - backgroundBtn.dom.value = "#ffffff"; - backgroundBtn.dom.onchange = (e) => { - const selectedColor = e.target.value; - document.body.style.backgroundColor = selectedColor; + backgroundBtn.dom.value = ""; + backgroundBtn.dom.textContent = ""; + + colorPicker = new UIInput("color"); + colorPicker.dom.style.display = "none"; + + backgroundBtn.dom.onclick = () => { + colorPicker.dom.click(); }; + + document.addEventListener("DOMContentLoaded", () => { + const viewer = document.getElementById("viewer"); + if (viewer) { + colorPicker.dom.oninput = (e) => { + const selectedColor = e.target.value; + viewer.style.backgroundColor = selectedColor; + }; + + colorPicker.dom.addEventListener("mouseover", (e) => { + const selectedColor = e.target.value; + if (selectedColor) { + viewer.style.backgroundColor = selectedColor; + } + }); + + colorPicker.dom.addEventListener("mouseout", () => { + viewer.style.backgroundColor = ""; + }); + } else { + console.error("Viewer element not found"); + } + }); + backgroundBox.add(backgroundBtn); + backgroundBox.add(colorPicker); menu2.add(backgroundBox); } @@ -2042,6 +2135,10 @@ class Content { const viewer = new UIDiv().setId("viewer"); container.add(viewer); + reader.on("colorchanged", (color) => { + viewer.dom.style.backgroundColor = color; + }); + let next; if (settings.arrows === "content") { next = new UIDiv().setId("next").setClass("arrow"); @@ -2589,16 +2686,22 @@ class SettingsPanel extends UIPanel { const fontSizeLabel = new UILabel(strings.get(keys[2]), "fontsize"); const fontSizeRow = new UIRow(); - const fontSize = new UINumber(100, 1); + const fontSize = new UINumber(16, 1); + fontSize.dom.onchange = (e) => { + const newSize = parseInt(e.target.value); - reader.emit("styleschanged", { - fontSize: parseInt(e.target.value) - }); + if (newSize >= 8 && newSize <= 72) { + reader.emit("styleschanged", { + fontSize: newSize + }); + } }; + fontSize.setId("fontsize"); fontSizeRow.add(fontSizeLabel); fontSizeRow.add(fontSize); + fontSize.dom.disabled = true; //-- flow configure --// @@ -3105,7 +3208,7 @@ class Reader { this.on("styleschanged", (value) => { const fontSize = value.fontSize; this.settings.styles.fontSize = fontSize; - this.rendition.themes.fontSize(fontSize + "%"); + this.rendition.themes.fontSize(fontSize + "px"); }); } @@ -3169,7 +3272,7 @@ class Reader { min: 800 }, styles: { - fontSize: 100 + fontSize: 16 }, pagination: undefined, // not implemented fullscreen: document.fullscreenEnabled, @@ -3282,7 +3385,7 @@ class Reader { keyboardHandler(e) { - const step = 2; + const step = 1; let value = this.settings.styles.fontSize; switch (e.key) { diff --git a/dist/js/epubreader.js.map b/dist/js/epubreader.js.map index cc52d42..65d35d8 100644 --- a/dist/js/epubreader.js.map +++ b/dist/js/epubreader.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;ACnQA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;AACP;AACA;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AC3vByC;;AAElC;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;;AAEzB;AACA;AACA;AACA,uBAAuB,KAAK;AAC5B,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;ACpPwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,gBAAgB,MAAM;AACtB;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,gBAAgB,MAAM;AACtB;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;ACrHyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;ACzFyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACvI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC5GkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AC1KyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,uDAAuD,cAAc;AACrE;AACA;AACA,uDAAuD,gBAAgB;AACvE;AACA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AC9EkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;;AAEhC;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\"\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\"\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\"\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\"\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\"\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\t\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag); \n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}","import { UIDiv, UIInput } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\"\n\t\t];\n\n\t\t// Toolbar Menu 1\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t// Toolbar Menu 2\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\n\t\t// Button change background\n\t\tlet backgroundBox, backgroundBtn;\n\t\tif (settings.background) {\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tbackgroundBtn = new UIInput(\"color\");\n\t\t\tbackgroundBtn.dom.title = strings.get(keys[7]);\n\t\t\tbackgroundBtn.dom.value = \"#ffffff\";\n\t\t\tbackgroundBtn.dom.onchange = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\t\t\t\tdocument.body.style.backgroundColor = selectedColor;\n\t\t\t};\n\t\t\tbackgroundBox.add(backgroundBtn);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tprev.add(new UISpan(\"<\"));\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tnext.add(new UISpan(\">\"));\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\t\t\t\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(100, 1);\n\t\tfontSize.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\tfontSize: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), new AnnotationsPanel(reader));\n\t\t}\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"%\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 100\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 2;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 100;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;ACnQA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB;AACO;AACP;AACA;AACA;AACA;;AC/wBkD;;AAE3C;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,OAAO;AAC7B,wBAAwB,KAAK;AAC7B,4BAA4B,OAAO;AACnC,4BAA4B,OAAO;AACnC,0BAA0B,OAAO;;AAEjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,mCAAmC,oBAAoB;AACvD,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB;AACA;AACA;AACA,uBAAuB,KAAK;;AAE5B,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;;AAEN;AACA;AACA,MAAM;AACN,MAAM;AACN;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AC7TwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,gBAAgB,MAAM;AACtB;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,gBAAgB,MAAM;AACtB;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;ACzHyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;ACzFyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACvI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC5GkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;;AAE/B;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChLyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,uDAAuD,cAAc;AACrE;AACA;AACA,uDAAuD,gBAAgB;AACvE;AACA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AC9EkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;;AAEhC;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\"\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\"\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\"\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\"\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\"\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\"\n\t\t];\n\n\t\t// Toolbar Menu 1\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\t// Button \"-\", \"+\" and input for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu1.add(fontSizeBox);\n\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t// Toolbar Menu 2\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, backgroundBtn, colorPicker;\n\t\tif (settings.background) {\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\n\t\t\tbackgroundBtn = new UIInput(\"button\").setClass(\"btn-change-bg\");\n\t\t\tbackgroundBtn.dom.title = strings.get(keys[7]);\n\t\t\tbackgroundBtn.dom.value = \"\";\n\t\t\tbackgroundBtn.dom.textContent = \"\";\n\n\t\t\tcolorPicker = new UIInput(\"color\");\n\t\t\tcolorPicker.dom.style.display = \"none\";\n\n\t\t\tbackgroundBtn.dom.onclick = () => {\n\t\t\t\tcolorPicker.dom.click();\n\t\t\t};\n\n\t\t\tdocument.addEventListener(\"DOMContentLoaded\", () => {\n\t\t\t\tconst viewer = document.getElementById(\"viewer\");\n\t\t\t\tif (viewer) {\n\t\t\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\t\t\tconst selectedColor = e.target.value;\n\t\t\t\t\t\tviewer.style.backgroundColor = selectedColor;\n\t\t\t\t\t};\n\n\t\t\t\t\tcolorPicker.dom.addEventListener(\"mouseover\", (e) => {\n\t\t\t\t\t\tconst selectedColor = e.target.value;\n\t\t\t\t\t\tif (selectedColor) {\n\t\t\t\t\t\t\tviewer.style.backgroundColor = selectedColor;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\n\t\t\t\t\tcolorPicker.dom.addEventListener(\"mouseout\", () => {\n\t\t\t\t\t\tviewer.style.backgroundColor = \"\";\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tconsole.error(\"Viewer element not found\");\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tbackgroundBox.add(backgroundBtn);\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tprev.add(new UISpan(\"<\"));\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tnext.add(new UISpan(\">\"));\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\t\t\t\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), new AnnotationsPanel(reader));\n\t\t}\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 100;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/dist/js/epubreader.min.js b/dist/js/epubreader.min.js index 54e5b68..3eaa49a 100644 --- a/dist/js/epubreader.min.js +++ b/dist/js/epubreader.min.js @@ -1,2 +1,2 @@ -var e={263:(e,t,s)=>{var a=s(175),o=s(873),n=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,o,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),o=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,o=!1),c={value:t,configurable:s,enumerable:o,writable:d},l?n(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?o(t)?a(s)?o(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?n(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),o=s(134),n=Math.max;e.exports=function(e,t){var s,i,r,d=n(arguments.length,2);for(e=Object(o(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),o=Object.keys;e.exports=function(e){return o(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),o=Array.prototype.forEach,n=Object.create;e.exports=function(e){var t=n(null);return o.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,o,n,i,r,d,l,c=s(263),h=s(499),b=Function.prototype.apply,u=Function.prototype.call,m=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,w={configurable:!0,enumerable:!1,writable:!0};o=function(e,t){var s,o;return h(t),o=this,a.call(this,e,s=function(){n.call(o,e,s),b.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=w.value=m(null),g(this,"__ee__",w),w.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:o,off:n=function(e,t){var s,a,o,n;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(n=0;o=a[n];++n)o!==t&&o.__eeOnceListener__!==t||(2===a.length?s[e]=a[n?0:1]:a.splice(n,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,o,n;if(f.call(this,"__ee__")&&(o=this.__ee__[e]))if("object"==typeof o){for(s=arguments.length,n=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),o={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(o,typeof e)}},873:(e,t,s)=>{var a=s(80),o=/^\s*class[\s{/}]/,n=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!o.test(n.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var o=t[a];if(void 0!==o)return o.exports;var n=t[a]={exports:{}};return e[a](n,n.exports,s),n.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>N});var o=s(68);const n=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let o;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":o=t[a]?e[a]:t[a];break;default:o=t[a]}else o="arrows"===a?t[a]:void 0===n(s,a)?e[a]:t[a];return o},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],n(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add"},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter"},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加"},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить"},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???"}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class b{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class x extends b{constructor(e,t,s,a,o){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=o||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends m{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new u).setClass("tab-selector"),this.menuDiv=(new m).setClass("menu"),this.tabsDiv=(new m).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new m).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new I(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const o=new m;o.setId(e),o.add(s),this.panels.push(o),this.panelsDiv.add(o),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class I extends m{constructor(e,t){super(),this.button=new y("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class S extends b{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends b{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new m).setId("item-box");for(let s=0;s{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),n.add(i),"toolbar"===s.arrows&&(d=(new m).setId("btn-p").setClass("box"),l=new y("button"),l.setTitle(t.get(o[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),n.add(d),c=(new m).setId("btn-n").setClass("box"),h=new y("button"),h.dom.title=t.get(o[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),n.add(c));const b=(new m).setClass("menu-2");let u,g,p,f,w,k;if(s.background&&(u=(new m).setId("btn-bg").setClass("box"),g=new y("color"),g.dom.title=t.get(o[7]),g.dom.value="#ffffff",g.dom.onchange=e=>{const t=e.target.value;document.body.style.backgroundColor=t},u.add(g),b.add(u)),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},n=(new m).setId("btn-o").setClass("box");p=new y("file"),p.dom.title=t.get(o[3]),p.dom.accept="application/epub+zip",p.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(o[4]))},p.dom.onclick=e=>{p.dom.blur()},n.add(p),b.add(n)}if(s.bookmarks&&(f=(new m).setId("btn-b").setClass("box"),w=new y("button"),w.setTitle(t.get(o[5])),w.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),w.dom.blur()},f.add(w),b.add(f)),s.fullscreen){const e=(new m).setId("btn-f").setClass("box");k=new y("button"),k.setTitle(t.get(o[6])),k.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(k),b.add(e)}a.add([n,b]),document.body.appendChild(a.dom),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?f.removeClass("bookmarked"):f.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?f.addClass("bookmarked"):f.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(o[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(o[1])),h.setTitle(t.get(o[2]))),s.openbook&&p.setTitle(t.get(o[3])),s.bookmarks&&w.setTitle(t.get(o[5])),s.fullscreen&&k.setTitle(t.get(o[6])),s.background&&g.setTitle(t.get(o[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class O{constructor(e){const t=e.settings,s=(new m).setId("content");let a;"content"===t.arrows&&(a=(new m).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()},a.add(new u("<")),s.add(a));const o=(new m).setId("viewer");let n;s.add(o),"content"===t.arrows&&(n=(new m).setId("next").setClass("arrow"),n.dom.onclick=t=>{e.emit("next"),t.preventDefault()},n.add(new u(">")),s.add(n));const i=(new m).setId("loader"),r=(new m).setId("divider"),d=(new m).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{o.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{o.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?n.addClass("disabled"):n.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(n.addClass("active"),setTimeout((()=>{n.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{o.clear()}))}}class z extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/contents"],o=new k(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new D(o).addClass("header")),e.on("navigation",(e=>{t.clear(),t.add(this.generateToc(e)),this.add(t)})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new S(t);return e.forEach((e=>{const t=new w(e.href,e.label),a=new T(s).setId(e.id),o=new u;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([o,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);o.setClass("toggle-collapsed"),o.dom.onclick=()=>(t.expanded?(t.collaps(),o.setClass("toggle-collapsed")):(t.expand(),o.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class j extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],o=new k(s.get(a[0])).setClass("label"),n=new y("button",s.get(a[1]));n.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.bookmarks=new S,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{n.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new w,s=new T,a=(new u).setClass("btn-remove"),o=this.reader.navItemFromCfi(e);let n,i;if(void 0===o){const t=this.reader.book.spine.get(e);n=t.idref,i=t.idref}else n=o.id,i=o.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(n),this.bookmarks.add(s)}}class B extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],o=new k(s.get(a[0])).setClass("label"),n=new y("button",s.get(a[1]));n.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.notes=new S,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{n.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}set(e){const t=new w("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new u).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update()}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);-1!==t&&(this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update())}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class V extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings;let a;const o=new y("search").setId("nav-q");o.dom.placeholder=s.get("sidebar/search/placeholder"),o.dom.onsearch=()=>{const e=o.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new S,t.add(this.items),this.add([new D(o),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new w("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class A extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new k(t.get(s[0])).setClass("label");this.add(new D(a).addClass("header"));const o=new f(t.get(s[1]),"language-ui"),n=new g,i=(new v).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),n.add(o),n.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new x(100,1);l.dom.onchange=t=>{e.emit("styleschanged",{fontSize:parseInt(t.target.value)})},l.setId("fontsize"),d.add(r),d.add(l);const c=new f(t.get(s[3]),"flow"),h=new g,b=(new v).setOptions({paginated:"Paginated",scrolled:"Scrolled"});b.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},b.setId("flow"),h.add(c),h.add(b);const u=new x(800,1),m=new f(t.get(s[4]),"spread"),p=new g,w=(new v).setOptions({none:"None",auto:"Auto"});w.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),u.dom.disabled="none"===t.target.value},w.setId("spread"),p.add(m),p.add(w);const C=new f(t.get(s[5]),"min-spread-width"),I=new g;u.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},u.setId("min-spread-width"),I.add(C),I.add(u);const S=t.get("sidebar/settings/pagination"),T=new g,_=new y("checkbox",!1,S[1]);_.setId("pagination"),_.dom.onclick=e=>{},T.add(new f(S[0],"pagination")),T.add(_),this.add(new D([n,d,h,p,I])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),b.setValue(e.flow),w.setValue(e.spread.mod),u.setValue(e.spread.min),u.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(w.setValue("none"),w.dom.disabled=!0,u.dom.disabled=!0):w.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),o.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),m.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class P extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a={},o="sidebar/metadata",n=new k(s.get(o)).setClass("label");this.add(new D(n).addClass("header")),a[o]=n,this.items=new S,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const n=new T,i=(new k).setClass("label"),r=(new k).setClass("value");i.setValue(s.get(o+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[o+"/"+e]=i,n.add([i,r]),this.items.add(n)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===o?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class L{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],o=new C("vertical").setId("sidebar"),n=(new m).setId("btn-p").addClass("box"),i=new y("button");i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},n.add(i),o.addMenu(n),o.addTab("btn-t",t.get(a[1]),new z(e)),s.bookmarks&&o.addTab("btn-d",t.get(a[2]),new j(e)),s.annotations&&o.addTab("btn-a",t.get(a[3]),new B(e)),o.addTab("btn-s",t.get(a[4]),new V(e)),o.addTab("btn-c",t.get(a[5]),new A(e)),o.addTab("btn-i",t.get(a[6]),new P(e)),o.select("btn-t"),document.body.appendChild(o.dom),e.on("sidebaropener",(e=>{e?o.setClass("open"):o.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),o.setLabel("btn-t",t.get(a[1])),s.bookmarks&&o.setLabel("btn-d",t.get(a[2])),s.annotations&&o.setLabel("btn-a",t.get(a[3])),o.setLabel("btn-s",t.get(a[4])),o.setLabel("btn-c",t.get(a[5])),o.setLabel("btn-i",t.get(a[6]))}))}}class F{constructor(e){const t=(new m).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],o=new f(s.get(a[0]),"note-input"),n=new y("text","").setId("note-input");n.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new y("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:n.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&n.getValue().length>0)},t.add(new D([o,n,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),n.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{o.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class N{constructor(e,t){const s=s=>{const a=new URL(window.location);let o=e;t&&!t.openbook?(o=e,s&&this.storage.clear()):s&&0===a.search.length&&(o=s),this.cfgInit(o,t),this.strings=new c(this),this.toolbar=new _(this),this.content=new O(this),this.sidebar=new L(this),this.settings.annotations&&(this.notedlg=new F(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("navigation",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"%")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:100},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=2,this.emit("styleschanged",{fontSize:t});break;case"-":t-=2,this.emit("styleschanged",{fontSize:t});break;case"0":t=100,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}o(N.prototype);var M=a.Reader;export{M as Reader}; +var e={263:(e,t,s)=>{var a=s(175),o=s(873),n=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,o,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),o=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,o=!1),c={value:t,configurable:s,enumerable:o,writable:d},l?n(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?o(t)?a(s)?o(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?n(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),o=s(134),n=Math.max;e.exports=function(e,t){var s,i,r,d=n(arguments.length,2);for(e=Object(o(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),o=Object.keys;e.exports=function(e){return o(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),o=Array.prototype.forEach,n=Object.create;e.exports=function(e){var t=n(null);return o.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,o,n,i,r,d,l,c=s(263),h=s(499),b=Function.prototype.apply,u=Function.prototype.call,m=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,w={configurable:!0,enumerable:!1,writable:!0};o=function(e,t){var s,o;return h(t),o=this,a.call(this,e,s=function(){n.call(o,e,s),b.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=w.value=m(null),g(this,"__ee__",w),w.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:o,off:n=function(e,t){var s,a,o,n;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(n=0;o=a[n];++n)o!==t&&o.__eeOnceListener__!==t||(2===a.length?s[e]=a[n?0:1]:a.splice(n,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,o,n;if(f.call(this,"__ee__")&&(o=this.__ee__[e]))if("object"==typeof o){for(s=arguments.length,n=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),o={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(o,typeof e)}},873:(e,t,s)=>{var a=s(80),o=/^\s*class[\s{/}]/,n=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!o.test(n.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var o=t[a];if(void 0!==o)return o.exports;var n=t[a]={exports:{}};return e[a](n,n.exports,s),n.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>F});var o=s(68);const n=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let o;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":o=t[a]?e[a]:t[a];break;default:o=t[a]}else o="arrows"===a?t[a]:void 0===n(s,a)?e[a]:t[a];return o},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],n(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add"},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter"},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加"},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить"},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???"}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class b{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class y extends b{constructor(e,t,s,a,o){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=o||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends m{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new u).setClass("tab-selector"),this.menuDiv=(new m).setClass("menu"),this.tabsDiv=(new m).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new m).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new I(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const o=new m;o.setId(e),o.add(s),this.panels.push(o),this.panelsDiv.add(o),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class I extends m{constructor(e,t){super(),this.button=new x("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class S extends b{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends b{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new m).setId("item-box");for(let s=0;s{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),n.add(i);let d,l,c,h,b=(new f).setClass("font-size-px").setTextContent("Fontsize (px):"),u=(new m).setId("btn-fontsize").setClass("box"),g=new x("button").setClass("btn-font-decrease"),p=new x("button").setClass("btn-font-increase"),w=new x("text").setClass("input-font-size"),k=s.fontSize||16;w.dom.value=k,g.dom.textContent="-",g.dom.onclick=()=>{k=Math.max(8,k-1),w.dom.value=k,e.emit("styleschanged",{fontSize:k})},p.dom.textContent="+",p.dom.onclick=()=>{k=Math.min(72,k+1),w.dom.value=k,e.emit("styleschanged",{fontSize:k})},w.dom.onchange=()=>{let t=parseInt(w.dom.value,10);!isNaN(t)&&t>=8&&t<=72?(k=t,e.emit("styleschanged",{fontSize:k})):w.dom.value=k},u.add(b),u.add(g),u.add(w),u.add(p),n.add(u),"toolbar"===s.arrows&&(d=(new m).setId("btn-p").setClass("box"),l=new x("button"),l.setTitle(t.get(o[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),n.add(d),c=(new m).setId("btn-n").setClass("box"),h=new x("button"),h.dom.title=t.get(o[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),n.add(c));const v=(new m).setClass("menu-2");let y,C,I,S,T,D,z;if(s.background&&(y=(new m).setId("btn-bg").setClass("box"),C=new x("button").setClass("btn-change-bg"),C.dom.title=t.get(o[7]),C.dom.value="",C.dom.textContent="",I=new x("color"),I.dom.style.display="none",C.dom.onclick=()=>{I.dom.click()},document.addEventListener("DOMContentLoaded",(()=>{const e=document.getElementById("viewer");e?(I.dom.oninput=t=>{const s=t.target.value;e.style.backgroundColor=s},I.dom.addEventListener("mouseover",(t=>{const s=t.target.value;s&&(e.style.backgroundColor=s)})),I.dom.addEventListener("mouseout",(()=>{e.style.backgroundColor=""}))):console.error("Viewer element not found")})),y.add(C),y.add(I),v.add(y)),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},n=(new m).setId("btn-o").setClass("box");S=new x("file"),S.dom.title=t.get(o[3]),S.dom.accept="application/epub+zip",S.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(o[4]))},S.dom.onclick=e=>{S.dom.blur()},n.add(S),v.add(n)}if(s.bookmarks&&(T=(new m).setId("btn-b").setClass("box"),D=new x("button"),D.setTitle(t.get(o[5])),D.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),D.dom.blur()},T.add(D),v.add(T)),s.fullscreen){const e=(new m).setId("btn-f").setClass("box");z=new x("button"),z.setTitle(t.get(o[6])),z.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(z),v.add(e)}a.add([n,v]),document.body.appendChild(a.dom),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?T.removeClass("bookmarked"):T.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?T.addClass("bookmarked"):T.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(o[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(o[1])),h.setTitle(t.get(o[2]))),s.openbook&&S.setTitle(t.get(o[3])),s.bookmarks&&D.setTitle(t.get(o[5])),s.fullscreen&&z.setTitle(t.get(o[6])),s.background&&C.setTitle(t.get(o[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class _{constructor(e){const t=e.settings,s=(new m).setId("content");let a;"content"===t.arrows&&(a=(new m).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()},a.add(new u("<")),s.add(a));const o=(new m).setId("viewer");let n;s.add(o),e.on("colorchanged",(e=>{o.dom.style.backgroundColor=e})),"content"===t.arrows&&(n=(new m).setId("next").setClass("arrow"),n.dom.onclick=t=>{e.emit("next"),t.preventDefault()},n.add(new u(">")),s.add(n));const i=(new m).setId("loader"),r=(new m).setId("divider"),d=(new m).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{o.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{o.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?n.addClass("disabled"):n.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(n.addClass("active"),setTimeout((()=>{n.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{o.clear()}))}}class O extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/contents"],o=new k(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new D(o).addClass("header")),e.on("navigation",(e=>{t.clear(),t.add(this.generateToc(e)),this.add(t)})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new S(t);return e.forEach((e=>{const t=new w(e.href,e.label),a=new T(s).setId(e.id),o=new u;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([o,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);o.setClass("toggle-collapsed"),o.dom.onclick=()=>(t.expanded?(t.collaps(),o.setClass("toggle-collapsed")):(t.expand(),o.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class B extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],o=new k(s.get(a[0])).setClass("label"),n=new x("button",s.get(a[1]));n.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.bookmarks=new S,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{n.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new w,s=new T,a=(new u).setClass("btn-remove"),o=this.reader.navItemFromCfi(e);let n,i;if(void 0===o){const t=this.reader.book.spine.get(e);n=t.idref,i=t.idref}else n=o.id,i=o.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(n),this.bookmarks.add(s)}}class V extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],o=new k(s.get(a[0])).setClass("label"),n=new x("button",s.get(a[1]));n.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.notes=new S,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{n.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}set(e){const t=new w("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new u).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update()}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);-1!==t&&(this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update())}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class j extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings;let a;const o=new x("search").setId("nav-q");o.dom.placeholder=s.get("sidebar/search/placeholder"),o.dom.onsearch=()=>{const e=o.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new S,t.add(this.items),this.add([new D(o),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new w("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class L extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new k(t.get(s[0])).setClass("label");this.add(new D(a).addClass("header"));const o=new f(t.get(s[1]),"language-ui"),n=new g,i=(new v).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),n.add(o),n.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new y(16,1);l.dom.onchange=t=>{const s=parseInt(t.target.value);s>=8&&s<=72&&e.emit("styleschanged",{fontSize:s})},l.setId("fontsize"),d.add(r),d.add(l),l.dom.disabled=!0;const c=new f(t.get(s[3]),"flow"),h=new g,b=(new v).setOptions({paginated:"Paginated",scrolled:"Scrolled"});b.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},b.setId("flow"),h.add(c),h.add(b);const u=new y(800,1),m=new f(t.get(s[4]),"spread"),p=new g,w=(new v).setOptions({none:"None",auto:"Auto"});w.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),u.dom.disabled="none"===t.target.value},w.setId("spread"),p.add(m),p.add(w);const C=new f(t.get(s[5]),"min-spread-width"),I=new g;u.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},u.setId("min-spread-width"),I.add(C),I.add(u);const S=t.get("sidebar/settings/pagination"),T=new g,z=new x("checkbox",!1,S[1]);z.setId("pagination"),z.dom.onclick=e=>{},T.add(new f(S[0],"pagination")),T.add(z),this.add(new D([n,d,h,p,I])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),b.setValue(e.flow),w.setValue(e.spread.mod),u.setValue(e.spread.min),u.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(w.setValue("none"),w.dom.disabled=!0,u.dom.disabled=!0):w.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),o.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),m.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class A extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a={},o="sidebar/metadata",n=new k(s.get(o)).setClass("label");this.add(new D(n).addClass("header")),a[o]=n,this.items=new S,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const n=new T,i=(new k).setClass("label"),r=(new k).setClass("value");i.setValue(s.get(o+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[o+"/"+e]=i,n.add([i,r]),this.items.add(n)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===o?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class P{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],o=new C("vertical").setId("sidebar"),n=(new m).setId("btn-p").addClass("box"),i=new x("button");i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},n.add(i),o.addMenu(n),o.addTab("btn-t",t.get(a[1]),new O(e)),s.bookmarks&&o.addTab("btn-d",t.get(a[2]),new B(e)),s.annotations&&o.addTab("btn-a",t.get(a[3]),new V(e)),o.addTab("btn-s",t.get(a[4]),new j(e)),o.addTab("btn-c",t.get(a[5]),new L(e)),o.addTab("btn-i",t.get(a[6]),new A(e)),o.select("btn-t"),document.body.appendChild(o.dom),e.on("sidebaropener",(e=>{e?o.setClass("open"):o.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),o.setLabel("btn-t",t.get(a[1])),s.bookmarks&&o.setLabel("btn-d",t.get(a[2])),s.annotations&&o.setLabel("btn-a",t.get(a[3])),o.setLabel("btn-s",t.get(a[4])),o.setLabel("btn-c",t.get(a[5])),o.setLabel("btn-i",t.get(a[6]))}))}}class N{constructor(e){const t=(new m).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],o=new f(s.get(a[0]),"note-input"),n=new x("text","").setId("note-input");n.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new x("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:n.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&n.getValue().length>0)},t.add(new D([o,n,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),n.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{o.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class F{constructor(e,t){const s=s=>{const a=new URL(window.location);let o=e;t&&!t.openbook?(o=e,s&&this.storage.clear()):s&&0===a.search.length&&(o=s),this.cfgInit(o,t),this.strings=new c(this),this.toolbar=new z(this),this.content=new _(this),this.sidebar=new P(this),this.settings.annotations&&(this.notedlg=new N(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("navigation",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"px")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:16},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=1,this.emit("styleschanged",{fontSize:t});break;case"-":t-=1,this.emit("styleschanged",{fontSize:t});break;case"0":t=100,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}o(F.prototype);var M=a.Reader;export{M as Reader}; //# sourceMappingURL=epubreader.min.js.map \ No newline at end of file diff --git a/dist/js/epubreader.min.js.map b/dist/js/epubreader.min.js.map index 840cac4..ddddcc9 100644 --- a/dist/js/epubreader.min.js.map +++ b/dist/js/epubreader.min.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.min.js","mappings":"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","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\"\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\"\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\"\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\"\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\"\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\t\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag); \n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}","import { UIDiv, UIInput } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\"\n\t\t];\n\n\t\t// Toolbar Menu 1\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t// Toolbar Menu 2\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\n\t\t// Button change background\n\t\tlet backgroundBox, backgroundBtn;\n\t\tif (settings.background) {\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tbackgroundBtn = new UIInput(\"color\");\n\t\t\tbackgroundBtn.dom.title = strings.get(keys[7]);\n\t\t\tbackgroundBtn.dom.value = \"#ffffff\";\n\t\t\tbackgroundBtn.dom.onchange = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\t\t\t\tdocument.body.style.backgroundColor = selectedColor;\n\t\t\t};\n\t\t\tbackgroundBox.add(backgroundBtn);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tprev.add(new UISpan(\"<\"));\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tnext.add(new UISpan(\">\"));\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\t\t\t\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(100, 1);\n\t\tfontSize.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\tfontSize: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), new AnnotationsPanel(reader));\n\t\t}\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"%\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 100\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 2;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 100;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","Toolbar","strings","container","menu1","openerBox","openerBtn","prevBox","prevBtn","nextBox","nextBtn","blur","arrows","menu2","backgroundBox","backgroundBtn","openbookBtn","bookmarkBox","bookmarkBtn","fullscreenBtn","background","selectedColor","body","backgroundColor","openbook","onload","storage","unload","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","bookmarks","cfi","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","start","atStart","atEnd","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","viewer","next","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","toc","generateToc","list","chapter","link","item","ibtn","sectionId","rendition","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","update","disabled","renderer","setBookmark","appendBookmark","removeBookmark","_cfi","index","btnr","navItem","navItemFromCfi","idref","spineItem","book","spine","AnnotationsPanel","clearNotes","notes","annotations","note","removeNote","SearchPanel","searchQuery","search","placeholder","onsearch","doSearch","then","results","Promise","all","spineItems","map","load","bind","find","finally","resolve","concat","excerpt","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","fontSize","parseInt","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","innerHTML","Sidebar","controls","NoteDlg","textBox","oninput","addBtn","date","range","contents","Reader","bookPath","preinit","path","cfgInit","toolbar","content","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","loaded","metadata","navigation","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.min.js","mappings":"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","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\"\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\"\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\"\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\"\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\"\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\"\n\t\t];\n\n\t\t// Toolbar Menu 1\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\t// Button \"-\", \"+\" and input for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu1.add(fontSizeBox);\n\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t// Toolbar Menu 2\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, backgroundBtn, colorPicker;\n\t\tif (settings.background) {\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\n\t\t\tbackgroundBtn = new UIInput(\"button\").setClass(\"btn-change-bg\");\n\t\t\tbackgroundBtn.dom.title = strings.get(keys[7]);\n\t\t\tbackgroundBtn.dom.value = \"\";\n\t\t\tbackgroundBtn.dom.textContent = \"\";\n\n\t\t\tcolorPicker = new UIInput(\"color\");\n\t\t\tcolorPicker.dom.style.display = \"none\";\n\n\t\t\tbackgroundBtn.dom.onclick = () => {\n\t\t\t\tcolorPicker.dom.click();\n\t\t\t};\n\n\t\t\tdocument.addEventListener(\"DOMContentLoaded\", () => {\n\t\t\t\tconst viewer = document.getElementById(\"viewer\");\n\t\t\t\tif (viewer) {\n\t\t\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\t\t\tconst selectedColor = e.target.value;\n\t\t\t\t\t\tviewer.style.backgroundColor = selectedColor;\n\t\t\t\t\t};\n\n\t\t\t\t\tcolorPicker.dom.addEventListener(\"mouseover\", (e) => {\n\t\t\t\t\t\tconst selectedColor = e.target.value;\n\t\t\t\t\t\tif (selectedColor) {\n\t\t\t\t\t\t\tviewer.style.backgroundColor = selectedColor;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\n\t\t\t\t\tcolorPicker.dom.addEventListener(\"mouseout\", () => {\n\t\t\t\t\t\tviewer.style.backgroundColor = \"\";\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tconsole.error(\"Viewer element not found\");\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tbackgroundBox.add(backgroundBtn);\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tprev.add(new UISpan(\"<\"));\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tnext.add(new UISpan(\">\"));\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\t\t\t\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), new AnnotationsPanel(reader));\n\t\t}\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 100;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","Toolbar","strings","container","menu1","openerBox","openerBtn","blur","prevBox","prevBtn","nextBox","nextBtn","fontLabel","fontSizeBox","decreaseFontBtn","increaseFontBtn","fontSizeInput","fontSize","newSize","parseInt","isNaN","arrows","menu2","backgroundBox","backgroundBtn","colorPicker","openbookBtn","bookmarkBox","bookmarkBtn","fullscreenBtn","background","click","addEventListener","viewer","getElementById","oninput","selectedColor","backgroundColor","openbook","onload","storage","unload","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","bookmarks","cfi","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","body","start","atStart","atEnd","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","next","color","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","toc","generateToc","list","chapter","link","item","ibtn","sectionId","rendition","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","update","disabled","renderer","setBookmark","appendBookmark","removeBookmark","_cfi","index","btnr","navItem","navItemFromCfi","idref","spineItem","book","spine","AnnotationsPanel","clearNotes","notes","annotations","note","removeNote","SearchPanel","searchQuery","search","placeholder","onsearch","doSearch","then","results","Promise","all","spineItems","map","load","bind","find","finally","resolve","concat","excerpt","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","innerHTML","Sidebar","controls","NoteDlg","textBox","addBtn","date","range","contents","Reader","bookPath","preinit","path","cfgInit","toolbar","content","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","loaded","metadata","navigation","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file diff --git a/package.json b/package.json index 0e0907d..3e71a0f 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,8 @@ "build": "webpack --mode=production --progress", "serve": "webpack serve", "minify": "webpack --mode=production --optimization-minimize --progress", - "prepare": "npm run build && npm run minify" + "prepare": "npm run build && npm run minify", + "start": "npm run build && npm run minify && npm run serve" }, "author": "fchasen@gmail.com", "license": "MIT", diff --git a/src/content.js b/src/content.js index d2f3bfa..0fe9a94 100644 --- a/src/content.js +++ b/src/content.js @@ -23,6 +23,10 @@ export class Content { const viewer = new UIDiv().setId("viewer"); container.add(viewer); + reader.on("colorchanged", (color) => { + viewer.dom.style.backgroundColor = color; + }); + let next; if (settings.arrows === "content") { next = new UIDiv().setId("next").setClass("arrow"); diff --git a/src/reader.js b/src/reader.js index e1eacae..f6231e3 100644 --- a/src/reader.js +++ b/src/reader.js @@ -163,7 +163,7 @@ export class Reader { this.on("styleschanged", (value) => { const fontSize = value.fontSize; this.settings.styles.fontSize = fontSize; - this.rendition.themes.fontSize(fontSize + "%"); + this.rendition.themes.fontSize(fontSize + "px"); }); } @@ -227,7 +227,7 @@ export class Reader { min: 800 }, styles: { - fontSize: 100 + fontSize: 16 }, pagination: undefined, // not implemented fullscreen: document.fullscreenEnabled, @@ -340,7 +340,7 @@ export class Reader { keyboardHandler(e) { - const step = 2; + const step = 1; let value = this.settings.styles.fontSize; switch (e.key) { diff --git a/src/sidebar/settings.js b/src/sidebar/settings.js index 80e51eb..f1b63c3 100644 --- a/src/sidebar/settings.js +++ b/src/sidebar/settings.js @@ -38,16 +38,22 @@ export class SettingsPanel extends UIPanel { const fontSizeLabel = new UILabel(strings.get(keys[2]), "fontsize"); const fontSizeRow = new UIRow(); - const fontSize = new UINumber(100, 1); + const fontSize = new UINumber(16, 1); + fontSize.dom.onchange = (e) => { + const newSize = parseInt(e.target.value); - reader.emit("styleschanged", { - fontSize: parseInt(e.target.value) - }); + if (newSize >= 8 && newSize <= 72) { + reader.emit("styleschanged", { + fontSize: newSize + }); + } }; + fontSize.setId("fontsize"); fontSizeRow.add(fontSizeLabel); fontSizeRow.add(fontSize); + fontSize.dom.disabled = true; //-- flow configure --// diff --git a/src/toolbar.js b/src/toolbar.js index 11dbf42..c931f8b 100644 --- a/src/toolbar.js +++ b/src/toolbar.js @@ -1,4 +1,4 @@ -import { UIDiv, UIInput } from "./ui.js"; +import { UIDiv, UIInput, UILabel } from "./ui.js"; export class Toolbar { @@ -33,6 +33,50 @@ export class Toolbar { openerBox.add(openerBtn); menu1.add(openerBox); + // Button "-", "+" and input for font-size + let fontLabel = new UILabel().setClass("font-size-px").setTextContent("Fontsize (px):") + let fontSizeBox = new UIDiv().setId("btn-fontsize").setClass("box"); + let decreaseFontBtn = new UIInput("button").setClass("btn-font-decrease"); + let increaseFontBtn = new UIInput("button").setClass("btn-font-increase"); + let fontSizeInput = new UIInput("text").setClass("input-font-size"); + + let fontSize = settings.fontSize || 16; + fontSizeInput.dom.value = fontSize; + + decreaseFontBtn.dom.textContent = "-"; + decreaseFontBtn.dom.onclick = () => { + fontSize = Math.max(8, fontSize - 1); + fontSizeInput.dom.value = fontSize; + + reader.emit("styleschanged", { fontSize: fontSize }); + }; + + increaseFontBtn.dom.textContent = "+"; + increaseFontBtn.dom.onclick = () => { + fontSize = Math.min(72, fontSize + 1); + fontSizeInput.dom.value = fontSize; + + reader.emit("styleschanged", { fontSize: fontSize }); + }; + + fontSizeInput.dom.onchange = () => { + let newSize = parseInt(fontSizeInput.dom.value, 10); + if (!isNaN(newSize) && newSize >= 8 && newSize <= 72) { + fontSize = newSize; + + reader.emit("styleschanged", { fontSize: fontSize }); + } else { + fontSizeInput.dom.value = fontSize; + } + }; + + fontSizeBox.add(fontLabel); + fontSizeBox.add(decreaseFontBtn); + fontSizeBox.add(fontSizeInput); + fontSizeBox.add(increaseFontBtn); + menu1.add(fontSizeBox); + + let prevBox, prevBtn; let nextBox, nextBtn; if (settings.arrows === "toolbar") { @@ -63,19 +107,48 @@ export class Toolbar { // Toolbar Menu 2 const menu2 = new UIDiv().setClass("menu-2"); - // Button change background - let backgroundBox, backgroundBtn; + let backgroundBox, backgroundBtn, colorPicker; if (settings.background) { backgroundBox = new UIDiv().setId("btn-bg").setClass("box"); - backgroundBtn = new UIInput("color"); + + backgroundBtn = new UIInput("button").setClass("btn-change-bg"); backgroundBtn.dom.title = strings.get(keys[7]); - backgroundBtn.dom.value = "#ffffff"; - backgroundBtn.dom.onchange = (e) => { - const selectedColor = e.target.value; - document.body.style.backgroundColor = selectedColor; + backgroundBtn.dom.value = ""; + backgroundBtn.dom.textContent = ""; + + colorPicker = new UIInput("color"); + colorPicker.dom.style.display = "none"; + + backgroundBtn.dom.onclick = () => { + colorPicker.dom.click(); }; + + document.addEventListener("DOMContentLoaded", () => { + const viewer = document.getElementById("viewer"); + if (viewer) { + colorPicker.dom.oninput = (e) => { + const selectedColor = e.target.value; + viewer.style.backgroundColor = selectedColor; + }; + + colorPicker.dom.addEventListener("mouseover", (e) => { + const selectedColor = e.target.value; + if (selectedColor) { + viewer.style.backgroundColor = selectedColor; + } + }); + + colorPicker.dom.addEventListener("mouseout", () => { + viewer.style.backgroundColor = ""; + }); + } else { + console.error("Viewer element not found"); + } + }); + backgroundBox.add(backgroundBtn); + backgroundBox.add(colorPicker); menu2.add(backgroundBox); } diff --git a/src/ui.js b/src/ui.js index 5435462..d2c8957 100644 --- a/src/ui.js +++ b/src/ui.js @@ -9,10 +9,10 @@ const ERROR_MSG = "is not an instance of UIElement."; * @param {string} tag */ export class UIElement { - + constructor(tag) { - this.dom = document.createElement(tag); + this.dom = document.createElement(tag); } add() { @@ -170,6 +170,16 @@ export class UIDiv extends UIElement { super("div"); } + + setClass(className) { + this.dom.className = className; + return this; + } + + addClass(className) { + this.dom.classList.add(className); + return this; + } } /** @@ -761,4 +771,14 @@ export class UIBox extends UIElement { this.setClass("box"); this.add(items); } +} + +/** + * UIButton + * @param {UIButton} items + */ +export class UIButton extends UIElement { + constructor(items) { + super("button"); + } } \ No newline at end of file diff --git a/webpack.config.cjs b/webpack.config.cjs index d223a63..64b226d 100644 --- a/webpack.config.cjs +++ b/webpack.config.cjs @@ -1,5 +1,6 @@ const path = require("path") const CopyPlugin = require("copy-webpack-plugin") +const { webpack } = require("webpack") const config = { mode: "development", @@ -20,10 +21,11 @@ const config = { static: { directory: path.join(__dirname, "dist") }, - hot: false, + hot: true, liveReload: true, compress: true, - port: 8088 + port: 8088, + open: true }, experiments: { outputModule: true @@ -74,5 +76,9 @@ module.exports = (env, args) => { config.optimization.minimize = false } + if (env.WEBPACK_SERVE) { + config.devServer.hot = true; + } + return config; } \ No newline at end of file From 5d784c85f7d95ea0abbff6ed806aa0e6ed8ce835 Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Thu, 16 Jan 2025 16:50:38 +0700 Subject: [PATCH 10/21] :memo: update code --- dist/css/common.css | 16 +++++----- dist/img/background.svg | 40 ------------------------- dist/js/epubreader.js | 56 ++++++++++------------------------- dist/js/epubreader.js.map | 2 +- dist/js/epubreader.min.js | 2 +- dist/js/epubreader.min.js.map | 2 +- src/content.js | 3 +- src/reader.js | 4 +-- src/toolbar.js | 52 +++++++++----------------------- 9 files changed, 46 insertions(+), 131 deletions(-) delete mode 100644 dist/img/background.svg diff --git a/dist/css/common.css b/dist/css/common.css index 8fa4cfb..0b29844 100644 --- a/dist/css/common.css +++ b/dist/css/common.css @@ -57,6 +57,7 @@ display: flex; width: auto !important; align-items: center; + margin-left: 10px; } .font-size-px { @@ -77,8 +78,8 @@ outline: 1px solid #ccc; border: 1px solid #ccc; margin: 0; - width: 100px; - padding-left: 10px; + width: 30px; + padding: 0 10px; font-size: 1rem; font-weight: bold; border-radius: 10px; @@ -109,12 +110,13 @@ } /* Add style for button change background color */ -#btn-bg.box input { - background: url(../img/background.svg) no-repeat center / cover; -} +#btn-bg {} -.btn-change-bg { - border-radius: 50%; +#btn-bg .color-picker { + outline: none; + border: 2px solid #000; + border-radius: 5px; + padding: 0px; } #btn-f.box input { diff --git a/dist/img/background.svg b/dist/img/background.svg deleted file mode 100644 index fd20f0d..0000000 --- a/dist/img/background.svg +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/dist/js/epubreader.js b/dist/js/epubreader.js index 002a8d3..f887ad7 100644 --- a/dist/js/epubreader.js +++ b/dist/js/epubreader.js @@ -1812,7 +1812,7 @@ class Toolbar { "toolbar/background" ]; - // Toolbar Menu 1 + /*------------------------ Toolbar Menu 1 --------------------------*/ const menu1 = new UIDiv().setClass("menu-1"); const openerBox = new UIDiv().setId("btn-m").setClass("box"); const openerBtn = new UIInput("button"); @@ -1898,49 +1898,24 @@ class Toolbar { menu1.add(nextBox); } - // Toolbar Menu 2 + /*------------------------ Toolbar Menu 2 --------------------------*/ const menu2 = new UIDiv().setClass("menu-2"); // Button change background - let backgroundBox, backgroundBtn, colorPicker; + let backgroundBox, colorPicker; if (settings.background) { + // Init elements: background box div, input color picker backgroundBox = new UIDiv().setId("btn-bg").setClass("box"); + colorPicker = new UIInput("color").setClass("color-picker"); + colorPicker.dom.title = strings.get(keys[7]); - backgroundBtn = new UIInput("button").setClass("btn-change-bg"); - backgroundBtn.dom.title = strings.get(keys[7]); - backgroundBtn.dom.value = ""; - backgroundBtn.dom.textContent = ""; + // Handle event get color from color table of input color + colorPicker.dom.oninput = (e) => { + const selectedColor = e.target.value; - colorPicker = new UIInput("color"); - colorPicker.dom.style.display = "none"; - - backgroundBtn.dom.onclick = () => { - colorPicker.dom.click(); - }; - - document.addEventListener("DOMContentLoaded", () => { - const viewer = document.getElementById("viewer"); - if (viewer) { - colorPicker.dom.oninput = (e) => { - const selectedColor = e.target.value; - viewer.style.backgroundColor = selectedColor; - }; - - colorPicker.dom.addEventListener("mouseover", (e) => { - const selectedColor = e.target.value; - if (selectedColor) { - viewer.style.backgroundColor = selectedColor; - } - }); - - colorPicker.dom.addEventListener("mouseout", () => { - viewer.style.backgroundColor = ""; - }); - } else { - console.error("Viewer element not found"); - } - }); + // Emit 'colorchanged' event with selected color + reader.emit("colorchanged", selectedColor); + } - backgroundBox.add(backgroundBtn); backgroundBox.add(colorPicker); menu2.add(backgroundBox); } @@ -2135,6 +2110,7 @@ class Content { const viewer = new UIDiv().setId("viewer"); container.add(viewer); + // Handle the 'colorchanged' event to change background of 'viewer' reader.on("colorchanged", (color) => { viewer.dom.style.backgroundColor = color; }); @@ -2185,7 +2161,7 @@ class Content { }); reader.on("flowchanged", (value) => { - + viewer.setClass(value); }); @@ -3272,11 +3248,11 @@ class Reader { min: 800 }, styles: { - fontSize: 16 + fontSize: 16 // Default fontsize by 'px' }, pagination: undefined, // not implemented fullscreen: document.fullscreenEnabled, - background: [], + background: [], // Setting for change background "viewer" }; extend(settings || {}, this.settings); diff --git a/dist/js/epubreader.js.map b/dist/js/epubreader.js.map index 65d35d8..1016450 100644 --- a/dist/js/epubreader.js.map +++ b/dist/js/epubreader.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;ACnQA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB;AACO;AACP;AACA;AACA;AACA;;AC/wBkD;;AAE3C;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,OAAO;AAC7B,wBAAwB,KAAK;AAC7B,4BAA4B,OAAO;AACnC,4BAA4B,OAAO;AACnC,0BAA0B,OAAO;;AAEjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,mCAAmC,oBAAoB;AACvD,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB;AACA;AACA;AACA,uBAAuB,KAAK;;AAE5B,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;;AAEN;AACA;AACA,MAAM;AACN,MAAM;AACN;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AC7TwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,gBAAgB,MAAM;AACtB;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,gBAAgB,MAAM;AACtB;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;ACzHyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;ACzFyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACvI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC5GkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;;AAE/B;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChLyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,uDAAuD,cAAc;AACrE;AACA;AACA,uDAAuD,gBAAgB;AACvE;AACA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AC9EkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;;AAEhC;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\"\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\"\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\"\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\"\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\"\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\"\n\t\t];\n\n\t\t// Toolbar Menu 1\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\t// Button \"-\", \"+\" and input for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu1.add(fontSizeBox);\n\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t// Toolbar Menu 2\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, backgroundBtn, colorPicker;\n\t\tif (settings.background) {\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\n\t\t\tbackgroundBtn = new UIInput(\"button\").setClass(\"btn-change-bg\");\n\t\t\tbackgroundBtn.dom.title = strings.get(keys[7]);\n\t\t\tbackgroundBtn.dom.value = \"\";\n\t\t\tbackgroundBtn.dom.textContent = \"\";\n\n\t\t\tcolorPicker = new UIInput(\"color\");\n\t\t\tcolorPicker.dom.style.display = \"none\";\n\n\t\t\tbackgroundBtn.dom.onclick = () => {\n\t\t\t\tcolorPicker.dom.click();\n\t\t\t};\n\n\t\t\tdocument.addEventListener(\"DOMContentLoaded\", () => {\n\t\t\t\tconst viewer = document.getElementById(\"viewer\");\n\t\t\t\tif (viewer) {\n\t\t\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\t\t\tconst selectedColor = e.target.value;\n\t\t\t\t\t\tviewer.style.backgroundColor = selectedColor;\n\t\t\t\t\t};\n\n\t\t\t\t\tcolorPicker.dom.addEventListener(\"mouseover\", (e) => {\n\t\t\t\t\t\tconst selectedColor = e.target.value;\n\t\t\t\t\t\tif (selectedColor) {\n\t\t\t\t\t\t\tviewer.style.backgroundColor = selectedColor;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\n\t\t\t\t\tcolorPicker.dom.addEventListener(\"mouseout\", () => {\n\t\t\t\t\t\tviewer.style.backgroundColor = \"\";\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tconsole.error(\"Viewer element not found\");\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tbackgroundBox.add(backgroundBtn);\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tprev.add(new UISpan(\"<\"));\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tnext.add(new UISpan(\">\"));\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\t\t\t\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), new AnnotationsPanel(reader));\n\t\t}\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 100;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;ACnQA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB;AACO;AACP;AACA;AACA;AACA;;AC/wBkD;;AAE3C;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,OAAO;AAC7B,wBAAwB,KAAK;AAC7B,4BAA4B,OAAO;AACnC,4BAA4B,OAAO;AACnC,0BAA0B,OAAO;;AAEjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,mCAAmC,oBAAoB;AACvD,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB;AACA;AACA;AACA;AACA,uBAAuB,KAAK;AAC5B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;ACpSwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,gBAAgB,MAAM;AACtB;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,gBAAgB,MAAM;AACtB;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;AC1HyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;ACzFyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACvI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC5GkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;;AAE/B;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChLyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,uDAAuD,cAAc;AACrE;AACA;AACA,uDAAuD,gBAAgB;AACvE;AACA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AC9EkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;;AAEhC;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\"\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\"\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\"\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\"\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\"\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\"\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\t// Button \"-\", \"+\" and input for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu1.add(fontSizeBox);\n\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tprev.add(new UISpan(\"<\"));\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tnext.add(new UISpan(\">\"));\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), new AnnotationsPanel(reader));\n\t\t}\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 100;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/dist/js/epubreader.min.js b/dist/js/epubreader.min.js index 3eaa49a..0f1eb81 100644 --- a/dist/js/epubreader.min.js +++ b/dist/js/epubreader.min.js @@ -1,2 +1,2 @@ -var e={263:(e,t,s)=>{var a=s(175),o=s(873),n=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,o,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),o=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,o=!1),c={value:t,configurable:s,enumerable:o,writable:d},l?n(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?o(t)?a(s)?o(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?n(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),o=s(134),n=Math.max;e.exports=function(e,t){var s,i,r,d=n(arguments.length,2);for(e=Object(o(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),o=Object.keys;e.exports=function(e){return o(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),o=Array.prototype.forEach,n=Object.create;e.exports=function(e){var t=n(null);return o.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,o,n,i,r,d,l,c=s(263),h=s(499),b=Function.prototype.apply,u=Function.prototype.call,m=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,w={configurable:!0,enumerable:!1,writable:!0};o=function(e,t){var s,o;return h(t),o=this,a.call(this,e,s=function(){n.call(o,e,s),b.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=w.value=m(null),g(this,"__ee__",w),w.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:o,off:n=function(e,t){var s,a,o,n;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(n=0;o=a[n];++n)o!==t&&o.__eeOnceListener__!==t||(2===a.length?s[e]=a[n?0:1]:a.splice(n,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,o,n;if(f.call(this,"__ee__")&&(o=this.__ee__[e]))if("object"==typeof o){for(s=arguments.length,n=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),o={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(o,typeof e)}},873:(e,t,s)=>{var a=s(80),o=/^\s*class[\s{/}]/,n=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!o.test(n.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var o=t[a];if(void 0!==o)return o.exports;var n=t[a]={exports:{}};return e[a](n,n.exports,s),n.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>F});var o=s(68);const n=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let o;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":o=t[a]?e[a]:t[a];break;default:o=t[a]}else o="arrows"===a?t[a]:void 0===n(s,a)?e[a]:t[a];return o},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],n(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add"},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter"},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加"},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить"},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???"}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class b{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class y extends b{constructor(e,t,s,a,o){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=o||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends m{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new u).setClass("tab-selector"),this.menuDiv=(new m).setClass("menu"),this.tabsDiv=(new m).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new m).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new I(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const o=new m;o.setId(e),o.add(s),this.panels.push(o),this.panelsDiv.add(o),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class I extends m{constructor(e,t){super(),this.button=new x("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class S extends b{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends b{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new m).setId("item-box");for(let s=0;s{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),n.add(i);let d,l,c,h,b=(new f).setClass("font-size-px").setTextContent("Fontsize (px):"),u=(new m).setId("btn-fontsize").setClass("box"),g=new x("button").setClass("btn-font-decrease"),p=new x("button").setClass("btn-font-increase"),w=new x("text").setClass("input-font-size"),k=s.fontSize||16;w.dom.value=k,g.dom.textContent="-",g.dom.onclick=()=>{k=Math.max(8,k-1),w.dom.value=k,e.emit("styleschanged",{fontSize:k})},p.dom.textContent="+",p.dom.onclick=()=>{k=Math.min(72,k+1),w.dom.value=k,e.emit("styleschanged",{fontSize:k})},w.dom.onchange=()=>{let t=parseInt(w.dom.value,10);!isNaN(t)&&t>=8&&t<=72?(k=t,e.emit("styleschanged",{fontSize:k})):w.dom.value=k},u.add(b),u.add(g),u.add(w),u.add(p),n.add(u),"toolbar"===s.arrows&&(d=(new m).setId("btn-p").setClass("box"),l=new x("button"),l.setTitle(t.get(o[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),n.add(d),c=(new m).setId("btn-n").setClass("box"),h=new x("button"),h.dom.title=t.get(o[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),n.add(c));const v=(new m).setClass("menu-2");let y,C,I,S,T,D,z;if(s.background&&(y=(new m).setId("btn-bg").setClass("box"),C=new x("button").setClass("btn-change-bg"),C.dom.title=t.get(o[7]),C.dom.value="",C.dom.textContent="",I=new x("color"),I.dom.style.display="none",C.dom.onclick=()=>{I.dom.click()},document.addEventListener("DOMContentLoaded",(()=>{const e=document.getElementById("viewer");e?(I.dom.oninput=t=>{const s=t.target.value;e.style.backgroundColor=s},I.dom.addEventListener("mouseover",(t=>{const s=t.target.value;s&&(e.style.backgroundColor=s)})),I.dom.addEventListener("mouseout",(()=>{e.style.backgroundColor=""}))):console.error("Viewer element not found")})),y.add(C),y.add(I),v.add(y)),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},n=(new m).setId("btn-o").setClass("box");S=new x("file"),S.dom.title=t.get(o[3]),S.dom.accept="application/epub+zip",S.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(o[4]))},S.dom.onclick=e=>{S.dom.blur()},n.add(S),v.add(n)}if(s.bookmarks&&(T=(new m).setId("btn-b").setClass("box"),D=new x("button"),D.setTitle(t.get(o[5])),D.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),D.dom.blur()},T.add(D),v.add(T)),s.fullscreen){const e=(new m).setId("btn-f").setClass("box");z=new x("button"),z.setTitle(t.get(o[6])),z.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(z),v.add(e)}a.add([n,v]),document.body.appendChild(a.dom),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?T.removeClass("bookmarked"):T.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?T.addClass("bookmarked"):T.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(o[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(o[1])),h.setTitle(t.get(o[2]))),s.openbook&&S.setTitle(t.get(o[3])),s.bookmarks&&D.setTitle(t.get(o[5])),s.fullscreen&&z.setTitle(t.get(o[6])),s.background&&C.setTitle(t.get(o[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class _{constructor(e){const t=e.settings,s=(new m).setId("content");let a;"content"===t.arrows&&(a=(new m).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()},a.add(new u("<")),s.add(a));const o=(new m).setId("viewer");let n;s.add(o),e.on("colorchanged",(e=>{o.dom.style.backgroundColor=e})),"content"===t.arrows&&(n=(new m).setId("next").setClass("arrow"),n.dom.onclick=t=>{e.emit("next"),t.preventDefault()},n.add(new u(">")),s.add(n));const i=(new m).setId("loader"),r=(new m).setId("divider"),d=(new m).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{o.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{o.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?n.addClass("disabled"):n.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(n.addClass("active"),setTimeout((()=>{n.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{o.clear()}))}}class O extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/contents"],o=new k(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new D(o).addClass("header")),e.on("navigation",(e=>{t.clear(),t.add(this.generateToc(e)),this.add(t)})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new S(t);return e.forEach((e=>{const t=new w(e.href,e.label),a=new T(s).setId(e.id),o=new u;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([o,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);o.setClass("toggle-collapsed"),o.dom.onclick=()=>(t.expanded?(t.collaps(),o.setClass("toggle-collapsed")):(t.expand(),o.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class B extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],o=new k(s.get(a[0])).setClass("label"),n=new x("button",s.get(a[1]));n.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.bookmarks=new S,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{n.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new w,s=new T,a=(new u).setClass("btn-remove"),o=this.reader.navItemFromCfi(e);let n,i;if(void 0===o){const t=this.reader.book.spine.get(e);n=t.idref,i=t.idref}else n=o.id,i=o.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(n),this.bookmarks.add(s)}}class V extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],o=new k(s.get(a[0])).setClass("label"),n=new x("button",s.get(a[1]));n.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.notes=new S,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{n.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}set(e){const t=new w("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new u).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update()}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);-1!==t&&(this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update())}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class j extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings;let a;const o=new x("search").setId("nav-q");o.dom.placeholder=s.get("sidebar/search/placeholder"),o.dom.onsearch=()=>{const e=o.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new S,t.add(this.items),this.add([new D(o),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new w("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class L extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new k(t.get(s[0])).setClass("label");this.add(new D(a).addClass("header"));const o=new f(t.get(s[1]),"language-ui"),n=new g,i=(new v).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),n.add(o),n.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new y(16,1);l.dom.onchange=t=>{const s=parseInt(t.target.value);s>=8&&s<=72&&e.emit("styleschanged",{fontSize:s})},l.setId("fontsize"),d.add(r),d.add(l),l.dom.disabled=!0;const c=new f(t.get(s[3]),"flow"),h=new g,b=(new v).setOptions({paginated:"Paginated",scrolled:"Scrolled"});b.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},b.setId("flow"),h.add(c),h.add(b);const u=new y(800,1),m=new f(t.get(s[4]),"spread"),p=new g,w=(new v).setOptions({none:"None",auto:"Auto"});w.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),u.dom.disabled="none"===t.target.value},w.setId("spread"),p.add(m),p.add(w);const C=new f(t.get(s[5]),"min-spread-width"),I=new g;u.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},u.setId("min-spread-width"),I.add(C),I.add(u);const S=t.get("sidebar/settings/pagination"),T=new g,z=new x("checkbox",!1,S[1]);z.setId("pagination"),z.dom.onclick=e=>{},T.add(new f(S[0],"pagination")),T.add(z),this.add(new D([n,d,h,p,I])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),b.setValue(e.flow),w.setValue(e.spread.mod),u.setValue(e.spread.min),u.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(w.setValue("none"),w.dom.disabled=!0,u.dom.disabled=!0):w.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),o.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),m.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class A extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a={},o="sidebar/metadata",n=new k(s.get(o)).setClass("label");this.add(new D(n).addClass("header")),a[o]=n,this.items=new S,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const n=new T,i=(new k).setClass("label"),r=(new k).setClass("value");i.setValue(s.get(o+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[o+"/"+e]=i,n.add([i,r]),this.items.add(n)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===o?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class P{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],o=new C("vertical").setId("sidebar"),n=(new m).setId("btn-p").addClass("box"),i=new x("button");i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},n.add(i),o.addMenu(n),o.addTab("btn-t",t.get(a[1]),new O(e)),s.bookmarks&&o.addTab("btn-d",t.get(a[2]),new B(e)),s.annotations&&o.addTab("btn-a",t.get(a[3]),new V(e)),o.addTab("btn-s",t.get(a[4]),new j(e)),o.addTab("btn-c",t.get(a[5]),new L(e)),o.addTab("btn-i",t.get(a[6]),new A(e)),o.select("btn-t"),document.body.appendChild(o.dom),e.on("sidebaropener",(e=>{e?o.setClass("open"):o.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),o.setLabel("btn-t",t.get(a[1])),s.bookmarks&&o.setLabel("btn-d",t.get(a[2])),s.annotations&&o.setLabel("btn-a",t.get(a[3])),o.setLabel("btn-s",t.get(a[4])),o.setLabel("btn-c",t.get(a[5])),o.setLabel("btn-i",t.get(a[6]))}))}}class N{constructor(e){const t=(new m).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],o=new f(s.get(a[0]),"note-input"),n=new x("text","").setId("note-input");n.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new x("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:n.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&n.getValue().length>0)},t.add(new D([o,n,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),n.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{o.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class F{constructor(e,t){const s=s=>{const a=new URL(window.location);let o=e;t&&!t.openbook?(o=e,s&&this.storage.clear()):s&&0===a.search.length&&(o=s),this.cfgInit(o,t),this.strings=new c(this),this.toolbar=new z(this),this.content=new _(this),this.sidebar=new P(this),this.settings.annotations&&(this.notedlg=new N(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("navigation",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"px")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:16},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=1,this.emit("styleschanged",{fontSize:t});break;case"-":t-=1,this.emit("styleschanged",{fontSize:t});break;case"0":t=100,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}o(F.prototype);var M=a.Reader;export{M as Reader}; +var e={263:(e,t,s)=>{var a=s(175),n=s(873),o=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,n,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),n=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,n=!1),c={value:t,configurable:s,enumerable:n,writable:d},l?o(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?n(t)?a(s)?n(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?o(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),n=s(134),o=Math.max;e.exports=function(e,t){var s,i,r,d=o(arguments.length,2);for(e=Object(n(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),n=Object.keys;e.exports=function(e){return n(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),n=Array.prototype.forEach,o=Object.create;e.exports=function(e){var t=o(null);return n.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,n,o,i,r,d,l,c=s(263),h=s(499),b=Function.prototype.apply,u=Function.prototype.call,m=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,w={configurable:!0,enumerable:!1,writable:!0};n=function(e,t){var s,n;return h(t),n=this,a.call(this,e,s=function(){o.call(n,e,s),b.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=w.value=m(null),g(this,"__ee__",w),w.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:n,off:o=function(e,t){var s,a,n,o;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(o=0;n=a[o];++o)n!==t&&n.__eeOnceListener__!==t||(2===a.length?s[e]=a[o?0:1]:a.splice(o,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,n,o;if(f.call(this,"__ee__")&&(n=this.__ee__[e]))if("object"==typeof n){for(s=arguments.length,o=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),n={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(n,typeof e)}},873:(e,t,s)=>{var a=s(80),n=/^\s*class[\s{/}]/,o=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!n.test(o.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var n=t[a];if(void 0!==n)return n.exports;var o=t[a]={exports:{}};return e[a](o,o.exports,s),o.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>F});var n=s(68);const o=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let n;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":n=t[a]?e[a]:t[a];break;default:n=t[a]}else n="arrows"===a?t[a]:void 0===o(s,a)?e[a]:t[a];return n},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],o(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add"},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter"},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加"},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить"},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???"}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class b{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class y extends b{constructor(e,t,s,a,n){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=n||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends m{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new u).setClass("tab-selector"),this.menuDiv=(new m).setClass("menu"),this.tabsDiv=(new m).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new m).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new S(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const n=new m;n.setId(e),n.add(s),this.panels.push(n),this.panelsDiv.add(n),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class S extends m{constructor(e,t){super(),this.button=new x("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class I extends b{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends b{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new m).setId("item-box");for(let s=0;s{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),o.add(i);let d,l,c,h,b=(new f).setClass("font-size-px").setTextContent("Fontsize (px):"),u=(new m).setId("btn-fontsize").setClass("box"),g=new x("button").setClass("btn-font-decrease"),p=new x("button").setClass("btn-font-increase"),w=new x("text").setClass("input-font-size"),k=s.fontSize||16;w.dom.value=k,g.dom.textContent="-",g.dom.onclick=()=>{k=Math.max(8,k-1),w.dom.value=k,e.emit("styleschanged",{fontSize:k})},p.dom.textContent="+",p.dom.onclick=()=>{k=Math.min(72,k+1),w.dom.value=k,e.emit("styleschanged",{fontSize:k})},w.dom.onchange=()=>{let t=parseInt(w.dom.value,10);!isNaN(t)&&t>=8&&t<=72?(k=t,e.emit("styleschanged",{fontSize:k})):w.dom.value=k},u.add(b),u.add(g),u.add(w),u.add(p),o.add(u),"toolbar"===s.arrows&&(d=(new m).setId("btn-p").setClass("box"),l=new x("button"),l.setTitle(t.get(n[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),o.add(d),c=(new m).setId("btn-n").setClass("box"),h=new x("button"),h.dom.title=t.get(n[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),o.add(c));const v=(new m).setClass("menu-2");let y,C,S,I,T,D;if(s.background&&(y=(new m).setId("btn-bg").setClass("box"),C=new x("color").setClass("color-picker"),C.dom.title=t.get(n[7]),C.dom.oninput=t=>{const s=t.target.value;e.emit("colorchanged",s)},y.add(C),v.add(y)),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},o=(new m).setId("btn-o").setClass("box");S=new x("file"),S.dom.title=t.get(n[3]),S.dom.accept="application/epub+zip",S.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(n[4]))},S.dom.onclick=e=>{S.dom.blur()},o.add(S),v.add(o)}if(s.bookmarks&&(I=(new m).setId("btn-b").setClass("box"),T=new x("button"),T.setTitle(t.get(n[5])),T.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),T.dom.blur()},I.add(T),v.add(I)),s.fullscreen){const e=(new m).setId("btn-f").setClass("box");D=new x("button"),D.setTitle(t.get(n[6])),D.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(D),v.add(e)}a.add([o,v]),document.body.appendChild(a.dom),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?I.removeClass("bookmarked"):I.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?I.addClass("bookmarked"):I.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(n[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(n[1])),h.setTitle(t.get(n[2]))),s.openbook&&S.setTitle(t.get(n[3])),s.bookmarks&&T.setTitle(t.get(n[5])),s.fullscreen&&D.setTitle(t.get(n[6])),s.background&&backgroundBtn.setTitle(t.get(n[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class _{constructor(e){const t=e.settings,s=(new m).setId("content");let a;"content"===t.arrows&&(a=(new m).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()},a.add(new u("<")),s.add(a));const n=(new m).setId("viewer");let o;s.add(n),e.on("colorchanged",(e=>{n.dom.style.backgroundColor=e})),"content"===t.arrows&&(o=(new m).setId("next").setClass("arrow"),o.dom.onclick=t=>{e.emit("next"),t.preventDefault()},o.add(new u(">")),s.add(o));const i=(new m).setId("loader"),r=(new m).setId("divider"),d=(new m).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{n.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{n.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?o.addClass("disabled"):o.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(o.addClass("active"),setTimeout((()=>{o.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{n.clear()}))}}class O extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/contents"],n=new k(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new D(n).addClass("header")),e.on("navigation",(e=>{t.clear(),t.add(this.generateToc(e)),this.add(t)})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new I(t);return e.forEach((e=>{const t=new w(e.href,e.label),a=new T(s).setId(e.id),n=new u;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([n,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);n.setClass("toggle-collapsed"),n.dom.onclick=()=>(t.expanded?(t.collaps(),n.setClass("toggle-collapsed")):(t.expand(),n.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class B extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],n=new k(s.get(a[0])).setClass("label"),o=new x("button",s.get(a[1]));o.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new D([n,o]).addClass("header")),this.selector=void 0,this.bookmarks=new I,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{o.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0])),o.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new w,s=new T,a=(new u).setClass("btn-remove"),n=this.reader.navItemFromCfi(e);let o,i;if(void 0===n){const t=this.reader.book.spine.get(e);o=t.idref,i=t.idref}else o=n.id,i=n.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(o),this.bookmarks.add(s)}}class j extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],n=new k(s.get(a[0])).setClass("label"),o=new x("button",s.get(a[1]));o.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new D([n,o]).addClass("header")),this.selector=void 0,this.notes=new I,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{o.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0])),o.setValue(s.get(a[1]))}))}set(e){const t=new w("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new u).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update()}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);-1!==t&&(this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update())}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class V extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings;let a;const n=new x("search").setId("nav-q");n.dom.placeholder=s.get("sidebar/search/placeholder"),n.dom.onsearch=()=>{const e=n.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new I,t.add(this.items),this.add([new D(n),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new w("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class A extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new k(t.get(s[0])).setClass("label");this.add(new D(a).addClass("header"));const n=new f(t.get(s[1]),"language-ui"),o=new g,i=(new v).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),o.add(n),o.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new y(16,1);l.dom.onchange=t=>{const s=parseInt(t.target.value);s>=8&&s<=72&&e.emit("styleschanged",{fontSize:s})},l.setId("fontsize"),d.add(r),d.add(l),l.dom.disabled=!0;const c=new f(t.get(s[3]),"flow"),h=new g,b=(new v).setOptions({paginated:"Paginated",scrolled:"Scrolled"});b.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},b.setId("flow"),h.add(c),h.add(b);const u=new y(800,1),m=new f(t.get(s[4]),"spread"),p=new g,w=(new v).setOptions({none:"None",auto:"Auto"});w.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),u.dom.disabled="none"===t.target.value},w.setId("spread"),p.add(m),p.add(w);const C=new f(t.get(s[5]),"min-spread-width"),S=new g;u.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},u.setId("min-spread-width"),S.add(C),S.add(u);const I=t.get("sidebar/settings/pagination"),T=new g,z=new x("checkbox",!1,I[1]);z.setId("pagination"),z.dom.onclick=e=>{},T.add(new f(I[0],"pagination")),T.add(z),this.add(new D([o,d,h,p,S])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),b.setValue(e.flow),w.setValue(e.spread.mod),u.setValue(e.spread.min),u.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(w.setValue("none"),w.dom.disabled=!0,u.dom.disabled=!0):w.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),n.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),m.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class P extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a={},n="sidebar/metadata",o=new k(s.get(n)).setClass("label");this.add(new D(o).addClass("header")),a[n]=o,this.items=new I,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const o=new T,i=(new k).setClass("label"),r=(new k).setClass("value");i.setValue(s.get(n+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[n+"/"+e]=i,o.add([i,r]),this.items.add(o)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===n?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class L{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],n=new C("vertical").setId("sidebar"),o=(new m).setId("btn-p").addClass("box"),i=new x("button");i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},o.add(i),n.addMenu(o),n.addTab("btn-t",t.get(a[1]),new O(e)),s.bookmarks&&n.addTab("btn-d",t.get(a[2]),new B(e)),s.annotations&&n.addTab("btn-a",t.get(a[3]),new j(e)),n.addTab("btn-s",t.get(a[4]),new V(e)),n.addTab("btn-c",t.get(a[5]),new A(e)),n.addTab("btn-i",t.get(a[6]),new P(e)),n.select("btn-t"),document.body.appendChild(n.dom),e.on("sidebaropener",(e=>{e?n.setClass("open"):n.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),n.setLabel("btn-t",t.get(a[1])),s.bookmarks&&n.setLabel("btn-d",t.get(a[2])),s.annotations&&n.setLabel("btn-a",t.get(a[3])),n.setLabel("btn-s",t.get(a[4])),n.setLabel("btn-c",t.get(a[5])),n.setLabel("btn-i",t.get(a[6]))}))}}class N{constructor(e){const t=(new m).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],n=new f(s.get(a[0]),"note-input"),o=new x("text","").setId("note-input");o.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new x("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:o.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&o.getValue().length>0)},t.add(new D([n,o,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),o.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{n.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class F{constructor(e,t){const s=s=>{const a=new URL(window.location);let n=e;t&&!t.openbook?(n=e,s&&this.storage.clear()):s&&0===a.search.length&&(n=s),this.cfgInit(n,t),this.strings=new c(this),this.toolbar=new z(this),this.content=new _(this),this.sidebar=new L(this),this.settings.annotations&&(this.notedlg=new N(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("navigation",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"px")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:16},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=1,this.emit("styleschanged",{fontSize:t});break;case"-":t-=1,this.emit("styleschanged",{fontSize:t});break;case"0":t=100,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}n(F.prototype);var M=a.Reader;export{M as Reader}; //# sourceMappingURL=epubreader.min.js.map \ No newline at end of file diff --git a/dist/js/epubreader.min.js.map b/dist/js/epubreader.min.js.map index ddddcc9..70b4bba 100644 --- a/dist/js/epubreader.min.js.map +++ b/dist/js/epubreader.min.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.min.js","mappings":"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","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\"\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\"\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\"\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\"\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\"\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\"\n\t\t];\n\n\t\t// Toolbar Menu 1\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\t// Button \"-\", \"+\" and input for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu1.add(fontSizeBox);\n\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t// Toolbar Menu 2\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, backgroundBtn, colorPicker;\n\t\tif (settings.background) {\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\n\t\t\tbackgroundBtn = new UIInput(\"button\").setClass(\"btn-change-bg\");\n\t\t\tbackgroundBtn.dom.title = strings.get(keys[7]);\n\t\t\tbackgroundBtn.dom.value = \"\";\n\t\t\tbackgroundBtn.dom.textContent = \"\";\n\n\t\t\tcolorPicker = new UIInput(\"color\");\n\t\t\tcolorPicker.dom.style.display = \"none\";\n\n\t\t\tbackgroundBtn.dom.onclick = () => {\n\t\t\t\tcolorPicker.dom.click();\n\t\t\t};\n\n\t\t\tdocument.addEventListener(\"DOMContentLoaded\", () => {\n\t\t\t\tconst viewer = document.getElementById(\"viewer\");\n\t\t\t\tif (viewer) {\n\t\t\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\t\t\tconst selectedColor = e.target.value;\n\t\t\t\t\t\tviewer.style.backgroundColor = selectedColor;\n\t\t\t\t\t};\n\n\t\t\t\t\tcolorPicker.dom.addEventListener(\"mouseover\", (e) => {\n\t\t\t\t\t\tconst selectedColor = e.target.value;\n\t\t\t\t\t\tif (selectedColor) {\n\t\t\t\t\t\t\tviewer.style.backgroundColor = selectedColor;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\n\t\t\t\t\tcolorPicker.dom.addEventListener(\"mouseout\", () => {\n\t\t\t\t\t\tviewer.style.backgroundColor = \"\";\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tconsole.error(\"Viewer element not found\");\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tbackgroundBox.add(backgroundBtn);\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tprev.add(new UISpan(\"<\"));\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tnext.add(new UISpan(\">\"));\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\t\t\t\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), new AnnotationsPanel(reader));\n\t\t}\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 100;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","Toolbar","strings","container","menu1","openerBox","openerBtn","blur","prevBox","prevBtn","nextBox","nextBtn","fontLabel","fontSizeBox","decreaseFontBtn","increaseFontBtn","fontSizeInput","fontSize","newSize","parseInt","isNaN","arrows","menu2","backgroundBox","backgroundBtn","colorPicker","openbookBtn","bookmarkBox","bookmarkBtn","fullscreenBtn","background","click","addEventListener","viewer","getElementById","oninput","selectedColor","backgroundColor","openbook","onload","storage","unload","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","bookmarks","cfi","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","body","start","atStart","atEnd","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","next","color","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","toc","generateToc","list","chapter","link","item","ibtn","sectionId","rendition","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","update","disabled","renderer","setBookmark","appendBookmark","removeBookmark","_cfi","index","btnr","navItem","navItemFromCfi","idref","spineItem","book","spine","AnnotationsPanel","clearNotes","notes","annotations","note","removeNote","SearchPanel","searchQuery","search","placeholder","onsearch","doSearch","then","results","Promise","all","spineItems","map","load","bind","find","finally","resolve","concat","excerpt","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","innerHTML","Sidebar","controls","NoteDlg","textBox","addBtn","date","range","contents","Reader","bookPath","preinit","path","cfgInit","toolbar","content","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","loaded","metadata","navigation","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.min.js","mappings":"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","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\"\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\"\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\"\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\"\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\"\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\"\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\t// Button \"-\", \"+\" and input for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu1.add(fontSizeBox);\n\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tprev.add(new UISpan(\"<\"));\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tnext.add(new UISpan(\">\"));\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), new AnnotationsPanel(reader));\n\t\t}\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 100;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","Toolbar","strings","container","menu1","openerBox","openerBtn","blur","prevBox","prevBtn","nextBox","nextBtn","fontLabel","fontSizeBox","decreaseFontBtn","increaseFontBtn","fontSizeInput","fontSize","newSize","parseInt","isNaN","arrows","menu2","backgroundBox","colorPicker","openbookBtn","bookmarkBox","bookmarkBtn","fullscreenBtn","background","oninput","selectedColor","openbook","onload","storage","unload","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","bookmarks","cfi","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","body","start","atStart","atEnd","backgroundBtn","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","viewer","next","color","backgroundColor","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","toc","generateToc","list","chapter","link","item","ibtn","sectionId","rendition","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","update","disabled","renderer","setBookmark","appendBookmark","removeBookmark","_cfi","index","btnr","navItem","navItemFromCfi","idref","spineItem","book","spine","AnnotationsPanel","clearNotes","notes","annotations","note","removeNote","SearchPanel","searchQuery","search","placeholder","onsearch","doSearch","then","results","Promise","all","spineItems","map","load","bind","find","finally","resolve","concat","excerpt","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","innerHTML","Sidebar","controls","NoteDlg","textBox","addBtn","date","range","contents","Reader","bookPath","preinit","path","cfgInit","toolbar","content","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","loaded","metadata","navigation","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file diff --git a/src/content.js b/src/content.js index 0fe9a94..38070a6 100644 --- a/src/content.js +++ b/src/content.js @@ -23,6 +23,7 @@ export class Content { const viewer = new UIDiv().setId("viewer"); container.add(viewer); + // Handle the 'colorchanged' event to change background of 'viewer' reader.on("colorchanged", (color) => { viewer.dom.style.backgroundColor = color; }); @@ -73,7 +74,7 @@ export class Content { }); reader.on("flowchanged", (value) => { - + viewer.setClass(value); }); diff --git a/src/reader.js b/src/reader.js index f6231e3..d68b457 100644 --- a/src/reader.js +++ b/src/reader.js @@ -227,11 +227,11 @@ export class Reader { min: 800 }, styles: { - fontSize: 16 + fontSize: 16 // Default fontsize by 'px' }, pagination: undefined, // not implemented fullscreen: document.fullscreenEnabled, - background: [], + background: [], // Setting for change background "viewer" }; extend(settings || {}, this.settings); diff --git a/src/toolbar.js b/src/toolbar.js index c931f8b..e014118 100644 --- a/src/toolbar.js +++ b/src/toolbar.js @@ -16,10 +16,10 @@ export class Toolbar { "toolbar/openbook/error", "toolbar/bookmark", "toolbar/fullscreen", - "toolbar/background" + "toolbar/background", ]; - // Toolbar Menu 1 + /*------------------------ Toolbar Menu 1 --------------------------*/ const menu1 = new UIDiv().setClass("menu-1"); const openerBox = new UIDiv().setId("btn-m").setClass("box"); const openerBtn = new UIInput("button"); @@ -105,49 +105,24 @@ export class Toolbar { menu1.add(nextBox); } - // Toolbar Menu 2 + /*------------------------ Toolbar Menu 2 --------------------------*/ const menu2 = new UIDiv().setClass("menu-2"); // Button change background - let backgroundBox, backgroundBtn, colorPicker; + let backgroundBox, colorPicker; if (settings.background) { + // Init elements: background box div, input color picker backgroundBox = new UIDiv().setId("btn-bg").setClass("box"); + colorPicker = new UIInput("color").setClass("color-picker"); + colorPicker.dom.title = strings.get(keys[7]); - backgroundBtn = new UIInput("button").setClass("btn-change-bg"); - backgroundBtn.dom.title = strings.get(keys[7]); - backgroundBtn.dom.value = ""; - backgroundBtn.dom.textContent = ""; + // Handle event get color from color table of input color + colorPicker.dom.oninput = (e) => { + const selectedColor = e.target.value; - colorPicker = new UIInput("color"); - colorPicker.dom.style.display = "none"; - - backgroundBtn.dom.onclick = () => { - colorPicker.dom.click(); - }; - - document.addEventListener("DOMContentLoaded", () => { - const viewer = document.getElementById("viewer"); - if (viewer) { - colorPicker.dom.oninput = (e) => { - const selectedColor = e.target.value; - viewer.style.backgroundColor = selectedColor; - }; - - colorPicker.dom.addEventListener("mouseover", (e) => { - const selectedColor = e.target.value; - if (selectedColor) { - viewer.style.backgroundColor = selectedColor; - } - }); - - colorPicker.dom.addEventListener("mouseout", () => { - viewer.style.backgroundColor = ""; - }); - } else { - console.error("Viewer element not found"); - } - }); + // Emit 'colorchanged' event with selected color + reader.emit("colorchanged", selectedColor); + } - backgroundBox.add(backgroundBtn); backgroundBox.add(colorPicker); menu2.add(backgroundBox); } @@ -302,6 +277,7 @@ export class Toolbar { if (settings.background) { backgroundBtn.setTitle(strings.get(keys[7])); } + }); } From 3fb0920965b4b4e22d9175122443ca1b142a840d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?T=E1=BA=A1=20Cao=20T=E1=BA=A7ng?= Date: Tue, 18 Feb 2025 14:32:14 +0000 Subject: [PATCH 11/21] Initial commit --- README.md | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..17bcb7b --- /dev/null +++ b/README.md @@ -0,0 +1,93 @@ +# EpubReader + + + +## Getting started + +To make it easy for you to get started with GitLab, here's a list of recommended next steps. + +Already a pro? Just edit this README.md and make it your own. Want to make it easy? [Use the template at the bottom](#editing-this-readme)! + +## Add your files + +- [ ] [Create](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#create-a-file) or [upload](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#upload-a-file) files +- [ ] [Add files using the command line](https://docs.gitlab.com/ee/gitlab-basics/add-file.html#add-a-file-using-the-command-line) or push an existing Git repository with the following command: + +``` +cd existing_repo +git remote add origin https://gitlab.com/tangtc/epubreader.git +git branch -M main +git push -uf origin main +``` + +## Integrate with your tools + +- [ ] [Set up project integrations](https://gitlab.com/tangtc/epubreader/-/settings/integrations) + +## Collaborate with your team + +- [ ] [Invite team members and collaborators](https://docs.gitlab.com/ee/user/project/members/) +- [ ] [Create a new merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html) +- [ ] [Automatically close issues from merge requests](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically) +- [ ] [Enable merge request approvals](https://docs.gitlab.com/ee/user/project/merge_requests/approvals/) +- [ ] [Set auto-merge](https://docs.gitlab.com/ee/user/project/merge_requests/merge_when_pipeline_succeeds.html) + +## Test and Deploy + +Use the built-in continuous integration in GitLab. + +- [ ] [Get started with GitLab CI/CD](https://docs.gitlab.com/ee/ci/quick_start/) +- [ ] [Analyze your code for known vulnerabilities with Static Application Security Testing (SAST)](https://docs.gitlab.com/ee/user/application_security/sast/) +- [ ] [Deploy to Kubernetes, Amazon EC2, or Amazon ECS using Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/requirements.html) +- [ ] [Use pull-based deployments for improved Kubernetes management](https://docs.gitlab.com/ee/user/clusters/agent/) +- [ ] [Set up protected environments](https://docs.gitlab.com/ee/ci/environments/protected_environments.html) + +*** + +# Editing this README + +When you're ready to make this README your own, just edit this file and use the handy template below (or feel free to structure it however you want - this is just a starting point!). Thanks to [makeareadme.com](https://www.makeareadme.com/) for this template. + +## Suggestions for a good README + +Every project is different, so consider which of these sections apply to yours. The sections used in the template are suggestions for most open source projects. Also keep in mind that while a README can be too long and detailed, too long is better than too short. If you think your README is too long, consider utilizing another form of documentation rather than cutting out information. + +## Name +Choose a self-explaining name for your project. + +## Description +Let people know what your project can do specifically. Provide context and add a link to any reference visitors might be unfamiliar with. A list of Features or a Background subsection can also be added here. If there are alternatives to your project, this is a good place to list differentiating factors. + +## Badges +On some READMEs, you may see small images that convey metadata, such as whether or not all the tests are passing for the project. You can use Shields to add some to your README. Many services also have instructions for adding a badge. + +## Visuals +Depending on what you are making, it can be a good idea to include screenshots or even a video (you'll frequently see GIFs rather than actual videos). Tools like ttygif can help, but check out Asciinema for a more sophisticated method. + +## Installation +Within a particular ecosystem, there may be a common way of installing things, such as using Yarn, NuGet, or Homebrew. However, consider the possibility that whoever is reading your README is a novice and would like more guidance. Listing specific steps helps remove ambiguity and gets people to using your project as quickly as possible. If it only runs in a specific context like a particular programming language version or operating system or has dependencies that have to be installed manually, also add a Requirements subsection. + +## Usage +Use examples liberally, and show the expected output if you can. It's helpful to have inline the smallest example of usage that you can demonstrate, while providing links to more sophisticated examples if they are too long to reasonably include in the README. + +## Support +Tell people where they can go to for help. It can be any combination of an issue tracker, a chat room, an email address, etc. + +## Roadmap +If you have ideas for releases in the future, it is a good idea to list them in the README. + +## Contributing +State if you are open to contributions and what your requirements are for accepting them. + +For people who want to make changes to your project, it's helpful to have some documentation on how to get started. Perhaps there is a script that they should run or some environment variables that they need to set. Make these steps explicit. These instructions could also be useful to your future self. + +You can also document commands to lint the code or run tests. These steps help to ensure high code quality and reduce the likelihood that the changes inadvertently break something. Having instructions for running tests is especially helpful if it requires external setup, such as starting a Selenium server for testing in a browser. + +## Authors and acknowledgment +Show your appreciation to those who have contributed to the project. + +## License +For open source projects, say how it is licensed. + +## Project status +If you have run out of energy or time for your project, put a note at the top of the README saying that development has slowed down or stopped completely. Someone may choose to fork your project or volunteer to step in as a maintainer or owner, allowing your project to keep going. You can also make an explicit request for maintainers. From 3cea05a5b79f2ccfedb1d310bec4b16323b2c109 Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Tue, 18 Feb 2025 22:35:03 +0700 Subject: [PATCH 12/21] :tada: commit on GitLab --- dist/css/bookmark.css | 86 +++ dist/css/common.css | 51 +- dist/css/main.css | 112 +++- dist/css/note.css | 86 +++ dist/css/toc.css | 77 +++ dist/css/toolbar.css | 72 ++- dist/img/apps-rectangle.svg | 7 + dist/img/bookmark-list.svg | 4 + dist/img/bookmark.svg | 37 +- dist/img/bookmarked.svg | 36 +- dist/img/bookmarks03.svg | 6 + dist/img/close.svg | 4 + dist/img/{add-icon.svg => font-size-add.svg} | 0 .../{minus-icon.svg => font-size-minus.svg} | 0 dist/img/highlight-note.svg | 6 + dist/img/list-view-circle.svg | 9 + dist/img/search-02.svg | 4 + dist/img/text-down.svg | 6 + dist/img/text-up.svg | 6 + dist/index.html | 80 ++- dist/js/epubreader.js | 571 ++++++++++++++++-- dist/js/epubreader.js.map | 2 +- dist/js/epubreader.min.js | 2 +- dist/js/epubreader.min.js.map | 2 +- dist/js/eventProcess.js | 30 + src/content.js | 8 +- src/reader.js | 4 +- src/sidebar.js | 5 +- src/sidebar/annotations.js | 33 + src/status.js | 94 +++ src/strings.js | 25 +- src/toolbar.js | 410 +++++++++++-- 32 files changed, 1622 insertions(+), 253 deletions(-) create mode 100644 dist/css/bookmark.css create mode 100644 dist/css/note.css create mode 100644 dist/css/toc.css create mode 100644 dist/img/apps-rectangle.svg create mode 100644 dist/img/bookmark-list.svg create mode 100644 dist/img/bookmarks03.svg create mode 100644 dist/img/close.svg rename dist/img/{add-icon.svg => font-size-add.svg} (100%) rename dist/img/{minus-icon.svg => font-size-minus.svg} (100%) create mode 100644 dist/img/highlight-note.svg create mode 100644 dist/img/list-view-circle.svg create mode 100644 dist/img/search-02.svg create mode 100644 dist/img/text-down.svg create mode 100644 dist/img/text-up.svg create mode 100644 dist/js/eventProcess.js create mode 100644 src/status.js diff --git a/dist/css/bookmark.css b/dist/css/bookmark.css new file mode 100644 index 0000000..4ff8372 --- /dev/null +++ b/dist/css/bookmark.css @@ -0,0 +1,86 @@ +#toolbar-bookmarks-list { + margin: 0; + list-style: none; +} + +#toolbar-bookmarks-list { + position: absolute; + top: 46px; + left: 10px; + background: #fff; + border: 1px solid #ebebeb; + border-radius: 10px; + box-shadow: 0px 4px 12px 0px #0000000D; + box-shadow: 3px -3px 8.1px 0px #0000000D; + padding: 20px 20px 0 20px; + max-width: 300px; + width: 300px; + overflow-y: auto; + transform: translateY(-10px); +} + +#toolbar-bookmarks-list { + max-height: 0; + opacity: 0; +} + +#toolbar-bookmarks-list { + transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out, transform 0.3s ease-in-out; +} + +#toolbar-bookmarks-list.active { + max-height: 500px; + opacity: 1; + transform: translateY(0); +} + +#toolbar-bookmarks-list::-webkit-scrollbar { + width: 5px; + display: none; +} + +#toolbar-bookmarks-list::-webkit-scrollbar-thumb { + border-radius: 5px; + background-color: #ccc; +} + +#toolbar-bookmarks-list::-webkit-scrollbar-thumb:hover { + background-color: #999; +} + +#toolbar-bookmarks-list h3 { + font-family: 'Be Vietnam Pro', sans-serif; + font-size: 18px; + margin-left: 4px; + border-bottom: 1px solid #E6E6E6; + padding-bottom: 16px; + margin-top: 0; + margin-bottom: 16px; +} + +#toolbar-bookmarks-list li { + line-height: 25px; + display: inline-grid; + grid-template-columns: 1fr auto; + align-items: center; + justify-content: space-between; + width: 100%; +} + +#toolbar-bookmarks-list li a { + padding: 5px; + text-decoration: none; + color: #1A1A1A; + font-weight: 700; + font-family: Be Vietnam Pro, san-serif; + font-size: 14px; +} + +#toolbar-bookmarks-list li a.active, +#toolbar-bookmarks-list li a:hover { + color: #966412; +} + +#toolbar-bookmarks-list li span { + cursor: pointer; +} \ No newline at end of file diff --git a/dist/css/common.css b/dist/css/common.css index 0b29844..fb75670 100644 --- a/dist/css/common.css +++ b/dist/css/common.css @@ -30,6 +30,7 @@ background-position: center; } +[id^="btn-"].box input.active, [id^="btn-"].box input:hover { opacity: 0.7; background-color: #F2F3F4; @@ -63,14 +64,17 @@ .font-size-px { font-weight: 600; color: #6e6d6d; + display: none; } .btn-font-decrease { - background-image: url("../img/minus-icon.svg"); + background-image: url("../img/text-down.svg"); + opacity: 0.8 !important; } .btn-font-increase { - background-image: url("../img/add-icon.svg"); + background-image: url("../img/text-up.svg"); + opacity: 0.8 !important; } #btn-fontsize .input-font-size { @@ -85,6 +89,11 @@ border-radius: 10px; } +/* Hide the input that show font-size text */ +#btn-fontsize .input-font-size { + display: none; +} + #btn-p.box input { background-image: url("../img/prev.svg"); } @@ -99,6 +108,7 @@ #btn-b.box input { background-image: url("../img/bookmark.svg"); + opacity: 0.8; } #btn-b.box.bookmarked input { @@ -106,11 +116,29 @@ } #btn-d.box input { - background-image: url("../img/bookmarks.svg"); + background-image: url("../img/bookmarks03.svg"); + opacity: 0.8; } -/* Add style for button change background color */ -#btn-bg {} +#btn-close.box input { + background-image: url("../img/close.svg"); + opacity: 0.8; +} + +#btn-close::before { + content: ""; + position: absolute; + border: 1px solid white; + height: 35px; + border-radius: 2px; + /* transform: translate(0px, 0px); */ +} + +/*----------------- Add style for button change background color ----------------*/ +/* Hide the background-changing button */ +#btn-bg { + display: none; +} #btn-bg .color-picker { outline: none; @@ -128,15 +156,18 @@ } #btn-t.box input { - background-image: url("../img/toc.svg"); + background-image: url("../img/list-view-circle.svg"); + opacity: 0.8; } #btn-a.box input { - background-image: url("../img/annotations.svg"); + background-image: url("../img/highlight-note.svg"); + opacity: 0.8; } #btn-s.box input { - background-image: url("../img/search.svg"); + background-image: url("../img/search-02.svg"); + opacity: 0.8; } #btn-c.box input { @@ -147,6 +178,10 @@ background-image: url("../img/info.svg"); } +#btn-ar.box input { + background-image: url("../img/apps-rectangle.svg"); +} + /** * iPhone 5 : 320 x 568 */ diff --git a/dist/css/main.css b/dist/css/main.css index 7cffaad..5e2b4fe 100644 --- a/dist/css/main.css +++ b/dist/css/main.css @@ -2,6 +2,7 @@ @import url("toolbar.css"); @import url("sidebar.css"); @import url("notedlg.css"); +@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap'); @font-face { font-family: 'fontello'; @@ -33,9 +34,9 @@ body { } #viewer { - color: inherit; + color: inherit; margin: 0 auto; - display: flex; + display: flex; z-index: 2; overflow: hidden; align-items: center; @@ -43,19 +44,19 @@ body { } #viewer.paginated { - width: calc(100% - 116px); - height: calc(100% - 116px); + width: calc(100% - 116px); + height: calc(100% - 116px); } #viewer.scrolled { - top: 58px; - width: calc(100% - 116px); - height: calc(100% - 58px); - position: sticky; + top: 58px; + width: calc(100% - 116px); + height: calc(100% - 58px); + position: sticky; } #viewer .epub-view { - width: auto !important; + width: auto !important; } #viewer iframe { @@ -64,10 +65,27 @@ body { #prev { text-align: start; + transform: translateX(20px); } #next { text-align: end; + transform: translateX(-20px); +} + +#prev, +#next { + box-shadow: 0px 4px 14px 0px #00000026; + border-radius: 50%; + text-align: center; + background: #FFFFFFE5; + line-height: 52px; +} + +#prev span, +#next span { + color: #000; + font-size: 26px; } .arrow { @@ -99,8 +117,8 @@ body { color: #777; } -.arrow:active > span, -.arrow.active > span { +.arrow:active>span, +.arrow.active>span { color: #000; } @@ -138,15 +156,47 @@ body { background-position: center; } + +/* --------------------------------- Status Bar Style ------------------------------------ */ +#status-bar { + height: 58px; + vertical-align: middle; + display: grid; + grid-template-columns: repeat(2, 1fr); + align-items: center; + padding: 0 20px; + background: #f1f1f1; + border-top: 2px solid #dedede; +} + +#status-bar { + position: fixed; + z-index: 10; + bottom: 0; + left: 0; + right: 0; +} + +.status-title { + font-family: Be Vietnam Pro, sans-serif; + font-weight: 600; +} + +.status-action { + justify-self: end; + display: grid; + grid-template-columns: repeat(2, 1fr); +} + + /** * iPhone 5 : 320 x 568 */ -@media -only screen and (max-width: 320px) and (orientation: portrait), +@media only screen and (max-width: 320px) and (orientation: portrait), only screen and (max-width: 568px) and (orientation: landscape) { - #viewer.scrolled { - height: calc(100% - 52px); - } + #viewer.scrolled { + height: calc(100% - 52px); + } .arrow span { font-size: 32px; @@ -163,16 +213,15 @@ only screen and (max-width: 568px) and (orientation: landscape) { * iPhone 12/14 : 390 x 844 * iPhone 14/15 Pro Max : 430 x 932 */ -@media -only screen and (min-width: 320px) and (max-width: 430px) and (orientation: portrait), +@media only screen and (min-width: 320px) and (max-width: 430px) and (orientation: portrait), only screen and (min-width: 568px) and (max-width: 932px) and (orientation: landscape) { - #viewer.paginated { - width: calc(100% - 32px); - } + #viewer.paginated { + width: calc(100% - 32px); + } - #viewer.scrolled { - width: 100%; - } + #viewer.scrolled { + width: 100%; + } .arrow span { font-size: 40px; @@ -187,16 +236,15 @@ only screen and (min-width: 568px) and (max-width: 932px) and (orientation: land * iPad Pro 11 : 834 x 1194 * iPad Pro 12.9 : 1024 x 1366 */ -@media -only screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait), +@media only screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait), only screen and (min-width: 1024px) and (max-width: 1366px) and (orientation: landscape) { - #viewer.paginated { - width: calc(100% - 116px); - } + #viewer.paginated { + width: calc(100% - 116px); + } - #viewer.scrolled { - width: 100%; - } + #viewer.scrolled { + width: 100%; + } .arrow span { font-size: 50px; diff --git a/dist/css/note.css b/dist/css/note.css new file mode 100644 index 0000000..811d09d --- /dev/null +++ b/dist/css/note.css @@ -0,0 +1,86 @@ +#toolbar-annotations-list { + margin: 0; + list-style: none; +} + +#toolbar-annotations-list { + position: absolute; + top: 46px; + left: 10px; + background: #fff; + border: 1px solid #ebebeb; + border-radius: 10px; + box-shadow: 0px 4px 12px 0px #0000000D; + box-shadow: 3px -3px 8.1px 0px #0000000D; + padding: 20px 20px 0 20px; + max-width: 300px; + width: 300px; + overflow-y: auto; + transform: translateY(-10px); +} + +#toolbar-annotations-list { + max-height: 0; + opacity: 0; +} + +#toolbar-annotations-list { + transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out, transform 0.3s ease-in-out; +} + +#toolbar-annotations-list.active { + max-height: 500px; + opacity: 1; + transform: translateY(0); +} + +#toolbar-annotations-list::-webkit-scrollbar { + width: 5px; + display: none; +} + +#toolbar-annotations-list::-webkit-scrollbar-thumb { + border-radius: 5px; + background-color: #ccc; +} + +#toolbar-annotations-list::-webkit-scrollbar-thumb:hover { + background-color: #999; +} + +#toolbar-annotations-list h3 { + font-family: 'Be Vietnam Pro', sans-serif; + font-size: 18px; + margin-left: 4px; + border-bottom: 1px solid #E6E6E6; + padding-bottom: 16px; + margin-top: 0; + margin-bottom: 16px; +} + +#toolbar-annotations-list li { + line-height: 25px; + display: inline-grid; + grid-template-columns: 1fr auto; + align-items: center; + justify-content: space-between; + width: 100%; +} + +#toolbar-annotations-list li a { + padding: 5px; + text-decoration: none; + color: #1A1A1A; + font-weight: 700; + font-family: Be Vietnam Pro, san-serif; + font-size: 14px; +} + +#toolbar-annotations-list li a.active, +#toolbar-annotations-list li a:hover { + color: #966412; +} + +#toolbar-annotations-list li span { + cursor: pointer; +} \ No newline at end of file diff --git a/dist/css/toc.css b/dist/css/toc.css new file mode 100644 index 0000000..69a1a4d --- /dev/null +++ b/dist/css/toc.css @@ -0,0 +1,77 @@ +#toolbar-toc-list { + margin: 0; + list-style: none; +} + +#toolbar-toc-list { + position: absolute; + top: 46px; + left: 10px; + background: #fff; + border: 1px solid #ebebeb; + border-radius: 10px; + box-shadow: 0px 4px 12px 0px #0000000D; + box-shadow: 3px -3px 8.1px 0px #0000000D; + padding: 20px 20px 0 20px; + max-width: 300px; + overflow-y: auto; + transform: translateY(-10px); +} + +#toolbar-toc-list { + max-height: 0; + opacity: 0; +} + +#toolbar-toc-list { + transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out, transform 0.3s ease-in-out; +} + +#toolbar-toc-list.active { + max-height: 500px; + opacity: 1; + transform: translateY(0); +} + +#toolbar-toc-list::-webkit-scrollbar { + width: 5px; + display: none; +} + +#toolbar-toc-list::-webkit-scrollbar-thumb { + border-radius: 5px; + background-color: #ccc; +} + +#toolbar-toc-list::-webkit-scrollbar-thumb:hover { + background-color: #999; +} + +#toolbar-toc-list h3 { + font-family: 'Be Vietnam Pro', sans-serif; + font-size: 18px; + margin-left: 4px; + border-bottom: 1px solid #E6E6E6; + padding-bottom: 16px; + margin-top: 0; + margin-bottom: 16px; +} + +#toolbar-toc-list li { + line-height: 25px; +} + +#toolbar-toc-list li a { + display: block; + padding: 5px; + text-decoration: none; + color: #1A1A1A; + font-weight: 700; + font-family: Be Vietnam Pro, san-serif; + font-size: 14px; +} + +#toolbar-toc-list li a.active, +#toolbar-toc-list li a:hover { + color: #966412; +} \ No newline at end of file diff --git a/dist/css/toolbar.css b/dist/css/toolbar.css index e4a6502..0134920 100644 --- a/dist/css/toolbar.css +++ b/dist/css/toolbar.css @@ -7,21 +7,27 @@ position: relative; } +/* Add linear-gradient background for toolbar */ +#toolbar { + background: linear-gradient(277deg, #FFC01F 0%, #FFF38C 135.52%); + grid-template-columns: repeat(3, 1fr); +} + #toolbar .menu-1 { display: flex; - grid-column: 1; + /* grid-column: 1; */ justify-content: left; } #toolbar .menu-2 { display: flex; - grid-column: 2; + /* grid-column: 2; */ justify-content: right; } #toolbar .box { width: 58px; - height: 36px; + /* height: 36px; */ } #toolbar #btn-p.box, @@ -29,11 +35,67 @@ display: none; } +.menu-1 #btn-logo { + padding: 0 20px; +} + +.menu-1 #btn-logo::after { + content: ""; + position: absolute; + border: 1px solid white; + height: 35px; + border-radius: 2px; + transform: translate(20px, 10px); +} + +.menu-1 #btn-logo #logo-link { + text-decoration: none; + color: #fff; + font-family: Be Vietnam Pro, sans-serif; + padding: 10px 20px; + background: black; + line-height: 58px; +} + +/* Hide the menu icon in menu-1 on toolbar */ +.menu-1 #btn-m { + /* display: none; */ +} + +/* Hide the fullscreen button in menu-2 on toolbar */ +.menu-2 #btn-f { + display: none; +} + +/* Hide the import epub file button in menu-2 on toolbar */ +.menu-2 #btn-o { + display: none; +} + + +/* Style for center Current Page of Total Page */ +.menu-center { + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; +} + +.toolbar-center-label { + font-weight: 600; +} + +.page-map { + color: #444241; + font-size: 12px; + font-weight: 500; + font-family: Be Vietnam Pro, sans-serif; +} + /** * iPhone 5 : 320 x 568 */ -@media -only screen and (width: 320px) and (orientation: portrait), +@media only screen and (width: 320px) and (orientation: portrait), only screen and (height: 320px) and (orientation: landscape) { #toolbar { height: 52px; diff --git a/dist/img/apps-rectangle.svg b/dist/img/apps-rectangle.svg new file mode 100644 index 0000000..d7b5aa5 --- /dev/null +++ b/dist/img/apps-rectangle.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/dist/img/bookmark-list.svg b/dist/img/bookmark-list.svg new file mode 100644 index 0000000..880c79e --- /dev/null +++ b/dist/img/bookmark-list.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dist/img/bookmark.svg b/dist/img/bookmark.svg index 95918a9..5a66fa7 100644 --- a/dist/img/bookmark.svg +++ b/dist/img/bookmark.svg @@ -1,34 +1,5 @@ - - - - - - - image/svg+xml - - - - - - + + + + diff --git a/dist/img/bookmarked.svg b/dist/img/bookmarked.svg index e0d1bdb..a9d6459 100644 --- a/dist/img/bookmarked.svg +++ b/dist/img/bookmarked.svg @@ -1,34 +1,4 @@ - - - - - - - image/svg+xml - - - - - - + + + diff --git a/dist/img/bookmarks03.svg b/dist/img/bookmarks03.svg new file mode 100644 index 0000000..1270a24 --- /dev/null +++ b/dist/img/bookmarks03.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/dist/img/close.svg b/dist/img/close.svg new file mode 100644 index 0000000..beb4df8 --- /dev/null +++ b/dist/img/close.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dist/img/add-icon.svg b/dist/img/font-size-add.svg similarity index 100% rename from dist/img/add-icon.svg rename to dist/img/font-size-add.svg diff --git a/dist/img/minus-icon.svg b/dist/img/font-size-minus.svg similarity index 100% rename from dist/img/minus-icon.svg rename to dist/img/font-size-minus.svg diff --git a/dist/img/highlight-note.svg b/dist/img/highlight-note.svg new file mode 100644 index 0000000..51857ce --- /dev/null +++ b/dist/img/highlight-note.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/dist/img/list-view-circle.svg b/dist/img/list-view-circle.svg new file mode 100644 index 0000000..da500e8 --- /dev/null +++ b/dist/img/list-view-circle.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/dist/img/search-02.svg b/dist/img/search-02.svg new file mode 100644 index 0000000..fe2e865 --- /dev/null +++ b/dist/img/search-02.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dist/img/text-down.svg b/dist/img/text-down.svg new file mode 100644 index 0000000..2ae0096 --- /dev/null +++ b/dist/img/text-down.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/dist/img/text-up.svg b/dist/img/text-up.svg new file mode 100644 index 0000000..c911366 --- /dev/null +++ b/dist/img/text-up.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/dist/index.html b/dist/index.html index 062b2f7..d1deb5c 100644 --- a/dist/index.html +++ b/dist/index.html @@ -1,34 +1,58 @@ + + + + + + + + + + - - + + + + + + + Chế độ đọc sách - - - - - - + + + + - - + + + + - - - - - - - - - - - - - \ No newline at end of file + + diff --git a/dist/js/epubreader.js b/dist/js/epubreader.js index f887ad7..78f6b5d 100644 --- a/dist/js/epubreader.js +++ b/dist/js/epubreader.js @@ -798,7 +798,10 @@ class Strings { "sidebar/metadata/direction": "Direction", // page-progression-direction "notedlg/label": "Note", - "notedlg/add": "Add" + "notedlg/add": "Add", + + "status/fullscreen": "Fullscreen", + "status/": "", }, fr: { "toolbar/sidebar": "Barre latérale", @@ -847,7 +850,10 @@ class Strings { "sidebar/metadata/direction": "???", "notedlg/label": "???", - "notedlg/add": "Ajouter" + "notedlg/add": "Ajouter", + + "status/fullscreen": "", + "status/": "", }, ja: { "toolbar/sidebar": "サイドバー", @@ -896,7 +902,10 @@ class Strings { "sidebar/metadata/direction": "???", "notedlg/label": "???", - "notedlg/add": "追加" + "notedlg/add": "追加", + + "status/fullscreen": "", + "status/": "", }, ru: { "toolbar/sidebar": "Боковая панель", @@ -945,7 +954,10 @@ class Strings { "sidebar/metadata/direction": "Направление", "notedlg/label": "Заметка", - "notedlg/add": "Добавить" + "notedlg/add": "Добавить", + + "status/fullscreen": "", + "status/": "", }, vi: { "toolbar/sidebar": "Thanh bên", @@ -994,7 +1006,10 @@ class Strings { "sidebar/metadata/direction": "???", // page-progression-direction "notedlg/label": "???", - "notedlg/add": "???" + "notedlg/add": "???", + + "status/fullscreen": "Toàn màn hình", + "status/": "", } }; @@ -1809,7 +1824,9 @@ class Toolbar { "toolbar/openbook/error", "toolbar/bookmark", "toolbar/fullscreen", - "toolbar/background" + "toolbar/background", + "toolbar/search", + "toolbar/close", ]; /*------------------------ Toolbar Menu 1 --------------------------*/ @@ -1826,50 +1843,6 @@ class Toolbar { openerBox.add(openerBtn); menu1.add(openerBox); - // Button "-", "+" and input for font-size - let fontLabel = new UILabel().setClass("font-size-px").setTextContent("Fontsize (px):") - let fontSizeBox = new UIDiv().setId("btn-fontsize").setClass("box"); - let decreaseFontBtn = new UIInput("button").setClass("btn-font-decrease"); - let increaseFontBtn = new UIInput("button").setClass("btn-font-increase"); - let fontSizeInput = new UIInput("text").setClass("input-font-size"); - - let fontSize = settings.fontSize || 16; - fontSizeInput.dom.value = fontSize; - - decreaseFontBtn.dom.textContent = "-"; - decreaseFontBtn.dom.onclick = () => { - fontSize = Math.max(8, fontSize - 1); - fontSizeInput.dom.value = fontSize; - - reader.emit("styleschanged", { fontSize: fontSize }); - }; - - increaseFontBtn.dom.textContent = "+"; - increaseFontBtn.dom.onclick = () => { - fontSize = Math.min(72, fontSize + 1); - fontSizeInput.dom.value = fontSize; - - reader.emit("styleschanged", { fontSize: fontSize }); - }; - - fontSizeInput.dom.onchange = () => { - let newSize = parseInt(fontSizeInput.dom.value, 10); - if (!isNaN(newSize) && newSize >= 8 && newSize <= 72) { - fontSize = newSize; - - reader.emit("styleschanged", { fontSize: fontSize }); - } else { - fontSizeInput.dom.value = fontSize; - } - }; - - fontSizeBox.add(fontLabel); - fontSizeBox.add(decreaseFontBtn); - fontSizeBox.add(fontSizeInput); - fontSizeBox.add(increaseFontBtn); - menu1.add(fontSizeBox); - - let prevBox, prevBtn; let nextBox, nextBtn; if (settings.arrows === "toolbar") { @@ -1898,6 +1871,280 @@ class Toolbar { menu1.add(nextBox); } + /* ------------------------ Button Logo ------------------------- */ + const logoBox = new UIDiv().setId("btn-logo").setClass("logo"); + const logoLink = new UILink().setId("logo-link").setHref("#").setTextContent("LOGO"); + + logoBox.add(logoLink); + menu1.add(logoBox); + + /* ------------------------ Button Index List (muc luc) -------------------------- */ + let tocBox, tocBtn; + tocBox = new UIDiv().setId("btn-t").setClass("box"); + tocBtn = new UIInput("button"); + + // load toc content title for toc list + tocBtn.dom.onclick = (e) => { + e.stopPropagation(); + reader.book.loaded.navigation.then((toc) => { + showToc(toc); + }) + } + + tocBox.add(tocBtn); + menu1.add(tocBox); + + // Function to show the toc list + function showToc(toc) { + let existingToc = document.getElementById("toolbar-toc-list"); + + if (!existingToc) { + let tocList = document.createElement("ul"); + tocList.setAttribute("id", "toolbar-toc-list"); + + let tocTitle = document.createElement("h3"); + tocTitle.textContent = "Mục lục"; + + tocList.appendChild(tocTitle); + + toc.forEach((chapter) => { + let tocItem = document.createElement("li"); + let tocLink = document.createElement("a"); + + tocLink.href = "#"; + tocLink.textContent = chapter.label; + + tocLink.onclick = (e) => { + e.preventDefault(); + + document.querySelectorAll("#toolbar-toc-list li a").forEach((link) => { + link.classList.remove("active"); + }) + + tocLink.classList.add("active"); + + // show the chapter with the title chosed in toc list + reader.rendition.display(chapter.href); + }; + + tocItem.appendChild(tocLink); + tocList.appendChild(tocItem); + }); + + tocBox.dom.appendChild(tocList); + } + + let tocList = document.getElementById("toolbar-toc-list"); + tocList.classList.toggle("active"); + } + + + + /* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/ + let bookmarksBox, bookmarksBtn; + bookmarksBox = new UIDiv().setId("btn-d").setClass("box"); + bookmarksBtn = new UIInput("button"); + + bookmarksBtn.dom.onclick = (e) => { + e.stopPropagation(); + showBookmarks(); + } + + bookmarksBox.add(bookmarksBtn); + menu1.add(bookmarksBox); + + function showBookmarks() { + let existingList = document.getElementById("toolbar-bookmarks-list"); + + if (!existingList) { + let bookmarksList = document.createElement("ul"); + bookmarksList.setAttribute("id", "toolbar-bookmarks-list"); + + let title = document.createElement("h3"); + title.textContent = "Bookmarks của tui"; + + bookmarksList.appendChild(title); + + reader.settings.bookmarks.forEach((cfi) => { + let bookmarkItem = document.createElement("li"); + let bookmarkLink = document.createElement("a"); + let deleteBtn = document.createElement("span"); + + bookmarkLink.href = "#"; + bookmarkLink.textContent = `Bookmark ${bookmarksList.children.length}`; + + bookmarkLink.onclick = (e) => { + e.preventDefault(); + + document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((link) => { + link.classList.remove("active"); + }) + + bookmarkLink.classList.add("active"); + + reader.rendition.display(cfi); + } + + deleteBtn.innerHTML = ''; + + deleteBtn.onclick = (e) => { + e.stopPropagation(); + reader.removeBookmarkFromToolbar(cfi); + } + + bookmarkItem.appendChild(bookmarkLink); + bookmarkItem.appendChild(deleteBtn); + bookmarksList.appendChild(bookmarkItem); + }) + + bookmarkBox.dom.appendChild(bookmarksList); + } + + let bookmarksList = document.getElementById("toolbar-bookmarks-list"); + bookmarksList.classList.toggle("active"); + } + + // Hàm xóa bookmark từ toolbar + reader.removeBookmarkFromToolbar = function (cfi) { + let bookmarksList = document.getElementById("toolbar-bookmarks-list"); + if (!bookmarksList) return; + + let bookmarkItems = bookmarksList.querySelectorAll("li"); + let targetItem = Array.from(bookmarkItems).find(item => { + return item.querySelector("a").textContent.includes(cfi); + }); + + if (targetItem) { + targetItem.remove(); + } + + const index = reader.settings.bookmarks.indexOf(cfi); + if (index !== -1) { + reader.settings.bookmarks.splice(index, 1); + } + + reader.emit("bookmarked", false, cfi); + }; + + + + /* ------------------------ Button Highlight And Note ---------------------------- */ + let annotationsBox, annotationsBtn; + annotationsBox = new UIDiv().setId("btn-a").setClass("box"); + annotationsBtn = new UIInput("button"); + + // show annotations list when click icon on toolbar + annotationsBtn.dom.onclick = (e) => { + e.stopPropagation(); + showAnnotations(); + } + + annotationsBox.add(annotationsBtn); + menu1.add(annotationsBox); + + // Function to show the annotations list + function showAnnotations() { + let existingList = document.getElementById("toolbar-annotations-list"); + + if (!existingList) { + let annotationsList = document.createElement("ul"); + annotationsList.setAttribute("id", "toolbar-annotations-list"); + + let title = document.createElement("h3"); + title.textContent = "Highlights & Ghi chú"; + + annotationsList.appendChild(title); + + reader.settings.annotations.forEach((note) => { + let noteItem = document.createElement("li"); + let noteLink = document.createElement("a"); + let deleteBtn = document.createElement("span"); + + noteLink.href = "#"; + noteLink.textContent = note.text; + + noteLink.onclick = (e) => { + e.preventDefault(); + + document.querySelectorAll("#toolbar-annotations-list li a").forEach((link) => { + link.classList.remove("active"); + }) + + noteLink.classList.add("active"); + + reader.rendition.display(note.cfi); + } + + deleteBtn.innerHTML = ''; + + // emit event to delete annotation items + deleteBtn.onclick = (e) => { + e.stopPropagation(); + reader.removeNoteFromToolbar(note); + } + + noteItem.appendChild(noteLink); + noteItem.appendChild(deleteBtn); + annotationsList.appendChild(noteItem); + }) + + annotationsBox.dom.appendChild(annotationsList); + } + + let annotationsList = document.getElementById("toolbar-annotations-list"); + annotationsList.classList.toggle("active"); + } + + reader.removeNoteFromToolbar = function (note) { + let annotationsList = document.getElementById("toolbar-annotations-list"); + if (!annotationsList) return; + + let noteItems = annotationsList.querySelectorAll("li"); + let targetItem = Array.from(noteItems).find(item => { + item.querySelector('a').textContent === note.text; + }) + + if (targetItem) { + targetItem.remove(); + } + + const annotationsPanel = reader.annotationsPanel; + if (annotationsPanel) { + annotationsPanel.removeNote(note); + annotationsPanel.update(); + } + + const index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi); + if (index !== -1) { + reader.settings.annotations.splice(index, 1); + } + + reader.rendition.annotations.remove(note.cfi, "highlight"); + } + + + + + /* ----------------------------- Current Page -------------------------------- */ + const centerPageCount = new UIDiv().setClass("menu-center"); + + const centerLabel = new UILabel().setClass("toolbar-center-label"); + centerLabel.setTextContent("Determined"); + + const curOfTotal = new UIDiv().setClass("page-map"); + const curPageIndex = new UISpan().setClass("current-page-index").setTextContent("1"); + const separator = new UIText().setTextContent(" của "); + const totalPage = new UISpan().setClass("total-pages").setTextContent("200"); + + curOfTotal.add(curPageIndex); + curOfTotal.add(separator); + curOfTotal.add(totalPage); + + centerPageCount.add(centerLabel); + centerPageCount.add(curOfTotal); + + + /*------------------------ Toolbar Menu 2 --------------------------*/ const menu2 = new UIDiv().setClass("menu-2"); // Button change background @@ -1920,6 +2167,51 @@ class Toolbar { menu2.add(backgroundBox); } + + // Button "A-", "A+" and input (hidden) for font-size + let fontLabel = new UILabel().setClass("font-size-px").setTextContent("Fontsize (px):") + let fontSizeBox = new UIDiv().setId("btn-fontsize").setClass("box"); + let decreaseFontBtn = new UIInput("button").setClass("btn-font-decrease"); + let increaseFontBtn = new UIInput("button").setClass("btn-font-increase"); + let fontSizeInput = new UIInput("text").setClass("input-font-size"); + + let fontSize = settings.fontSize || 16; + fontSizeInput.dom.value = fontSize; + + decreaseFontBtn.dom.textContent = "-"; + decreaseFontBtn.dom.onclick = () => { + fontSize = Math.max(8, fontSize - 1); + fontSizeInput.dom.value = fontSize; + + reader.emit("styleschanged", { fontSize: fontSize }); + }; + + increaseFontBtn.dom.textContent = "+"; + increaseFontBtn.dom.onclick = () => { + fontSize = Math.min(72, fontSize + 1); + fontSizeInput.dom.value = fontSize; + + reader.emit("styleschanged", { fontSize: fontSize }); + }; + + fontSizeInput.dom.onchange = () => { + let newSize = parseInt(fontSizeInput.dom.value, 10); + if (!isNaN(newSize) && newSize >= 8 && newSize <= 72) { + fontSize = newSize; + + reader.emit("styleschanged", { fontSize: fontSize }); + } else { + fontSizeInput.dom.value = fontSize; + } + }; + + fontSizeBox.add(fontLabel); + fontSizeBox.add(decreaseFontBtn); + fontSizeBox.add(fontSizeInput); + fontSizeBox.add(increaseFontBtn); + menu2.add(fontSizeBox); + + // Button open file let openbookBtn; if (settings.openbook) { @@ -1964,6 +2256,24 @@ class Toolbar { menu2.add(openbookBox); } + + // Button search + let searchBox, searchBtn; + let searchInput, searchResults; + searchBox = new UIDiv().setId("btn-s").setClass("box"); + searchBtn = new UIInput("button"); + searchBtn.setTitle(strings.get(keys[8])); + searchBtn.dom.onclick = () => { + searchBox.setClass("active"); + searchInput.dom.focus(); + } + + + + searchBox.add(searchBtn); + menu2.add(searchBox); + + // Button Bookmark let bookmarkBox, bookmarkBtn; if (settings.bookmarks) { @@ -2018,9 +2328,21 @@ class Toolbar { menu2.add(fullscreenBox); } - container.add([menu1, menu2]); + container.add([menu1, centerPageCount, menu2]); document.body.appendChild(container.dom); + // Button Close + let closeBox, closeBtn; + closeBox = new UIDiv().setId("btn-close").setClass("box"); + closeBtn = new UIInput("button").setClass("active"); + closeBtn.setTitle(strings.get(keys[9])); + + + + closeBox.add(closeBtn); + menu2.add(closeBox); + + //-- events --// reader.on("relocated", (location) => { @@ -2070,6 +2392,7 @@ class Toolbar { if (settings.background) { backgroundBtn.setTitle(strings.get(keys[7])); } + }); } @@ -2103,7 +2426,9 @@ class Content { reader.emit("prev"); e.preventDefault(); }; - prev.add(new UISpan("<")); + const iconLeft = new UISpan(); + iconLeft.dom.innerHTML = ''; + prev.add(iconLeft); container.add(prev); } @@ -2123,7 +2448,9 @@ class Content { reader.emit("next"); e.preventDefault(); }; - next.add(new UISpan(">")); + const iconRight = new UISpan(); + iconRight.dom.innerHTML = ''; + next.add(iconRight); container.add(next); } @@ -2522,6 +2849,29 @@ class AnnotationsPanel extends UIPanel { this.reader.rendition.annotations.add( "highlight", note.cfi, {}, call, "note-highlight", {}); this.update(); + + const toolbarList = document.getElementById("toolbar-annotations-list"); + if (toolbarList) { + const toolbarNoteItem = document.createElement("li"); + const toolbarNoteLink = document.createElement("a"); + toolbarNoteLink.href = "#"; + toolbarNoteLink.textContent = note.text; // sửa lại nếu cần + toolbarNoteLink.onclick = (e) => { + e.preventDefault(); + this.reader.rendition.display(note.cfi); + }; + toolbarNoteItem.appendChild(toolbarNoteLink); + + const deleteBtn = document.createElement("span"); + deleteBtn.innerHTML = ''; + + deleteBtn.onclick = (e) => { + e.stopPropagation(); + this.reader.removeNoteFromToolbar(note); + } + toolbarNoteItem.appendChild(deleteBtn); + toolbarList.appendChild(toolbarNoteItem); + } } removeNote(note) { @@ -2534,6 +2884,16 @@ class AnnotationsPanel extends UIPanel { this.reader.settings.annotations.splice(index, 1); this.reader.rendition.annotations.remove(note.cfi, "highlight"); this.update(); + + const toolbarList = document.getElementById("toolbar-annotations-list"); + if (toolbarList) { + const toolbarItems = toolbarList.querySelectorAll("li"); + toolbarItems.forEach(item => { + if (item.querySelector("a").textContent === note.text) { + item.remove(); + } + }) + } } clearNotes() { @@ -2909,8 +3269,11 @@ class Sidebar { container.addTab("btn-d", strings.get(keys[2]), new BookmarksPanel(reader)); } if (controls.annotations) { - container.addTab("btn-a", strings.get(keys[3]), new AnnotationsPanel(reader)); + const annotationPanel = new AnnotationsPanel(reader); + container.addTab("btn-a", strings.get(keys[3]), annotationPanel); + reader.annotationsPanel = annotationPanel; } + container.addTab("btn-s", strings.get(keys[4]), new SearchPanel(reader)); container.addTab("btn-c", strings.get(keys[5]), new SettingsPanel(reader)); container.addTab("btn-i", strings.get(keys[6]), new MetadataPanel(reader)); @@ -3018,6 +3381,102 @@ class NoteDlg { }); } } +;// CONCATENATED MODULE: ./src/status.js + + +class Status { + constructor(reader) { + const strings = reader.strings; + const settings = reader.settings; + + const container = new UIDiv().setId("status-bar"); + const keys = [ + "status/fullscreen", + "status/apprec", + ]; + + /* ---------------------------- Status Bar ----------------------------- */ + const leftText = new UIDiv().setClass("status-title"); + const rightAction = new UIDiv().setClass("status-action"); + + let text = new UILabel().setClass("status-text").setTextContent("Trang cuối của chương"); + leftText.add(text); + + + // Button apps rectangle + let appRecBtn; + const appRecBox = new UIDiv().setId("btn-ar").setClass("box"); + appRecBtn = new UIInput("button"); + appRecBtn.setTitle(strings.get(keys[1])); + appRecBtn.dom.onclick = (e) => { + e.preventDefault(); + }; + + appRecBox.add(appRecBtn); + rightAction.add(appRecBox); + + + // Button Full Screen + let fullscreenBtn; + if (settings.fullscreen) { + + const fullscreenBox = new UIDiv().setId("btn-f").setClass("box"); + fullscreenBtn = new UIInput("button"); + fullscreenBtn.setTitle(strings.get(keys[0])); + fullscreenBtn.dom.onclick = (e) => { + + this.toggleFullScreen(); + e.preventDefault(); + }; + + document.onkeydown = (e) => { + + if (e.key === "F11") { + e.preventDefault(); + this.toggleFullScreen(); + } + }; + + document.onfullscreenchange = (e) => { + + // const w = window.screen.width === e.target.clientWidth; + // const h = window.screen.height === e.target.clientHeight; + + if (document.fullscreenElement) { + fullscreenBox.addClass("resize-small"); + } else { + fullscreenBox.removeClass("resize-small"); + } + }; + + + fullscreenBox.add(fullscreenBtn); + rightAction.add(fullscreenBox); + } + + reader.on("languagechanged", (value) => { + if (settings.fullscreen) { + fullscreenBtn.setTitle(strings.get(keys[0])); + } + }); + + + container.add([leftText, rightAction]); + document.body.appendChild(container.dom); + } + + toggleFullScreen() { + + document.activeElement.blur(); + + if (document.fullscreenElement === null) { + document.documentElement.requestFullscreen(); + } else if (document.exitFullscreen) { + document.exitFullscreen(); + } + } +} + ;// CONCATENATED MODULE: ./src/reader.js @@ -3029,6 +3488,7 @@ class NoteDlg { + class Reader { constructor(bookPath, settings) { @@ -3046,6 +3506,7 @@ class Reader { this.strings = new Strings(this); this.toolbar = new Toolbar(this); this.content = new Content(this); + this.status = new Status(this); this.sidebar = new Sidebar(this); if (this.settings.annotations) { this.notedlg = new NoteDlg(this); @@ -3376,7 +3837,7 @@ class Reader { this.emit("styleschanged", { fontSize: value }); break; case "0": - value = 100; + value = 16; this.emit("styleschanged", { fontSize: value }); break; case "ArrowLeft": diff --git a/dist/js/epubreader.js.map b/dist/js/epubreader.js.map index 1016450..2790141 100644 --- a/dist/js/epubreader.js.map +++ b/dist/js/epubreader.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;ACnQA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB;AACO;AACP;AACA;AACA;AACA;;AC/wBkD;;AAE3C;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,OAAO;AAC7B,wBAAwB,KAAK;AAC7B,4BAA4B,OAAO;AACnC,4BAA4B,OAAO;AACnC,0BAA0B,OAAO;;AAEjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,mCAAmC,oBAAoB;AACvD,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB;AACA;AACA;AACA;AACA,uBAAuB,KAAK;AAC5B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;ACpSwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,gBAAgB,MAAM;AACtB;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,gBAAgB,MAAM;AACtB;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;AC1HyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;ACzFyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACvI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC5GkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;;AAE/B;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChLyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,uDAAuD,cAAc;AACrE;AACA;AACA,uDAAuD,gBAAgB;AACvE;AACA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AC9EkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;;AAEhC;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\"\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\"\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\"\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\"\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\"\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\"\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\t// Button \"-\", \"+\" and input for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu1.add(fontSizeBox);\n\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tprev.add(new UISpan(\"<\"));\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tnext.add(new UISpan(\">\"));\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), new AnnotationsPanel(reader));\n\t\t}\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 100;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;AClRA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB;AACO;AACP;AACA;AACA;AACA;;AC/wBoF;;AAE7E;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,KAAK;AAC3B,uBAAuB,MAAM;;AAE7B;AACA;;AAEA;AACA;AACA,eAAe,KAAK;AACpB,eAAe,OAAO;;AAEtB;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;;AAE5B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,4CAA4C,8BAA8B;;AAE1E;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;AAIA;AACA;AACA,uBAAuB,KAAK;AAC5B,uBAAuB,OAAO;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA,8BAA8B,KAAK;;AAEnC,0BAA0B,OAAO;AACjC;;AAEA,yBAAyB,KAAK;AAC9B,2BAA2B,MAAM;AACjC,wBAAwB,MAAM;AAC9B,wBAAwB,MAAM;;AAE9B;AACA;AACA;;AAEA;AACA;;;;AAIA;AACA,oBAAoB,KAAK;AACzB;AACA;AACA;AACA;AACA,uBAAuB,KAAK;AAC5B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA,sBAAsB,OAAO;AAC7B,wBAAwB,KAAK;AAC7B,4BAA4B,OAAO;AACnC,4BAA4B,OAAO;AACnC,0BAA0B,OAAO;;AAEjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,mCAAmC,oBAAoB;AACvD,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,kBAAkB,KAAK;AACvB,kBAAkB,OAAO;AACzB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;;AAGA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;;;;AAIA;AACA;;;AAGA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;ACxlBwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,wBAAwB,MAAM;AAC9B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,yBAAyB,MAAM;AAC/B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;AC9HyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;ACzFyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACvI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;;AAEA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC7IkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;;AAE/B;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChLyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,uDAAuD,cAAc;AACrE;AACA;AACA,+BAA+B,gBAAgB;AAC/C;AACA;AACA;;AAEA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;ACjFkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEkD;AAClD;AACO;AACP;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,KAAK;AAClC,gCAAgC,KAAK;AACrC;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC,wBAAwB,OAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,KAAK;AAC3C,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;;AC7FyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;AACF;;AAE9B;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,qBAAqB,MAAM;AAC3B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (!existingToc) {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet bookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\n\t\t\t\tbookmarksList.appendChild(title);\n\n\t\t\t\treader.settings.bookmarks.forEach((cfi) => {\n\t\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\t\tbookmarkLink.textContent = `Bookmark ${bookmarksList.children.length}`;\n\n\t\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t\t})\n\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\t\tsearchBtn.dom.onclick = () => {\n\t\t\tsearchBox.setClass(\"active\");\n\t\t\tsearchInput.dom.focus();\n\t\t}\n\n\t\t\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/dist/js/epubreader.min.js b/dist/js/epubreader.min.js index 0f1eb81..b548586 100644 --- a/dist/js/epubreader.min.js +++ b/dist/js/epubreader.min.js @@ -1,2 +1,2 @@ -var e={263:(e,t,s)=>{var a=s(175),n=s(873),o=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,n,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),n=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,n=!1),c={value:t,configurable:s,enumerable:n,writable:d},l?o(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?n(t)?a(s)?n(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?o(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),n=s(134),o=Math.max;e.exports=function(e,t){var s,i,r,d=o(arguments.length,2);for(e=Object(n(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),n=Object.keys;e.exports=function(e){return n(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),n=Array.prototype.forEach,o=Object.create;e.exports=function(e){var t=o(null);return n.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,n,o,i,r,d,l,c=s(263),h=s(499),b=Function.prototype.apply,u=Function.prototype.call,m=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,w={configurable:!0,enumerable:!1,writable:!0};n=function(e,t){var s,n;return h(t),n=this,a.call(this,e,s=function(){o.call(n,e,s),b.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=w.value=m(null),g(this,"__ee__",w),w.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:n,off:o=function(e,t){var s,a,n,o;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(o=0;n=a[o];++o)n!==t&&n.__eeOnceListener__!==t||(2===a.length?s[e]=a[o?0:1]:a.splice(o,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,n,o;if(f.call(this,"__ee__")&&(n=this.__ee__[e]))if("object"==typeof n){for(s=arguments.length,o=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),n={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(n,typeof e)}},873:(e,t,s)=>{var a=s(80),n=/^\s*class[\s{/}]/,o=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!n.test(o.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var n=t[a];if(void 0!==n)return n.exports;var o=t[a]={exports:{}};return e[a](o,o.exports,s),o.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>F});var n=s(68);const o=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let n;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":n=t[a]?e[a]:t[a];break;default:n=t[a]}else n="arrows"===a?t[a]:void 0===o(s,a)?e[a]:t[a];return n},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],o(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add"},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter"},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加"},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить"},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???"}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class b{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class y extends b{constructor(e,t,s,a,n){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=n||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends m{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new u).setClass("tab-selector"),this.menuDiv=(new m).setClass("menu"),this.tabsDiv=(new m).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new m).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new S(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const n=new m;n.setId(e),n.add(s),this.panels.push(n),this.panelsDiv.add(n),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class S extends m{constructor(e,t){super(),this.button=new x("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class I extends b{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends b{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new m).setId("item-box");for(let s=0;s{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),o.add(i);let d,l,c,h,b=(new f).setClass("font-size-px").setTextContent("Fontsize (px):"),u=(new m).setId("btn-fontsize").setClass("box"),g=new x("button").setClass("btn-font-decrease"),p=new x("button").setClass("btn-font-increase"),w=new x("text").setClass("input-font-size"),k=s.fontSize||16;w.dom.value=k,g.dom.textContent="-",g.dom.onclick=()=>{k=Math.max(8,k-1),w.dom.value=k,e.emit("styleschanged",{fontSize:k})},p.dom.textContent="+",p.dom.onclick=()=>{k=Math.min(72,k+1),w.dom.value=k,e.emit("styleschanged",{fontSize:k})},w.dom.onchange=()=>{let t=parseInt(w.dom.value,10);!isNaN(t)&&t>=8&&t<=72?(k=t,e.emit("styleschanged",{fontSize:k})):w.dom.value=k},u.add(b),u.add(g),u.add(w),u.add(p),o.add(u),"toolbar"===s.arrows&&(d=(new m).setId("btn-p").setClass("box"),l=new x("button"),l.setTitle(t.get(n[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),o.add(d),c=(new m).setId("btn-n").setClass("box"),h=new x("button"),h.dom.title=t.get(n[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),o.add(c));const v=(new m).setClass("menu-2");let y,C,S,I,T,D;if(s.background&&(y=(new m).setId("btn-bg").setClass("box"),C=new x("color").setClass("color-picker"),C.dom.title=t.get(n[7]),C.dom.oninput=t=>{const s=t.target.value;e.emit("colorchanged",s)},y.add(C),v.add(y)),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},o=(new m).setId("btn-o").setClass("box");S=new x("file"),S.dom.title=t.get(n[3]),S.dom.accept="application/epub+zip",S.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(n[4]))},S.dom.onclick=e=>{S.dom.blur()},o.add(S),v.add(o)}if(s.bookmarks&&(I=(new m).setId("btn-b").setClass("box"),T=new x("button"),T.setTitle(t.get(n[5])),T.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),T.dom.blur()},I.add(T),v.add(I)),s.fullscreen){const e=(new m).setId("btn-f").setClass("box");D=new x("button"),D.setTitle(t.get(n[6])),D.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(D),v.add(e)}a.add([o,v]),document.body.appendChild(a.dom),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?I.removeClass("bookmarked"):I.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?I.addClass("bookmarked"):I.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(n[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(n[1])),h.setTitle(t.get(n[2]))),s.openbook&&S.setTitle(t.get(n[3])),s.bookmarks&&T.setTitle(t.get(n[5])),s.fullscreen&&D.setTitle(t.get(n[6])),s.background&&backgroundBtn.setTitle(t.get(n[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class _{constructor(e){const t=e.settings,s=(new m).setId("content");let a;"content"===t.arrows&&(a=(new m).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()},a.add(new u("<")),s.add(a));const n=(new m).setId("viewer");let o;s.add(n),e.on("colorchanged",(e=>{n.dom.style.backgroundColor=e})),"content"===t.arrows&&(o=(new m).setId("next").setClass("arrow"),o.dom.onclick=t=>{e.emit("next"),t.preventDefault()},o.add(new u(">")),s.add(o));const i=(new m).setId("loader"),r=(new m).setId("divider"),d=(new m).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{n.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{n.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?o.addClass("disabled"):o.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(o.addClass("active"),setTimeout((()=>{o.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{n.clear()}))}}class O extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/contents"],n=new k(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new D(n).addClass("header")),e.on("navigation",(e=>{t.clear(),t.add(this.generateToc(e)),this.add(t)})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new I(t);return e.forEach((e=>{const t=new w(e.href,e.label),a=new T(s).setId(e.id),n=new u;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([n,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);n.setClass("toggle-collapsed"),n.dom.onclick=()=>(t.expanded?(t.collaps(),n.setClass("toggle-collapsed")):(t.expand(),n.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class B extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],n=new k(s.get(a[0])).setClass("label"),o=new x("button",s.get(a[1]));o.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new D([n,o]).addClass("header")),this.selector=void 0,this.bookmarks=new I,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{o.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0])),o.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new w,s=new T,a=(new u).setClass("btn-remove"),n=this.reader.navItemFromCfi(e);let o,i;if(void 0===n){const t=this.reader.book.spine.get(e);o=t.idref,i=t.idref}else o=n.id,i=n.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(o),this.bookmarks.add(s)}}class j extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],n=new k(s.get(a[0])).setClass("label"),o=new x("button",s.get(a[1]));o.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new D([n,o]).addClass("header")),this.selector=void 0,this.notes=new I,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{o.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0])),o.setValue(s.get(a[1]))}))}set(e){const t=new w("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new u).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update()}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);-1!==t&&(this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update())}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class V extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings;let a;const n=new x("search").setId("nav-q");n.dom.placeholder=s.get("sidebar/search/placeholder"),n.dom.onsearch=()=>{const e=n.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new I,t.add(this.items),this.add([new D(n),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new w("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class A extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new k(t.get(s[0])).setClass("label");this.add(new D(a).addClass("header"));const n=new f(t.get(s[1]),"language-ui"),o=new g,i=(new v).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),o.add(n),o.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new y(16,1);l.dom.onchange=t=>{const s=parseInt(t.target.value);s>=8&&s<=72&&e.emit("styleschanged",{fontSize:s})},l.setId("fontsize"),d.add(r),d.add(l),l.dom.disabled=!0;const c=new f(t.get(s[3]),"flow"),h=new g,b=(new v).setOptions({paginated:"Paginated",scrolled:"Scrolled"});b.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},b.setId("flow"),h.add(c),h.add(b);const u=new y(800,1),m=new f(t.get(s[4]),"spread"),p=new g,w=(new v).setOptions({none:"None",auto:"Auto"});w.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),u.dom.disabled="none"===t.target.value},w.setId("spread"),p.add(m),p.add(w);const C=new f(t.get(s[5]),"min-spread-width"),S=new g;u.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},u.setId("min-spread-width"),S.add(C),S.add(u);const I=t.get("sidebar/settings/pagination"),T=new g,z=new x("checkbox",!1,I[1]);z.setId("pagination"),z.dom.onclick=e=>{},T.add(new f(I[0],"pagination")),T.add(z),this.add(new D([o,d,h,p,S])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),b.setValue(e.flow),w.setValue(e.spread.mod),u.setValue(e.spread.min),u.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(w.setValue("none"),w.dom.disabled=!0,u.dom.disabled=!0):w.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),n.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),m.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class P extends p{constructor(e){super();const t=(new m).setClass("list-container"),s=e.strings,a={},n="sidebar/metadata",o=new k(s.get(n)).setClass("label");this.add(new D(o).addClass("header")),a[n]=o,this.items=new I,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const o=new T,i=(new k).setClass("label"),r=(new k).setClass("value");i.setValue(s.get(n+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[n+"/"+e]=i,o.add([i,r]),this.items.add(o)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===n?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class L{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],n=new C("vertical").setId("sidebar"),o=(new m).setId("btn-p").addClass("box"),i=new x("button");i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},o.add(i),n.addMenu(o),n.addTab("btn-t",t.get(a[1]),new O(e)),s.bookmarks&&n.addTab("btn-d",t.get(a[2]),new B(e)),s.annotations&&n.addTab("btn-a",t.get(a[3]),new j(e)),n.addTab("btn-s",t.get(a[4]),new V(e)),n.addTab("btn-c",t.get(a[5]),new A(e)),n.addTab("btn-i",t.get(a[6]),new P(e)),n.select("btn-t"),document.body.appendChild(n.dom),e.on("sidebaropener",(e=>{e?n.setClass("open"):n.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),n.setLabel("btn-t",t.get(a[1])),s.bookmarks&&n.setLabel("btn-d",t.get(a[2])),s.annotations&&n.setLabel("btn-a",t.get(a[3])),n.setLabel("btn-s",t.get(a[4])),n.setLabel("btn-c",t.get(a[5])),n.setLabel("btn-i",t.get(a[6]))}))}}class N{constructor(e){const t=(new m).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],n=new f(s.get(a[0]),"note-input"),o=new x("text","").setId("note-input");o.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new x("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:o.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&o.getValue().length>0)},t.add(new D([n,o,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),o.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{n.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class F{constructor(e,t){const s=s=>{const a=new URL(window.location);let n=e;t&&!t.openbook?(n=e,s&&this.storage.clear()):s&&0===a.search.length&&(n=s),this.cfgInit(n,t),this.strings=new c(this),this.toolbar=new z(this),this.content=new _(this),this.sidebar=new L(this),this.settings.annotations&&(this.notedlg=new N(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("navigation",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"px")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:16},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=1,this.emit("styleschanged",{fontSize:t});break;case"-":t-=1,this.emit("styleschanged",{fontSize:t});break;case"0":t=100,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}n(F.prototype);var M=a.Reader;export{M as Reader}; +var e={263:(e,t,s)=>{var a=s(175),n=s(873),o=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,n,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),n=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,n=!1),c={value:t,configurable:s,enumerable:n,writable:d},l?o(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?n(t)?a(s)?n(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?o(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),n=s(134),o=Math.max;e.exports=function(e,t){var s,i,r,d=o(arguments.length,2);for(e=Object(n(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),n=Object.keys;e.exports=function(e){return n(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),n=Array.prototype.forEach,o=Object.create;e.exports=function(e){var t=o(null);return n.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,n,o,i,r,d,l,c=s(263),h=s(499),u=Function.prototype.apply,m=Function.prototype.call,b=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,k={configurable:!0,enumerable:!1,writable:!0};n=function(e,t){var s,n;return h(t),n=this,a.call(this,e,s=function(){o.call(n,e,s),u.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=k.value=b(null),g(this,"__ee__",k),k.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:n,off:o=function(e,t){var s,a,n,o;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(o=0;n=a[o];++o)n!==t&&n.__eeOnceListener__!==t||(2===a.length?s[e]=a[o?0:1]:a.splice(o,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,n,o;if(f.call(this,"__ee__")&&(n=this.__ee__[e]))if("object"==typeof n){for(s=arguments.length,o=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),n={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(n,typeof e)}},873:(e,t,s)=>{var a=s(80),n=/^\s*class[\s{/}]/,o=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!n.test(o.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var n=t[a];if(void 0!==n)return n.exports;var o=t[a]={exports:{}};return e[a](o,o.exports,s),o.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>N});var n=s(68);const o=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let n;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":n=t[a]?e[a]:t[a];break;default:n=t[a]}else n="arrows"===a?t[a]:void 0===o(s,a)?e[a]:t[a];return n},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],o(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add","status/fullscreen":"Fullscreen","status/":""},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter","status/fullscreen":"","status/":""},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加","status/fullscreen":"","status/":""},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить","status/fullscreen":"","status/":""},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???","status/fullscreen":"Toàn màn hình","status/":""}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class u{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class y extends u{constructor(e,t,s,a,n){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=n||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends b{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new m).setClass("tab-selector"),this.menuDiv=(new b).setClass("menu"),this.tabsDiv=(new b).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new b).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new I(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const n=new b;n.setId(e),n.add(s),this.panels.push(n),this.panelsDiv.add(n),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class I extends b{constructor(e,t){super(),this.button=new x("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class S extends u{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends u{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new b).setId("item-box");for(let s=0;s{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),o.add(i),"toolbar"===s.arrows&&(d=(new b).setId("btn-p").setClass("box"),l=new x("button"),l.setTitle(t.get(n[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),o.add(d),c=(new b).setId("btn-n").setClass("box"),h=new x("button"),h.dom.title=t.get(n[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),o.add(c));const u=(new b).setId("btn-logo").setClass("logo"),g=(new k).setId("logo-link").setHref("#").setTextContent("LOGO");let p,v,y,C,I,S;u.add(g),o.add(u),p=(new b).setId("btn-t").setClass("box"),v=new x("button"),v.dom.onclick=t=>{t.stopPropagation(),e.book.loaded.navigation.then((t=>{!function(t){if(!document.getElementById("toolbar-toc-list")){let s=document.createElement("ul");s.setAttribute("id","toolbar-toc-list");let a=document.createElement("h3");a.textContent="Mục lục",s.appendChild(a),t.forEach((t=>{let a=document.createElement("li"),n=document.createElement("a");n.href="#",n.textContent=t.label,n.onclick=s=>{s.preventDefault(),document.querySelectorAll("#toolbar-toc-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(t.href)},a.appendChild(n),s.appendChild(a)})),p.dom.appendChild(s)}document.getElementById("toolbar-toc-list").classList.toggle("active")}(t)}))},p.add(v),o.add(p),y=(new b).setId("btn-d").setClass("box"),C=new x("button"),C.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-bookmarks-list")){let t=document.createElement("ul");t.setAttribute("id","toolbar-bookmarks-list");let s=document.createElement("h3");s.textContent="Bookmarks của tui",t.appendChild(s),e.settings.bookmarks.forEach((s=>{let a=document.createElement("li"),n=document.createElement("a"),o=document.createElement("span");n.href="#",n.textContent=`Bookmark ${t.children.length}`,n.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(s)},o.innerHTML='',o.onclick=t=>{t.stopPropagation(),e.removeBookmarkFromToolbar(s)},a.appendChild(n),a.appendChild(o),t.appendChild(a)})),V.dom.appendChild(t)}document.getElementById("toolbar-bookmarks-list").classList.toggle("active")}()},y.add(C),o.add(y),e.removeBookmarkFromToolbar=function(t){let s=document.getElementById("toolbar-bookmarks-list");if(!s)return;let a=s.querySelectorAll("li"),n=Array.from(a).find((e=>e.querySelector("a").textContent.includes(t)));n&&n.remove();const o=e.settings.bookmarks.indexOf(t);-1!==o&&e.settings.bookmarks.splice(o,1),e.emit("bookmarked",!1,t)},I=(new b).setId("btn-a").setClass("box"),S=new x("button"),S.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-annotations-list")){let t=document.createElement("ul");t.setAttribute("id","toolbar-annotations-list");let s=document.createElement("h3");s.textContent="Highlights & Ghi chú",t.appendChild(s),e.settings.annotations.forEach((s=>{let a=document.createElement("li"),n=document.createElement("a"),o=document.createElement("span");n.href="#",n.textContent=s.text,n.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-annotations-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(s.cfi)},o.innerHTML='',o.onclick=t=>{t.stopPropagation(),e.removeNoteFromToolbar(s)},a.appendChild(n),a.appendChild(o),t.appendChild(a)})),I.dom.appendChild(t)}document.getElementById("toolbar-annotations-list").classList.toggle("active")}()},I.add(S),o.add(I),e.removeNoteFromToolbar=function(t){let s=document.getElementById("toolbar-annotations-list");if(!s)return;let a=s.querySelectorAll("li"),n=Array.from(a).find((e=>{e.querySelector("a").textContent,t.text}));n&&n.remove();const o=e.annotationsPanel;o&&(o.removeNote(t),o.update());const i=e.settings.annotations.findIndex((e=>e.cfi===t.cfi));-1!==i&&e.settings.annotations.splice(i,1),e.rendition.annotations.remove(t.cfi,"highlight")};const T=(new b).setClass("menu-center"),D=(new f).setClass("toolbar-center-label");D.setTextContent("Determined");const E=(new b).setClass("page-map"),B=(new m).setClass("current-page-index").setTextContent("1"),z=(new w).setTextContent(" của "),O=(new m).setClass("total-pages").setTextContent("200");E.add(B),E.add(z),E.add(O),T.add(D),T.add(E);const _=(new b).setClass("menu-2");let L,A;s.background&&(L=(new b).setId("btn-bg").setClass("box"),A=new x("color").setClass("color-picker"),A.dom.title=t.get(n[7]),A.dom.oninput=t=>{const s=t.target.value;e.emit("colorchanged",s)},L.add(A),_.add(L));let F,P,j,V,N,M,R,q,H=(new f).setClass("font-size-px").setTextContent("Fontsize (px):"),U=(new b).setId("btn-fontsize").setClass("box"),G=new x("button").setClass("btn-font-decrease"),$=new x("button").setClass("btn-font-increase"),K=new x("text").setClass("input-font-size"),W=s.fontSize||16;if(K.dom.value=W,G.dom.textContent="-",G.dom.onclick=()=>{W=Math.max(8,W-1),K.dom.value=W,e.emit("styleschanged",{fontSize:W})},$.dom.textContent="+",$.dom.onclick=()=>{W=Math.min(72,W+1),K.dom.value=W,e.emit("styleschanged",{fontSize:W})},K.dom.onchange=()=>{let t=parseInt(K.dom.value,10);!isNaN(t)&&t>=8&&t<=72?(W=t,e.emit("styleschanged",{fontSize:W})):K.dom.value=W},U.add(H),U.add(G),U.add(K),U.add($),_.add(U),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},o=(new b).setId("btn-o").setClass("box");F=new x("file"),F.dom.title=t.get(n[3]),F.dom.accept="application/epub+zip",F.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(n[4]))},F.dom.onclick=e=>{F.dom.blur()},o.add(F),_.add(o)}if(P=(new b).setId("btn-s").setClass("box"),j=new x("button"),j.setTitle(t.get(n[8])),j.dom.onclick=()=>{P.setClass("active"),(void 0).dom.focus()},P.add(j),_.add(P),s.bookmarks&&(V=(new b).setId("btn-b").setClass("box"),N=new x("button"),N.setTitle(t.get(n[5])),N.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),N.dom.blur()},V.add(N),_.add(V)),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");M=new x("button"),M.setTitle(t.get(n[6])),M.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(M),_.add(e)}a.add([o,T,_]),document.body.appendChild(a.dom),R=(new b).setId("btn-close").setClass("box"),q=new x("button").setClass("active"),q.setTitle(t.get(n[9])),R.add(q),_.add(R),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?V.removeClass("bookmarked"):V.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?V.addClass("bookmarked"):V.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(n[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(n[1])),h.setTitle(t.get(n[2]))),s.openbook&&F.setTitle(t.get(n[3])),s.bookmarks&&N.setTitle(t.get(n[5])),s.fullscreen&&M.setTitle(t.get(n[6])),s.background&&backgroundBtn.setTitle(t.get(n[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class B{constructor(e){const t=e.settings,s=(new b).setId("content");let a;if("content"===t.arrows){a=(new b).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()};const t=new m;t.dom.innerHTML='',a.add(t),s.add(a)}const n=(new b).setId("viewer");let o;if(s.add(n),e.on("colorchanged",(e=>{n.dom.style.backgroundColor=e})),"content"===t.arrows){o=(new b).setId("next").setClass("arrow"),o.dom.onclick=t=>{e.emit("next"),t.preventDefault()};const t=new m;t.dom.innerHTML='',o.add(t),s.add(o)}const i=(new b).setId("loader"),r=(new b).setId("divider"),d=(new b).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{n.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{n.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?o.addClass("disabled"):o.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(o.addClass("active"),setTimeout((()=>{o.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{n.clear()}))}}class z extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/contents"],n=new w(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new D(n).addClass("header")),e.on("navigation",(e=>{t.clear(),t.add(this.generateToc(e)),this.add(t)})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new S(t);return e.forEach((e=>{const t=new k(e.href,e.label),a=new T(s).setId(e.id),n=new m;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([n,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);n.setClass("toggle-collapsed"),n.dom.onclick=()=>(t.expanded?(t.collaps(),n.setClass("toggle-collapsed")):(t.expand(),n.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class O extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],n=new w(s.get(a[0])).setClass("label"),o=new x("button",s.get(a[1]));o.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new D([n,o]).addClass("header")),this.selector=void 0,this.bookmarks=new S,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{o.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0])),o.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new k,s=new T,a=(new m).setClass("btn-remove"),n=this.reader.navItemFromCfi(e);let o,i;if(void 0===n){const t=this.reader.book.spine.get(e);o=t.idref,i=t.idref}else o=n.id,i=n.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(o),this.bookmarks.add(s)}}class _ extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],n=new w(s.get(a[0])).setClass("label"),o=new x("button",s.get(a[1]));o.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new D([n,o]).addClass("header")),this.selector=void 0,this.notes=new S,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{o.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0])),o.setValue(s.get(a[1]))}))}set(e){const t=new k("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new m).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update();const n=document.getElementById("toolbar-annotations-list");if(n){const t=document.createElement("li"),s=document.createElement("a");s.href="#",s.textContent=e.text,s.onclick=t=>{t.preventDefault(),this.reader.rendition.display(e.cfi)},t.appendChild(s);const a=document.createElement("span");a.innerHTML='',a.onclick=t=>{t.stopPropagation(),this.reader.removeNoteFromToolbar(e)},t.appendChild(a),n.appendChild(t)}}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);if(-1===t)return;this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update();const s=document.getElementById("toolbar-annotations-list");s&&s.querySelectorAll("li").forEach((t=>{t.querySelector("a").textContent===e.text&&t.remove()}))}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class L extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings;let a;const n=new x("search").setId("nav-q");n.dom.placeholder=s.get("sidebar/search/placeholder"),n.dom.onsearch=()=>{const e=n.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new S,t.add(this.items),this.add([new D(n),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new k("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class A extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new w(t.get(s[0])).setClass("label");this.add(new D(a).addClass("header"));const n=new f(t.get(s[1]),"language-ui"),o=new g,i=(new v).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),o.add(n),o.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new y(16,1);l.dom.onchange=t=>{const s=parseInt(t.target.value);s>=8&&s<=72&&e.emit("styleschanged",{fontSize:s})},l.setId("fontsize"),d.add(r),d.add(l),l.dom.disabled=!0;const c=new f(t.get(s[3]),"flow"),h=new g,u=(new v).setOptions({paginated:"Paginated",scrolled:"Scrolled"});u.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},u.setId("flow"),h.add(c),h.add(u);const m=new y(800,1),b=new f(t.get(s[4]),"spread"),p=new g,k=(new v).setOptions({none:"None",auto:"Auto"});k.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),m.dom.disabled="none"===t.target.value},k.setId("spread"),p.add(b),p.add(k);const C=new f(t.get(s[5]),"min-spread-width"),I=new g;m.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},m.setId("min-spread-width"),I.add(C),I.add(m);const S=t.get("sidebar/settings/pagination"),T=new g,E=new x("checkbox",!1,S[1]);E.setId("pagination"),E.dom.onclick=e=>{},T.add(new f(S[0],"pagination")),T.add(E),this.add(new D([o,d,h,p,I])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),u.setValue(e.flow),k.setValue(e.spread.mod),m.setValue(e.spread.min),m.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(k.setValue("none"),k.dom.disabled=!0,m.dom.disabled=!0):k.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),n.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),b.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class F extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a={},n="sidebar/metadata",o=new w(s.get(n)).setClass("label");this.add(new D(o).addClass("header")),a[n]=o,this.items=new S,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const o=new T,i=(new w).setClass("label"),r=(new w).setClass("value");i.setValue(s.get(n+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[n+"/"+e]=i,o.add([i,r]),this.items.add(o)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===n?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class P{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],n=new C("vertical").setId("sidebar"),o=(new b).setId("btn-p").addClass("box"),i=new x("button");if(i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},o.add(i),n.addMenu(o),n.addTab("btn-t",t.get(a[1]),new z(e)),s.bookmarks&&n.addTab("btn-d",t.get(a[2]),new O(e)),s.annotations){const s=new _(e);n.addTab("btn-a",t.get(a[3]),s),e.annotationsPanel=s}n.addTab("btn-s",t.get(a[4]),new L(e)),n.addTab("btn-c",t.get(a[5]),new A(e)),n.addTab("btn-i",t.get(a[6]),new F(e)),n.select("btn-t"),document.body.appendChild(n.dom),e.on("sidebaropener",(e=>{e?n.setClass("open"):n.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),n.setLabel("btn-t",t.get(a[1])),s.bookmarks&&n.setLabel("btn-d",t.get(a[2])),s.annotations&&n.setLabel("btn-a",t.get(a[3])),n.setLabel("btn-s",t.get(a[4])),n.setLabel("btn-c",t.get(a[5])),n.setLabel("btn-i",t.get(a[6]))}))}}class j{constructor(e){const t=(new b).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],n=new f(s.get(a[0]),"note-input"),o=new x("text","").setId("note-input");o.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new x("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:o.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&o.getValue().length>0)},t.add(new D([n,o,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),o.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{n.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class V{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("status-bar"),n=["status/fullscreen","status/apprec"],o=(new b).setClass("status-title"),i=(new b).setClass("status-action");let r,d=(new f).setClass("status-text").setTextContent("Trang cuối của chương");o.add(d);const l=(new b).setId("btn-ar").setClass("box");let c;if(r=new x("button"),r.setTitle(t.get(n[1])),r.dom.onclick=e=>{e.preventDefault()},l.add(r),i.add(l),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");c=new x("button"),c.setTitle(t.get(n[0])),c.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{document.fullscreenElement?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(c),i.add(e)}e.on("languagechanged",(e=>{s.fullscreen&&c.setTitle(t.get(n[0]))})),a.add([o,i]),document.body.appendChild(a.dom)}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class N{constructor(e,t){const s=s=>{const a=new URL(window.location);let n=e;t&&!t.openbook?(n=e,s&&this.storage.clear()):s&&0===a.search.length&&(n=s),this.cfgInit(n,t),this.strings=new c(this),this.toolbar=new E(this),this.content=new B(this),this.status=new V(this),this.sidebar=new P(this),this.settings.annotations&&(this.notedlg=new j(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("navigation",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"px")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:16},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=1,this.emit("styleschanged",{fontSize:t});break;case"-":t-=1,this.emit("styleschanged",{fontSize:t});break;case"0":t=16,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}n(N.prototype);var M=a.Reader;export{M as Reader}; //# sourceMappingURL=epubreader.min.js.map \ No newline at end of file diff --git a/dist/js/epubreader.min.js.map b/dist/js/epubreader.min.js.map index 70b4bba..d125fc1 100644 --- a/dist/js/epubreader.min.js.map +++ b/dist/js/epubreader.min.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.min.js","mappings":"qBAEA,IAAIA,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,MAErBC,EAAOC,QAAU,SAAUC,EAAMC,GACzC,IAAIC,EAAGC,EAAGC,EAAGC,EAASC,EAkBtB,OAjBIC,UAAUC,OAAS,GAAqB,iBAATR,GAClCK,EAAUJ,EACVA,EAAQD,EACRA,EAAO,MAEPK,EAAUE,UAAU,GAEjBd,EAAQO,IACXE,EAAIL,EAASY,KAAKT,EAAM,KACxBG,EAAIN,EAASY,KAAKT,EAAM,KACxBI,EAAIP,EAASY,KAAKT,EAAM,OAExBE,EAAIE,GAAI,EACRD,GAAI,GAGLG,EAAO,CAAEL,MAAOA,EAAOS,aAAcR,EAAGS,WAAYR,EAAGS,SAAUR,GACzDC,EAAiBV,EAAOC,EAAcS,GAAUC,GAAtCA,CACnB,GAEEO,GAAK,SAAUb,EAAMc,EAAKC,GAC3B,IAAIb,EAAGC,EAAGE,EAASC,EA6BnB,MA5BoB,iBAATN,GACVK,EAAUU,EACVA,EAAMD,EACNA,EAAMd,EACNA,EAAO,MAEPK,EAAUE,UAAU,GAEhBd,EAAQqB,GAEDpB,EAAgBoB,GAGhBrB,EAAQsB,GAERrB,EAAgBqB,KAC3BV,EAAUU,EACVA,OAAMC,GAHND,OAAMC,GAHNX,EAAUS,EACVA,EAAMC,OAAMC,GAHZF,OAAME,EAUHvB,EAAQO,IACXE,EAAIL,EAASY,KAAKT,EAAM,KACxBG,EAAIN,EAASY,KAAKT,EAAM,OAExBE,GAAI,EACJC,GAAI,GAGLG,EAAO,CAAEQ,IAAKA,EAAKC,IAAKA,EAAKL,aAAcR,EAAGS,WAAYR,GAClDE,EAAiBV,EAAOC,EAAcS,GAAUC,GAAtCA,CACnB,C,SC1DAR,EAAOC,QAAU,WAAa,C,gBCD9BD,EAAOC,QAAU,EAAQ,IAAR,GAAgCkB,OAAOtB,OAAS,EAAQ,I,UCAzEG,EAAOC,QAAU,WAChB,IAA4BmB,EAAxBvB,EAASsB,OAAOtB,OACpB,MAAsB,mBAAXA,IAEXA,EADAuB,EAAM,CAAEC,IAAK,OACD,CAAEC,IAAK,OAAS,CAAEC,KAAM,SAC7BH,EAAIC,IAAMD,EAAIE,IAAMF,EAAIG,OAAS,aACzC,C,gBCNA,IAAIC,EAAQ,EAAQ,IAChBrB,EAAQ,EAAQ,KAChBsB,EAAQC,KAAKD,IAEjBzB,EAAOC,QAAU,SAAU0B,EAAMC,GAChC,IAAIC,EAAOC,EAAsCjC,EAAnCa,EAASe,EAAIhB,UAAUC,OAAQ,GAS7C,IARAiB,EAAOR,OAAOhB,EAAMwB,IACpB9B,EAAS,SAAUkC,GAClB,IACCJ,EAAKI,GAAOH,EAAIG,EACjB,CAAE,MAAO1B,GACHwB,IAAOA,EAAQxB,EACrB,CACD,EACKyB,EAAI,EAAGA,EAAIpB,IAAUoB,EAEzBN,EADAI,EAAMnB,UAAUqB,IACNE,QAAQnC,GAEnB,QAAcqB,IAAVW,EAAqB,MAAMA,EAC/B,OAAOF,CACR,C,gBCpBA,IAAIM,EAAa,EAAQ,GAAR,GAEjBjC,EAAOC,QAAU,SAAUiC,GAAO,OAAOA,IAAQD,GAAsB,OAARC,CAAc,C,eCF7ElC,EAAOC,QAAU,EAAQ,IAAR,GAAgCkB,OAAOK,KAAO,EAAQ,I,UCAvExB,EAAOC,QAAU,WAChB,IAEC,OADAkB,OAAOK,KAAK,cACL,CACR,CAAE,MAAOnB,GACR,OAAO,CACR,CACD,C,gBCPA,IAAIV,EAAU,EAAQ,KAElB6B,EAAOL,OAAOK,KAElBxB,EAAOC,QAAU,SAAUkC,GAAU,OAAOX,EAAK7B,EAAQwC,GAAUhB,OAAOgB,GAAUA,EAAS,C,gBCJ7F,IAAIxC,EAAU,EAAQ,KAElBqC,EAAUI,MAAMC,UAAUL,QAASM,EAASnB,OAAOmB,OAQvDtC,EAAOC,QAAU,SAAUsC,GAC1B,IAAIC,EAASF,EAAO,MAKpB,OAJAN,EAAQrB,KAAKF,WAAW,SAAUF,GAC5BZ,EAAQY,IATD,SAAUqB,EAAKR,GAC5B,IAAIW,EACJ,IAAKA,KAAOH,EAAKR,EAAIW,GAAOH,EAAIG,EACjC,CAOEU,CAAQtB,OAAOZ,GAAUiC,EAC1B,IACOA,CACR,C,UCjBAxC,EAAOC,QAAU,SAAUyC,GAC1B,GAAkB,mBAAPA,EAAmB,MAAM,IAAIC,UAAUD,EAAK,sBACvD,OAAOA,CACR,C,gBCHA,IAAI/C,EAAU,EAAQ,KAEtBK,EAAOC,QAAU,SAAUE,GAC1B,IAAKR,EAAQQ,GAAQ,MAAM,IAAIwC,UAAU,gCACzC,OAAOxC,CACR,C,gBCLAH,EAAOC,QAAU,EAAQ,IAAR,GAAgC2C,OAAOP,UAAUtC,SAAW,EAAQ,I,UCArF,IAAI8C,EAAM,aAEV7C,EAAOC,QAAU,WAChB,MAA4B,mBAAjB4C,EAAI9C,WACgB,IAAxB8C,EAAI9C,SAAS,SAA2C,IAAxB8C,EAAI9C,SAAS,MACrD,C,UCLA,IAAI+C,EAAUF,OAAOP,UAAUS,QAE/B9C,EAAOC,QAAU,SAAU8C,GAC1B,OAAOD,EAAQnC,KAAKqC,KAAMD,EAActC,UAAU,KAAO,CAC1D,C,eCJA,IASIwC,EAAIC,EAAMC,EAAKC,EAAMC,EAASC,EAAaC,EAT3CC,EAAW,EAAQ,KACnBC,EAAW,EAAQ,KAEnBC,EAAQC,SAAStB,UAAUqB,MAAO/C,EAAOgD,SAAStB,UAAU1B,KAC5D2B,EAASnB,OAAOmB,OAAQsB,EAAiBzC,OAAOyC,eAChDC,EAAmB1C,OAAO0C,iBAC1BC,EAAiB3C,OAAOkB,UAAUyB,eAClCC,EAAa,CAAEnD,cAAc,EAAMC,YAAY,EAAOC,UAAU,GAuBpEoC,EAAO,SAAUc,EAAMC,GACtB,IAAIf,EAAMgB,EAUV,OARAT,EAASQ,GACTC,EAAOlB,KACPC,EAAGtC,KAAKqC,KAAMgB,EAAMd,EAAO,WAC1BC,EAAIxC,KAAKuD,EAAMF,EAAMd,GACrBQ,EAAM/C,KAAKsD,EAAUjB,KAAMvC,UAC5B,GAEAyC,EAAKiB,mBAAqBF,EACnBjB,IACR,EAoEAK,EAAU,CACTJ,GApGDA,EAAK,SAAUe,EAAMC,GACpB,IAAIG,EAeJ,OAbAX,EAASQ,GAEJH,EAAenD,KAAKqC,KAAM,UAK9BoB,EAAOpB,KAAKqB,QAJZD,EAAOL,EAAW5D,MAAQmC,EAAO,MACjCsB,EAAeZ,KAAM,SAAUe,GAC/BA,EAAW5D,MAAQ,MAIfiE,EAAKJ,GACqB,iBAAfI,EAAKJ,GAAoBI,EAAKJ,GAAMM,KAAKL,GACpDG,EAAKJ,GAAQ,CAACI,EAAKJ,GAAOC,GAFdG,EAAKJ,GAAQC,EAIvBjB,IACR,EAoFCE,KAAMA,EACNC,IArEDA,EAAM,SAAUa,EAAMC,GACrB,IAAIG,EAAMG,EAAWC,EAAW1C,EAIhC,GAFA2B,EAASQ,IAEJH,EAAenD,KAAKqC,KAAM,UAAW,OAAOA,KAEjD,KADAoB,EAAOpB,KAAKqB,QACFL,GAAO,OAAOhB,KAGxB,GAAyB,iBAFzBuB,EAAYH,EAAKJ,IAGhB,IAAKlC,EAAI,EAAI0C,EAAYD,EAAUzC,KAAOA,EACpC0C,IAAcP,GAChBO,EAAUL,qBAAuBF,IACV,IAArBM,EAAU7D,OAAc0D,EAAKJ,GAAQO,EAAUzC,EAAI,EAAI,GACtDyC,EAAUE,OAAO3C,EAAG,SAItByC,IAAcN,GAChBM,EAAUJ,qBAAuBF,UAC5BG,EAAKJ,GAId,OAAOhB,IACR,EA4CCI,KA1CDA,EAAO,SAAUY,GAChB,IAAIlC,EAAG4C,EAAGT,EAAUM,EAAWI,EAE/B,GAAKb,EAAenD,KAAKqC,KAAM,YAC/BuB,EAAYvB,KAAKqB,OAAOL,IAGxB,GAAyB,iBAAdO,EAAwB,CAGlC,IAFAG,EAAIjE,UAAUC,OACdiE,EAAO,IAAIvC,MAAMsC,EAAI,GAChB5C,EAAI,EAAGA,EAAI4C,IAAK5C,EAAG6C,EAAK7C,EAAI,GAAKrB,UAAUqB,GAGhD,IADAyC,EAAYA,EAAUK,QACjB9C,EAAI,EAAImC,EAAWM,EAAUzC,KAAOA,EACxC4B,EAAM/C,KAAKsD,EAAUjB,KAAM2B,EAE7B,MACC,OAAQlE,UAAUC,QAClB,KAAK,EACJC,EAAKA,KAAK4D,EAAWvB,MACrB,MACD,KAAK,EACJrC,EAAKA,KAAK4D,EAAWvB,KAAMvC,UAAU,IACrC,MACD,KAAK,EACJE,EAAKA,KAAK4D,EAAWvB,KAAMvC,UAAU,GAAIA,UAAU,IACnD,MACD,QAGC,IAFAiE,EAAIjE,UAAUC,OACdiE,EAAO,IAAIvC,MAAMsC,EAAI,GAChB5C,EAAI,EAAGA,EAAI4C,IAAK5C,EACpB6C,EAAK7C,EAAI,GAAKrB,UAAUqB,GAEzB4B,EAAM/C,KAAK4D,EAAWvB,KAAM2B,GAG/B,GASArB,EAAc,CACbL,GAAIO,EAAEP,GACNC,KAAMM,EAAEN,GACRC,IAAKK,EAAEL,GACPC,KAAMI,EAAEJ,IAGTG,EAAOM,EAAiB,CAAC,EAAGP,GAE5BtD,EAAOC,QAAUA,EAAU,SAAU4E,GACpC,OAAa,MAALA,EAAavC,EAAOiB,GAAQM,EAAiB1C,OAAO0D,GAAIvB,EACjE,EACArD,EAAQoD,QAAUA,C,eCjIlB,IAAIyB,EAAc,EAAQ,KAE1B9E,EAAOC,QAAU,SAAUE,GAC1B,GAAqB,mBAAVA,EAAsB,OAAO,EAExC,IAAK2D,eAAenD,KAAKR,EAAO,UAAW,OAAO,EAElD,IACC,GAA4B,iBAAjBA,EAAMO,OAAqB,OAAO,EAC7C,GAA0B,mBAAfP,EAAMQ,KAAqB,OAAO,EAC7C,GAA2B,mBAAhBR,EAAMuD,MAAsB,OAAO,CAC/C,CAAE,MAAO7B,GACR,OAAO,CACR,CAEA,OAAQiD,EAAY3E,EACrB,C,gBChBA,IAAIR,EAAU,EAAQ,KAGlBoF,EAAgB,CAAE,QAAU,EAAM,UAAY,EAAM,WAAa,GAErE/E,EAAOC,QAAU,SAAUE,GAC1B,QAAKR,EAAQQ,IACN2D,eAAenD,KAAKoE,SAAsB5E,EAClD,C,gBCRA,IAAI6E,EAAa,EAAQ,IAErBC,EAAU,mBAAoBC,EAAmBvB,SAAStB,UAAU8C,SAExEnF,EAAOC,QAAU,SAAUE,GAC1B,QAAK6E,EAAW7E,KACZ8E,EAAQG,KAAKF,EAAiBvE,KAAKR,GAExC,C,gBCRA,IAAIkF,EAAW,EAAQ,KAEvBrF,EAAOC,QAAU,SAAUE,GAC1B,IAAKkF,EAASlF,GAAQ,OAAO,EAC7B,IACC,QAAKA,EAAMmF,aACJnF,EAAMmF,YAAYjD,YAAclC,CACxC,CAAE,MAAO0B,GACR,OAAO,CACR,CACD,C,UCPA7B,EAAOC,QAAU,SAAUE,GAAS,OAAOA,OAAwC,C,GCJ/EoF,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBvE,IAAjBwE,EACH,OAAOA,EAAazF,QAGrB,IAAID,EAASuF,EAAyBE,GAAY,CAGjDxF,QAAS,CAAC,GAOX,OAHA0F,EAAoBF,GAAUzF,EAAQA,EAAOC,QAASuF,GAG/CxF,EAAOC,OACf,CCrBAuF,EAAoBhC,EAAI,CAACvD,EAAS2F,KACjC,IAAI,IAAI7D,KAAO6D,EACXJ,EAAoBX,EAAEe,EAAY7D,KAASyD,EAAoBX,EAAE5E,EAAS8B,IAC5EZ,OAAOyC,eAAe3D,EAAS8B,EAAK,CAAElB,YAAY,EAAMG,IAAK4E,EAAW7D,IAE1E,ECNDyD,EAAoBX,EAAI,CAACzD,EAAKyE,IAAU1E,OAAOkB,UAAUyB,eAAenD,KAAKS,EAAKyE,GCClFL,EAAoBM,EAAK7F,IACH,oBAAX8F,QAA0BA,OAAOC,aAC1C7E,OAAOyC,eAAe3D,EAAS8F,OAAOC,YAAa,CAAE7F,MAAO,WAE7DgB,OAAOyC,eAAe3D,EAAS,aAAc,CAAEE,OAAO,GAAO,E,kDCL9D,MAAMqD,EAAI,CAACpC,EAAKyE,IAASzE,EAAMA,EAAIyE,QAAQ3E,EAErC+E,EAAI,CAACrE,EAAKsE,EAAKC,EAAKN,KACtB,IAAI3D,EACJ,GAAyB,kBAAdgE,EAAIL,GACX,OAAQA,GACJ,IAAK,cACL,IAAK,YACD3D,EAAMgE,EAAIL,GAAQjE,EAAIiE,GAAQK,EAAIL,GAClC,MACJ,QACI3D,EAAMgE,EAAIL,QAIlB3D,EADgB,WAAT2D,EACDK,EAAIL,QAEa3E,IAAjBsC,EAAE2C,EAAKN,GAAsBjE,EAAIiE,GAAQK,EAAIL,GAEvD,OAAO3D,GAGEkE,EAAS,CAACxE,EAAKsE,EAAKC,KAC7B,IAAK,IAAIN,KAAQjE,EACA,aAATiE,IAEOK,EAAIL,aAAiBzD,MAC5B8D,EAAIL,GAAQM,EAAOvE,EAAIiE,GAAQjE,EAAIiE,GAAQK,EAAIL,GAASjE,EAAIiE,GACrDK,EAAIL,aAAiB1E,OAC5BiF,EAAOxE,EAAIiE,GAAOK,EAAIL,GAAOrC,EAAE2C,EAAKN,IAEpCK,EAAIL,GAAQM,EAAMF,EAAErE,EAAKsE,EAAKC,EAAKN,GAAQjE,EAAIiE,GAEvD,EAGSQ,EAAO,KAChB,IAAI7C,GAAI,IAAI8C,MAAOC,UAMnB,MALa,uCAAuCC,QAAQ,SAAUpG,IAClE,IAAI0F,GAAKtC,EAAoB,GAAhB9B,KAAK+E,UAAiB,GAAK,EAExC,OADAjD,EAAI9B,KAAKgF,MAAMlD,EAAI,KACL,MAANpD,EAAY0F,EAAS,EAAJA,EAAU,GAAMX,SAAS,GAAE,GAEjDkB,EC3CJ,MAAMM,EAEZ,WAAArB,GAECtC,KAAK4D,KAAO,gBACZ5D,KAAK6D,QAAU,EACf7D,KAAK8D,GACL9D,KAAK+D,UAAYC,OAAOD,WACvBC,OAAOC,iBACPD,OAAOE,cACPF,OAAOG,YACPH,OAAOI,iBAEelG,IAAnB8B,KAAK+D,WAERM,QAAQxF,MAAM,mDAEhB,CAEA,IAAAyF,CAAKC,GAEJ,QAAuBrG,IAAnB8B,KAAK+D,UAER,YADAQ,IAID,MAAMC,EAAOlB,KAAKmB,MACZC,EAAWrH,GAAMgH,QAAQxF,MAAM,YAAaxB,GAC5CsH,EAAUZ,UAAUa,KAAK5E,KAAK4D,KAAM5D,KAAK6D,SAC/Cc,EAAQE,gBAAmBxH,IAE1B,MAAMyG,EAAKzG,EAAEyH,OAAOtF,QAC4B,IAA5CsE,EAAGiB,iBAAiBhI,SAAS,YAChC+G,EAAGkB,kBAAkB,UACtB,EAGDL,EAAQM,UAAa5H,IAEpB2C,KAAK8D,GAAKzG,EAAEyH,OAAOtF,OACnBQ,KAAK8D,GAAGY,QAAUA,EAClBH,IACAF,QAAQa,IAAI,iBAAiB5B,KAAKmB,MAAQD,OAAU,EAGrDG,EAAQD,QAAUA,CACnB,CAEA,GAAA1G,CAAIuG,GAEH,QAAgBrG,IAAZ8B,KAAK8D,GAER,YADAS,IAID,MAAMC,EAAOlB,KAAKmB,MACEzE,KAAK8D,GAAGqB,YAAY,CAAC,WAAY,aACrBC,YAAY,WAChBpH,IAAI,GACxBiH,UAAa5H,IAEpBkH,EAASlH,EAAEyH,OAAOtF,QAClB6E,QAAQa,IAAI,gBAAgB5B,KAAKmB,MAAQD,OAAU,CAErD,CAEA,GAAAvG,CAAImD,EAAMmD,GAET,QAAgBrG,IAAZ8B,KAAK8D,GAER,YADAS,IAID,MAAMC,EAAOlB,KAAKmB,MACEzE,KAAK8D,GAAGqB,YAAY,CAAC,WAAY,aACrBC,YAAY,WAChBC,IAAIjE,EAAM,GAC9B6D,UAAY,KAEnBV,IACAF,QAAQa,IAAI,gBAAgB5B,KAAKmB,MAAQD,OAAU,CAErD,CAEA,KAAAc,GAEC,QAAgBpH,IAAZ8B,KAAK8D,GACR,OAGD,MAAMU,EAAOlB,KAAKmB,MACEzE,KAAK8D,GAAGqB,YAAY,CAAC,WAAY,aACrBC,YAAY,WAChBE,QACpBL,UAAY,KAEnBZ,QAAQa,IAAI,kBAAkB5B,KAAKmB,MAAQD,OAAU,CAEvD,EClGM,MAAMe,EAEZ,WAAAjD,CAAYkD,GAEXxF,KAAKyF,SAAWD,EAAOE,SAASD,UAAY,KAC5CzF,KAAK2F,OAAS,CACbC,GAAI,CACH,kBAAmB,UACnB,eAAgB,gBAChB,eAAgB,YAChB,mBAAoB,YACpB,yBAA0B,+HAC1B,mBAAoB,6BACpB,qBAAsB,aACtB,qBAAsB,oBAEtB,gBAAiB,gBACjB,mBAAoB,WACpB,oBAAqB,YACrB,wBAAyB,MACzB,2BAA4B,SAC5B,0BAA2B,QAC3B,sBAAuB,cACvB,0BAA2B,MAC3B,6BAA8B,SAC9B,4BAA6B,QAC7B,6BAA8B,SAC9B,6BAA8B,SAC9B,iBAAkB,SAClB,6BAA8B,SAC9B,mBAAoB,WACpB,4BAA6B,WAC7B,4BAA6B,gBAC7B,wBAAyB,OACzB,8BAA+B,CAAC,aAAc,uBAC9C,0BAA2B,SAC3B,mCAAoC,uBACpC,mBAAoB,WACpB,yBAA0B,QAC1B,2BAA4B,UAC5B,+BAAgC,cAChC,2BAA4B,UAC5B,6BAA8B,YAC9B,8BAA+B,aAC/B,4BAA6B,WAC7B,0BAA2B,SAC3B,iCAAkC,gBAClC,0BAA2B,SAC3B,wBAAyB,OACzB,0BAA2B,SAC3B,6BAA8B,YAE9B,gBAAiB,OACjB,cAAe,OAEhBC,GAAI,CACH,kBAAmB,iBACnB,eAAgB,MAChB,eAAgB,MAChB,mBAAoB,wBACpB,yBAA0B,wJAC1B,mBAAoB,6BACpB,qBAAsB,cACtB,qBAAsB,yBAEtB,gBAAiB,MACjB,mBAAoB,WACpB,oBAAqB,eACrB,wBAAyB,UACzB,2BAA4B,UAC5B,0BAA2B,eAC3B,sBAAuB,cACvB,0BAA2B,UAC3B,6BAA8B,UAC9B,4BAA6B,eAC7B,6BAA8B,QAC9B,6BAA8B,UAC9B,iBAAkB,aAClB,6BAA8B,aAC9B,mBAAoB,WACpB,4BAA6B,SAC7B,4BAA6B,MAC7B,wBAAyB,MACzB,8BAA+B,CAAC,aAAc,0BAC9C,0BAA2B,MAC3B,mCAAoC,MACpC,mBAAoB,MACpB,yBAA0B,MAC1B,2BAA4B,MAC5B,+BAAgC,MAChC,2BAA4B,MAC5B,6BAA8B,MAC9B,8BAA+B,MAC/B,4BAA6B,SAC7B,0BAA2B,MAC3B,iCAAkC,MAClC,0BAA2B,MAC3B,wBAAyB,MACzB,0BAA2B,MAC3B,6BAA8B,MAE9B,gBAAiB,MACjB,cAAe,WAEhBC,GAAI,CACH,kBAAmB,QACnB,eAAgB,MAChB,eAAgB,MAChB,mBAAoB,OACpB,yBAA0B,kFAC1B,mBAAoB,eACpB,qBAAsB,UACtB,qBAAsB,UAEtB,gBAAiB,MACjB,mBAAoB,KACpB,oBAAqB,IACrB,wBAAyB,KACzB,2BAA4B,KAC5B,0BAA2B,MAC3B,sBAAuB,KACvB,0BAA2B,KAC3B,2BAA4B,KAC5B,4BAA6B,MAC7B,6BAA8B,OAC9B,6BAA8B,QAC9B,iBAAkB,KAClB,6BAA8B,KAC9B,mBAAoB,KACpB,4BAA6B,OAC7B,4BAA6B,MAC7B,wBAAyB,MACzB,8BAA+B,CAAC,WAAY,mBAC5C,0BAA2B,MAC3B,mCAAoC,MACpC,mBAAoB,MACpB,yBAA0B,MAC1B,2BAA4B,MAC5B,+BAAgC,MAChC,2BAA4B,MAC5B,6BAA8B,MAC9B,8BAA+B,MAC/B,4BAA6B,OAC7B,0BAA2B,MAC3B,iCAAkC,MAClC,0BAA2B,MAC3B,wBAAyB,MACzB,0BAA2B,MAC3B,6BAA8B,MAE9B,gBAAiB,MACjB,cAAe,MAEhBC,GAAI,CACH,kBAAmB,iBACnB,eAAgB,sBAChB,eAAgB,oBAChB,mBAAoB,gBACpB,yBAA0B,8IAC1B,mBAAoB,mCACpB,qBAAsB,sBACtB,qBAAsB,eAEtB,gBAAiB,yBACjB,mBAAoB,aACpB,oBAAqB,WACrB,wBAAyB,WACzB,2BAA4B,UAC5B,0BAA2B,WAC3B,sBAAuB,YACvB,0BAA2B,WAC3B,6BAA8B,UAC9B,4BAA6B,WAC7B,6BAA8B,QAC9B,6BAA8B,SAC9B,iBAAkB,QAClB,6BAA8B,QAC9B,mBAAoB,YACpB,4BAA6B,OAC7B,4BAA6B,gBAC7B,wBAAyB,QACzB,8BAA+B,CAAC,oBAAqB,kCACrD,0BAA2B,WAC3B,mCAAoC,sBACpC,mBAAoB,aACpB,yBAA0B,YAC1B,2BAA4B,QAC5B,+BAAgC,WAChC,2BAA4B,kBAC5B,6BAA8B,WAC9B,8BAA+B,gBAC/B,4BAA6B,OAC7B,0BAA2B,WAC3B,iCAAkC,iBAClC,0BAA2B,QAC3B,wBAAyB,QACzB,0BAA2B,WAC3B,6BAA8B,cAE9B,gBAAiB,UACjB,cAAe,YAEhBC,GAAI,CACH,kBAAmB,YACnB,eAAgB,cAChB,eAAgB,gBAChB,mBAAoB,UACpB,yBAA0B,0IAC1B,mBAAoB,+BACpB,qBAAsB,gBACtB,qBAAsB,cAEtB,gBAAiB,iBACjB,mBAAoB,WACpB,oBAAqB,YACrB,wBAAyB,iBACzB,2BAA4B,gBAC5B,0BAA2B,MAC3B,sBAAuB,YACvB,0BAA2B,iBAC3B,6BAA8B,gBAC9B,4BAA6B,MAC7B,6BAA8B,MAC9B,6BAA8B,MAC9B,iBAAkB,WAClB,6BAA8B,MAC9B,mBAAoB,UACpB,4BAA6B,WAC7B,4BAA6B,aAC7B,wBAAyB,MACzB,8BAA+B,CAAC,MAAO,OACvC,0BAA2B,MAC3B,mCAAoC,OACpC,mBAAoB,WACpB,yBAA0B,SAC1B,2BAA4B,iBAC5B,+BAAgC,QAChC,2BAA4B,WAC5B,6BAA8B,eAC9B,8BAA+B,YAC/B,4BAA6B,WAC7B,0BAA2B,QAC3B,iCAAkC,eAClC,0BAA2B,MAC3B,wBAAyB,MACzB,0BAA2B,MAC3B,6BAA8B,MAE9B,gBAAiB,MACjB,cAAe,QAIjBR,EAAOvF,GAAG,mBAAoB9C,IAC7B6C,KAAKyF,SAAWtI,CAAK,GAEvB,CAEA,GAAAa,CAAIe,GAAO,OAAOiB,KAAK2F,OAAO3F,KAAKyF,UAAU1G,IAAQ,KAAO,EC9P7D,MAAMkH,EAAY,mCAMX,MAAMC,EAEZ,WAAA5D,CAAY6D,GAEXnG,KAAKoG,IAAMC,SAASC,cAAcH,EACnC,CAEA,GAAAI,GAEC,IAAK,IAAIzH,EAAI,EAAGA,EAAIrB,UAAUC,OAAQoB,IAAK,CAE1C,MAAM0H,EAAW/I,UAAUqB,GAE3B,GAAI0H,aAAoBN,EAEvBlG,KAAKoG,IAAIK,YAAYD,EAASJ,UAExB,GAAIhH,MAAMsH,QAAQF,GAExB,IAAK,IAAIG,EAAI,EAAGA,EAAIH,EAAS9I,OAAQiJ,IAAK,CAEzC,MAAMC,EAAUJ,EAASG,GAErBC,aAAmBV,EAEtBlG,KAAKoG,IAAIK,YAAYG,EAAQR,KAG7B/B,QAAQxF,MAAM,aAAc+H,EAASX,EAEvC,MAGA5B,QAAQxF,MAAM,aAAc2H,EAAUP,EAExC,CACA,OAAOjG,IACR,CAEA,MAAA6G,GAEC,IAAK,IAAI/H,EAAI,EAAGA,EAAIrB,UAAUC,OAAQoB,IAAK,CAE1C,MAAM0H,EAAW/I,UAAUqB,GAEvB0H,aAAoBN,EAEvBlG,KAAKoG,IAAIU,YAAYN,EAASJ,KAEpBW,OAAOC,UAAUR,GAE3BxG,KAAKoG,IAAIU,YAAY9G,KAAKoG,IAAIa,WAAWT,IAGzCnC,QAAQxF,MAAM,aAAc2H,EAAUP,EAExC,CACA,OAAOjG,IACR,CAEA,KAAAsF,GAEC,KAAOtF,KAAKoG,IAAIc,SAASxJ,QAExBsC,KAAKoG,IAAIU,YAAY9G,KAAKoG,IAAIe,WAE/B,OAAOnH,IACR,CAEA,KAAAoH,CAAMC,GAGL,OADArH,KAAKoG,IAAIiB,GAAKA,EACPrH,IACR,CAEA,KAAAsH,GAEC,OAAOtH,KAAKoG,IAAIiB,EACjB,CAEA,eAAAE,CAAgB3D,GAGf,OADA5D,KAAKoG,IAAImB,gBAAgB3D,GAClB5D,IACR,CAEA,QAAAwH,CAAS5D,GAGR,OADA5D,KAAKoG,IAAIqB,UAAY7D,EACd5D,IACR,CAEA,QAAA0H,CAAS9D,GAGR,OADA5D,KAAKoG,IAAIuB,UAAUpB,IAAI3C,GAChB5D,IACR,CAEA,WAAA4H,CAAYhE,GAGX,OADA5D,KAAKoG,IAAIuB,UAAUd,OAAOjD,GACnB5D,IACR,CAEA,QAAA6H,CAAS9I,EAAK5B,GAGb,OADA6C,KAAKoG,IAAI0B,MAAM/I,GAAO5B,EACf6C,IACR,CAEA,QAAA+H,GAEC,OAAO/H,KAAKoG,IAAI4B,KACjB,CAEA,QAAAC,CAASD,GAIR,OAFIhI,KAAKoG,IAAI4B,QAAUA,GAASA,IAC/BhI,KAAKoG,IAAI4B,MAAQA,GACXhI,IACR,CAEA,cAAAkI,GAEC,OAAOlI,KAAKoG,IAAI+B,WACjB,CAEA,cAAAC,CAAeC,GAId,OAFIrI,KAAKoG,IAAI+B,cAAgBE,GAAQA,IACpCrI,KAAKoG,IAAI+B,YAAcE,GACjBrI,IACR,CAEA,qBAAAsI,GAEC,OAAOtI,KAAKoG,IAAIkC,uBACjB,EAOM,MAAMC,UAAerC,EAE3B,WAAA5D,CAAY+F,GAEXG,MAAM,QACNxI,KAAKoI,eAAeC,EACrB,EAMM,MAAMI,UAAcvC,EAE1B,WAAA5D,GAECkG,MAAM,MACP,CAEA,QAAAhB,CAASC,GAER,OADAzH,KAAKoG,IAAIqB,UAAYA,EACdzH,IACR,CAEA,QAAA0H,CAASD,GAER,OADAzH,KAAKoG,IAAIuB,UAAUpB,IAAIkB,GAChBzH,IACR,EAMM,MAAM0I,UAAcD,EAE1B,WAAAnG,GAECkG,QAEAxI,KAAKoG,IAAIqB,UAAY,KACtB,EAMM,MAAMkB,UAAgBF,EAE5B,WAAAnG,GAECkG,QAEAxI,KAAKoG,IAAIqB,UAAY,OACtB,EAQM,MAAMmB,UAAgB1C,EAE5B,WAAA5D,CAAY+F,EAAMhB,GAEjBmB,MAAM,SAENxI,KAAKoG,IAAI+B,YAAcE,EACnBhB,IAAIrH,KAAKoG,IAAIyC,QAAUxB,EAC5B,EAQM,MAAMyB,UAAe5C,EAE3B,WAAA5D,CAAYyG,EAAMV,GAEjBG,MAAM,KAENxI,KAAKoG,IAAI2C,KAAOA,GAAQ,IACxB/I,KAAKoG,IAAI+B,YAAcE,GAAQ,EAChC,CAEA,OAAAW,CAAQC,GAGP,OADAjJ,KAAKoG,IAAI2C,KAAOE,EACTjJ,IACR,EAOM,MAAMkJ,UAAeX,EAE3B,WAAAjG,CAAY+F,GAEXG,QAEAxI,KAAKoG,IAAI+B,YAAcE,CACxB,CAEA,QAAAc,GAEC,OAAOnJ,KAAKoG,IAAI+B,WACjB,CAEA,QAAAiB,CAASf,GAGR,OADArI,KAAKoG,IAAI+B,YAAcE,EAChBrI,IACR,EAkCM,MAAMqJ,UAAiBnD,EAE7B,WAAA5D,GAECkG,MAAM,SACP,CAEA,WAAAc,CAAYC,GAGX,OADAvJ,KAAKoG,IAAIoD,SAAWD,IAAW,EACxBvJ,IACR,CAEA,UAAAyJ,CAAWlM,GAEV,MAAMmM,EAAW1J,KAAKoG,IAAIjJ,MAC1B6C,KAAKsF,QAEL,IAAK,MAAMvG,KAAOxB,EAAS,CAE1B,MAAMoM,EAAStD,SAASC,cAAc,UACtCqD,EAAOxM,MAAQ4B,EACf4K,EAAOtB,KAAO9K,EAAQwB,GACtBiB,KAAKoG,IAAIK,YAAYkD,EACtB,CAEA,OADA3J,KAAKoG,IAAIjJ,MAAQuM,EACV1J,IACR,CAEA,QAAAmJ,GAEC,OAAOnJ,KAAKoG,IAAIjJ,KACjB,CAEA,QAAAiM,CAASjM,GAMR,OAJAA,EAAQyC,OAAOzC,GAEX6C,KAAKoG,IAAIjJ,QAAUA,IACtB6C,KAAKoG,IAAIjJ,MAAQA,GACX6C,IACR,EASM,MAAM4J,UAAgB1D,EAE5B,WAAA5D,CAAYtB,EAAM7D,EAAO6K,GAExBQ,MAAM,SAENxI,KAAKoG,IAAIpF,KAAOA,EAChBhB,KAAKoG,IAAIyD,UAAaxM,IAErBA,EAAEyM,iBAAiB,EAEpB9J,KAAKoJ,SAASjM,GACd6C,KAAKiI,SAASD,EACf,CAEA,OAAA+B,GAEC,OAAO/J,KAAKoG,IAAIxC,IACjB,CAEA,OAAAoG,CAAQpG,GAGP,OADA5D,KAAKoG,IAAIxC,KAAOA,EACT5D,IACR,CAEA,OAAAiK,GAEC,OAAOjK,KAAKoG,IAAIpF,IACjB,CAEA,OAAAkJ,CAAQlJ,GAGP,OADAhB,KAAKoG,IAAIpF,KAAOA,EACThB,IACR,CAEA,QAAAmJ,GAEC,OAAOnJ,KAAKoG,IAAIjJ,KACjB,CAEA,QAAAiM,CAASjM,GAIR,OAFI6C,KAAKoG,IAAIjJ,QAAUA,QAAmBe,IAAVf,IAC/B6C,KAAKoG,IAAIjJ,MAAQA,GACX6C,IACR,EAsDM,MAAMmK,UAAiBjE,EAE7B,WAAA5D,CAAYnF,EAAOiN,EAAMC,EAAK5L,EAAK6L,GAElC9B,MAAM,SAENxI,KAAKoG,IAAIpF,KAAO,SAChBhB,KAAKoG,IAAIgE,KAAOA,GAAQ,EACxBpK,KAAKoG,IAAIyD,UAAaxM,IAErBA,EAAEyM,iBAAiB,EAEpB9J,KAAK7C,MAAQA,GAAS,EACtB6C,KAAKqK,IAAMA,IAAO,IAClBrK,KAAKvB,IAAMA,GAAO,IAClBuB,KAAKsK,UAAYA,GAAa,EAC9BtK,KAAKoJ,SAASjM,GACd6C,KAAKoG,IAAImE,SAAYlN,IAEpB2C,KAAKoJ,SAASpJ,KAAK7C,MAAM,CAE3B,CAEA,OAAA4M,GAEC,OAAO/J,KAAKoG,IAAIxC,IACjB,CAEA,OAAAoG,CAAQpG,GAGP,OADA5D,KAAKoG,IAAIxC,KAAOA,EACT5D,IACR,CAEA,YAAAwK,CAAaF,GAIZ,OAFAtK,KAAKsK,UAAYA,EACjBtK,KAAKoJ,SAASpJ,KAAK7C,OACZ6C,IACR,CAEA,QAAAyK,CAASJ,EAAK5L,GAMb,OAJAuB,KAAKqK,IAAMA,EACXrK,KAAKvB,IAAMA,EACXuB,KAAKoG,IAAIiE,IAAMA,EACfrK,KAAKoG,IAAI3H,IAAMA,EACRuB,IACR,CAEA,OAAA0K,CAAQN,GAGP,OADApK,KAAKoG,IAAIgE,KAAOA,EACTpK,IACR,CAEA,QAAAmJ,GAEC,OAAOwB,WAAW3K,KAAKoG,IAAIjJ,MAC5B,CAEA,QAAAiM,CAASjM,GAaR,YAXce,IAAVf,KACHA,EAAQwN,WAAWxN,IAEP6C,KAAKqK,MAChBlN,EAAQ6C,KAAKqK,KACVlN,EAAQ6C,KAAKvB,MAChBtB,EAAQ6C,KAAKvB,KAEduB,KAAK7C,MAAQA,EACb6C,KAAKoG,IAAIjJ,MAAQA,EAAMyN,QAAQ5K,KAAKsK,YAE9BtK,IACR,EAiDM,MAAM6K,UAAsBpC,EAElC,WAAAnG,CAAYwI,GAEXtC,QAEAxI,KAAK8K,MAAQA,GAAS,aACtB9K,KAAK+K,KAAO,GACZ/K,KAAKgL,OAAS,GACdhL,KAAKiL,UAAW,IAAI1C,GAASf,SAAS,gBACtCxH,KAAKkL,SAAU,IAAIzC,GAAQjB,SAAS,QACpCxH,KAAKmL,SAAU,IAAI1C,GAAQjB,SAAS,QACpCxH,KAAKmL,QAAQ5E,IAAIvG,KAAKiL,UACtBjL,KAAKoL,WAAY,IAAI3C,GAAQjB,SAAS,UACtCxH,KAAK0J,SAAW,GAChB1J,KAAKuG,IAAIvG,KAAKkL,SACdlL,KAAKuG,IAAIvG,KAAKmL,SACdnL,KAAKuG,IAAIvG,KAAKoL,UACf,CAEA,OAAAC,CAAQC,GACPtL,KAAKkL,QAAQ3E,IAAI+E,EAClB,CAEA,MAAAC,CAAOlE,EAAImE,EAAOF,GAEjB,MAAMG,EAAM,IAAIC,EAAMF,EAAOxL,MAC7ByL,EAAIrE,MAAMC,GACVoE,EAAIjE,SAAS,OACbxH,KAAK+K,KAAKzJ,KAAKmK,GACfzL,KAAKmL,QAAQ5E,IAAIkF,GAEjB,MAAME,EAAQ,IAAIlD,EAClBkD,EAAMvE,MAAMC,GACZsE,EAAMpF,IAAI+E,GACVtL,KAAKgL,OAAO1J,KAAKqK,GACjB3L,KAAKoL,UAAU7E,IAAIoF,GACnB3L,KAAK4L,OAAOvE,EACb,CAEA,MAAAuE,CAAOvE,GAEN,IAAK,IAAIoE,KAAOzL,KAAK+K,KAChBU,EAAIrF,IAAIiB,KAAOA,GAClBoE,EAAI/D,SAAS,YACb1H,KAAK6L,kBAAkBJ,IACbA,EAAIrF,IAAIiB,KAAOrH,KAAK0J,UAC9B+B,EAAI7D,YAAY,YAIlB,IAAK,IAAI+D,KAAS3L,KAAKgL,OAClBW,EAAMvF,IAAIiB,KAAOA,EACpBsE,EAAMvF,IAAI0B,MAAMgE,QAAU,QAChBH,EAAMvF,IAAIiB,KAAOrH,KAAK0J,WAChCiC,EAAMvF,IAAI0B,MAAMgE,QAAU,QAK5B,OADA9L,KAAK0J,SAAWrC,EACTrH,IACR,CAEA,QAAA+L,CAAS1E,EAAIgB,GAEZ,IAAK,IAAIoD,KAAOzL,KAAK+K,KACpB,GAAIU,EAAIrF,IAAIiB,KAAOA,EAAI,CACtBoE,EAAIxD,SAASI,GACb,KACD,CAEF,CAEA,iBAAAwD,CAAkBJ,GAEjB,IAAIO,EACJ,MAAMC,EAAOR,EAAInD,wBACE,eAAftI,KAAK8K,OACRkB,EAAOC,EAAKC,MAAQlM,KAAK+K,KAAKjL,QAAQ2L,GACtCzL,KAAKiL,SAAS7E,IAAI0B,MAAMqE,UAAY,cAAcH,SAElDA,EAAOC,EAAKG,OAASpM,KAAK+K,KAAKjL,QAAQ2L,GACvCzL,KAAKiL,SAAS7E,IAAI0B,MAAMqE,UAAY,cAAcH,OAEpD,EAQM,MAAMN,UAAcjD,EAE1B,WAAAnG,CAAY+F,EAAMgE,GAEjB7D,QACAxI,KAAKsM,OAAS,IAAI1C,EAAQ,UAC1B5J,KAAKsM,OAAOlG,IAAI4B,MAAQK,EACxBrI,KAAKoG,IAAImG,QAAWlP,IAEnBgP,EAAOT,OAAO5L,KAAKoG,IAAIiB,IACvBhK,EAAEmP,gBAAgB,EAEnBxM,KAAKuG,IAAIvG,KAAKsM,OACf,EAOM,MAAMG,UAAevG,EAE3B,WAAA5D,CAAY+J,GAEX7D,MAAM,MACNxI,KAAKqM,OAASA,GAAUA,EAAOA,OAC/BrM,KAAK0M,UAAW,CACjB,CAEA,MAAAC,GAMC,OAJA3M,KAAK0M,UAAW,EAChB1M,KAAKoG,IAAI0B,MAAMgE,QAAU,QACrB9L,KAAKqM,QACRrM,KAAKqM,OAAOM,SACN3M,IACR,CAEA,OAAA4M,GAIC,OAFA5M,KAAK0M,UAAW,EAChB1M,KAAKoG,IAAI0B,MAAMgE,QAAU,OAClB9L,IACR,EAOM,MAAM6M,UAAe3G,EAE3B,WAAA5D,CAAY+J,GAEX7D,MAAM,MACNxI,KAAKqM,OAASA,EACdrM,KAAK0J,UAAW,CACjB,CAEA,GAAAnD,GACC,IAAIuG,EAAM,EACV,MAAMC,GAAM,IAAItE,GAAQrB,MAAM,YAC9B,IAAK,IAAItI,EAAI,EAAGA,EAAIrB,UAAUC,OAAQoB,IAAK,CAC1C,MAAM0H,EAAW/I,UAAUqB,GACvB0H,aAAoBiG,EACvBjE,MAAMjC,IAAIC,IAEVuG,EAAIxG,IAAIC,GACRsG,IAEF,CAEA,OADIA,GAAKtE,MAAMjC,IAAIwG,GACZ/M,IACR,CAEA,MAAA4L,GAIC,OAFA5L,KAAK0J,UAAW,EAChB1J,KAAKwH,SAAS,YACPxH,IACR,CAEA,QAAAgN,GAIC,OAFAhN,KAAK0J,UAAW,EAChB1J,KAAKuH,gBAAgB,SACdvH,IACR,EAOM,MAAMiN,UAAc/G,EAE1B,WAAA5D,CAAYgJ,GAEX9C,MAAM,OACNxI,KAAKwH,SAAS,OACdxH,KAAKuG,IAAI+E,EACV,EClwBM,MAAM4B,EAEZ,WAAA5K,CAAYkD,GAEX,MAAM2H,EAAU3H,EAAO2H,QACjBzH,EAAWF,EAAOE,SAElB0H,GAAY,IAAI3E,GAAQrB,MAAM,WAC9B5I,EAAO,CACZ,kBACA,eACA,eACA,mBACA,yBACA,mBACA,qBACA,sBAIK6O,GAAQ,IAAI5E,GAAQjB,SAAS,UAC7B8F,GAAY,IAAI7E,GAAQrB,MAAM,SAASI,SAAS,OAChD+F,EAAY,IAAI3D,EAAQ,UAC9B2D,EAAUnH,IAAI4B,MAAQmF,EAAQnP,IAAIQ,EAAK,IACvC+O,EAAUnH,IAAImG,QAAWlP,IAExBmI,EAAOpF,KAAK,iBAAiB,GAC7BmN,EAAUnH,IAAIoH,OACdnQ,EAAEmP,gBAAgB,EAEnBc,EAAU/G,IAAIgH,GACdF,EAAM9G,IAAI+G,GAGV,IA2CIG,EAASC,EACTC,EAASC,EA5CTC,GAAY,IAAIjF,GAAUpB,SAAS,gBAAgBY,eAAe,kBAClE0F,GAAc,IAAIrF,GAAQrB,MAAM,gBAAgBI,SAAS,OACzDuG,EAAkB,IAAInE,EAAQ,UAAUpC,SAAS,qBACjDwG,EAAkB,IAAIpE,EAAQ,UAAUpC,SAAS,qBACjDyG,EAAgB,IAAIrE,EAAQ,QAAQpC,SAAS,mBAE7C0G,EAAWxI,EAASwI,UAAY,GACpCD,EAAc7H,IAAIjJ,MAAQ+Q,EAE1BH,EAAgB3H,IAAI+B,YAAc,IAClC4F,EAAgB3H,IAAImG,QAAU,KAC7B2B,EAAWxP,KAAKD,IAAI,EAAGyP,EAAW,GAClCD,EAAc7H,IAAIjJ,MAAQ+Q,EAE1B1I,EAAOpF,KAAK,gBAAiB,CAAE8N,SAAUA,GAAW,EAGrDF,EAAgB5H,IAAI+B,YAAc,IAClC6F,EAAgB5H,IAAImG,QAAU,KAC7B2B,EAAWxP,KAAK2L,IAAI,GAAI6D,EAAW,GACnCD,EAAc7H,IAAIjJ,MAAQ+Q,EAE1B1I,EAAOpF,KAAK,gBAAiB,CAAE8N,SAAUA,GAAW,EAGrDD,EAAc7H,IAAImE,SAAW,KAC5B,IAAI4D,EAAUC,SAASH,EAAc7H,IAAIjJ,MAAO,KAC3CkR,MAAMF,IAAYA,GAAW,GAAKA,GAAW,IACjDD,EAAWC,EAEX3I,EAAOpF,KAAK,gBAAiB,CAAE8N,SAAUA,KAEzCD,EAAc7H,IAAIjJ,MAAQ+Q,CAC3B,EAGDJ,EAAYvH,IAAIsH,GAChBC,EAAYvH,IAAIwH,GAChBD,EAAYvH,IAAI0H,GAChBH,EAAYvH,IAAIyH,GAChBX,EAAM9G,IAAIuH,GAKc,YAApBpI,EAAS4I,SACZb,GAAU,IAAIhF,GAAQrB,MAAM,SAASI,SAAS,OAC9CkG,EAAU,IAAI9D,EAAQ,UACtB8D,EAAQzF,SAASkF,EAAQnP,IAAIQ,EAAK,KAClCkP,EAAQtH,IAAImG,QAAWlP,IAEtBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,iBACFkB,EAAQtH,IAAIoH,MAAM,EAEnBC,EAAQlH,IAAImH,GACZL,EAAM9G,IAAIkH,GAEVE,GAAU,IAAIlF,GAAQrB,MAAM,SAASI,SAAS,OAC9CoG,EAAU,IAAIhE,EAAQ,UACtBgE,EAAQxH,IAAI4B,MAAQmF,EAAQnP,IAAIQ,EAAK,IACrCoP,EAAQxH,IAAImG,QAAWlP,IAEtBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,iBACFoB,EAAQxH,IAAIoH,MAAM,EAEnBG,EAAQpH,IAAIqH,GACZP,EAAM9G,IAAIoH,IAIX,MAAMY,GAAQ,IAAI9F,GAAQjB,SAAS,UAEnC,IAAIgH,EAAeC,EAoBfC,EA4CAC,EAAaC,EAkBbC,EA7DJ,GApBInJ,EAASoJ,aAEZN,GAAgB,IAAI/F,GAAQrB,MAAM,UAAUI,SAAS,OACrDiH,EAAc,IAAI7E,EAAQ,SAASpC,SAAS,gBAC5CiH,EAAYrI,IAAI4B,MAAQmF,EAAQnP,IAAIQ,EAAK,IAGzCiQ,EAAYrI,IAAI2I,QAAW1R,IAC1B,MAAM2R,EAAgB3R,EAAEyH,OAAO3H,MAG/BqI,EAAOpF,KAAK,eAAgB4O,EAAc,EAG3CR,EAAcjI,IAAIkI,GAClBF,EAAMhI,IAAIiI,IAKP9I,EAASuJ,SAAU,CACtB,MAAMC,EAAU7R,IAEfmI,EAAO2J,QAAQ7J,QACfE,EAAO2J,QAAQlR,IAAIZ,EAAEyH,OAAOtF,QAAQ,KACnCgG,EAAO4J,SACP5J,EAAOlB,KAAKjH,EAAEyH,OAAOtF,QACrB,MAAMyJ,EAAM,IAAIoG,IAAIrL,OAAOsL,SAASC,QACpCvL,OAAOwL,QAAQC,UAAU,CAAC,EAAG,GAAIxG,EAAI,GACpC,EAEGvE,EAAWrH,IAChBgH,QAAQxF,MAAMxB,EAAE,EAEXqS,GAAc,IAAIjH,GAAQrB,MAAM,SAASI,SAAS,OACxDkH,EAAc,IAAI9E,EAAQ,QAC1B8E,EAAYtI,IAAI4B,MAAQmF,EAAQnP,IAAIQ,EAAK,IACzCkQ,EAAYtI,IAAIuJ,OAAS,uBACzBjB,EAAYtI,IAAImE,SAAYlN,IAE3B,GAA8B,IAA1BA,EAAEyH,OAAO8K,MAAMlS,OAGnB,GAAIsG,OAAO6L,WAAY,CAEtB,MAAMhK,EAAK,IAAIgK,WACfhK,EAAGqJ,OAASA,EACZrJ,EAAGiK,kBAAkBzS,EAAEyH,OAAO8K,MAAM,IACpC/J,EAAGnB,QAAUA,CACd,MACCqL,MAAM5C,EAAQnP,IAAIQ,EAAK,IACxB,EAGDkQ,EAAYtI,IAAImG,QAAWlP,IAE1BqR,EAAYtI,IAAIoH,MAAM,EAEvBkC,EAAYnJ,IAAImI,GAChBH,EAAMhI,IAAImJ,EACX,CAsBA,GAlBIhK,EAASsK,YACZrB,GAAc,IAAIlG,GAAQrB,MAAM,SAASI,SAAS,OAClDoH,EAAc,IAAIhF,EAAQ,UAC1BgF,EAAY3G,SAASkF,EAAQnP,IAAIQ,EAAK,KACtCoQ,EAAYxI,IAAImG,QAAWlP,IAE1B,MAAM4S,EAAMjQ,KAAKkQ,YACXhR,GAAoC,IAA9BsG,EAAO2K,aAAaF,GAChCzK,EAAOpF,KAAK,aAAclB,GAC1B7B,EAAEmP,iBACFoC,EAAYxI,IAAIoH,MAAM,EAEvBmB,EAAYpI,IAAIqI,GAChBL,EAAMhI,IAAIoI,IAKPjJ,EAAS0K,WAAY,CAExB,MAAMC,GAAgB,IAAI5H,GAAQrB,MAAM,SAASI,SAAS,OAC1DqH,EAAgB,IAAIjF,EAAQ,UAC5BiF,EAAc5G,SAASkF,EAAQnP,IAAIQ,EAAK,KACxCqQ,EAAczI,IAAImG,QAAWlP,IAE5B2C,KAAKsQ,mBACLjT,EAAEmP,gBAAgB,EAGnBnG,SAASwD,UAAaxM,IAEP,QAAVA,EAAE0B,MACL1B,EAAEmP,iBACFxM,KAAKsQ,mBACN,EAGDjK,SAASkK,mBAAsBlT,IAE9B,MAAMC,EAAI0G,OAAOwM,OAAOtE,QAAU7O,EAAEyH,OAAO2L,YACrCC,EAAI1M,OAAOwM,OAAOpE,SAAW/O,EAAEyH,OAAO6L,aAExCrT,GAAKoT,EACRL,EAAc3I,SAAS,gBAEvB2I,EAAczI,YAAY,eAC3B,EAEDyI,EAAc9J,IAAIsI,GAClBN,EAAMhI,IAAI8J,EACX,CAEAjD,EAAU7G,IAAI,CAAC8G,EAAOkB,IACtBlI,SAASuK,KAAKnK,YAAY2G,EAAUhH,KAIpCZ,EAAOvF,GAAG,aAAcqP,IAEvB,GAAI5J,EAASsK,UAAW,CACvB,MAAMC,EAAMX,EAASuB,MAAMZ,KACe,IAA9BzK,EAAO2K,aAAaF,GAE/BtB,EAAY/G,YAAY,cAExB+G,EAAYjH,SAAS,cAEtB1H,KAAKkQ,YAAcD,CACpB,CACwB,YAApBvK,EAAS4I,SACZb,EAAQrH,IAAI0B,MAAMgE,QAAUwD,EAASwB,QAAU,OAAS,QACxDnD,EAAQvH,IAAI0B,MAAMgE,QAAUwD,EAASyB,MAAQ,OAAS,QACvD,IAGDvL,EAAOvF,GAAG,cAAesJ,IAEpBA,EACHoF,EAAYjH,SAAS,cAErBiH,EAAY/G,YAAY,aACzB,IAGDpC,EAAOvF,GAAG,mBAAoB9C,IAE7BoQ,EAAUtF,SAASkF,EAAQnP,IAAIQ,EAAK,KAEZ,YAApBkH,EAAS4I,SACZZ,EAAQzF,SAASkF,EAAQnP,IAAIQ,EAAK,KAClCoP,EAAQ3F,SAASkF,EAAQnP,IAAIQ,EAAK,MAE/BkH,EAASuJ,UACZP,EAAYzG,SAASkF,EAAQnP,IAAIQ,EAAK,KAEnCkH,EAASsK,WACZpB,EAAY3G,SAASkF,EAAQnP,IAAIQ,EAAK,KAEnCkH,EAAS0K,YACZvB,EAAc5G,SAASkF,EAAQnP,IAAIQ,EAAK,KAErCkH,EAASoJ,YACZkC,cAAc/I,SAASkF,EAAQnP,IAAIQ,EAAK,IACzC,GAEF,CAEA,gBAAA8R,GAECjK,SAAS4K,cAAczD,OAEY,OAA/BnH,SAAS6K,kBACZ7K,SAAS8K,gBAAgBC,oBACf/K,SAASgL,gBACnBhL,SAASgL,gBAEX,ECjSM,MAAMC,EAEZ,WAAAhP,CAAYkD,GAEX,MAAME,EAAWF,EAAOE,SAClB0H,GAAY,IAAI3E,GAAQrB,MAAM,WAEpC,IAAImK,EACoB,YAApB7L,EAAS4I,SAEZiD,GAAO,IAAI9I,GAAQrB,MAAM,QAAQI,SAAS,SAC1C+J,EAAKnL,IAAImG,QAAWlP,IAEnBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,gBAAgB,EAEnB+E,EAAKhL,IAAI,IAAIgC,EAAO,MACpB6E,EAAU7G,IAAIgL,IAGf,MAAMC,GAAS,IAAI/I,GAAQrB,MAAM,UAQjC,IAAIqK,EAPJrE,EAAU7G,IAAIiL,GAGdhM,EAAOvF,GAAG,gBAAiByR,IAC1BF,EAAOpL,IAAI0B,MAAM6J,gBAAkBD,CAAK,IAIjB,YAApBhM,EAAS4I,SACZmD,GAAO,IAAIhJ,GAAQrB,MAAM,QAAQI,SAAS,SAC1CiK,EAAKrL,IAAImG,QAAWlP,IAEnBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,gBAAgB,EAEnBiF,EAAKlL,IAAI,IAAIgC,EAAO,MACpB6E,EAAU7G,IAAIkL,IAGf,MAAMG,GAAS,IAAInJ,GAAQrB,MAAM,UAC3ByK,GAAU,IAAIpJ,GAAQrB,MAAM,WAC5B0K,GAAU,IAAIrJ,GAAQrB,MAAM,WAClC0K,EAAQ1L,IAAImG,QAAWlP,IACtBmI,EAAOpF,KAAK,iBAAiB,GAC7B/C,EAAEmP,gBAAgB,EAGnBY,EAAU7G,IAAI,CAACqL,EAAQC,EAASC,IAChCzL,SAASuK,KAAKnK,YAAY2G,EAAUhH,KAIpCZ,EAAOvF,GAAG,aAAc8R,IAEvBP,EAAOhK,SAASuK,EAAIC,MACpBJ,EAAOxL,IAAI0B,MAAMgE,QAAU,OAAO,IAGnCtG,EAAOvF,GAAG,cAAc,KAEvB2R,EAAOxL,IAAI0B,MAAMgE,QAAU,MAAM,IAGlCtG,EAAOvF,GAAG,UAAWgS,IAEhBA,EAAMC,QAAUD,EAAM/F,MAAQ+F,EAAME,YACvCN,EAAQzL,IAAI0B,MAAMgE,QAAU,QAE5B+F,EAAQzL,IAAI0B,MAAMgE,QAAU,MAC7B,IAGDtG,EAAOvF,GAAG,eAAgB9C,IAEzBqU,EAAOhK,SAASrK,EAAM,IAGvBqI,EAAOvF,GAAG,aAAcqP,IAEC,YAApB5J,EAAS4I,SACRgB,EAASwB,QACZS,EAAK7J,SAAS,YAEd6J,EAAK3J,YAAY,YAEd0H,EAASyB,MACZU,EAAK/J,SAAS,YAEd+J,EAAK7J,YAAY,YAEnB,IAGDpC,EAAOvF,GAAG,QAAQ,KAEO,YAApByF,EAAS4I,SACZiD,EAAK7J,SAAS,UACd0K,YAAW,KAAQb,EAAK3J,YAAY,SAAS,GAAK,KACnD,IAGDpC,EAAOvF,GAAG,QAAQ,KAEO,YAApByF,EAAS4I,SACZmD,EAAK/J,SAAS,UACd0K,YAAW,KAAQX,EAAK7J,YAAY,SAAS,GAAK,KACnD,IAGDpC,EAAOvF,GAAG,iBAAkB9C,IAE3B2U,EAAQ1L,IAAI0B,MAAMgE,QAAU3O,EAAQ,QAAU,MAAM,IAGrDqI,EAAOvF,GAAG,iBAAiB,KAE1BuR,EAAOlM,OAAO,GAEhB,ECvHM,MAAM+M,UAAiB1J,EAE7B,WAAArG,CAAYkD,GAEXgD,QACA,MAAM4E,GAAY,IAAI3E,GAAQjB,SAAS,kBACjC2F,EAAU3H,EAAO2H,QACjB3O,EAAO,CACZ,oBAEKgN,EAAQ,IAAItC,EAAOiE,EAAQnP,IAAIQ,EAAK,KAAKgJ,SAAS,SACxDxH,KAAKwF,OAASA,EACdxF,KAAKiL,cAAW/M,EAChB8B,KAAKoH,MAAM,YACXpH,KAAKuG,IAAI,IAAI0G,EAAMzB,GAAO9D,SAAS,WAInClC,EAAOvF,GAAG,cAAeqS,IAExBlF,EAAU9H,QACV8H,EAAU7G,IAAIvG,KAAKuS,YAAYD,IAC/BtS,KAAKuG,IAAI6G,EAAU,IAGpB5H,EAAOvF,GAAG,mBAAoB9C,IAE7BqO,EAAMpC,SAAS+D,EAAQnP,IAAIQ,EAAK,IAAI,GAEtC,CAEA,WAAA+T,CAAYD,EAAKjG,GAEhB,MAAMmG,EAAO,IAAI/F,EAAOJ,GAoDxB,OAlDAiG,EAAItT,SAASyT,IAEZ,MAAMC,EAAO,IAAI5J,EAAO2J,EAAQ1J,KAAM0J,EAAQjH,OACxCmH,EAAO,IAAI9F,EAAO2F,GAAMpL,MAAMqL,EAAQpL,IACtCuL,EAAO,IAAIrK,EAyBjB,GAvBAmK,EAAKtM,IAAImG,QAAWlP,IAEf2C,KAAKiL,UAAYjL,KAAKiL,WAAa0H,GACtC3S,KAAKiL,SAAS+B,WAEf2F,EAAK/G,SACL5L,KAAKiL,SAAW0H,EAChB3S,KAAKwF,OAAOE,SAASmN,UAAYJ,EAAQpL,GACzCrH,KAAKwF,OAAOsN,UAAUhH,QAAQ2G,EAAQ1J,MACtC1L,EAAEmP,gBAAgB,EAEnBmG,EAAKpM,IAAI,CAACqM,EAAMF,IAChB1S,KAAKwF,OAAOuN,SAASN,EAAQ1J,MAAQ,CACpC1B,GAAIoL,EAAQpL,GACZmE,MAAOiH,EAAQjH,OAGZxL,KAAKwF,OAAOE,SAASmN,YAAcJ,EAAQpL,KAC9CmL,EAAK7F,SACLgG,EAAK/G,SACL5L,KAAKiL,SAAW0H,GAGbF,EAAQO,UAAYP,EAAQO,SAAStV,OAAS,EAAG,CAEpD,MAAMuV,EAAWjT,KAAKuS,YAAYE,EAAQO,SAAUL,GACpDC,EAAKpL,SAAS,oBACdoL,EAAKxM,IAAImG,QAAU,KAEd0G,EAASvG,UACZuG,EAASrG,UACTgG,EAAKpL,SAAS,sBAEdyL,EAAStG,SACTiG,EAAKpL,SAAS,qBAER,GAERmL,EAAKpM,IAAI0M,EACV,CAEAT,EAAKjM,IAAIoM,EAAK,IAGRH,CACR,ECtFM,MAAMU,UAAuBvK,EAEnC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM4E,GAAY,IAAI3E,GAAQjB,SAAS,kBACjC2F,EAAU3H,EAAO2H,QACjB3O,EAAO,CACZ,oBACA,2BAEK2U,EAAc,IAAIjK,EAAOiE,EAAQnP,IAAIQ,EAAK,KAAKgJ,SAAS,SACxD4L,EAAW,IAAIxJ,EAAQ,SAAUuD,EAAQnP,IAAIQ,EAAK,KACxD4U,EAAShN,IAAImG,QAAWlP,IAEvB2C,KAAKqT,iBACL7N,EAAOpF,KAAK,cAAc,GAC1B/C,EAAEmP,gBAAgB,EAEnBxM,KAAKuG,IAAI,IAAI0G,EAAM,CAACkG,EAAaC,IAAW1L,SAAS,WACrD1H,KAAKiL,cAAW/M,EAChB8B,KAAKgQ,UAAY,IAAIvD,EACrBW,EAAU7G,IAAIvG,KAAKgQ,WACnBhQ,KAAKoH,MAAM,aACXpH,KAAKuG,IAAI6G,GACTpN,KAAKwF,OAASA,EAEd,MAAM8N,EAAS,KAEdF,EAAShN,IAAImN,SAAgD,IAArC/N,EAAOE,SAASsK,UAAUtS,MAAY,EAK/D8H,EAAOvF,GAAG,aAAa,CAACuT,EAAUzB,KAEjCA,EAAI/B,UAAUhR,SAASiR,IAEtBjQ,KAAKyT,YAAYxD,EAAI,IAEtBqD,GAAQ,IAGT9N,EAAOvF,GAAG,aAAcqP,IAEvBtP,KAAKkQ,YAAcZ,EAASuB,MAAMZ,GAAG,IAGtCzK,EAAOvF,GAAG,cAAc,CAACsJ,EAAS0G,KAE7B1G,EACHvJ,KAAK0T,iBAEL1T,KAAK2T,eAAe1D,GAErBqD,GAAQ,IAGT9N,EAAOvF,GAAG,mBAAoB9C,IAE7BgW,EAAY/J,SAAS+D,EAAQnP,IAAIQ,EAAK,KACtC4U,EAAShK,SAAS+D,EAAQnP,IAAIQ,EAAK,IAAI,GAEzC,CAEA,cAAAkV,GAEC,MAAMzD,EAAMjQ,KAAKkQ,YACblQ,KAAKwF,OAAO2K,aAAaF,IAAQ,IAGrCjQ,KAAKyT,YAAYxD,GACjBjQ,KAAKwF,OAAOE,SAASsK,UAAU1O,KAAK2O,GACrC,CAEA,cAAA0D,CAAe1D,GAEd,MAAM2D,EAAO3D,GAAOjQ,KAAKkQ,YACnB2D,EAAQ7T,KAAKwF,OAAO2K,aAAayD,IACxB,IAAXC,IAGJ7T,KAAKgQ,UAAUnJ,OAAOgN,GACtB7T,KAAKwF,OAAOE,SAASsK,UAAUvO,OAAOoS,EAAO,GAC9C,CAEA,cAAAR,GAECrT,KAAKgQ,UAAU1K,QACftF,KAAKwF,OAAOE,SAASsK,UAAY,EAClC,CAEA,WAAAyD,CAAYxD,GAEX,MAAMyC,EAAO,IAAI5J,EACX6J,EAAO,IAAI9F,EACXiH,GAAO,IAAIvL,GAASf,SAAS,cAC7BuM,EAAU/T,KAAKwF,OAAOwO,eAAe/D,GAC3C,IAAIgE,EACAzI,EAEJ,QAAgBtN,IAAZ6V,EAAuB,CAC1B,MAAMG,EAAYlU,KAAKwF,OAAO2O,KAAKC,MAAMpW,IAAIiS,GAC7CgE,EAAQC,EAAUD,MAClBzI,EAAQ0I,EAAUD,KACnB,MACCA,EAAQF,EAAQ1M,GAChBmE,EAAQuI,EAAQvI,MAGjBkH,EAAK1J,QAAQ,IAAMiH,GACnByC,EAAKtM,IAAImG,QAAWlP,IAEf2C,KAAKiL,UAAYjL,KAAKiL,WAAa0H,GACtC3S,KAAKiL,SAAS+B,WAEf2F,EAAK/G,SACL5L,KAAKiL,SAAW0H,EAChB3S,KAAKwF,OAAOsN,UAAUhH,QAAQmE,GAC9B5S,EAAEmP,gBAAgB,EAEnBkG,EAAKtK,eAAeoD,GAEpBsI,EAAK1N,IAAImG,QAAWlP,IAEnB2C,KAAKwF,OAAOpF,KAAK,cAAc,EAAO6P,GACtC5S,EAAEmP,gBAAgB,EAGnBmG,EAAKpM,IAAI,CAACmM,EAAMoB,IAChBnB,EAAKvL,MAAM6M,GACXjU,KAAKgQ,UAAUzJ,IAAIoM,EACpB,ECpIM,MAAM0B,UAAyB1L,EAErC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM4E,GAAY,IAAI3E,GAAQjB,SAAS,kBACjC2F,EAAU3H,EAAO2H,QACjB3O,EAAO,CACZ,sBACA,6BAEK2U,EAAc,IAAIjK,EAAOiE,EAAQnP,IAAIQ,EAAK,KAAKgJ,SAAS,SACxD4L,EAAW,IAAIxJ,EAAQ,SAAUuD,EAAQnP,IAAIQ,EAAK,KACxD4U,EAAShN,IAAImG,QAAWlP,IAEvB2C,KAAKsU,aACLjX,EAAEmP,gBAAgB,EAEnBxM,KAAKuG,IAAI,IAAI0G,EAAM,CAACkG,EAAaC,IAAW1L,SAAS,WACrD1H,KAAKiL,cAAW/M,EAChB8B,KAAKuU,MAAQ,IAAI9H,EACjBW,EAAU7G,IAAIvG,KAAKuU,OACnBvU,KAAKoH,MAAM,eACXpH,KAAKuG,IAAI6G,GACTpN,KAAKwF,OAASA,EACdxF,KAAKsT,OAAS,KAEbF,EAAShN,IAAImN,SAAkD,IAAvC/N,EAAOE,SAAS8O,YAAY9W,MAAY,EAKjE8H,EAAOvF,GAAG,aAAc8R,IAEvBA,EAAIyC,YAAYxV,SAASyV,IAExBzU,KAAK/B,IAAIwW,EAAK,IAEfzU,KAAKsT,QAAQ,IAGd9N,EAAOvF,GAAG,aAAcwU,IAEvBzU,KAAK/B,IAAIwW,GACTzU,KAAKsT,QAAQ,IAGd9N,EAAOvF,GAAG,mBAAoB9C,IAE7BgW,EAAY/J,SAAS+D,EAAQnP,IAAIQ,EAAK,KACtC4U,EAAShK,SAAS+D,EAAQnP,IAAIQ,EAAK,IAAI,GAEzC,CAEA,GAAAP,CAAIwW,GAEH,MAAM/B,EAAO,IAAI5J,EAAO,IAAM2L,EAAKxE,IAAKwE,EAAKpM,MACvCsK,GAAO,IAAI9F,GAASzF,MAAM,QAAUqN,EAAKpR,MACzCyQ,GAAO,IAAIvL,GAASf,SAAS,cAGnCkL,EAAKtM,IAAImG,QAAWlP,IAEf2C,KAAKiL,UAAYjL,KAAKiL,WAAa0H,GACtC3S,KAAKiL,SAAS+B,WAEf2F,EAAK/G,SACL5L,KAAKiL,SAAW0H,EAChB3S,KAAKwF,OAAOsN,UAAUhH,QAAQ2I,EAAKxE,KACnC5S,EAAEmP,gBAAgB,EAGnBsH,EAAK1N,IAAImG,QAAWlP,IAEnB2C,KAAK0U,WAAWD,GAChBpX,EAAEmP,gBAAgB,EAGnBmG,EAAKpM,IAAI,CAACmM,EAAMoB,IAChB9T,KAAKuU,MAAMhO,IAAIoM,GACf3S,KAAKwF,OAAOsN,UAAU0B,YAAYjO,IACjC,YAAakO,EAAKxE,IAAK,CAAC,GAtBZ,QAsBqB,iBAAkB,CAAC,GACrDjQ,KAAKsT,QACN,CAEA,UAAAoB,CAAWD,GAEV,MAAMZ,EAAQ7T,KAAKwF,OAAOE,SAAS8O,YAAY1U,QAAQ2U,IACxC,IAAXZ,IAGJ7T,KAAKuU,MAAM1N,OAAOgN,GAClB7T,KAAKwF,OAAOE,SAAS8O,YAAY/S,OAAOoS,EAAO,GAC/C7T,KAAKwF,OAAOsN,UAAU0B,YAAY3N,OAAO4N,EAAKxE,IAAK,aACnDjQ,KAAKsT,SACN,CAEA,UAAAgB,GAECtU,KAAKwF,OAAOE,SAAS8O,YAAYxV,SAAQyV,IACxCzU,KAAKwF,OAAOsN,UAAU0B,YAAY3N,OAAO4N,EAAKxE,IAAK,YAAY,IAEhEjQ,KAAKuU,MAAMjP,QACXtF,KAAKwF,OAAOE,SAAS8O,YAAc,GACnCxU,KAAKsT,QACN,ECzGM,MAAMqB,UAAoBhM,EAEhC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM4E,GAAY,IAAI3E,GAAQjB,SAAS,kBACjC2F,EAAU3H,EAAO2H,QAEvB,IAAIyH,EACJ,MAAMC,EAAS,IAAIjL,EAAQ,UAAUxC,MAAM,SAC3CyN,EAAOzO,IAAI0O,YAAc3H,EAAQnP,IAAI,8BACrC6W,EAAOzO,IAAI2O,SAAW,KAErB,MAAM5X,EAAQ0X,EAAO1L,WAEA,IAAjBhM,EAAMO,OACTsC,KAAKsL,MAAMhG,QACDsP,IAAgBzX,IAC1B6C,KAAKsL,MAAMhG,QACXtF,KAAKgV,SAAS7X,GAAO8X,MAAKC,IAEzBA,EAAQlW,SAAQoC,IACfpB,KAAK/B,IAAImD,EAAK,GACb,KAGJwT,EAAczX,CAAK,EAGpB6C,KAAKoH,MAAM,UACXpH,KAAKsL,MAAQ,IAAImB,EACjBW,EAAU7G,IAAIvG,KAAKsL,OACnBtL,KAAKuG,IAAI,CAAC,IAAI0G,EAAM4H,GAASzH,IAC7BpN,KAAKwF,OAASA,EACdxF,KAAKiL,cAAW/M,CAIjB,CAOA,cAAM8W,CAAS/R,GAEd,MAAMkR,EAAOnU,KAAKwF,OAAO2O,KACnBe,QAAgBC,QAAQC,IAC7BjB,EAAKC,MAAMiB,WAAWC,KAAI3C,GAAQA,EAAK4C,KAAKpB,EAAKoB,KAAKC,KAAKrB,IACzDc,KAAKtC,EAAK8C,KAAKD,KAAK7C,EAAM1P,IAAIyS,QAAQ/C,EAAKvD,OAAOoG,KAAK7C,OAC1D,aAAawC,QAAQQ,QAAQ,GAAGC,OAAOlV,MAAM,GAAIwU,GAClD,CAEA,GAAAjX,CAAImD,GAEH,MAAMsR,EAAO,IAAI5J,EAAO,IAAM1H,EAAK6O,IAAK7O,EAAKyU,SACvClD,EAAO,IAAI9F,EACjB6F,EAAKtM,IAAImG,QAAU,KAEdvM,KAAKiL,UAAYjL,KAAKiL,WAAa0H,GACtC3S,KAAKiL,SAAS+B,WAEf2F,EAAK/G,SACL5L,KAAKiL,SAAW0H,EAChB3S,KAAKwF,OAAOsN,UAAUhH,QAAQ1K,EAAK6O,MAC5B,GAER0C,EAAKpM,IAAImM,GACT1S,KAAKsL,MAAM/E,IAAIoM,EAChB,ECtEM,MAAMmD,UAAsBnN,EAElC,WAAArG,CAAYkD,GAEXgD,QACAA,MAAMpB,MAAM,YAEZ,MAAM+F,EAAU3H,EAAO2H,QACjB3O,EAAO,CACZ,mBACA,4BACA,4BACA,wBACA,0BACA,oCAEK2U,EAAc,IAAIjK,EAAOiE,EAAQnP,IAAIQ,EAAK,KAAKgJ,SAAS,SAC9DxH,KAAKuG,IAAI,IAAI0G,EAAMkG,GAAazL,SAAS,WAEzC,MAAMqO,EAAgB,IAAInN,EAAQuE,EAAQnP,IAAIQ,EAAK,IAAK,eAClDwX,EAAc,IAAItN,EAClBjD,GAAW,IAAI4D,GAAWI,WAAW,CAC1C7D,GAAI,UACJC,GAAI,SACJC,GAAI,WACJC,GAAI,UACJC,GAAI,eAELP,EAASW,IAAImE,SAAYlN,IAExBmI,EAAOpF,KAAK,kBAAmB/C,EAAEyH,OAAO3H,MAAM,EAE/CsI,EAAS2B,MAAM,eACf4O,EAAYzP,IAAIwP,GAChBC,EAAYzP,IAAId,GAEhB,MAAMwQ,EAAgB,IAAIrN,EAAQuE,EAAQnP,IAAIQ,EAAK,IAAK,YAClD0X,EAAc,IAAIxN,EAClBwF,EAAW,IAAI/D,EAAS,GAAI,GAElC+D,EAAS9H,IAAImE,SAAYlN,IACxB,MAAM8Q,EAAUC,SAAS/Q,EAAEyH,OAAO3H,OAE9BgR,GAAW,GAAKA,GAAW,IAC9B3I,EAAOpF,KAAK,gBAAiB,CAC5B8N,SAAUC,GAEZ,EAGDD,EAAS9G,MAAM,YACf8O,EAAY3P,IAAI0P,GAChBC,EAAY3P,IAAI2H,GAChBA,EAAS9H,IAAImN,UAAW,EAIxB,MAAM4C,EAAY,IAAIvN,EAAQuE,EAAQnP,IAAIQ,EAAK,IAAK,QAC9C4X,EAAU,IAAI1N,EACdsJ,GAAO,IAAI3I,GAAWI,WAAW,CACtC4M,UAAW,YACXC,SAAU,aAEXtE,EAAK5L,IAAImE,SAAYlN,IAEpBmI,EAAOpF,KAAK,cAAe/C,EAAEyH,OAAO3H,OAEb,aAAnBE,EAAEyH,OAAO3H,MACZqI,EAAOpF,KAAK,gBAAiB,CAC5BmW,IAAK,OACLlM,SAAKnM,IAGNsH,EAAOpF,KAAK,gBAAiB,CAC5BmW,SAAKrY,EACLmM,SAAKnM,GAEP,EAED8T,EAAK5K,MAAM,QACXgP,EAAQ7P,IAAI4P,GACZC,EAAQ7P,IAAIyL,GAIZ,MAAMwE,EAAiB,IAAIrM,EAAS,IAAK,GACnCsM,EAAc,IAAI7N,EAAQuE,EAAQnP,IAAIQ,EAAK,IAAK,UAChDkY,EAAY,IAAIhO,EAChBwJ,GAAS,IAAI7I,GAAWI,WAAW,CACxCkN,KAAM,OACNC,KAAM,SAEP1E,EAAO9L,IAAImE,SAAYlN,IAEtBmI,EAAOpF,KAAK,gBAAiB,CAC5BmW,IAAKlZ,EAAEyH,OAAO3H,MACdkN,SAAKnM,IAENsY,EAAepQ,IAAImN,SAA8B,SAAnBlW,EAAEyH,OAAO3H,KAAgB,EAExD+U,EAAO9K,MAAM,UAEbsP,EAAUnQ,IAAIkQ,GACdC,EAAUnQ,IAAI2L,GAEd,MAAM2E,EAAsB,IAAIjO,EAAQuE,EAAQnP,IAAIQ,EAAK,IAAK,oBACxDsY,EAAoB,IAAIpO,EAC9B8N,EAAepQ,IAAImE,SAAYlN,IAE9BmI,EAAOpF,KAAK,gBAAiB,CAC5BmW,SAAKrY,EACLmM,IAAK+D,SAAS/Q,EAAEyH,OAAO3H,QACtB,EAEHqZ,EAAepP,MAAM,oBACrB0P,EAAkBvQ,IAAIsQ,GACtBC,EAAkBvQ,IAAIiQ,GAItB,MAAMO,EAAgB5J,EAAQnP,IAAI,+BAC5BgZ,EAAgB,IAAItO,EACpBuO,EAAa,IAAIrN,EAAQ,YAAY,EAAOmN,EAAc,IAChEE,EAAW7P,MAAM,cACjB6P,EAAW7Q,IAAImG,QAAWlP,IAAD,EAKzB2Z,EAAczQ,IAAI,IAAIqC,EAAQmO,EAAc,GAAI,eAChDC,EAAczQ,IAAI0Q,GAElBjX,KAAKuG,IAAI,IAAI0G,EAAM,CAClB+I,EACAE,EACAE,EACAM,EACAI,KAMDtR,EAAOvF,GAAG,aAAc8R,IAEvBtM,EAAS2D,SAAS2I,EAAItM,UACtByI,EAAS9E,SAAS2I,EAAImF,OAAOhJ,UAC7B8D,EAAK5I,SAAS2I,EAAIC,MAClBE,EAAO9I,SAAS2I,EAAIG,OAAOqE,KAC3BC,EAAepN,SAAS2I,EAAIG,OAAO7H,KACnCmM,EAAepQ,IAAImN,SAA8B,SAAnBxB,EAAIG,OAAOqE,GAAc,IAGxD/Q,EAAOvF,GAAG,UAAWgS,IAED,aAAfA,EAAMD,MACTE,EAAO9I,SAAS,QAChB8I,EAAO9L,IAAImN,UAAW,EACtBiD,EAAepQ,IAAImN,UAAW,GAE9BrB,EAAO9L,IAAImN,UAAW,CACvB,IAGD/N,EAAOvF,GAAG,mBAAoB9C,IAE7BgW,EAAY/K,eAAe+E,EAAQnP,IAAIQ,EAAK,KAC5CuX,EAAc3N,eAAe+E,EAAQnP,IAAIQ,EAAK,KAC9CyX,EAAc7N,eAAe+E,EAAQnP,IAAIQ,EAAK,KAC9C2X,EAAU/N,eAAe+E,EAAQnP,IAAIQ,EAAK,KAC1CiY,EAAYrO,eAAe+E,EAAQnP,IAAIQ,EAAK,KAC5CqY,EAAoBzO,eAAe+E,EAAQnP,IAAIQ,EAAK,IAAI,GAE1D,EC7KM,MAAM2Y,UAAsBxO,EAElC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM4E,GAAY,IAAI3E,GAAQjB,SAAS,kBACjC2F,EAAU3H,EAAO2H,QACjBiK,EAAS,CAAC,EACVrY,EAAM,mBACNyM,EAAQ,IAAItC,EAAOiE,EAAQnP,IAAIe,IAAMyI,SAAS,SACpDxH,KAAKuG,IAAI,IAAI0G,EAAMzB,GAAO9D,SAAS,WACnC0P,EAAOrY,GAAOyM,EAEdxL,KAAKsL,MAAQ,IAAImB,EACjBzM,KAAKoH,MAAM,YACXpH,KAAKuG,IAAI6G,GAET,MAAM9I,EAAO,CAACzB,EAAMwU,KACnB,QAAmBnZ,IAAfmZ,EAAKxU,IACO,OAAfwU,EAAKxU,IAAyC,iBAAfwU,EAAKxU,IAA4C,IAAtBwU,EAAKxU,GAAMnF,OACrE,OAED,MAAMiV,EAAO,IAAI9F,EACXrB,GAAQ,IAAItC,GAAS1B,SAAS,SAC9BrK,GAAQ,IAAI+L,GAAS1B,SAAS,SACpCgE,EAAMpC,SAAS+D,EAAQnP,IAAIe,EAAM,IAAM8D,GAAMyU,eAChC,gBAATzU,EACH1F,EAAMiJ,IAAImR,UAAYF,EAAKxU,GAE3B1F,EAAMiM,SAASiO,EAAKxU,IAErBuU,EAAOrY,EAAM,IAAM8D,GAAQ2I,EAC3BmH,EAAKpM,IAAI,CAACiF,EAAOrO,IACjB6C,KAAKsL,MAAM/E,IAAIoM,EAAK,EAKrBnN,EAAOvF,GAAG,YAAaoX,IAEtBrX,KAAKsL,MAAMhG,QACX8H,EAAU9H,QACV8H,EAAU7G,IAAIvG,KAAKsL,OACnBjF,SAAS2B,MAAQqP,EAAKrP,MACtB,IAAK,MAAMnF,KAAQwU,EAClB/S,EAAKzB,EAAMwU,EACZ,IAGD7R,EAAOvF,GAAG,mBAAoB9C,IAE7B,IAAK,MAAM0F,KAAQuU,EAAQ,CAC1B,IAAI/O,EAEHA,EADGxF,IAAS9D,EACLoO,EAAQnP,IAAI6E,GAEZsK,EAAQnP,IAAI6E,GAAMyU,cAE1BF,EAAOvU,GAAMuG,SAASf,EACvB,IAEF,ECvDM,MAAMmP,EAEZ,WAAAlV,CAAYkD,GAEX,MAAM2H,EAAU3H,EAAO2H,QACjBsK,EAAWjS,EAAOE,SAClBlH,EAAO,CACZ,gBACA,mBACA,oBACA,sBACA,iBACA,mBACA,oBAGK4O,EAAY,IAAIvC,EAAc,YAAYzD,MAAM,WAEhDkG,GAAY,IAAI7E,GAAQrB,MAAM,SAASM,SAAS,OAChD6F,EAAY,IAAI3D,EAAQ,UAC9B2D,EAAUtF,SAASkF,EAAQnP,IAAIQ,EAAK,KACpC+O,EAAUnH,IAAImG,QAAWlP,IAExBmI,EAAOpF,KAAK,iBAAiB,GAC7B/C,EAAEmP,iBACFe,EAAUnH,IAAIoH,MAAM,EAErBF,EAAU/G,IAAIgH,GACdH,EAAU/B,QAAQiC,GAElBF,EAAU7B,OAAO,QAAS4B,EAAQnP,IAAIQ,EAAK,IAAK,IAAI6T,EAAS7M,IACzDiS,EAASzH,WACZ5C,EAAU7B,OAAO,QAAS4B,EAAQnP,IAAIQ,EAAK,IAAK,IAAI0U,EAAe1N,IAEhEiS,EAASjD,aACZpH,EAAU7B,OAAO,QAAS4B,EAAQnP,IAAIQ,EAAK,IAAK,IAAI6V,EAAiB7O,IAEtE4H,EAAU7B,OAAO,QAAS4B,EAAQnP,IAAIQ,EAAK,IAAK,IAAImW,EAAYnP,IAChE4H,EAAU7B,OAAO,QAAS4B,EAAQnP,IAAIQ,EAAK,IAAK,IAAIsX,EAActQ,IAClE4H,EAAU7B,OAAO,QAAS4B,EAAQnP,IAAIQ,EAAK,IAAK,IAAI2Y,EAAc3R,IAClE4H,EAAUxB,OAAO,SAEjBvF,SAASuK,KAAKnK,YAAY2G,EAAUhH,KAIpCZ,EAAOvF,GAAG,iBAAkB9C,IAEvBA,EACHiQ,EAAU5F,SAAS,QAEnB4F,EAAU7F,gBAAgB,QAC3B,IAGD/B,EAAOvF,GAAG,mBAAoB9C,IAE7BoQ,EAAUtF,SAASkF,EAAQnP,IAAIQ,EAAK,KACpC4O,EAAUrB,SAAS,QAASoB,EAAQnP,IAAIQ,EAAK,KACzCiZ,EAASzH,WACZ5C,EAAUrB,SAAS,QAASoB,EAAQnP,IAAIQ,EAAK,KAE1CiZ,EAASjD,aACZpH,EAAUrB,SAAS,QAASoB,EAAQnP,IAAIQ,EAAK,KAE9C4O,EAAUrB,SAAS,QAASoB,EAAQnP,IAAIQ,EAAK,KAC7C4O,EAAUrB,SAAS,QAASoB,EAAQnP,IAAIQ,EAAK,KAC7C4O,EAAUrB,SAAS,QAASoB,EAAQnP,IAAIQ,EAAK,IAAI,GAEnD,EC1EM,MAAMkZ,EAET,WAAApV,CAAYkD,GAER,MAAM4H,GAAY,IAAI3E,GAAQrB,MAAM,WAC9B+F,EAAU3H,EAAO2H,QACjB3O,EAAO,CACT,gBACA,eAEEgN,EAAQ,IAAI5C,EAAQuE,EAAQnP,IAAIQ,EAAK,IAAK,cAC1CmZ,EAAU,IAAI/N,EAAQ,OAAQ,IAAIxC,MAAM,cAC9CuQ,EAAQvR,IAAI2I,QAAW1R,IAEnB2C,KAAKsT,SACLjW,EAAEmP,gBAAgB,EAGtB,MAAMoL,EAAS,IAAIhO,EAAQ,SAAUuD,EAAQnP,IAAIQ,EAAK,KACtDoZ,EAAOxR,IAAImN,UAAW,EACtBqE,EAAOxR,IAAImG,QAAWlP,IAElB,MAAMoX,EAAO,CACTxE,IAAKjQ,KAAKiQ,IACV4H,KAAM,IAAIvU,KACV+E,KAAMsP,EAAQxO,WACd9F,KAAMA,KAEVrD,KAAK8X,WAAQ5Z,EACbsH,EAAOE,SAAS8O,YAAYlT,KAAKmT,GACjCjP,EAAOpF,KAAK,YAAaqU,GACzBrH,EAAU7F,gBAAgB,SAC1BlK,EAAEmP,iBACFoL,EAAOxR,IAAIoH,MAAM,EAGrBxN,KAAKsT,OAAS,KAEVsE,EAAOxR,IAAImN,WAAavT,KAAK8X,OAASH,EAAQxO,WAAWzL,OAAS,EAAE,EAGxE0P,EAAU7G,IAAI,IAAI0G,EAAM,CAACzB,EAAOmM,EAASC,IAASlQ,SAAS,YAC3DrB,SAASuK,KAAKnK,YAAY2G,EAAUhH,KAIpCZ,EAAOvF,GAAG,YAAY,CAACgQ,EAAK8H,KAExB/X,KAAKiQ,IAAMA,EACXjQ,KAAK8X,MAAQC,EAASD,MAAM7H,GAC5BjQ,KAAKsT,SACLlG,EAAU5F,SAAS,QACnBmQ,EAAQvO,SAAS,GAAG,IAGxB5D,EAAOvF,GAAG,cAAc,KAEpBD,KAAK8X,WAAQ5Z,EACb8B,KAAKsT,SACLlG,EAAU7F,gBAAgB,QAAQ,IAGtC/B,EAAOvF,GAAG,mBAAoB9C,IAE1BqO,EAAMpD,eAAe+E,EAAQnP,IAAIQ,EAAK,KACtCoZ,EAAOxO,SAAS+D,EAAQnP,IAAIQ,EAAK,IAAI,GAE7C,EC5DG,MAAMwZ,EAEZ,WAAA1V,CAAY2V,EAAUvS,GAErB,MAAMwS,EAAW9W,IAChB,MAAM6H,EAAM,IAAIoG,IAAIrL,OAAOsL,UAC3B,IAAI6I,EAAOF,EACPvS,IAAaA,EAASuJ,UACzBkJ,EAAOF,EACH7W,GAAMpB,KAAKmP,QAAQ7J,SACblE,GAA8B,IAAtB6H,EAAI4L,OAAOnX,SAC7Bya,EAAO/W,GAERpB,KAAKoY,QAAQD,EAAMzS,GACnB1F,KAAKmN,QAAU,IAAI5H,EAAQvF,MAC3BA,KAAKqY,QAAU,IAAInL,EAAQlN,MAC3BA,KAAKsY,QAAU,IAAIhH,EAAQtR,MAC3BA,KAAKuY,QAAU,IAAIf,EAAQxX,MACvBA,KAAK0F,SAAS8O,cACjBxU,KAAKwY,QAAU,IAAId,EAAQ1X,OAE5BA,KAAKsE,MAAM,EAGZtE,KAAK0F,cAAWxH,EAChB8B,KAAKyY,SdYa,CACZ,WACA,cACA,UACA,QACA,QACA,iBACA,UAEWC,MAAM5Z,GAAM6Z,UAAUC,UAAUC,MAAM/Z,KcpBvDkB,KAAKmP,QAAU,IAAIxL,EACnB,MAAMsL,EAAWvJ,GAAYA,EAASuJ,UAElCjP,KAAKmP,QAAQpL,WAAe2B,IAAYuJ,EAG3CiJ,IAFAlY,KAAKmP,QAAQ7K,MAAK,IAAMtE,KAAKmP,QAAQnR,KAAKoD,GAAS8W,EAAQ9W,OAK5D4C,OAAO8U,eAAiB9Y,KAAKoP,OAAOoG,KAAKxV,MACzCgE,OAAO+U,aAAe/Y,KAAKgZ,YAAYxD,KAAKxV,MAC5CgE,OAAO6F,UAAY7J,KAAKiZ,gBAAgBzD,KAAKxV,MAC7CgE,OAAOkV,QAAW7b,IACbA,EAAE8b,SACL9b,EAAEmP,gBACH,CAEF,CAOA,IAAAlI,CAAK2T,EAAUvS,GAEd1F,KAAKI,KAAK,iBACVJ,KAAK+S,SAAW,CAAC,EAEbtV,UAAUC,OAAS,GAEtBsC,KAAKoY,QAAQH,EAAUvS,GAGxB1F,KAAKmU,KAAOiF,KAAKpZ,KAAK0F,SAASuS,UAC/BjY,KAAK8S,UAAY9S,KAAKmU,KAAKkF,SAAS,SAAU,CAC7CC,QAAStZ,KAAK0F,SAAS4T,QACvBtH,KAAMhS,KAAK0F,SAASsM,KACpBE,OAAQlS,KAAK0F,SAASwM,OAAOqE,IAC7BC,eAAgBxW,KAAK0F,SAASwM,OAAO7H,IACrC6B,MAAO,OACPE,OAAQ,OACRmN,MAAM,IAGP,MAAMtJ,EAAMjQ,KAAK0F,SAAS8T,oBAEzBxZ,KAAKyZ,UADFxJ,EACcjQ,KAAK8S,UAAUhH,QAAQmE,GAEvBjQ,KAAK8S,UAAUhH,UAGjC9L,KAAKyZ,UAAUxE,MAAMzB,IACpBxT,KAAKI,KAAK,YAAaoT,EAAUxT,KAAK0F,SAAS,IAGhD1F,KAAKmU,KAAKuF,MAAMzE,MAAK,KACpBjV,KAAKI,KAAK,YAAaJ,KAAK0F,SAAS,IACnCuP,MAAK,KACPjV,KAAKI,KAAK,aAAa,IAGxBJ,KAAKmU,KAAKwF,OAAOC,SAAS3E,MAAMoC,IAC/BrX,KAAKI,KAAK,WAAYiX,EAAK,IAG5BrX,KAAKmU,KAAKwF,OAAOE,WAAW5E,MAAM3C,IACjCtS,KAAKI,KAAK,aAAckS,EAAI,IAG7BtS,KAAK8S,UAAU7S,GAAG,SAAU5C,IAEJ,UADLA,EAAEyc,KAAKzT,SAAS0T,eACpB/Y,MACbhB,KAAKI,KAAK,aACX,IAGDJ,KAAK8S,UAAU7S,GAAG,UAAWgS,IAC5BjS,KAAKI,KAAK,SAAU6R,EAAM,IAG3BjS,KAAK8S,UAAU7S,GAAG,YAAY,CAAC+Z,EAAUjC,KACxC/X,KAAKia,YAAYD,GACjBha,KAAKI,KAAK,WAAY4Z,EAAUjC,EAAS,IAG1C/X,KAAK8S,UAAU7S,GAAG,aAAcqP,IAC/BtP,KAAKia,YAAY3K,EAASuB,MAAMZ,KAChCjQ,KAAKI,KAAK,YAAakP,EAAS,IAGjCtP,KAAK8S,UAAU7S,GAAG,UAAWD,KAAKiZ,gBAAgBzD,KAAKxV,OAEvDA,KAAKC,GAAG,QAAQ,KAC8B,QAAzCD,KAAKmU,KAAK+F,QAAQN,SAASO,UAC9Bna,KAAK8S,UAAUrB,OAEfzR,KAAK8S,UAAUvB,MAChB,IAGDvR,KAAKC,GAAG,QAAQ,KAC8B,QAAzCD,KAAKmU,KAAK+F,QAAQN,SAASO,UAC9Bna,KAAK8S,UAAUvB,OAEfvR,KAAK8S,UAAUrB,MAChB,IAGDzR,KAAKC,GAAG,mBAAoB9C,IAC3B6C,KAAK0F,SAASD,SAAWtI,CAAK,IAG/B6C,KAAKC,GAAG,eAAgB9C,IACvB6C,KAAK0F,SAASsM,KAAO7U,EACrB6C,KAAK8S,UAAUd,KAAK7U,EAAM,IAG3B6C,KAAKC,GAAG,iBAAkB9C,IACzB,MAAMoZ,EAAMpZ,EAAMoZ,KAAOvW,KAAK0F,SAASwM,OAAOqE,IACxClM,EAAMlN,EAAMkN,KAAOrK,KAAK0F,SAASwM,OAAO7H,IAC9CrK,KAAK0F,SAASwM,OAAOqE,IAAMA,EAC3BvW,KAAK0F,SAASwM,OAAO7H,IAAMA,EAC3BrK,KAAK8S,UAAUZ,OAAOqE,EAAKlM,EAAI,IAGhCrK,KAAKC,GAAG,iBAAkB9C,IACzB,MAAM+Q,EAAW/Q,EAAM+Q,SACvBlO,KAAK0F,SAASwR,OAAOhJ,SAAWA,EAChClO,KAAK8S,UAAUsH,OAAOlM,SAASA,EAAW,KAAK,GAEjD,CAIA,cAAA8F,CAAe/D,GAKd,MAAM6H,EAAQ9X,KAAK8S,UAAUuH,SAASpK,GAChCgE,EAAQ6D,EAAQA,EAAMwC,eAAeC,WAAWlT,QAAKnJ,EAErD6K,EADW/I,KAAK8S,UAAU0H,kBACV3J,MAAM9H,KAC5B,OAAO/I,KAAK+S,SAAShK,EAAO,IAAMkL,IAAUjU,KAAK+S,SAAShK,EAC3D,CASA,YAAAoH,CAAaF,GAEZ,OAAOjQ,KAAK0F,SAASsK,UAAUlQ,QAAQmQ,EACxC,CAIA,WAAAwK,CAAYhG,GAEX,OAAOzU,KAAK0F,SAAS8O,YAAY1U,QAAQ2U,EAC1C,CASA,OAAA2D,CAAQH,EAAUvS,GAEjB1F,KAAK0a,SAAWC,IAAI1C,GAAU9V,WAC9BnC,KAAK0F,SAAW,CACfuS,SAAUA,EACV3J,OAAQtO,KAAKyY,SAAW,OAAS,UACjCa,QAAStZ,KAAKyY,SAAW,aAAe,UACxCmC,SAAS,EACTpL,SAAS,EACTP,WAAUjP,KAAKmP,QAAQpL,UACvB0B,SAAU,KACVoN,eAAW3U,EACX8R,UAAW,GACXwE,YAAa,GACbxC,KAAM,YACNE,OAAQ,CACPqE,IAAK,OACLlM,IAAK,KAEN6M,OAAQ,CACPhJ,SAAU,IAEX+I,gBAAY/Y,EACZkS,WAAY/J,SAASwU,kBACrB/L,WAAY,IAGb1L,EAAOsC,GAAY,CAAC,EAAG1F,KAAK0F,UAExB1F,KAAK0F,SAASkV,QACjB5a,KAAK8a,mBAAmBpV,GAAY,CAAC,GAErC1F,KAAK+a,qBAEP,CAMA,OAAAC,GAEC,OAAOC,cAAwD,OAAxCA,aAAaC,QAAQlb,KAAK0a,SAClD,CAOA,mBAAAK,GAEC,QAAK/a,KAAKgb,YAGVC,aAAaE,WAAWnb,KAAK0a,WACtB,EACR,CAOA,kBAAAI,CAAmBM,GAElB,IAAKpb,KAAKgb,UACT,OAAO,EAER,IAAIK,EACJ,IACCA,EAASC,KAAKC,MAAMN,aAAaC,QAAQlb,KAAK0a,UAC/C,CAAE,MAAOrd,GACRgH,QAAQmX,UAAUne,EACnB,CAEA,QAAIge,IACHjY,EAAOiY,EAAQrb,KAAK0F,SAAU0V,IACvB,EAIT,CAKA,YAAAK,GAECzb,KAAK0F,SAAS8T,oBAAsBxZ,KAAK8S,UAAUxD,SAASuB,MAAMZ,IAClE,MAAM8B,EAAM5T,OAAOtB,OAAO,CAAC,EAAGmD,KAAK0F,iBAC5BqM,EAAIzD,cACJyD,EAAIuH,eACJvH,EAAIvC,eACJuC,EAAI6I,eACJ7I,EAAI9C,gBACJ8C,EAAIkF,kBACJlF,EAAI3B,kBACJ2B,EAAIjD,WACXmM,aAAaS,QAAQ1b,KAAK0a,SAAUY,KAAKK,UAAU5J,GACpD,CAEA,WAAAkI,CAAYhK,GAEX,MAAM2L,EAAU5b,KAAKmU,KAAK0H,cAAW3d,EAAY8B,KAAKmU,KAAKlL,IACrDA,EAAM,IAAIoG,IAAIrL,OAAOsL,SAAUsM,GACrC3S,EAAI6S,KAAO,IAAM7L,EAGbjQ,KAAK0F,SAAS8J,SAAWxL,OAAOsL,SAASwM,OAAS7S,EAAI6S,OAEzD9X,OAAOwL,QAAQC,UAAU,CAAC,EAAG,GAAIxG,GACjCjJ,KAAK+b,mBAAqB9L,EAE5B,CAIA,MAAAb,GAEKpP,KAAK0F,SAASkV,SAAWK,cAC5Bjb,KAAKyb,cAEP,CAEA,WAAAzC,GAEC,MAAM8C,EAAO9X,OAAOsL,SAASwM,KAAKla,MAAM,GACxC5B,KAAK8S,UAAUhH,QAAQgQ,EACxB,CAEA,eAAA7C,CAAgB5b,GAGf,IAAIF,EAAQ6C,KAAK0F,SAASwR,OAAOhJ,SAEjC,OAAQ7Q,EAAE0B,KAET,IAAK,IACL,IAAK,IACJ5B,GAPW,EAQX6C,KAAKI,KAAK,gBAAiB,CAAE8N,SAAU/Q,IACvC,MACD,IAAK,IACJA,GAXW,EAYX6C,KAAKI,KAAK,gBAAiB,CAAE8N,SAAU/Q,IACvC,MACD,IAAK,IACJA,EAAQ,IACR6C,KAAKI,KAAK,gBAAiB,CAAE8N,SAAU/Q,IACvC,MACD,IAAK,YACJ6C,KAAKI,KAAK,QACV,MACD,IAAK,aACJJ,KAAKI,KAAK,QAGb,EAGD,EAAa4X,EAAO3Y,W","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\"\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\"\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\"\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\"\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\"\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\"\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\t// Button \"-\", \"+\" and input for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu1.add(fontSizeBox);\n\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tprev.add(new UISpan(\"<\"));\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tnext.add(new UISpan(\">\"));\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), new AnnotationsPanel(reader));\n\t\t}\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 100;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","Toolbar","strings","container","menu1","openerBox","openerBtn","blur","prevBox","prevBtn","nextBox","nextBtn","fontLabel","fontSizeBox","decreaseFontBtn","increaseFontBtn","fontSizeInput","fontSize","newSize","parseInt","isNaN","arrows","menu2","backgroundBox","colorPicker","openbookBtn","bookmarkBox","bookmarkBtn","fullscreenBtn","background","oninput","selectedColor","openbook","onload","storage","unload","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","bookmarks","cfi","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","body","start","atStart","atEnd","backgroundBtn","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","viewer","next","color","backgroundColor","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","toc","generateToc","list","chapter","link","item","ibtn","sectionId","rendition","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","update","disabled","renderer","setBookmark","appendBookmark","removeBookmark","_cfi","index","btnr","navItem","navItemFromCfi","idref","spineItem","book","spine","AnnotationsPanel","clearNotes","notes","annotations","note","removeNote","SearchPanel","searchQuery","search","placeholder","onsearch","doSearch","then","results","Promise","all","spineItems","map","load","bind","find","finally","resolve","concat","excerpt","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","innerHTML","Sidebar","controls","NoteDlg","textBox","addBtn","date","range","contents","Reader","bookPath","preinit","path","cfgInit","toolbar","content","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","loaded","metadata","navigation","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.min.js","mappings":"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","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (!existingToc) {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet bookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\n\t\t\t\tbookmarksList.appendChild(title);\n\n\t\t\t\treader.settings.bookmarks.forEach((cfi) => {\n\t\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\t\tbookmarkLink.textContent = `Bookmark ${bookmarksList.children.length}`;\n\n\t\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t\t})\n\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\t\tsearchBtn.dom.onclick = () => {\n\t\t\tsearchBox.setClass(\"active\");\n\t\t\tsearchInput.dom.focus();\n\t\t}\n\n\t\t\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","Toolbar","strings","container","menu1","openerBox","openerBtn","prevBox","prevBtn","nextBox","nextBtn","blur","arrows","logoBox","logoLink","tocBox","tocBtn","bookmarksBox","bookmarksBtn","annotationsBox","annotationsBtn","book","loaded","navigation","then","toc","getElementById","tocList","setAttribute","tocTitle","chapter","tocItem","tocLink","querySelectorAll","link","rendition","toggle","showToc","bookmarksList","bookmarks","cfi","bookmarkItem","bookmarkLink","deleteBtn","innerHTML","removeBookmarkFromToolbar","bookmarkBox","showBookmarks","bookmarkItems","targetItem","from","find","item","querySelector","includes","index","annotationsList","annotations","note","noteItem","noteLink","removeNoteFromToolbar","showAnnotations","noteItems","annotationsPanel","removeNote","update","findIndex","n","centerPageCount","centerLabel","curOfTotal","curPageIndex","separator","totalPage","menu2","backgroundBox","colorPicker","background","oninput","selectedColor","openbookBtn","searchBox","searchBtn","bookmarkBtn","fullscreenBtn","closeBox","closeBtn","fontLabel","fontSizeBox","decreaseFontBtn","increaseFontBtn","fontSizeInput","fontSize","newSize","parseInt","isNaN","openbook","onload","storage","unload","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","searchInput","focus","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","body","start","atStart","atEnd","backgroundBtn","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","iconLeft","viewer","next","color","backgroundColor","iconRight","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","generateToc","list","ibtn","sectionId","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","disabled","renderer","setBookmark","appendBookmark","removeBookmark","_cfi","btnr","navItem","navItemFromCfi","idref","spineItem","spine","AnnotationsPanel","clearNotes","notes","toolbarList","toolbarNoteItem","toolbarNoteLink","SearchPanel","searchQuery","search","placeholder","onsearch","doSearch","results","Promise","all","spineItems","map","load","bind","finally","resolve","concat","excerpt","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","Sidebar","controls","annotationPanel","NoteDlg","textBox","addBtn","date","range","contents","Status","leftText","rightAction","appRecBtn","appRecBox","Reader","bookPath","preinit","path","cfgInit","toolbar","content","status","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","metadata","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/js/eventProcess.js b/dist/js/eventProcess.js new file mode 100644 index 0000000..8fe1cc7 --- /dev/null +++ b/dist/js/eventProcess.js @@ -0,0 +1,30 @@ +// Xu ly su kien khi click vao bat cu vi tri nao tren man hinh ngoai tocList thi se dong muc luc +document.addEventListener("click", (e) => { + const tocBtn = document.querySelector("#btn-t.box input"); + const tocList = document.querySelector("#toolbar-toc-list"); + + if (tocList && !tocList.contains(e.target) && !tocBtn.contains(e.target)) { + tocList.classList.remove("active"); + } +}) + +// Xy ly su kien khi click vao bat cu vi tri nao tren man hinh ngoai annotationsList thi se dong danh sach ghi chu +document.addEventListener("click", (e) => { + const annotationBtn = document.querySelector("#btn-a.box input"); + const annotationList = document.querySelector("#toolbar-annotations-list"); + + if (annotationList && !annotationList.contains(e.target) && !annotationBtn.contains(e.target)) { + annotationList.classList.remove("active"); + } +}) + + +// Xy ly su kien khi click vao bat cu vi tri nao tren man hinh ngoai bookmarkList thi se dong danh sach bookmark +document.addEventListener("click", (e) => { + const bookmarkBtn = document.querySelector("#btn-d.box input"); + const bookmarkList = document.querySelector("#toolbar-bookmarks-list"); + + if (bookmarkList && !bookmarkList.contains(e.target) && !bookmarkBtn.contains(e.target)) { + bookmarkList.classList.remove("active"); + } +}) diff --git a/src/content.js b/src/content.js index 38070a6..f7b28f5 100644 --- a/src/content.js +++ b/src/content.js @@ -16,7 +16,9 @@ export class Content { reader.emit("prev"); e.preventDefault(); }; - prev.add(new UISpan("<")); + const iconLeft = new UISpan(); + iconLeft.dom.innerHTML = ''; + prev.add(iconLeft); container.add(prev); } @@ -36,7 +38,9 @@ export class Content { reader.emit("next"); e.preventDefault(); }; - next.add(new UISpan(">")); + const iconRight = new UISpan(); + iconRight.dom.innerHTML = ''; + next.add(iconRight); container.add(next); } diff --git a/src/reader.js b/src/reader.js index d68b457..a0ee656 100644 --- a/src/reader.js +++ b/src/reader.js @@ -7,6 +7,7 @@ import { Toolbar } from "./toolbar.js"; import { Content } from "./content.js"; import { Sidebar } from "./sidebar.js"; import { NoteDlg } from "./notedlg.js"; +import { Status } from "./status.js"; export class Reader { @@ -25,6 +26,7 @@ export class Reader { this.strings = new Strings(this); this.toolbar = new Toolbar(this); this.content = new Content(this); + this.status = new Status(this); this.sidebar = new Sidebar(this); if (this.settings.annotations) { this.notedlg = new NoteDlg(this); @@ -355,7 +357,7 @@ export class Reader { this.emit("styleschanged", { fontSize: value }); break; case "0": - value = 100; + value = 16; this.emit("styleschanged", { fontSize: value }); break; case "ArrowLeft": diff --git a/src/sidebar.js b/src/sidebar.js index 78d169e..36af35d 100644 --- a/src/sidebar.js +++ b/src/sidebar.js @@ -41,8 +41,11 @@ export class Sidebar { container.addTab("btn-d", strings.get(keys[2]), new BookmarksPanel(reader)); } if (controls.annotations) { - container.addTab("btn-a", strings.get(keys[3]), new AnnotationsPanel(reader)); + const annotationPanel = new AnnotationsPanel(reader); + container.addTab("btn-a", strings.get(keys[3]), annotationPanel); + reader.annotationsPanel = annotationPanel; } + container.addTab("btn-s", strings.get(keys[4]), new SearchPanel(reader)); container.addTab("btn-c", strings.get(keys[5]), new SettingsPanel(reader)); container.addTab("btn-i", strings.get(keys[6]), new MetadataPanel(reader)); diff --git a/src/sidebar/annotations.js b/src/sidebar/annotations.js index 08ed884..556b1d1 100644 --- a/src/sidebar/annotations.js +++ b/src/sidebar/annotations.js @@ -83,6 +83,29 @@ export class AnnotationsPanel extends UIPanel { this.reader.rendition.annotations.add( "highlight", note.cfi, {}, call, "note-highlight", {}); this.update(); + + const toolbarList = document.getElementById("toolbar-annotations-list"); + if (toolbarList) { + const toolbarNoteItem = document.createElement("li"); + const toolbarNoteLink = document.createElement("a"); + toolbarNoteLink.href = "#"; + toolbarNoteLink.textContent = note.text; // sửa lại nếu cần + toolbarNoteLink.onclick = (e) => { + e.preventDefault(); + this.reader.rendition.display(note.cfi); + }; + toolbarNoteItem.appendChild(toolbarNoteLink); + + const deleteBtn = document.createElement("span"); + deleteBtn.innerHTML = ''; + + deleteBtn.onclick = (e) => { + e.stopPropagation(); + this.reader.removeNoteFromToolbar(note); + } + toolbarNoteItem.appendChild(deleteBtn); + toolbarList.appendChild(toolbarNoteItem); + } } removeNote(note) { @@ -95,6 +118,16 @@ export class AnnotationsPanel extends UIPanel { this.reader.settings.annotations.splice(index, 1); this.reader.rendition.annotations.remove(note.cfi, "highlight"); this.update(); + + const toolbarList = document.getElementById("toolbar-annotations-list"); + if (toolbarList) { + const toolbarItems = toolbarList.querySelectorAll("li"); + toolbarItems.forEach(item => { + if (item.querySelector("a").textContent === note.text) { + item.remove(); + } + }) + } } clearNotes() { diff --git a/src/status.js b/src/status.js new file mode 100644 index 0000000..cc2877e --- /dev/null +++ b/src/status.js @@ -0,0 +1,94 @@ +import { UIDiv, UILabel, UIInput } from "./ui.js"; + +export class Status { + constructor(reader) { + const strings = reader.strings; + const settings = reader.settings; + + const container = new UIDiv().setId("status-bar"); + const keys = [ + "status/fullscreen", + "status/apprec", + ]; + + /* ---------------------------- Status Bar ----------------------------- */ + const leftText = new UIDiv().setClass("status-title"); + const rightAction = new UIDiv().setClass("status-action"); + + let text = new UILabel().setClass("status-text").setTextContent("Trang cuối của chương"); + leftText.add(text); + + + // Button apps rectangle + let appRecBtn; + const appRecBox = new UIDiv().setId("btn-ar").setClass("box"); + appRecBtn = new UIInput("button"); + appRecBtn.setTitle(strings.get(keys[1])); + appRecBtn.dom.onclick = (e) => { + e.preventDefault(); + }; + + appRecBox.add(appRecBtn); + rightAction.add(appRecBox); + + + // Button Full Screen + let fullscreenBtn; + if (settings.fullscreen) { + + const fullscreenBox = new UIDiv().setId("btn-f").setClass("box"); + fullscreenBtn = new UIInput("button"); + fullscreenBtn.setTitle(strings.get(keys[0])); + fullscreenBtn.dom.onclick = (e) => { + + this.toggleFullScreen(); + e.preventDefault(); + }; + + document.onkeydown = (e) => { + + if (e.key === "F11") { + e.preventDefault(); + this.toggleFullScreen(); + } + }; + + document.onfullscreenchange = (e) => { + + // const w = window.screen.width === e.target.clientWidth; + // const h = window.screen.height === e.target.clientHeight; + + if (document.fullscreenElement) { + fullscreenBox.addClass("resize-small"); + } else { + fullscreenBox.removeClass("resize-small"); + } + }; + + + fullscreenBox.add(fullscreenBtn); + rightAction.add(fullscreenBox); + } + + reader.on("languagechanged", (value) => { + if (settings.fullscreen) { + fullscreenBtn.setTitle(strings.get(keys[0])); + } + }); + + + container.add([leftText, rightAction]); + document.body.appendChild(container.dom); + } + + toggleFullScreen() { + + document.activeElement.blur(); + + if (document.fullscreenElement === null) { + document.documentElement.requestFullscreen(); + } else if (document.exitFullscreen) { + document.exitFullscreen(); + } + } +} diff --git a/src/strings.js b/src/strings.js index 1d3825b..16d9aa4 100644 --- a/src/strings.js +++ b/src/strings.js @@ -51,7 +51,10 @@ export class Strings { "sidebar/metadata/direction": "Direction", // page-progression-direction "notedlg/label": "Note", - "notedlg/add": "Add" + "notedlg/add": "Add", + + "status/fullscreen": "Fullscreen", + "status/": "", }, fr: { "toolbar/sidebar": "Barre latérale", @@ -100,7 +103,10 @@ export class Strings { "sidebar/metadata/direction": "???", "notedlg/label": "???", - "notedlg/add": "Ajouter" + "notedlg/add": "Ajouter", + + "status/fullscreen": "", + "status/": "", }, ja: { "toolbar/sidebar": "サイドバー", @@ -149,7 +155,10 @@ export class Strings { "sidebar/metadata/direction": "???", "notedlg/label": "???", - "notedlg/add": "追加" + "notedlg/add": "追加", + + "status/fullscreen": "", + "status/": "", }, ru: { "toolbar/sidebar": "Боковая панель", @@ -198,7 +207,10 @@ export class Strings { "sidebar/metadata/direction": "Направление", "notedlg/label": "Заметка", - "notedlg/add": "Добавить" + "notedlg/add": "Добавить", + + "status/fullscreen": "", + "status/": "", }, vi: { "toolbar/sidebar": "Thanh bên", @@ -247,7 +259,10 @@ export class Strings { "sidebar/metadata/direction": "???", // page-progression-direction "notedlg/label": "???", - "notedlg/add": "???" + "notedlg/add": "???", + + "status/fullscreen": "Toàn màn hình", + "status/": "", } }; diff --git a/src/toolbar.js b/src/toolbar.js index e014118..17338bb 100644 --- a/src/toolbar.js +++ b/src/toolbar.js @@ -1,4 +1,4 @@ -import { UIDiv, UIInput, UILabel } from "./ui.js"; +import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from "./ui.js"; export class Toolbar { @@ -17,6 +17,8 @@ export class Toolbar { "toolbar/bookmark", "toolbar/fullscreen", "toolbar/background", + "toolbar/search", + "toolbar/close", ]; /*------------------------ Toolbar Menu 1 --------------------------*/ @@ -33,50 +35,6 @@ export class Toolbar { openerBox.add(openerBtn); menu1.add(openerBox); - // Button "-", "+" and input for font-size - let fontLabel = new UILabel().setClass("font-size-px").setTextContent("Fontsize (px):") - let fontSizeBox = new UIDiv().setId("btn-fontsize").setClass("box"); - let decreaseFontBtn = new UIInput("button").setClass("btn-font-decrease"); - let increaseFontBtn = new UIInput("button").setClass("btn-font-increase"); - let fontSizeInput = new UIInput("text").setClass("input-font-size"); - - let fontSize = settings.fontSize || 16; - fontSizeInput.dom.value = fontSize; - - decreaseFontBtn.dom.textContent = "-"; - decreaseFontBtn.dom.onclick = () => { - fontSize = Math.max(8, fontSize - 1); - fontSizeInput.dom.value = fontSize; - - reader.emit("styleschanged", { fontSize: fontSize }); - }; - - increaseFontBtn.dom.textContent = "+"; - increaseFontBtn.dom.onclick = () => { - fontSize = Math.min(72, fontSize + 1); - fontSizeInput.dom.value = fontSize; - - reader.emit("styleschanged", { fontSize: fontSize }); - }; - - fontSizeInput.dom.onchange = () => { - let newSize = parseInt(fontSizeInput.dom.value, 10); - if (!isNaN(newSize) && newSize >= 8 && newSize <= 72) { - fontSize = newSize; - - reader.emit("styleschanged", { fontSize: fontSize }); - } else { - fontSizeInput.dom.value = fontSize; - } - }; - - fontSizeBox.add(fontLabel); - fontSizeBox.add(decreaseFontBtn); - fontSizeBox.add(fontSizeInput); - fontSizeBox.add(increaseFontBtn); - menu1.add(fontSizeBox); - - let prevBox, prevBtn; let nextBox, nextBtn; if (settings.arrows === "toolbar") { @@ -105,6 +63,280 @@ export class Toolbar { menu1.add(nextBox); } + /* ------------------------ Button Logo ------------------------- */ + const logoBox = new UIDiv().setId("btn-logo").setClass("logo"); + const logoLink = new UILink().setId("logo-link").setHref("#").setTextContent("LOGO"); + + logoBox.add(logoLink); + menu1.add(logoBox); + + /* ------------------------ Button Index List (muc luc) -------------------------- */ + let tocBox, tocBtn; + tocBox = new UIDiv().setId("btn-t").setClass("box"); + tocBtn = new UIInput("button"); + + // load toc content title for toc list + tocBtn.dom.onclick = (e) => { + e.stopPropagation(); + reader.book.loaded.navigation.then((toc) => { + showToc(toc); + }) + } + + tocBox.add(tocBtn); + menu1.add(tocBox); + + // Function to show the toc list + function showToc(toc) { + let existingToc = document.getElementById("toolbar-toc-list"); + + if (!existingToc) { + let tocList = document.createElement("ul"); + tocList.setAttribute("id", "toolbar-toc-list"); + + let tocTitle = document.createElement("h3"); + tocTitle.textContent = "Mục lục"; + + tocList.appendChild(tocTitle); + + toc.forEach((chapter) => { + let tocItem = document.createElement("li"); + let tocLink = document.createElement("a"); + + tocLink.href = "#"; + tocLink.textContent = chapter.label; + + tocLink.onclick = (e) => { + e.preventDefault(); + + document.querySelectorAll("#toolbar-toc-list li a").forEach((link) => { + link.classList.remove("active"); + }) + + tocLink.classList.add("active"); + + // show the chapter with the title chosed in toc list + reader.rendition.display(chapter.href); + }; + + tocItem.appendChild(tocLink); + tocList.appendChild(tocItem); + }); + + tocBox.dom.appendChild(tocList); + } + + let tocList = document.getElementById("toolbar-toc-list"); + tocList.classList.toggle("active"); + } + + + + /* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/ + let bookmarksBox, bookmarksBtn; + bookmarksBox = new UIDiv().setId("btn-d").setClass("box"); + bookmarksBtn = new UIInput("button"); + + bookmarksBtn.dom.onclick = (e) => { + e.stopPropagation(); + showBookmarks(); + } + + bookmarksBox.add(bookmarksBtn); + menu1.add(bookmarksBox); + + function showBookmarks() { + let existingList = document.getElementById("toolbar-bookmarks-list"); + + if (!existingList) { + let bookmarksList = document.createElement("ul"); + bookmarksList.setAttribute("id", "toolbar-bookmarks-list"); + + let title = document.createElement("h3"); + title.textContent = "Bookmarks của tui"; + + bookmarksList.appendChild(title); + + reader.settings.bookmarks.forEach((cfi) => { + let bookmarkItem = document.createElement("li"); + let bookmarkLink = document.createElement("a"); + let deleteBtn = document.createElement("span"); + + bookmarkLink.href = "#"; + bookmarkLink.textContent = `Bookmark ${bookmarksList.children.length}`; + + bookmarkLink.onclick = (e) => { + e.preventDefault(); + + document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((link) => { + link.classList.remove("active"); + }) + + bookmarkLink.classList.add("active"); + + reader.rendition.display(cfi); + } + + deleteBtn.innerHTML = ''; + + deleteBtn.onclick = (e) => { + e.stopPropagation(); + reader.removeBookmarkFromToolbar(cfi); + } + + bookmarkItem.appendChild(bookmarkLink); + bookmarkItem.appendChild(deleteBtn); + bookmarksList.appendChild(bookmarkItem); + }) + + bookmarkBox.dom.appendChild(bookmarksList); + } + + let bookmarksList = document.getElementById("toolbar-bookmarks-list"); + bookmarksList.classList.toggle("active"); + } + + // Hàm xóa bookmark từ toolbar + reader.removeBookmarkFromToolbar = function (cfi) { + let bookmarksList = document.getElementById("toolbar-bookmarks-list"); + if (!bookmarksList) return; + + let bookmarkItems = bookmarksList.querySelectorAll("li"); + let targetItem = Array.from(bookmarkItems).find(item => { + return item.querySelector("a").textContent.includes(cfi); + }); + + if (targetItem) { + targetItem.remove(); + } + + const index = reader.settings.bookmarks.indexOf(cfi); + if (index !== -1) { + reader.settings.bookmarks.splice(index, 1); + } + + reader.emit("bookmarked", false, cfi); + }; + + + + /* ------------------------ Button Highlight And Note ---------------------------- */ + let annotationsBox, annotationsBtn; + annotationsBox = new UIDiv().setId("btn-a").setClass("box"); + annotationsBtn = new UIInput("button"); + + // show annotations list when click icon on toolbar + annotationsBtn.dom.onclick = (e) => { + e.stopPropagation(); + showAnnotations(); + } + + annotationsBox.add(annotationsBtn); + menu1.add(annotationsBox); + + // Function to show the annotations list + function showAnnotations() { + let existingList = document.getElementById("toolbar-annotations-list"); + + if (!existingList) { + let annotationsList = document.createElement("ul"); + annotationsList.setAttribute("id", "toolbar-annotations-list"); + + let title = document.createElement("h3"); + title.textContent = "Highlights & Ghi chú"; + + annotationsList.appendChild(title); + + reader.settings.annotations.forEach((note) => { + let noteItem = document.createElement("li"); + let noteLink = document.createElement("a"); + let deleteBtn = document.createElement("span"); + + noteLink.href = "#"; + noteLink.textContent = note.text; + + noteLink.onclick = (e) => { + e.preventDefault(); + + document.querySelectorAll("#toolbar-annotations-list li a").forEach((link) => { + link.classList.remove("active"); + }) + + noteLink.classList.add("active"); + + reader.rendition.display(note.cfi); + } + + deleteBtn.innerHTML = ''; + + // emit event to delete annotation items + deleteBtn.onclick = (e) => { + e.stopPropagation(); + reader.removeNoteFromToolbar(note); + } + + noteItem.appendChild(noteLink); + noteItem.appendChild(deleteBtn); + annotationsList.appendChild(noteItem); + }) + + annotationsBox.dom.appendChild(annotationsList); + } + + let annotationsList = document.getElementById("toolbar-annotations-list"); + annotationsList.classList.toggle("active"); + } + + reader.removeNoteFromToolbar = function (note) { + let annotationsList = document.getElementById("toolbar-annotations-list"); + if (!annotationsList) return; + + let noteItems = annotationsList.querySelectorAll("li"); + let targetItem = Array.from(noteItems).find(item => { + item.querySelector('a').textContent === note.text; + }) + + if (targetItem) { + targetItem.remove(); + } + + const annotationsPanel = reader.annotationsPanel; + if (annotationsPanel) { + annotationsPanel.removeNote(note); + annotationsPanel.update(); + } + + const index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi); + if (index !== -1) { + reader.settings.annotations.splice(index, 1); + } + + reader.rendition.annotations.remove(note.cfi, "highlight"); + } + + + + + /* ----------------------------- Current Page -------------------------------- */ + const centerPageCount = new UIDiv().setClass("menu-center"); + + const centerLabel = new UILabel().setClass("toolbar-center-label"); + centerLabel.setTextContent("Determined"); + + const curOfTotal = new UIDiv().setClass("page-map"); + const curPageIndex = new UISpan().setClass("current-page-index").setTextContent("1"); + const separator = new UIText().setTextContent(" của "); + const totalPage = new UISpan().setClass("total-pages").setTextContent("200"); + + curOfTotal.add(curPageIndex); + curOfTotal.add(separator); + curOfTotal.add(totalPage); + + centerPageCount.add(centerLabel); + centerPageCount.add(curOfTotal); + + + /*------------------------ Toolbar Menu 2 --------------------------*/ const menu2 = new UIDiv().setClass("menu-2"); // Button change background @@ -127,6 +359,51 @@ export class Toolbar { menu2.add(backgroundBox); } + + // Button "A-", "A+" and input (hidden) for font-size + let fontLabel = new UILabel().setClass("font-size-px").setTextContent("Fontsize (px):") + let fontSizeBox = new UIDiv().setId("btn-fontsize").setClass("box"); + let decreaseFontBtn = new UIInput("button").setClass("btn-font-decrease"); + let increaseFontBtn = new UIInput("button").setClass("btn-font-increase"); + let fontSizeInput = new UIInput("text").setClass("input-font-size"); + + let fontSize = settings.fontSize || 16; + fontSizeInput.dom.value = fontSize; + + decreaseFontBtn.dom.textContent = "-"; + decreaseFontBtn.dom.onclick = () => { + fontSize = Math.max(8, fontSize - 1); + fontSizeInput.dom.value = fontSize; + + reader.emit("styleschanged", { fontSize: fontSize }); + }; + + increaseFontBtn.dom.textContent = "+"; + increaseFontBtn.dom.onclick = () => { + fontSize = Math.min(72, fontSize + 1); + fontSizeInput.dom.value = fontSize; + + reader.emit("styleschanged", { fontSize: fontSize }); + }; + + fontSizeInput.dom.onchange = () => { + let newSize = parseInt(fontSizeInput.dom.value, 10); + if (!isNaN(newSize) && newSize >= 8 && newSize <= 72) { + fontSize = newSize; + + reader.emit("styleschanged", { fontSize: fontSize }); + } else { + fontSizeInput.dom.value = fontSize; + } + }; + + fontSizeBox.add(fontLabel); + fontSizeBox.add(decreaseFontBtn); + fontSizeBox.add(fontSizeInput); + fontSizeBox.add(increaseFontBtn); + menu2.add(fontSizeBox); + + // Button open file let openbookBtn; if (settings.openbook) { @@ -171,6 +448,33 @@ export class Toolbar { menu2.add(openbookBox); } + + // Button search + let searchBox, searchBtn; + let searchInput, searchResults; + searchBox = new UIDiv().setId("btn-s").setClass("box"); + searchBtn = new UIInput("button"); + searchBtn.setTitle(strings.get(keys[8])); + + searchBtn.dom.onclick = (e) => { + e.stopPropagation(); + showSearchPopup(); + } + + searchBox.add(searchBtn); + menu2.add(searchBox); + + function showSearchPopup() { + let existingPopup = document.getElementById("toolbar-search-list"); + if (!existingPopup) { + let searchPopup = document.createElement("div"); + searchPopup.setAttribute("id", "toolbar-search-list"); + searchPopup.classList.add("search-popup"); + + + } + } + // Button Bookmark let bookmarkBox, bookmarkBtn; if (settings.bookmarks) { @@ -225,9 +529,21 @@ export class Toolbar { menu2.add(fullscreenBox); } - container.add([menu1, menu2]); + container.add([menu1, centerPageCount, menu2]); document.body.appendChild(container.dom); + // Button Close + let closeBox, closeBtn; + closeBox = new UIDiv().setId("btn-close").setClass("box"); + closeBtn = new UIInput("button").setClass("active"); + closeBtn.setTitle(strings.get(keys[9])); + + + + closeBox.add(closeBtn); + menu2.add(closeBox); + + //-- events --// reader.on("relocated", (location) => { @@ -277,7 +593,7 @@ export class Toolbar { if (settings.background) { backgroundBtn.setTitle(strings.get(keys[7])); } - + }); } From 6adcbaaa927d6e16d7bbc5ed3a21bf1888cb0a01 Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Tue, 18 Feb 2025 22:39:45 +0700 Subject: [PATCH 13/21] commit --- README.md | 83 ------------------------------------------------------- 1 file changed, 83 deletions(-) delete mode 100644 README.md diff --git a/README.md b/README.md deleted file mode 100644 index 0547d4f..0000000 --- a/README.md +++ /dev/null @@ -1,83 +0,0 @@ -# epubreader-js - -![UI](demo-ui.png) - -## About the Reader - -The **epubreader-js** application is based on the [epub.js](https://github.com/futurepress/epub.js) library and is a fork of the [epubjs-reader](https://github.com/futurepress/epubjs-reader) repository. - -## Getting Started - -Open up [epubreader-js](https://intity.github.io/epubreader-js/) in a browser. - -You can change the ePub it opens by passing a link to `bookPath` in the url: - -`?bookPath=https://s3.amazonaws.com/epubjs/books/alice.epub` - -## Running Locally - -Install [node.js](https://nodejs.org/en/) - -Then install the project dependences with npm - -```javascript -npm install -``` - -You can run the reader locally with the command - -```javascript -npm run serve -``` - -Builds are concatenated and minified using [webpack](https://github.com/webpack/webpack) - -To generate a new build run - -```javascript -npm run build -``` - -or rebuilding all *.js files - -```javascript -npm run prepare -``` - -## Pre-configuration - -The **epubreader-js** application settings is a JavaScript object that you pass as an argument to the `Reader` constructor. You can make preliminary settings in the file [index.html](dist/index.html). For example, this is what the default `Reader` initialization looks like: - -```html - -``` - -Let's say we want to disable the `openbook` feature, which is designed to open an epub file on a personal computer. This can be useful for integrating a public library into your site. Let's do this: - -```html - -``` - -> Note that the `{{bookPath}}` replacement token is used to define the `url` string variable. This simple solution will allow you to set up a route to pass the target URL. - -## Features - -The **epubreader-js** application supports the following features: - -- Initial support for mobile devices -- Saving settings in the browser’s local storage -- Opening a book file from the device’s file system -- Bookmarks -- Annotations -- Search by sections of the book -- Output epub metadata -- [Keybindings](docs/keybindings.md) From 35ad0f9190f4bef22a76df66e51f96c8a9429f7d Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Thu, 20 Feb 2025 01:09:43 +0700 Subject: [PATCH 14/21] commit for search, bookmark, highlight and note on toolbar --- dist/css/search.css | 101 +++++++++++ dist/css/toolbar.css | 2 +- dist/index.html | 1 + dist/js/epubreader.js | 316 +++++++++++++++++++++------------- dist/js/epubreader.js.map | 2 +- dist/js/epubreader.min.js | 2 +- dist/js/epubreader.min.js.map | 2 +- dist/js/eventProcess.js | 11 ++ src/reader.js | 1 - src/sidebar.js | 4 +- src/sidebar/annotations.js | 1 - src/sidebar/bookmarks.js | 5 +- src/toolbar.js | 138 +++++++++++---- 13 files changed, 421 insertions(+), 165 deletions(-) create mode 100644 dist/css/search.css diff --git a/dist/css/search.css b/dist/css/search.css new file mode 100644 index 0000000..73628a6 --- /dev/null +++ b/dist/css/search.css @@ -0,0 +1,101 @@ +/* -------------------- Search Popup -------------------- */ +.search-popup { + position: absolute; + top: 50px; + right: 10px; + width: 300px; + max-width: 300px; + background: #fff; + border: 1px solid #ebebeb; + border-radius: 10px; + box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.1); + display: none; + flex-direction: column; + padding: 10px; +} + +/* Khi popup mở */ +.search-popup.active { + display: flex; +} + +/* -------------------- Search Input + Icon -------------------- */ +.search-container { + display: grid; + grid-template-columns: auto 1fr; + align-items: center; + border: 1px solid #E6E6E6; + border-radius: 50px; + overflow: hidden; + background: #F6F6F6; +} + +.search-container::after { + content: ""; + display: block; + position: absolute; + width: 93%; + border-bottom: 1px solid #E6E6E6; + transform: translateY(40px); +} + +#toolbar-search-list .search-container input[type="search"] { + width: 100%; + height: 100%; + margin: 0; + padding: 0 8px; + outline-color: #1A73E8; + font-weight: 600; + background-image: none; + cursor: text; +} + +.search-icon { + padding: 8px 12px; + cursor: pointer; +} + +.search-icon i { + font-size: 16px; + color: #555; +} + +/* -------------------- Search Results -------------------- */ +#toolbar-search-results { + max-height: 200px; + overflow-y: auto; + list-style: none; + padding: 0; + margin: 0; + margin-top: 30px; +} + +#toolbar-search-results::-webkit-scrollbar { + width: 5px; + display: none; +} + +#toolbar-search-results::-webkit-scrollbar-thumb { + border-radius: 5px; + background-color: #ccc; +} + +#toolbar-search-results::-webkit-scrollbar-thumb:hover { + background-color: #999; +} + +#toolbar-search-results li { + padding: 8px; + cursor: pointer; +} + +#toolbar-search-results li a { + text-decoration: none; + color: #1A1A1A; + font-weight: 700; + display: block; +} + +#toolbar-search-results li:hover { + background: #f0f0f0; +} \ No newline at end of file diff --git a/dist/css/toolbar.css b/dist/css/toolbar.css index 0134920..004a028 100644 --- a/dist/css/toolbar.css +++ b/dist/css/toolbar.css @@ -59,7 +59,7 @@ /* Hide the menu icon in menu-1 on toolbar */ .menu-1 #btn-m { - /* display: none; */ + display: none; } /* Hide the fullscreen button in menu-2 on toolbar */ diff --git a/dist/index.html b/dist/index.html index d1deb5c..63b83a4 100644 --- a/dist/index.html +++ b/dist/index.html @@ -35,6 +35,7 @@ + Chế độ đọc sách diff --git a/dist/js/epubreader.js b/dist/js/epubreader.js index 78f6b5d..3658628 100644 --- a/dist/js/epubreader.js +++ b/dist/js/epubreader.js @@ -1805,9 +1805,85 @@ class UIButton extends UIElement { super("button"); } } +;// CONCATENATED MODULE: ./src/sidebar/search.js + + +class SearchPanel extends UIPanel { + + constructor(reader) { + + super(); + const container = new UIDiv().setClass("list-container"); + const strings = reader.strings; + + let searchQuery = undefined; + const search = new UIInput("search").setId("nav-q"); + search.dom.placeholder = strings.get("sidebar/search/placeholder"); + search.dom.onsearch = () => { + + const value = search.getValue(); + + if (value.length === 0) { + this.items.clear(); + } else if (searchQuery !== value) { + this.items.clear(); + this.doSearch(value).then(results => { + + results.forEach(data => { + this.set(data); + }); + }); + } + searchQuery = value; + }; + + this.setId("search"); + this.items = new UIList(); + container.add(this.items); + this.add([new UIBox(search), container]); + this.reader = reader; + this.selector = undefined; + // + // improvement of the highlighting of keywords is required... + // + } + + /** + * Searching the entire book + * @param {*} q Query keyword + * @returns The search result array. + */ + async doSearch(q) { + + const book = this.reader.book; + const results = await Promise.all( + book.spine.spineItems.map(item => item.load(book.load.bind(book)) + .then(item.find.bind(item, q)).finally(item.unload.bind(item)))); + return await Promise.resolve([].concat.apply([], results)); + } + + set(data) { + + const link = new UILink("#" + data.cfi, data.excerpt); + const item = new UIItem(); + link.dom.onclick = () => { + + if (this.selector && this.selector !== item) + this.selector.unselect(); + + item.select(); + this.selector = item; + this.reader.rendition.display(data.cfi); + return false; + }; + item.add(link); + this.items.add(item); + } +} ;// CONCATENATED MODULE: ./src/toolbar.js + class Toolbar { constructor(reader) { @@ -1954,58 +2030,68 @@ class Toolbar { menu1.add(bookmarksBox); function showBookmarks() { - let existingList = document.getElementById("toolbar-bookmarks-list"); + let bookmarksList = document.getElementById("toolbar-bookmarks-list"); - if (!existingList) { - let bookmarksList = document.createElement("ul"); + if (!bookmarksList) { + bookmarksList = document.createElement("ul"); bookmarksList.setAttribute("id", "toolbar-bookmarks-list"); + bookmarkBox.dom.appendChild(bookmarksList); + } - let title = document.createElement("h3"); - title.textContent = "Bookmarks của tui"; + updateBookmarksList(); + bookmarksList.classList.toggle("active"); + } - bookmarksList.appendChild(title); + reader.on("bookmarked", (boolean, cfi) => { + updateBookmarksList(); + }) - reader.settings.bookmarks.forEach((cfi) => { - let bookmarkItem = document.createElement("li"); - let bookmarkLink = document.createElement("a"); - let deleteBtn = document.createElement("span"); + function updateBookmarksList() { + let bookmarksList = document.getElementById("toolbar-bookmarks-list"); - bookmarkLink.href = "#"; - bookmarkLink.textContent = `Bookmark ${bookmarksList.children.length}`; + if (!bookmarksList) return; - bookmarkLink.onclick = (e) => { - e.preventDefault(); + bookmarksList.innerHTML = ""; - document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((link) => { - link.classList.remove("active"); - }) + let title = document.createElement("h3"); + title.textContent = "Bookmarks của tui"; + bookmarksList.appendChild(title); - bookmarkLink.classList.add("active"); + reader.settings.bookmarks.forEach((cfi, index) => { + let bookmarkItem = document.createElement("li"); + let bookmarkLink = document.createElement("a"); + let deleteBtn = document.createElement("span"); - reader.rendition.display(cfi); - } + bookmarkLink.href = "#"; + bookmarkLink.textContent = `Bookmark ${index + 1}`; - deleteBtn.innerHTML = ''; + bookmarkLink.onclick = (e) => { + e.preventDefault(); - deleteBtn.onclick = (e) => { - e.stopPropagation(); - reader.removeBookmarkFromToolbar(cfi); - } + document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((link) => { + link.classList.remove("active"); + }); - bookmarkItem.appendChild(bookmarkLink); - bookmarkItem.appendChild(deleteBtn); - bookmarksList.appendChild(bookmarkItem); - }) + bookmarkLink.classList.add("active"); - bookmarkBox.dom.appendChild(bookmarksList); - } + reader.rendition.display(cfi); + }; - let bookmarksList = document.getElementById("toolbar-bookmarks-list"); - bookmarksList.classList.toggle("active"); + deleteBtn.innerHTML = ''; + deleteBtn.onclick = (e) => { + e.stopPropagation(); + reader.removeBookmarkFromToolbar(cfi); + }; + + bookmarkItem.appendChild(bookmarkLink); + bookmarkItem.appendChild(deleteBtn); + bookmarksList.appendChild(bookmarkItem); + }) } // Hàm xóa bookmark từ toolbar reader.removeBookmarkFromToolbar = function (cfi) { + let bookmarksList = document.getElementById("toolbar-bookmarks-list"); if (!bookmarksList) return; @@ -2024,6 +2110,7 @@ class Toolbar { } reader.emit("bookmarked", false, cfi); + reader.bookmarksPanel.removeBookmark(cfi); }; @@ -2076,7 +2163,6 @@ class Toolbar { } deleteBtn.innerHTML = ''; - // emit event to delete annotation items deleteBtn.onclick = (e) => { e.stopPropagation(); @@ -2263,16 +2349,82 @@ class Toolbar { searchBox = new UIDiv().setId("btn-s").setClass("box"); searchBtn = new UIInput("button"); searchBtn.setTitle(strings.get(keys[8])); - searchBtn.dom.onclick = () => { - searchBox.setClass("active"); - searchInput.dom.focus(); - } - + searchBtn.dom.onclick = (e) => { + e.stopPropagation(); + showSearchPopup(); + } searchBox.add(searchBtn); menu2.add(searchBox); + function showSearchPopup() { + let existingPopup = document.getElementById("toolbar-search-list"); + if (!existingPopup) { + let searchPopup = document.createElement("div"); + searchPopup.setAttribute("id", "toolbar-search-list"); + searchPopup.classList.add("search-popup"); + + let searchContainer = document.createElement("div"); + searchContainer.classList.add("search-container"); + + let searchIcon = document.createElement("span"); + searchIcon.classList.add("search-icon"); + searchIcon.innerHTML = ''; + + let searchInput = document.createElement("input"); + searchInput.setAttribute("type", "search"); + searchInput.setAttribute("placeholder", "Search"); + searchInput.setAttribute("id", "nav-q"); + searchInput.setAttribute("class", "toolbar-search-input"); + + searchContainer.appendChild(searchIcon); + searchContainer.appendChild(searchInput); + + let resultContainer = document.createElement("ul"); + resultContainer.setAttribute('id', 'toolbar-search-results'); + + let searchPanel = new SearchPanel(reader); + searchInput.oninput = async () => { + let query = searchInput.value.trim(); + if (query.length > 0) { + let results = await searchPanel.doSearch(query); + resultContainer.innerHTML = ""; + + if (results.length === 0) { + let noResultItem = document.createElement("li"); + noResultItem.innerText = "Không tìm thấy kết quả trùng khớp"; + noResultItem.style.color = "gray"; + noResultItem.style.padding = "8px"; + resultContainer.appendChild(noResultItem); + } + + results.forEach((data) => { + let item = document.createElement("li"); + let link = document.createElement("a"); + link.href = "#" + data.cfi; + link.textContent = data.excerpt; + link.onclick = (e) => { + e.preventDefault(); + searchPanel.reader.rendition.display(data.cfi); + } + item.appendChild(link); + resultContainer.appendChild(item); + }) + } else { + resultContainer.innerHTML = ""; + } + } + + searchPopup.appendChild(searchContainer); + searchPopup.appendChild(resultContainer); + searchBox.dom.appendChild(searchPopup); + } + + let searchPopup = document.getElementById("toolbar-search-list"); + searchPopup.classList.toggle("active"); + } + // Button Bookmark let bookmarkBox, bookmarkBtn; @@ -2678,7 +2830,6 @@ class BookmarksPanel extends UIPanel { }); reader.on("bookmarked", (boolean, cfi) => { - if (boolean) { this.appendBookmark(); } else { @@ -2697,15 +2848,16 @@ class BookmarksPanel extends UIPanel { appendBookmark() { const cfi = this.locationCfi; + if (this.reader.isBookmarked(cfi) > -1) { return; } this.setBookmark(cfi); this.reader.settings.bookmarks.push(cfi); + } removeBookmark(cfi) { - const _cfi = cfi || this.locationCfi; const index = this.reader.isBookmarked(_cfi); if (index === -1) { @@ -2722,7 +2874,6 @@ class BookmarksPanel extends UIPanel { } setBookmark(cfi) { - const link = new UILink(); const item = new UIItem(); const btnr = new UISpan().setClass("btn-remove"); @@ -2808,7 +2959,6 @@ class AnnotationsPanel extends UIPanel { }); reader.on("noteadded", (note) => { - this.set(note); this.update(); }); @@ -2906,81 +3056,6 @@ class AnnotationsPanel extends UIPanel { this.update(); } } -;// CONCATENATED MODULE: ./src/sidebar/search.js - - -class SearchPanel extends UIPanel { - - constructor(reader) { - - super(); - const container = new UIDiv().setClass("list-container"); - const strings = reader.strings; - - let searchQuery = undefined; - const search = new UIInput("search").setId("nav-q"); - search.dom.placeholder = strings.get("sidebar/search/placeholder"); - search.dom.onsearch = () => { - - const value = search.getValue(); - - if (value.length === 0) { - this.items.clear(); - } else if (searchQuery !== value) { - this.items.clear(); - this.doSearch(value).then(results => { - - results.forEach(data => { - this.set(data); - }); - }); - } - searchQuery = value; - }; - - this.setId("search"); - this.items = new UIList(); - container.add(this.items); - this.add([new UIBox(search), container]); - this.reader = reader; - this.selector = undefined; - // - // improvement of the highlighting of keywords is required... - // - } - - /** - * Searching the entire book - * @param {*} q Query keyword - * @returns The search result array. - */ - async doSearch(q) { - - const book = this.reader.book; - const results = await Promise.all( - book.spine.spineItems.map(item => item.load(book.load.bind(book)) - .then(item.find.bind(item, q)).finally(item.unload.bind(item)))); - return await Promise.resolve([].concat.apply([], results)); - } - - set(data) { - - const link = new UILink("#" + data.cfi, data.excerpt); - const item = new UIItem(); - link.dom.onclick = () => { - - if (this.selector && this.selector !== item) - this.selector.unselect(); - - item.select(); - this.selector = item; - this.reader.rendition.display(data.cfi); - return false; - }; - item.add(link); - this.items.add(item); - } -} ;// CONCATENATED MODULE: ./src/sidebar/settings.js @@ -3266,7 +3341,9 @@ class Sidebar { container.addTab("btn-t", strings.get(keys[1]), new TocPanel(reader)); if (controls.bookmarks) { - container.addTab("btn-d", strings.get(keys[2]), new BookmarksPanel(reader)); + const bookmarkPanel = new BookmarksPanel(reader); + container.addTab("btn-d", strings.get(keys[2]), bookmarkPanel); + reader.bookmarksPanel = bookmarkPanel; } if (controls.annotations) { const annotationPanel = new AnnotationsPanel(reader); @@ -3671,7 +3748,6 @@ class Reader { * @returns The index of the bookmark if it exists, or -1 otherwise. */ isBookmarked(cfi) { - return this.settings.bookmarks.indexOf(cfi); } diff --git a/dist/js/epubreader.js.map b/dist/js/epubreader.js.map index 2790141..68f00dd 100644 --- a/dist/js/epubreader.js.map +++ b/dist/js/epubreader.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;AClRA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB;AACO;AACP;AACA;AACA;AACA;;AC/wBoF;;AAE7E;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,KAAK;AAC3B,uBAAuB,MAAM;;AAE7B;AACA;;AAEA;AACA;AACA,eAAe,KAAK;AACpB,eAAe,OAAO;;AAEtB;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;;AAE5B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,4CAA4C,8BAA8B;;AAE1E;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;AAIA;AACA;AACA,uBAAuB,KAAK;AAC5B,uBAAuB,OAAO;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA,8BAA8B,KAAK;;AAEnC,0BAA0B,OAAO;AACjC;;AAEA,yBAAyB,KAAK;AAC9B,2BAA2B,MAAM;AACjC,wBAAwB,MAAM;AAC9B,wBAAwB,MAAM;;AAE9B;AACA;AACA;;AAEA;AACA;;;;AAIA;AACA,oBAAoB,KAAK;AACzB;AACA;AACA;AACA;AACA,uBAAuB,KAAK;AAC5B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA,sBAAsB,OAAO;AAC7B,wBAAwB,KAAK;AAC7B,4BAA4B,OAAO;AACnC,4BAA4B,OAAO;AACnC,0BAA0B,OAAO;;AAEjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,mCAAmC,oBAAoB;AACvD,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,kBAAkB,KAAK;AACvB,kBAAkB,OAAO;AACzB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;;AAGA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;;;;AAIA;AACA;;;AAGA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;ACxlBwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,wBAAwB,MAAM;AAC9B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,yBAAyB,MAAM;AAC/B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;AC9HyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;ACzFyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACvI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;;AAEA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC7IkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;;AAE/B;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChLyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,uDAAuD,cAAc;AACrE;AACA;AACA,+BAA+B,gBAAgB;AAC/C;AACA;AACA;;AAEA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;ACjFkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEkD;AAClD;AACO;AACP;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,KAAK;AAClC,gCAAgC,KAAK;AACrC;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC,wBAAwB,OAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,KAAK;AAC3C,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;;AC7FyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;AACF;;AAE9B;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,qBAAqB,MAAM;AAC3B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (!existingToc) {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet bookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\n\t\t\t\tbookmarksList.appendChild(title);\n\n\t\t\t\treader.settings.bookmarks.forEach((cfi) => {\n\t\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\t\tbookmarkLink.textContent = `Bookmark ${bookmarksList.children.length}`;\n\n\t\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t\t})\n\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\t\tsearchBtn.dom.onclick = () => {\n\t\t\tsearchBox.setClass(\"active\");\n\t\t\tsearchInput.dom.focus();\n\t\t}\n\n\t\t\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;AClRA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB;AACO;AACP;AACA;AACA;AACA;;AC/wBkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEoF;AAClC;;AAE3C;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,KAAK;AAC3B,uBAAuB,MAAM;;AAE7B;AACA;;AAEA;AACA;AACA,eAAe,KAAK;AACpB,eAAe,OAAO;;AAEtB;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;;AAE5B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,2CAA2C,UAAU;;AAErD;AACA;;AAEA;AACA;AACA,MAAM;;AAEN;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,uBAAuB,KAAK;AAC5B,uBAAuB,OAAO;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA,8BAA8B,KAAK;;AAEnC,0BAA0B,OAAO;AACjC;;AAEA,yBAAyB,KAAK;AAC9B,2BAA2B,MAAM;AACjC,wBAAwB,MAAM;AAC9B,wBAAwB,MAAM;;AAE9B;AACA;AACA;;AAEA;AACA;;;;AAIA;AACA,oBAAoB,KAAK;AACzB;AACA;AACA;AACA;AACA,uBAAuB,KAAK;AAC5B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA,sBAAsB,OAAO;AAC7B,wBAAwB,KAAK;AAC7B,4BAA4B,OAAO;AACnC,4BAA4B,OAAO;AACnC,0BAA0B,OAAO;;AAEjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,mCAAmC,oBAAoB;AACvD,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,kBAAkB,KAAK;AACvB,kBAAkB,OAAO;AACzB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,0BAA0B,WAAW;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;;;;AAIA;AACA;;;AAGA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;ACrqBwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,wBAAwB,MAAM;AAC9B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,yBAAyB,MAAM;AAC/B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;AC9HyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;ACzFyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACtI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;;AAEA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC5IsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;;AAE/B;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChLyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,6BAA6B,cAAc;AAC3C;AACA;AACA;AACA;AACA,+BAA+B,gBAAgB;AAC/C;AACA;AACA;;AAEA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;ACnFkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEkD;AAClD;AACO;AACP;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,KAAK;AAClC,gCAAgC,KAAK;AACrC;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC,wBAAwB,OAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,KAAK;AAC3C,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;;AC7FyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;AACF;;AAE9B;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,qBAAqB,MAAM;AAC3B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (!existingToc) {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) {\n\t\t\t\tbookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tupdateBookmarksList();\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tupdateBookmarksList();\n\t\t})\n\n\t\tfunction updateBookmarksList() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tbookmarksList.innerHTML = \"\";\n\n\t\t\tlet title = document.createElement(\"h3\");\n\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\t\t\tbookmarksList.appendChild(title);\n\n\t\t\treader.settings.bookmarks.forEach((cfi, index) => {\n\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\tbookmarkLink.textContent = `Bookmark ${index + 1}`;\n\n\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t});\n\n\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t};\n\n\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t};\n\n\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t})\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t\treader.bookmarksPanel.removeBookmark(cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\n\t\tsearchBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowSearchPopup();\n\t\t}\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\t\tfunction showSearchPopup() {\n\t\t\tlet existingPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tif (!existingPopup) {\n\t\t\t\tlet searchPopup = document.createElement(\"div\");\n\t\t\t\tsearchPopup.setAttribute(\"id\", \"toolbar-search-list\");\n\t\t\t\tsearchPopup.classList.add(\"search-popup\");\n\n\t\t\t\tlet searchContainer = document.createElement(\"div\");\n\t\t\t\tsearchContainer.classList.add(\"search-container\");\n\n\t\t\t\tlet searchIcon = document.createElement(\"span\");\n\t\t\t\tsearchIcon.classList.add(\"search-icon\");\n\t\t\t\tsearchIcon.innerHTML = '';\n\n\t\t\t\tlet searchInput = document.createElement(\"input\");\n\t\t\t\tsearchInput.setAttribute(\"type\", \"search\");\n\t\t\t\tsearchInput.setAttribute(\"placeholder\", \"Search\");\n\t\t\t\tsearchInput.setAttribute(\"id\", \"nav-q\");\n\t\t\t\tsearchInput.setAttribute(\"class\", \"toolbar-search-input\");\n\n\t\t\t\tsearchContainer.appendChild(searchIcon);\n\t\t\t\tsearchContainer.appendChild(searchInput);\n\n\t\t\t\tlet resultContainer = document.createElement(\"ul\");\n\t\t\t\tresultContainer.setAttribute('id', 'toolbar-search-results');\n\n\t\t\t\tlet searchPanel = new SearchPanel(reader);\n\t\t\t\tsearchInput.oninput = async () => {\n\t\t\t\t\tlet query = searchInput.value.trim();\n\t\t\t\t\tif (query.length > 0) {\n\t\t\t\t\t\tlet results = await searchPanel.doSearch(query);\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\n\t\t\t\t\t\tif (results.length === 0) {\n\t\t\t\t\t\t\tlet noResultItem = document.createElement(\"li\");\n\t\t\t\t\t\t\tnoResultItem.innerText = \"Không tìm thấy kết quả trùng khớp\";\n\t\t\t\t\t\t\tnoResultItem.style.color = \"gray\";\n\t\t\t\t\t\t\tnoResultItem.style.padding = \"8px\";\n\t\t\t\t\t\t\tresultContainer.appendChild(noResultItem);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresults.forEach((data) => {\n\t\t\t\t\t\t\tlet item = document.createElement(\"li\");\n\t\t\t\t\t\t\tlet link = document.createElement(\"a\");\n\t\t\t\t\t\t\tlink.href = \"#\" + data.cfi;\n\t\t\t\t\t\t\tlink.textContent = data.excerpt;\n\t\t\t\t\t\t\tlink.onclick = (e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tsearchPanel.reader.rendition.display(data.cfi);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\titem.appendChild(link);\n\t\t\t\t\t\t\tresultContainer.appendChild(item);\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsearchPopup.appendChild(searchContainer);\n\t\t\t\tsearchPopup.appendChild(resultContainer);\n\t\t\t\tsearchBox.dom.appendChild(searchPopup);\n\t\t\t}\n\n\t\t\tlet searchPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tsearchPopup.classList.toggle(\"active\");\n\t\t}\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\n\t}\n\n\tremoveBookmark(cfi) {\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tconst bookmarkPanel = new BookmarksPanel(reader);\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), bookmarkPanel);\n\t\t\treader.bookmarksPanel = bookmarkPanel;\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/dist/js/epubreader.min.js b/dist/js/epubreader.min.js index b548586..942eb0f 100644 --- a/dist/js/epubreader.min.js +++ b/dist/js/epubreader.min.js @@ -1,2 +1,2 @@ -var e={263:(e,t,s)=>{var a=s(175),n=s(873),o=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,n,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),n=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,n=!1),c={value:t,configurable:s,enumerable:n,writable:d},l?o(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?n(t)?a(s)?n(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?o(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),n=s(134),o=Math.max;e.exports=function(e,t){var s,i,r,d=o(arguments.length,2);for(e=Object(n(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),n=Object.keys;e.exports=function(e){return n(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),n=Array.prototype.forEach,o=Object.create;e.exports=function(e){var t=o(null);return n.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,n,o,i,r,d,l,c=s(263),h=s(499),u=Function.prototype.apply,m=Function.prototype.call,b=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,k={configurable:!0,enumerable:!1,writable:!0};n=function(e,t){var s,n;return h(t),n=this,a.call(this,e,s=function(){o.call(n,e,s),u.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=k.value=b(null),g(this,"__ee__",k),k.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:n,off:o=function(e,t){var s,a,n,o;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(o=0;n=a[o];++o)n!==t&&n.__eeOnceListener__!==t||(2===a.length?s[e]=a[o?0:1]:a.splice(o,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,n,o;if(f.call(this,"__ee__")&&(n=this.__ee__[e]))if("object"==typeof n){for(s=arguments.length,o=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),n={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(n,typeof e)}},873:(e,t,s)=>{var a=s(80),n=/^\s*class[\s{/}]/,o=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!n.test(o.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var n=t[a];if(void 0!==n)return n.exports;var o=t[a]={exports:{}};return e[a](o,o.exports,s),o.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>N});var n=s(68);const o=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let n;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":n=t[a]?e[a]:t[a];break;default:n=t[a]}else n="arrows"===a?t[a]:void 0===o(s,a)?e[a]:t[a];return n},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],o(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add","status/fullscreen":"Fullscreen","status/":""},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter","status/fullscreen":"","status/":""},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加","status/fullscreen":"","status/":""},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить","status/fullscreen":"","status/":""},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???","status/fullscreen":"Toàn màn hình","status/":""}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class u{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class y extends u{constructor(e,t,s,a,n){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=n||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends b{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new m).setClass("tab-selector"),this.menuDiv=(new b).setClass("menu"),this.tabsDiv=(new b).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new b).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new I(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const n=new b;n.setId(e),n.add(s),this.panels.push(n),this.panelsDiv.add(n),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class I extends b{constructor(e,t){super(),this.button=new x("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class S extends u{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends u{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new b).setId("item-box");for(let s=0;s{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),o.add(i),"toolbar"===s.arrows&&(d=(new b).setId("btn-p").setClass("box"),l=new x("button"),l.setTitle(t.get(n[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),o.add(d),c=(new b).setId("btn-n").setClass("box"),h=new x("button"),h.dom.title=t.get(n[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),o.add(c));const u=(new b).setId("btn-logo").setClass("logo"),g=(new k).setId("logo-link").setHref("#").setTextContent("LOGO");let p,v,y,C,I,S;u.add(g),o.add(u),p=(new b).setId("btn-t").setClass("box"),v=new x("button"),v.dom.onclick=t=>{t.stopPropagation(),e.book.loaded.navigation.then((t=>{!function(t){if(!document.getElementById("toolbar-toc-list")){let s=document.createElement("ul");s.setAttribute("id","toolbar-toc-list");let a=document.createElement("h3");a.textContent="Mục lục",s.appendChild(a),t.forEach((t=>{let a=document.createElement("li"),n=document.createElement("a");n.href="#",n.textContent=t.label,n.onclick=s=>{s.preventDefault(),document.querySelectorAll("#toolbar-toc-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(t.href)},a.appendChild(n),s.appendChild(a)})),p.dom.appendChild(s)}document.getElementById("toolbar-toc-list").classList.toggle("active")}(t)}))},p.add(v),o.add(p),y=(new b).setId("btn-d").setClass("box"),C=new x("button"),C.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-bookmarks-list")){let t=document.createElement("ul");t.setAttribute("id","toolbar-bookmarks-list");let s=document.createElement("h3");s.textContent="Bookmarks của tui",t.appendChild(s),e.settings.bookmarks.forEach((s=>{let a=document.createElement("li"),n=document.createElement("a"),o=document.createElement("span");n.href="#",n.textContent=`Bookmark ${t.children.length}`,n.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(s)},o.innerHTML='',o.onclick=t=>{t.stopPropagation(),e.removeBookmarkFromToolbar(s)},a.appendChild(n),a.appendChild(o),t.appendChild(a)})),V.dom.appendChild(t)}document.getElementById("toolbar-bookmarks-list").classList.toggle("active")}()},y.add(C),o.add(y),e.removeBookmarkFromToolbar=function(t){let s=document.getElementById("toolbar-bookmarks-list");if(!s)return;let a=s.querySelectorAll("li"),n=Array.from(a).find((e=>e.querySelector("a").textContent.includes(t)));n&&n.remove();const o=e.settings.bookmarks.indexOf(t);-1!==o&&e.settings.bookmarks.splice(o,1),e.emit("bookmarked",!1,t)},I=(new b).setId("btn-a").setClass("box"),S=new x("button"),S.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-annotations-list")){let t=document.createElement("ul");t.setAttribute("id","toolbar-annotations-list");let s=document.createElement("h3");s.textContent="Highlights & Ghi chú",t.appendChild(s),e.settings.annotations.forEach((s=>{let a=document.createElement("li"),n=document.createElement("a"),o=document.createElement("span");n.href="#",n.textContent=s.text,n.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-annotations-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(s.cfi)},o.innerHTML='',o.onclick=t=>{t.stopPropagation(),e.removeNoteFromToolbar(s)},a.appendChild(n),a.appendChild(o),t.appendChild(a)})),I.dom.appendChild(t)}document.getElementById("toolbar-annotations-list").classList.toggle("active")}()},I.add(S),o.add(I),e.removeNoteFromToolbar=function(t){let s=document.getElementById("toolbar-annotations-list");if(!s)return;let a=s.querySelectorAll("li"),n=Array.from(a).find((e=>{e.querySelector("a").textContent,t.text}));n&&n.remove();const o=e.annotationsPanel;o&&(o.removeNote(t),o.update());const i=e.settings.annotations.findIndex((e=>e.cfi===t.cfi));-1!==i&&e.settings.annotations.splice(i,1),e.rendition.annotations.remove(t.cfi,"highlight")};const T=(new b).setClass("menu-center"),D=(new f).setClass("toolbar-center-label");D.setTextContent("Determined");const E=(new b).setClass("page-map"),B=(new m).setClass("current-page-index").setTextContent("1"),z=(new w).setTextContent(" của "),O=(new m).setClass("total-pages").setTextContent("200");E.add(B),E.add(z),E.add(O),T.add(D),T.add(E);const _=(new b).setClass("menu-2");let L,A;s.background&&(L=(new b).setId("btn-bg").setClass("box"),A=new x("color").setClass("color-picker"),A.dom.title=t.get(n[7]),A.dom.oninput=t=>{const s=t.target.value;e.emit("colorchanged",s)},L.add(A),_.add(L));let F,P,j,V,N,M,R,q,H=(new f).setClass("font-size-px").setTextContent("Fontsize (px):"),U=(new b).setId("btn-fontsize").setClass("box"),G=new x("button").setClass("btn-font-decrease"),$=new x("button").setClass("btn-font-increase"),K=new x("text").setClass("input-font-size"),W=s.fontSize||16;if(K.dom.value=W,G.dom.textContent="-",G.dom.onclick=()=>{W=Math.max(8,W-1),K.dom.value=W,e.emit("styleschanged",{fontSize:W})},$.dom.textContent="+",$.dom.onclick=()=>{W=Math.min(72,W+1),K.dom.value=W,e.emit("styleschanged",{fontSize:W})},K.dom.onchange=()=>{let t=parseInt(K.dom.value,10);!isNaN(t)&&t>=8&&t<=72?(W=t,e.emit("styleschanged",{fontSize:W})):K.dom.value=W},U.add(H),U.add(G),U.add(K),U.add($),_.add(U),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},o=(new b).setId("btn-o").setClass("box");F=new x("file"),F.dom.title=t.get(n[3]),F.dom.accept="application/epub+zip",F.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(n[4]))},F.dom.onclick=e=>{F.dom.blur()},o.add(F),_.add(o)}if(P=(new b).setId("btn-s").setClass("box"),j=new x("button"),j.setTitle(t.get(n[8])),j.dom.onclick=()=>{P.setClass("active"),(void 0).dom.focus()},P.add(j),_.add(P),s.bookmarks&&(V=(new b).setId("btn-b").setClass("box"),N=new x("button"),N.setTitle(t.get(n[5])),N.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),N.dom.blur()},V.add(N),_.add(V)),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");M=new x("button"),M.setTitle(t.get(n[6])),M.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(M),_.add(e)}a.add([o,T,_]),document.body.appendChild(a.dom),R=(new b).setId("btn-close").setClass("box"),q=new x("button").setClass("active"),q.setTitle(t.get(n[9])),R.add(q),_.add(R),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?V.removeClass("bookmarked"):V.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?V.addClass("bookmarked"):V.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(n[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(n[1])),h.setTitle(t.get(n[2]))),s.openbook&&F.setTitle(t.get(n[3])),s.bookmarks&&N.setTitle(t.get(n[5])),s.fullscreen&&M.setTitle(t.get(n[6])),s.background&&backgroundBtn.setTitle(t.get(n[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class B{constructor(e){const t=e.settings,s=(new b).setId("content");let a;if("content"===t.arrows){a=(new b).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()};const t=new m;t.dom.innerHTML='',a.add(t),s.add(a)}const n=(new b).setId("viewer");let o;if(s.add(n),e.on("colorchanged",(e=>{n.dom.style.backgroundColor=e})),"content"===t.arrows){o=(new b).setId("next").setClass("arrow"),o.dom.onclick=t=>{e.emit("next"),t.preventDefault()};const t=new m;t.dom.innerHTML='',o.add(t),s.add(o)}const i=(new b).setId("loader"),r=(new b).setId("divider"),d=(new b).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{n.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{n.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?o.addClass("disabled"):o.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(o.addClass("active"),setTimeout((()=>{o.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{n.clear()}))}}class z extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/contents"],n=new w(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new D(n).addClass("header")),e.on("navigation",(e=>{t.clear(),t.add(this.generateToc(e)),this.add(t)})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new S(t);return e.forEach((e=>{const t=new k(e.href,e.label),a=new T(s).setId(e.id),n=new m;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([n,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);n.setClass("toggle-collapsed"),n.dom.onclick=()=>(t.expanded?(t.collaps(),n.setClass("toggle-collapsed")):(t.expand(),n.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class O extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],n=new w(s.get(a[0])).setClass("label"),o=new x("button",s.get(a[1]));o.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new D([n,o]).addClass("header")),this.selector=void 0,this.bookmarks=new S,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{o.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0])),o.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new k,s=new T,a=(new m).setClass("btn-remove"),n=this.reader.navItemFromCfi(e);let o,i;if(void 0===n){const t=this.reader.book.spine.get(e);o=t.idref,i=t.idref}else o=n.id,i=n.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(o),this.bookmarks.add(s)}}class _ extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],n=new w(s.get(a[0])).setClass("label"),o=new x("button",s.get(a[1]));o.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new D([n,o]).addClass("header")),this.selector=void 0,this.notes=new S,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{o.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0])),o.setValue(s.get(a[1]))}))}set(e){const t=new k("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new m).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update();const n=document.getElementById("toolbar-annotations-list");if(n){const t=document.createElement("li"),s=document.createElement("a");s.href="#",s.textContent=e.text,s.onclick=t=>{t.preventDefault(),this.reader.rendition.display(e.cfi)},t.appendChild(s);const a=document.createElement("span");a.innerHTML='',a.onclick=t=>{t.stopPropagation(),this.reader.removeNoteFromToolbar(e)},t.appendChild(a),n.appendChild(t)}}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);if(-1===t)return;this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update();const s=document.getElementById("toolbar-annotations-list");s&&s.querySelectorAll("li").forEach((t=>{t.querySelector("a").textContent===e.text&&t.remove()}))}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class L extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings;let a;const n=new x("search").setId("nav-q");n.dom.placeholder=s.get("sidebar/search/placeholder"),n.dom.onsearch=()=>{const e=n.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new S,t.add(this.items),this.add([new D(n),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new k("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class A extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new w(t.get(s[0])).setClass("label");this.add(new D(a).addClass("header"));const n=new f(t.get(s[1]),"language-ui"),o=new g,i=(new v).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),o.add(n),o.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new y(16,1);l.dom.onchange=t=>{const s=parseInt(t.target.value);s>=8&&s<=72&&e.emit("styleschanged",{fontSize:s})},l.setId("fontsize"),d.add(r),d.add(l),l.dom.disabled=!0;const c=new f(t.get(s[3]),"flow"),h=new g,u=(new v).setOptions({paginated:"Paginated",scrolled:"Scrolled"});u.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},u.setId("flow"),h.add(c),h.add(u);const m=new y(800,1),b=new f(t.get(s[4]),"spread"),p=new g,k=(new v).setOptions({none:"None",auto:"Auto"});k.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),m.dom.disabled="none"===t.target.value},k.setId("spread"),p.add(b),p.add(k);const C=new f(t.get(s[5]),"min-spread-width"),I=new g;m.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},m.setId("min-spread-width"),I.add(C),I.add(m);const S=t.get("sidebar/settings/pagination"),T=new g,E=new x("checkbox",!1,S[1]);E.setId("pagination"),E.dom.onclick=e=>{},T.add(new f(S[0],"pagination")),T.add(E),this.add(new D([o,d,h,p,I])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),u.setValue(e.flow),k.setValue(e.spread.mod),m.setValue(e.spread.min),m.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(k.setValue("none"),k.dom.disabled=!0,m.dom.disabled=!0):k.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),n.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),b.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class F extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a={},n="sidebar/metadata",o=new w(s.get(n)).setClass("label");this.add(new D(o).addClass("header")),a[n]=o,this.items=new S,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const o=new T,i=(new w).setClass("label"),r=(new w).setClass("value");i.setValue(s.get(n+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[n+"/"+e]=i,o.add([i,r]),this.items.add(o)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===n?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class P{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],n=new C("vertical").setId("sidebar"),o=(new b).setId("btn-p").addClass("box"),i=new x("button");if(i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},o.add(i),n.addMenu(o),n.addTab("btn-t",t.get(a[1]),new z(e)),s.bookmarks&&n.addTab("btn-d",t.get(a[2]),new O(e)),s.annotations){const s=new _(e);n.addTab("btn-a",t.get(a[3]),s),e.annotationsPanel=s}n.addTab("btn-s",t.get(a[4]),new L(e)),n.addTab("btn-c",t.get(a[5]),new A(e)),n.addTab("btn-i",t.get(a[6]),new F(e)),n.select("btn-t"),document.body.appendChild(n.dom),e.on("sidebaropener",(e=>{e?n.setClass("open"):n.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),n.setLabel("btn-t",t.get(a[1])),s.bookmarks&&n.setLabel("btn-d",t.get(a[2])),s.annotations&&n.setLabel("btn-a",t.get(a[3])),n.setLabel("btn-s",t.get(a[4])),n.setLabel("btn-c",t.get(a[5])),n.setLabel("btn-i",t.get(a[6]))}))}}class j{constructor(e){const t=(new b).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],n=new f(s.get(a[0]),"note-input"),o=new x("text","").setId("note-input");o.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new x("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:o.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&o.getValue().length>0)},t.add(new D([n,o,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),o.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{n.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class V{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("status-bar"),n=["status/fullscreen","status/apprec"],o=(new b).setClass("status-title"),i=(new b).setClass("status-action");let r,d=(new f).setClass("status-text").setTextContent("Trang cuối của chương");o.add(d);const l=(new b).setId("btn-ar").setClass("box");let c;if(r=new x("button"),r.setTitle(t.get(n[1])),r.dom.onclick=e=>{e.preventDefault()},l.add(r),i.add(l),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");c=new x("button"),c.setTitle(t.get(n[0])),c.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{document.fullscreenElement?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(c),i.add(e)}e.on("languagechanged",(e=>{s.fullscreen&&c.setTitle(t.get(n[0]))})),a.add([o,i]),document.body.appendChild(a.dom)}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class N{constructor(e,t){const s=s=>{const a=new URL(window.location);let n=e;t&&!t.openbook?(n=e,s&&this.storage.clear()):s&&0===a.search.length&&(n=s),this.cfgInit(n,t),this.strings=new c(this),this.toolbar=new E(this),this.content=new B(this),this.status=new V(this),this.sidebar=new P(this),this.settings.annotations&&(this.notedlg=new j(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("navigation",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"px")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:16},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=1,this.emit("styleschanged",{fontSize:t});break;case"-":t-=1,this.emit("styleschanged",{fontSize:t});break;case"0":t=16,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}n(N.prototype);var M=a.Reader;export{M as Reader}; +var e={263:(e,t,s)=>{var a=s(175),n=s(873),o=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,n,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),n=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,n=!1),c={value:t,configurable:s,enumerable:n,writable:d},l?o(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?n(t)?a(s)?n(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?o(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),n=s(134),o=Math.max;e.exports=function(e,t){var s,i,r,d=o(arguments.length,2);for(e=Object(n(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),n=Object.keys;e.exports=function(e){return n(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),n=Array.prototype.forEach,o=Object.create;e.exports=function(e){var t=o(null);return n.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,n,o,i,r,d,l,c=s(263),h=s(499),u=Function.prototype.apply,m=Function.prototype.call,b=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,k={configurable:!0,enumerable:!1,writable:!0};n=function(e,t){var s,n;return h(t),n=this,a.call(this,e,s=function(){o.call(n,e,s),u.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=k.value=b(null),g(this,"__ee__",k),k.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:n,off:o=function(e,t){var s,a,n,o;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(o=0;n=a[o];++o)n!==t&&n.__eeOnceListener__!==t||(2===a.length?s[e]=a[o?0:1]:a.splice(o,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,n,o;if(f.call(this,"__ee__")&&(n=this.__ee__[e]))if("object"==typeof n){for(s=arguments.length,o=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),n={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(n,typeof e)}},873:(e,t,s)=>{var a=s(80),n=/^\s*class[\s{/}]/,o=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!n.test(o.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var n=t[a];if(void 0!==n)return n.exports;var o=t[a]={exports:{}};return e[a](o,o.exports,s),o.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>V});var n=s(68);const o=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let n;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":n=t[a]?e[a]:t[a];break;default:n=t[a]}else n="arrows"===a?t[a]:void 0===o(s,a)?e[a]:t[a];return n},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],o(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add","status/fullscreen":"Fullscreen","status/":""},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter","status/fullscreen":"","status/":""},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加","status/fullscreen":"","status/":""},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить","status/fullscreen":"","status/":""},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???","status/fullscreen":"Toàn màn hình","status/":""}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class u{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class y extends u{constructor(e,t,s,a,n){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=n||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends b{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new m).setClass("tab-selector"),this.menuDiv=(new b).setClass("menu"),this.tabsDiv=(new b).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new b).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new I(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const n=new b;n.setId(e),n.add(s),this.panels.push(n),this.panelsDiv.add(n),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class I extends b{constructor(e,t){super(),this.button=new x("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class S extends u{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends u{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new b).setId("item-box");for(let s=0;s{const e=n.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new S,t.add(this.items),this.add([new E(n),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new k("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class B{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("toolbar"),n=["toolbar/sidebar","toolbar/prev","toolbar/next","toolbar/openbook","toolbar/openbook/error","toolbar/bookmark","toolbar/fullscreen","toolbar/background","toolbar/search","toolbar/close"],o=(new b).setClass("menu-1"),i=(new b).setId("btn-m").setClass("box"),r=new x("button");let d,l,c,h;r.dom.title=t.get(n[0]),r.dom.onclick=t=>{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),o.add(i),"toolbar"===s.arrows&&(d=(new b).setId("btn-p").setClass("box"),l=new x("button"),l.setTitle(t.get(n[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),o.add(d),c=(new b).setId("btn-n").setClass("box"),h=new x("button"),h.dom.title=t.get(n[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),o.add(c));const u=(new b).setId("btn-logo").setClass("logo"),g=(new k).setId("logo-link").setHref("#").setTextContent("LOGO");let p,v,y,C,I,S;function T(){let t=document.getElementById("toolbar-bookmarks-list");if(!t)return;t.innerHTML="";let s=document.createElement("h3");s.textContent="Bookmarks của tui",t.appendChild(s),e.settings.bookmarks.forEach(((s,a)=>{let n=document.createElement("li"),o=document.createElement("a"),i=document.createElement("span");o.href="#",o.textContent=`Bookmark ${a+1}`,o.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((e=>{e.classList.remove("active")})),o.classList.add("active"),e.rendition.display(s)},i.innerHTML='',i.onclick=t=>{t.stopPropagation(),e.removeBookmarkFromToolbar(s)},n.appendChild(o),n.appendChild(i),t.appendChild(n)}))}u.add(g),o.add(u),p=(new b).setId("btn-t").setClass("box"),v=new x("button"),v.dom.onclick=t=>{t.stopPropagation(),e.book.loaded.navigation.then((t=>{!function(t){if(!document.getElementById("toolbar-toc-list")){let s=document.createElement("ul");s.setAttribute("id","toolbar-toc-list");let a=document.createElement("h3");a.textContent="Mục lục",s.appendChild(a),t.forEach((t=>{let a=document.createElement("li"),n=document.createElement("a");n.href="#",n.textContent=t.label,n.onclick=s=>{s.preventDefault(),document.querySelectorAll("#toolbar-toc-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(t.href)},a.appendChild(n),s.appendChild(a)})),p.dom.appendChild(s)}document.getElementById("toolbar-toc-list").classList.toggle("active")}(t)}))},p.add(v),o.add(p),y=(new b).setId("btn-d").setClass("box"),C=new x("button"),C.dom.onclick=e=>{e.stopPropagation(),function(){let e=document.getElementById("toolbar-bookmarks-list");e||(e=document.createElement("ul"),e.setAttribute("id","toolbar-bookmarks-list"),N.dom.appendChild(e)),T(),e.classList.toggle("active")}()},y.add(C),o.add(y),e.on("bookmarked",((e,t)=>{T()})),e.removeBookmarkFromToolbar=function(t){let s=document.getElementById("toolbar-bookmarks-list");if(!s)return;let a=s.querySelectorAll("li"),n=Array.from(a).find((e=>e.querySelector("a").textContent.includes(t)));n&&n.remove();const o=e.settings.bookmarks.indexOf(t);-1!==o&&e.settings.bookmarks.splice(o,1),e.emit("bookmarked",!1,t),e.bookmarksPanel.removeBookmark(t)},I=(new b).setId("btn-a").setClass("box"),S=new x("button"),S.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-annotations-list")){let t=document.createElement("ul");t.setAttribute("id","toolbar-annotations-list");let s=document.createElement("h3");s.textContent="Highlights & Ghi chú",t.appendChild(s),e.settings.annotations.forEach((s=>{let a=document.createElement("li"),n=document.createElement("a"),o=document.createElement("span");n.href="#",n.textContent=s.text,n.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-annotations-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(s.cfi)},o.innerHTML='',o.onclick=t=>{t.stopPropagation(),e.removeNoteFromToolbar(s)},a.appendChild(n),a.appendChild(o),t.appendChild(a)})),I.dom.appendChild(t)}document.getElementById("toolbar-annotations-list").classList.toggle("active")}()},I.add(S),o.add(I),e.removeNoteFromToolbar=function(t){let s=document.getElementById("toolbar-annotations-list");if(!s)return;let a=s.querySelectorAll("li"),n=Array.from(a).find((e=>{e.querySelector("a").textContent,t.text}));n&&n.remove();const o=e.annotationsPanel;o&&(o.removeNote(t),o.update());const i=e.settings.annotations.findIndex((e=>e.cfi===t.cfi));-1!==i&&e.settings.annotations.splice(i,1),e.rendition.annotations.remove(t.cfi,"highlight")};const E=(new b).setClass("menu-center"),B=(new f).setClass("toolbar-center-label");B.setTextContent("Determined");const L=(new b).setClass("page-map"),A=(new m).setClass("current-page-index").setTextContent("1"),z=(new w).setTextContent(" của "),O=(new m).setClass("total-pages").setTextContent("200");L.add(A),L.add(z),L.add(O),E.add(B),E.add(L);const _=(new b).setClass("menu-2");let F,P;s.background&&(F=(new b).setId("btn-bg").setClass("box"),P=new x("color").setClass("color-picker"),P.dom.title=t.get(n[7]),P.dom.oninput=t=>{const s=t.target.value;e.emit("colorchanged",s)},F.add(P),_.add(F));let M,j,V,N,R,q,H,U,G=(new f).setClass("font-size-px").setTextContent("Fontsize (px):"),K=(new b).setId("btn-fontsize").setClass("box"),$=new x("button").setClass("btn-font-decrease"),W=new x("button").setClass("btn-font-increase"),J=new x("text").setClass("input-font-size"),X=s.fontSize||16;if(J.dom.value=X,$.dom.textContent="-",$.dom.onclick=()=>{X=Math.max(8,X-1),J.dom.value=X,e.emit("styleschanged",{fontSize:X})},W.dom.textContent="+",W.dom.onclick=()=>{X=Math.min(72,X+1),J.dom.value=X,e.emit("styleschanged",{fontSize:X})},J.dom.onchange=()=>{let t=parseInt(J.dom.value,10);!isNaN(t)&&t>=8&&t<=72?(X=t,e.emit("styleschanged",{fontSize:X})):J.dom.value=X},K.add(G),K.add($),K.add(J),K.add(W),_.add(K),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},o=(new b).setId("btn-o").setClass("box");M=new x("file"),M.dom.title=t.get(n[3]),M.dom.accept="application/epub+zip",M.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(n[4]))},M.dom.onclick=e=>{M.dom.blur()},o.add(M),_.add(o)}if(j=(new b).setId("btn-s").setClass("box"),V=new x("button"),V.setTitle(t.get(n[8])),V.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-search-list")){let t=document.createElement("div");t.setAttribute("id","toolbar-search-list"),t.classList.add("search-popup");let s=document.createElement("div");s.classList.add("search-container");let a=document.createElement("span");a.classList.add("search-icon"),a.innerHTML='';let n=document.createElement("input");n.setAttribute("type","search"),n.setAttribute("placeholder","Search"),n.setAttribute("id","nav-q"),n.setAttribute("class","toolbar-search-input"),s.appendChild(a),s.appendChild(n);let o=document.createElement("ul");o.setAttribute("id","toolbar-search-results");let i=new D(e);n.oninput=async()=>{let e=n.value.trim();if(e.length>0){let t=await i.doSearch(e);if(o.innerHTML="",0===t.length){let e=document.createElement("li");e.innerText="Không tìm thấy kết quả trùng khớp",e.style.color="gray",e.style.padding="8px",o.appendChild(e)}t.forEach((e=>{let t=document.createElement("li"),s=document.createElement("a");s.href="#"+e.cfi,s.textContent=e.excerpt,s.onclick=t=>{t.preventDefault(),i.reader.rendition.display(e.cfi)},t.appendChild(s),o.appendChild(t)}))}else o.innerHTML=""},t.appendChild(s),t.appendChild(o),j.dom.appendChild(t)}document.getElementById("toolbar-search-list").classList.toggle("active")}()},j.add(V),_.add(j),s.bookmarks&&(N=(new b).setId("btn-b").setClass("box"),R=new x("button"),R.setTitle(t.get(n[5])),R.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),R.dom.blur()},N.add(R),_.add(N)),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");q=new x("button"),q.setTitle(t.get(n[6])),q.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(q),_.add(e)}a.add([o,E,_]),document.body.appendChild(a.dom),H=(new b).setId("btn-close").setClass("box"),U=new x("button").setClass("active"),U.setTitle(t.get(n[9])),H.add(U),_.add(H),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?N.removeClass("bookmarked"):N.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?N.addClass("bookmarked"):N.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(n[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(n[1])),h.setTitle(t.get(n[2]))),s.openbook&&M.setTitle(t.get(n[3])),s.bookmarks&&R.setTitle(t.get(n[5])),s.fullscreen&&q.setTitle(t.get(n[6])),s.background&&backgroundBtn.setTitle(t.get(n[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class L{constructor(e){const t=e.settings,s=(new b).setId("content");let a;if("content"===t.arrows){a=(new b).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()};const t=new m;t.dom.innerHTML='',a.add(t),s.add(a)}const n=(new b).setId("viewer");let o;if(s.add(n),e.on("colorchanged",(e=>{n.dom.style.backgroundColor=e})),"content"===t.arrows){o=(new b).setId("next").setClass("arrow"),o.dom.onclick=t=>{e.emit("next"),t.preventDefault()};const t=new m;t.dom.innerHTML='',o.add(t),s.add(o)}const i=(new b).setId("loader"),r=(new b).setId("divider"),d=(new b).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{n.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{n.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?o.addClass("disabled"):o.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(o.addClass("active"),setTimeout((()=>{o.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{n.clear()}))}}class A extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/contents"],n=new w(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new E(n).addClass("header")),e.on("navigation",(e=>{t.clear(),t.add(this.generateToc(e)),this.add(t)})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new S(t);return e.forEach((e=>{const t=new k(e.href,e.label),a=new T(s).setId(e.id),n=new m;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([n,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);n.setClass("toggle-collapsed"),n.dom.onclick=()=>(t.expanded?(t.collaps(),n.setClass("toggle-collapsed")):(t.expand(),n.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class z extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],n=new w(s.get(a[0])).setClass("label"),o=new x("button",s.get(a[1]));o.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new E([n,o]).addClass("header")),this.selector=void 0,this.bookmarks=new S,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{o.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0])),o.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new k,s=new T,a=(new m).setClass("btn-remove"),n=this.reader.navItemFromCfi(e);let o,i;if(void 0===n){const t=this.reader.book.spine.get(e);o=t.idref,i=t.idref}else o=n.id,i=n.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(o),this.bookmarks.add(s)}}class O extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],n=new w(s.get(a[0])).setClass("label"),o=new x("button",s.get(a[1]));o.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new E([n,o]).addClass("header")),this.selector=void 0,this.notes=new S,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{o.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0])),o.setValue(s.get(a[1]))}))}set(e){const t=new k("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new m).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update();const n=document.getElementById("toolbar-annotations-list");if(n){const t=document.createElement("li"),s=document.createElement("a");s.href="#",s.textContent=e.text,s.onclick=t=>{t.preventDefault(),this.reader.rendition.display(e.cfi)},t.appendChild(s);const a=document.createElement("span");a.innerHTML='',a.onclick=t=>{t.stopPropagation(),this.reader.removeNoteFromToolbar(e)},t.appendChild(a),n.appendChild(t)}}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);if(-1===t)return;this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update();const s=document.getElementById("toolbar-annotations-list");s&&s.querySelectorAll("li").forEach((t=>{t.querySelector("a").textContent===e.text&&t.remove()}))}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class _ extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new w(t.get(s[0])).setClass("label");this.add(new E(a).addClass("header"));const n=new f(t.get(s[1]),"language-ui"),o=new g,i=(new v).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),o.add(n),o.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new y(16,1);l.dom.onchange=t=>{const s=parseInt(t.target.value);s>=8&&s<=72&&e.emit("styleschanged",{fontSize:s})},l.setId("fontsize"),d.add(r),d.add(l),l.dom.disabled=!0;const c=new f(t.get(s[3]),"flow"),h=new g,u=(new v).setOptions({paginated:"Paginated",scrolled:"Scrolled"});u.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},u.setId("flow"),h.add(c),h.add(u);const m=new y(800,1),b=new f(t.get(s[4]),"spread"),p=new g,k=(new v).setOptions({none:"None",auto:"Auto"});k.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),m.dom.disabled="none"===t.target.value},k.setId("spread"),p.add(b),p.add(k);const C=new f(t.get(s[5]),"min-spread-width"),I=new g;m.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},m.setId("min-spread-width"),I.add(C),I.add(m);const S=t.get("sidebar/settings/pagination"),T=new g,D=new x("checkbox",!1,S[1]);D.setId("pagination"),D.dom.onclick=e=>{},T.add(new f(S[0],"pagination")),T.add(D),this.add(new E([o,d,h,p,I])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),u.setValue(e.flow),k.setValue(e.spread.mod),m.setValue(e.spread.min),m.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(k.setValue("none"),k.dom.disabled=!0,m.dom.disabled=!0):k.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),n.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),b.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class F extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a={},n="sidebar/metadata",o=new w(s.get(n)).setClass("label");this.add(new E(o).addClass("header")),a[n]=o,this.items=new S,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const o=new T,i=(new w).setClass("label"),r=(new w).setClass("value");i.setValue(s.get(n+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[n+"/"+e]=i,o.add([i,r]),this.items.add(o)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===n?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class P{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],n=new C("vertical").setId("sidebar"),o=(new b).setId("btn-p").addClass("box"),i=new x("button");if(i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},o.add(i),n.addMenu(o),n.addTab("btn-t",t.get(a[1]),new A(e)),s.bookmarks){const s=new z(e);n.addTab("btn-d",t.get(a[2]),s),e.bookmarksPanel=s}if(s.annotations){const s=new O(e);n.addTab("btn-a",t.get(a[3]),s),e.annotationsPanel=s}n.addTab("btn-s",t.get(a[4]),new D(e)),n.addTab("btn-c",t.get(a[5]),new _(e)),n.addTab("btn-i",t.get(a[6]),new F(e)),n.select("btn-t"),document.body.appendChild(n.dom),e.on("sidebaropener",(e=>{e?n.setClass("open"):n.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),n.setLabel("btn-t",t.get(a[1])),s.bookmarks&&n.setLabel("btn-d",t.get(a[2])),s.annotations&&n.setLabel("btn-a",t.get(a[3])),n.setLabel("btn-s",t.get(a[4])),n.setLabel("btn-c",t.get(a[5])),n.setLabel("btn-i",t.get(a[6]))}))}}class M{constructor(e){const t=(new b).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],n=new f(s.get(a[0]),"note-input"),o=new x("text","").setId("note-input");o.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new x("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:o.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&o.getValue().length>0)},t.add(new E([n,o,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),o.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{n.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class j{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("status-bar"),n=["status/fullscreen","status/apprec"],o=(new b).setClass("status-title"),i=(new b).setClass("status-action");let r,d=(new f).setClass("status-text").setTextContent("Trang cuối của chương");o.add(d);const l=(new b).setId("btn-ar").setClass("box");let c;if(r=new x("button"),r.setTitle(t.get(n[1])),r.dom.onclick=e=>{e.preventDefault()},l.add(r),i.add(l),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");c=new x("button"),c.setTitle(t.get(n[0])),c.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{document.fullscreenElement?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(c),i.add(e)}e.on("languagechanged",(e=>{s.fullscreen&&c.setTitle(t.get(n[0]))})),a.add([o,i]),document.body.appendChild(a.dom)}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class V{constructor(e,t){const s=s=>{const a=new URL(window.location);let n=e;t&&!t.openbook?(n=e,s&&this.storage.clear()):s&&0===a.search.length&&(n=s),this.cfgInit(n,t),this.strings=new c(this),this.toolbar=new B(this),this.content=new L(this),this.status=new j(this),this.sidebar=new P(this),this.settings.annotations&&(this.notedlg=new M(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("navigation",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"px")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:16},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=1,this.emit("styleschanged",{fontSize:t});break;case"-":t-=1,this.emit("styleschanged",{fontSize:t});break;case"0":t=16,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}n(V.prototype);var N=a.Reader;export{N as Reader}; //# sourceMappingURL=epubreader.min.js.map \ No newline at end of file diff --git a/dist/js/epubreader.min.js.map b/dist/js/epubreader.min.js.map index d125fc1..f815ebd 100644 --- a/dist/js/epubreader.min.js.map +++ b/dist/js/epubreader.min.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.min.js","mappings":"qBAEA,IAAIA,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,MAErBC,EAAOC,QAAU,SAAUC,EAAMC,GACzC,IAAIC,EAAGC,EAAGC,EAAGC,EAASC,EAkBtB,OAjBIC,UAAUC,OAAS,GAAqB,iBAATR,GAClCK,EAAUJ,EACVA,EAAQD,EACRA,EAAO,MAEPK,EAAUE,UAAU,GAEjBd,EAAQO,IACXE,EAAIL,EAASY,KAAKT,EAAM,KACxBG,EAAIN,EAASY,KAAKT,EAAM,KACxBI,EAAIP,EAASY,KAAKT,EAAM,OAExBE,EAAIE,GAAI,EACRD,GAAI,GAGLG,EAAO,CAAEL,MAAOA,EAAOS,aAAcR,EAAGS,WAAYR,EAAGS,SAAUR,GACzDC,EAAiBV,EAAOC,EAAcS,GAAUC,GAAtCA,CACnB,GAEEO,GAAK,SAAUb,EAAMc,EAAKC,GAC3B,IAAIb,EAAGC,EAAGE,EAASC,EA6BnB,MA5BoB,iBAATN,GACVK,EAAUU,EACVA,EAAMD,EACNA,EAAMd,EACNA,EAAO,MAEPK,EAAUE,UAAU,GAEhBd,EAAQqB,GAEDpB,EAAgBoB,GAGhBrB,EAAQsB,GAERrB,EAAgBqB,KAC3BV,EAAUU,EACVA,OAAMC,GAHND,OAAMC,GAHNX,EAAUS,EACVA,EAAMC,OAAMC,GAHZF,OAAME,EAUHvB,EAAQO,IACXE,EAAIL,EAASY,KAAKT,EAAM,KACxBG,EAAIN,EAASY,KAAKT,EAAM,OAExBE,GAAI,EACJC,GAAI,GAGLG,EAAO,CAAEQ,IAAKA,EAAKC,IAAKA,EAAKL,aAAcR,EAAGS,WAAYR,GAClDE,EAAiBV,EAAOC,EAAcS,GAAUC,GAAtCA,CACnB,C,SC1DAR,EAAOC,QAAU,WAAa,C,gBCD9BD,EAAOC,QAAU,EAAQ,IAAR,GAAgCkB,OAAOtB,OAAS,EAAQ,I,UCAzEG,EAAOC,QAAU,WAChB,IAA4BmB,EAAxBvB,EAASsB,OAAOtB,OACpB,MAAsB,mBAAXA,IAEXA,EADAuB,EAAM,CAAEC,IAAK,OACD,CAAEC,IAAK,OAAS,CAAEC,KAAM,SAC7BH,EAAIC,IAAMD,EAAIE,IAAMF,EAAIG,OAAS,aACzC,C,gBCNA,IAAIC,EAAQ,EAAQ,IAChBrB,EAAQ,EAAQ,KAChBsB,EAAQC,KAAKD,IAEjBzB,EAAOC,QAAU,SAAU0B,EAAMC,GAChC,IAAIC,EAAOC,EAAsCjC,EAAnCa,EAASe,EAAIhB,UAAUC,OAAQ,GAS7C,IARAiB,EAAOR,OAAOhB,EAAMwB,IACpB9B,EAAS,SAAUkC,GAClB,IACCJ,EAAKI,GAAOH,EAAIG,EACjB,CAAE,MAAO1B,GACHwB,IAAOA,EAAQxB,EACrB,CACD,EACKyB,EAAI,EAAGA,EAAIpB,IAAUoB,EAEzBN,EADAI,EAAMnB,UAAUqB,IACNE,QAAQnC,GAEnB,QAAcqB,IAAVW,EAAqB,MAAMA,EAC/B,OAAOF,CACR,C,gBCpBA,IAAIM,EAAa,EAAQ,GAAR,GAEjBjC,EAAOC,QAAU,SAAUiC,GAAO,OAAOA,IAAQD,GAAsB,OAARC,CAAc,C,eCF7ElC,EAAOC,QAAU,EAAQ,IAAR,GAAgCkB,OAAOK,KAAO,EAAQ,I,UCAvExB,EAAOC,QAAU,WAChB,IAEC,OADAkB,OAAOK,KAAK,cACL,CACR,CAAE,MAAOnB,GACR,OAAO,CACR,CACD,C,gBCPA,IAAIV,EAAU,EAAQ,KAElB6B,EAAOL,OAAOK,KAElBxB,EAAOC,QAAU,SAAUkC,GAAU,OAAOX,EAAK7B,EAAQwC,GAAUhB,OAAOgB,GAAUA,EAAS,C,gBCJ7F,IAAIxC,EAAU,EAAQ,KAElBqC,EAAUI,MAAMC,UAAUL,QAASM,EAASnB,OAAOmB,OAQvDtC,EAAOC,QAAU,SAAUsC,GAC1B,IAAIC,EAASF,EAAO,MAKpB,OAJAN,EAAQrB,KAAKF,WAAW,SAAUF,GAC5BZ,EAAQY,IATD,SAAUqB,EAAKR,GAC5B,IAAIW,EACJ,IAAKA,KAAOH,EAAKR,EAAIW,GAAOH,EAAIG,EACjC,CAOEU,CAAQtB,OAAOZ,GAAUiC,EAC1B,IACOA,CACR,C,UCjBAxC,EAAOC,QAAU,SAAUyC,GAC1B,GAAkB,mBAAPA,EAAmB,MAAM,IAAIC,UAAUD,EAAK,sBACvD,OAAOA,CACR,C,gBCHA,IAAI/C,EAAU,EAAQ,KAEtBK,EAAOC,QAAU,SAAUE,GAC1B,IAAKR,EAAQQ,GAAQ,MAAM,IAAIwC,UAAU,gCACzC,OAAOxC,CACR,C,gBCLAH,EAAOC,QAAU,EAAQ,IAAR,GAAgC2C,OAAOP,UAAUtC,SAAW,EAAQ,I,UCArF,IAAI8C,EAAM,aAEV7C,EAAOC,QAAU,WAChB,MAA4B,mBAAjB4C,EAAI9C,WACgB,IAAxB8C,EAAI9C,SAAS,SAA2C,IAAxB8C,EAAI9C,SAAS,MACrD,C,UCLA,IAAI+C,EAAUF,OAAOP,UAAUS,QAE/B9C,EAAOC,QAAU,SAAU8C,GAC1B,OAAOD,EAAQnC,KAAKqC,KAAMD,EAActC,UAAU,KAAO,CAC1D,C,eCJA,IASIwC,EAAIC,EAAMC,EAAKC,EAAMC,EAASC,EAAaC,EAT3CC,EAAW,EAAQ,KACnBC,EAAW,EAAQ,KAEnBC,EAAQC,SAAStB,UAAUqB,MAAO/C,EAAOgD,SAAStB,UAAU1B,KAC5D2B,EAASnB,OAAOmB,OAAQsB,EAAiBzC,OAAOyC,eAChDC,EAAmB1C,OAAO0C,iBAC1BC,EAAiB3C,OAAOkB,UAAUyB,eAClCC,EAAa,CAAEnD,cAAc,EAAMC,YAAY,EAAOC,UAAU,GAuBpEoC,EAAO,SAAUc,EAAMC,GACtB,IAAIf,EAAMgB,EAUV,OARAT,EAASQ,GACTC,EAAOlB,KACPC,EAAGtC,KAAKqC,KAAMgB,EAAMd,EAAO,WAC1BC,EAAIxC,KAAKuD,EAAMF,EAAMd,GACrBQ,EAAM/C,KAAKsD,EAAUjB,KAAMvC,UAC5B,GAEAyC,EAAKiB,mBAAqBF,EACnBjB,IACR,EAoEAK,EAAU,CACTJ,GApGDA,EAAK,SAAUe,EAAMC,GACpB,IAAIG,EAeJ,OAbAX,EAASQ,GAEJH,EAAenD,KAAKqC,KAAM,UAK9BoB,EAAOpB,KAAKqB,QAJZD,EAAOL,EAAW5D,MAAQmC,EAAO,MACjCsB,EAAeZ,KAAM,SAAUe,GAC/BA,EAAW5D,MAAQ,MAIfiE,EAAKJ,GACqB,iBAAfI,EAAKJ,GAAoBI,EAAKJ,GAAMM,KAAKL,GACpDG,EAAKJ,GAAQ,CAACI,EAAKJ,GAAOC,GAFdG,EAAKJ,GAAQC,EAIvBjB,IACR,EAoFCE,KAAMA,EACNC,IArEDA,EAAM,SAAUa,EAAMC,GACrB,IAAIG,EAAMG,EAAWC,EAAW1C,EAIhC,GAFA2B,EAASQ,IAEJH,EAAenD,KAAKqC,KAAM,UAAW,OAAOA,KAEjD,KADAoB,EAAOpB,KAAKqB,QACFL,GAAO,OAAOhB,KAGxB,GAAyB,iBAFzBuB,EAAYH,EAAKJ,IAGhB,IAAKlC,EAAI,EAAI0C,EAAYD,EAAUzC,KAAOA,EACpC0C,IAAcP,GAChBO,EAAUL,qBAAuBF,IACV,IAArBM,EAAU7D,OAAc0D,EAAKJ,GAAQO,EAAUzC,EAAI,EAAI,GACtDyC,EAAUE,OAAO3C,EAAG,SAItByC,IAAcN,GAChBM,EAAUJ,qBAAuBF,UAC5BG,EAAKJ,GAId,OAAOhB,IACR,EA4CCI,KA1CDA,EAAO,SAAUY,GAChB,IAAIlC,EAAG4C,EAAGT,EAAUM,EAAWI,EAE/B,GAAKb,EAAenD,KAAKqC,KAAM,YAC/BuB,EAAYvB,KAAKqB,OAAOL,IAGxB,GAAyB,iBAAdO,EAAwB,CAGlC,IAFAG,EAAIjE,UAAUC,OACdiE,EAAO,IAAIvC,MAAMsC,EAAI,GAChB5C,EAAI,EAAGA,EAAI4C,IAAK5C,EAAG6C,EAAK7C,EAAI,GAAKrB,UAAUqB,GAGhD,IADAyC,EAAYA,EAAUK,QACjB9C,EAAI,EAAImC,EAAWM,EAAUzC,KAAOA,EACxC4B,EAAM/C,KAAKsD,EAAUjB,KAAM2B,EAE7B,MACC,OAAQlE,UAAUC,QAClB,KAAK,EACJC,EAAKA,KAAK4D,EAAWvB,MACrB,MACD,KAAK,EACJrC,EAAKA,KAAK4D,EAAWvB,KAAMvC,UAAU,IACrC,MACD,KAAK,EACJE,EAAKA,KAAK4D,EAAWvB,KAAMvC,UAAU,GAAIA,UAAU,IACnD,MACD,QAGC,IAFAiE,EAAIjE,UAAUC,OACdiE,EAAO,IAAIvC,MAAMsC,EAAI,GAChB5C,EAAI,EAAGA,EAAI4C,IAAK5C,EACpB6C,EAAK7C,EAAI,GAAKrB,UAAUqB,GAEzB4B,EAAM/C,KAAK4D,EAAWvB,KAAM2B,GAG/B,GASArB,EAAc,CACbL,GAAIO,EAAEP,GACNC,KAAMM,EAAEN,GACRC,IAAKK,EAAEL,GACPC,KAAMI,EAAEJ,IAGTG,EAAOM,EAAiB,CAAC,EAAGP,GAE5BtD,EAAOC,QAAUA,EAAU,SAAU4E,GACpC,OAAa,MAALA,EAAavC,EAAOiB,GAAQM,EAAiB1C,OAAO0D,GAAIvB,EACjE,EACArD,EAAQoD,QAAUA,C,eCjIlB,IAAIyB,EAAc,EAAQ,KAE1B9E,EAAOC,QAAU,SAAUE,GAC1B,GAAqB,mBAAVA,EAAsB,OAAO,EAExC,IAAK2D,eAAenD,KAAKR,EAAO,UAAW,OAAO,EAElD,IACC,GAA4B,iBAAjBA,EAAMO,OAAqB,OAAO,EAC7C,GAA0B,mBAAfP,EAAMQ,KAAqB,OAAO,EAC7C,GAA2B,mBAAhBR,EAAMuD,MAAsB,OAAO,CAC/C,CAAE,MAAO7B,GACR,OAAO,CACR,CAEA,OAAQiD,EAAY3E,EACrB,C,gBChBA,IAAIR,EAAU,EAAQ,KAGlBoF,EAAgB,CAAE,QAAU,EAAM,UAAY,EAAM,WAAa,GAErE/E,EAAOC,QAAU,SAAUE,GAC1B,QAAKR,EAAQQ,IACN2D,eAAenD,KAAKoE,SAAsB5E,EAClD,C,gBCRA,IAAI6E,EAAa,EAAQ,IAErBC,EAAU,mBAAoBC,EAAmBvB,SAAStB,UAAU8C,SAExEnF,EAAOC,QAAU,SAAUE,GAC1B,QAAK6E,EAAW7E,KACZ8E,EAAQG,KAAKF,EAAiBvE,KAAKR,GAExC,C,gBCRA,IAAIkF,EAAW,EAAQ,KAEvBrF,EAAOC,QAAU,SAAUE,GAC1B,IAAKkF,EAASlF,GAAQ,OAAO,EAC7B,IACC,QAAKA,EAAMmF,aACJnF,EAAMmF,YAAYjD,YAAclC,CACxC,CAAE,MAAO0B,GACR,OAAO,CACR,CACD,C,UCPA7B,EAAOC,QAAU,SAAUE,GAAS,OAAOA,OAAwC,C,GCJ/EoF,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBvE,IAAjBwE,EACH,OAAOA,EAAazF,QAGrB,IAAID,EAASuF,EAAyBE,GAAY,CAGjDxF,QAAS,CAAC,GAOX,OAHA0F,EAAoBF,GAAUzF,EAAQA,EAAOC,QAASuF,GAG/CxF,EAAOC,OACf,CCrBAuF,EAAoBhC,EAAI,CAACvD,EAAS2F,KACjC,IAAI,IAAI7D,KAAO6D,EACXJ,EAAoBX,EAAEe,EAAY7D,KAASyD,EAAoBX,EAAE5E,EAAS8B,IAC5EZ,OAAOyC,eAAe3D,EAAS8B,EAAK,CAAElB,YAAY,EAAMG,IAAK4E,EAAW7D,IAE1E,ECNDyD,EAAoBX,EAAI,CAACzD,EAAKyE,IAAU1E,OAAOkB,UAAUyB,eAAenD,KAAKS,EAAKyE,GCClFL,EAAoBM,EAAK7F,IACH,oBAAX8F,QAA0BA,OAAOC,aAC1C7E,OAAOyC,eAAe3D,EAAS8F,OAAOC,YAAa,CAAE7F,MAAO,WAE7DgB,OAAOyC,eAAe3D,EAAS,aAAc,CAAEE,OAAO,GAAO,E,kDCL9D,MAAMqD,EAAI,CAACpC,EAAKyE,IAASzE,EAAMA,EAAIyE,QAAQ3E,EAErC+E,EAAI,CAACrE,EAAKsE,EAAKC,EAAKN,KACtB,IAAI3D,EACJ,GAAyB,kBAAdgE,EAAIL,GACX,OAAQA,GACJ,IAAK,cACL,IAAK,YACD3D,EAAMgE,EAAIL,GAAQjE,EAAIiE,GAAQK,EAAIL,GAClC,MACJ,QACI3D,EAAMgE,EAAIL,QAIlB3D,EADgB,WAAT2D,EACDK,EAAIL,QAEa3E,IAAjBsC,EAAE2C,EAAKN,GAAsBjE,EAAIiE,GAAQK,EAAIL,GAEvD,OAAO3D,GAGEkE,EAAS,CAACxE,EAAKsE,EAAKC,KAC7B,IAAK,IAAIN,KAAQjE,EACA,aAATiE,IAEOK,EAAIL,aAAiBzD,MAC5B8D,EAAIL,GAAQM,EAAOvE,EAAIiE,GAAQjE,EAAIiE,GAAQK,EAAIL,GAASjE,EAAIiE,GACrDK,EAAIL,aAAiB1E,OAC5BiF,EAAOxE,EAAIiE,GAAOK,EAAIL,GAAOrC,EAAE2C,EAAKN,IAEpCK,EAAIL,GAAQM,EAAMF,EAAErE,EAAKsE,EAAKC,EAAKN,GAAQjE,EAAIiE,GAEvD,EAGSQ,EAAO,KAChB,IAAI7C,GAAI,IAAI8C,MAAOC,UAMnB,MALa,uCAAuCC,QAAQ,SAAUpG,IAClE,IAAI0F,GAAKtC,EAAoB,GAAhB9B,KAAK+E,UAAiB,GAAK,EAExC,OADAjD,EAAI9B,KAAKgF,MAAMlD,EAAI,KACL,MAANpD,EAAY0F,EAAS,EAAJA,EAAU,GAAMX,SAAS,GAAE,GAEjDkB,EC3CJ,MAAMM,EAEZ,WAAArB,GAECtC,KAAK4D,KAAO,gBACZ5D,KAAK6D,QAAU,EACf7D,KAAK8D,GACL9D,KAAK+D,UAAYC,OAAOD,WACvBC,OAAOC,iBACPD,OAAOE,cACPF,OAAOG,YACPH,OAAOI,iBAEelG,IAAnB8B,KAAK+D,WAERM,QAAQxF,MAAM,mDAEhB,CAEA,IAAAyF,CAAKC,GAEJ,QAAuBrG,IAAnB8B,KAAK+D,UAER,YADAQ,IAID,MAAMC,EAAOlB,KAAKmB,MACZC,EAAWrH,GAAMgH,QAAQxF,MAAM,YAAaxB,GAC5CsH,EAAUZ,UAAUa,KAAK5E,KAAK4D,KAAM5D,KAAK6D,SAC/Cc,EAAQE,gBAAmBxH,IAE1B,MAAMyG,EAAKzG,EAAEyH,OAAOtF,QAC4B,IAA5CsE,EAAGiB,iBAAiBhI,SAAS,YAChC+G,EAAGkB,kBAAkB,UACtB,EAGDL,EAAQM,UAAa5H,IAEpB2C,KAAK8D,GAAKzG,EAAEyH,OAAOtF,OACnBQ,KAAK8D,GAAGY,QAAUA,EAClBH,IACAF,QAAQa,IAAI,iBAAiB5B,KAAKmB,MAAQD,OAAU,EAGrDG,EAAQD,QAAUA,CACnB,CAEA,GAAA1G,CAAIuG,GAEH,QAAgBrG,IAAZ8B,KAAK8D,GAER,YADAS,IAID,MAAMC,EAAOlB,KAAKmB,MACEzE,KAAK8D,GAAGqB,YAAY,CAAC,WAAY,aACrBC,YAAY,WAChBpH,IAAI,GACxBiH,UAAa5H,IAEpBkH,EAASlH,EAAEyH,OAAOtF,QAClB6E,QAAQa,IAAI,gBAAgB5B,KAAKmB,MAAQD,OAAU,CAErD,CAEA,GAAAvG,CAAImD,EAAMmD,GAET,QAAgBrG,IAAZ8B,KAAK8D,GAER,YADAS,IAID,MAAMC,EAAOlB,KAAKmB,MACEzE,KAAK8D,GAAGqB,YAAY,CAAC,WAAY,aACrBC,YAAY,WAChBC,IAAIjE,EAAM,GAC9B6D,UAAY,KAEnBV,IACAF,QAAQa,IAAI,gBAAgB5B,KAAKmB,MAAQD,OAAU,CAErD,CAEA,KAAAc,GAEC,QAAgBpH,IAAZ8B,KAAK8D,GACR,OAGD,MAAMU,EAAOlB,KAAKmB,MACEzE,KAAK8D,GAAGqB,YAAY,CAAC,WAAY,aACrBC,YAAY,WAChBE,QACpBL,UAAY,KAEnBZ,QAAQa,IAAI,kBAAkB5B,KAAKmB,MAAQD,OAAU,CAEvD,EClGM,MAAMe,EAEZ,WAAAjD,CAAYkD,GAEXxF,KAAKyF,SAAWD,EAAOE,SAASD,UAAY,KAC5CzF,KAAK2F,OAAS,CACbC,GAAI,CACH,kBAAmB,UACnB,eAAgB,gBAChB,eAAgB,YAChB,mBAAoB,YACpB,yBAA0B,+HAC1B,mBAAoB,6BACpB,qBAAsB,aACtB,qBAAsB,oBAEtB,gBAAiB,gBACjB,mBAAoB,WACpB,oBAAqB,YACrB,wBAAyB,MACzB,2BAA4B,SAC5B,0BAA2B,QAC3B,sBAAuB,cACvB,0BAA2B,MAC3B,6BAA8B,SAC9B,4BAA6B,QAC7B,6BAA8B,SAC9B,6BAA8B,SAC9B,iBAAkB,SAClB,6BAA8B,SAC9B,mBAAoB,WACpB,4BAA6B,WAC7B,4BAA6B,gBAC7B,wBAAyB,OACzB,8BAA+B,CAAC,aAAc,uBAC9C,0BAA2B,SAC3B,mCAAoC,uBACpC,mBAAoB,WACpB,yBAA0B,QAC1B,2BAA4B,UAC5B,+BAAgC,cAChC,2BAA4B,UAC5B,6BAA8B,YAC9B,8BAA+B,aAC/B,4BAA6B,WAC7B,0BAA2B,SAC3B,iCAAkC,gBAClC,0BAA2B,SAC3B,wBAAyB,OACzB,0BAA2B,SAC3B,6BAA8B,YAE9B,gBAAiB,OACjB,cAAe,MAEf,oBAAqB,aACrB,UAAW,IAEZC,GAAI,CACH,kBAAmB,iBACnB,eAAgB,MAChB,eAAgB,MAChB,mBAAoB,wBACpB,yBAA0B,wJAC1B,mBAAoB,6BACpB,qBAAsB,cACtB,qBAAsB,yBAEtB,gBAAiB,MACjB,mBAAoB,WACpB,oBAAqB,eACrB,wBAAyB,UACzB,2BAA4B,UAC5B,0BAA2B,eAC3B,sBAAuB,cACvB,0BAA2B,UAC3B,6BAA8B,UAC9B,4BAA6B,eAC7B,6BAA8B,QAC9B,6BAA8B,UAC9B,iBAAkB,aAClB,6BAA8B,aAC9B,mBAAoB,WACpB,4BAA6B,SAC7B,4BAA6B,MAC7B,wBAAyB,MACzB,8BAA+B,CAAC,aAAc,0BAC9C,0BAA2B,MAC3B,mCAAoC,MACpC,mBAAoB,MACpB,yBAA0B,MAC1B,2BAA4B,MAC5B,+BAAgC,MAChC,2BAA4B,MAC5B,6BAA8B,MAC9B,8BAA+B,MAC/B,4BAA6B,SAC7B,0BAA2B,MAC3B,iCAAkC,MAClC,0BAA2B,MAC3B,wBAAyB,MACzB,0BAA2B,MAC3B,6BAA8B,MAE9B,gBAAiB,MACjB,cAAe,UAEf,oBAAqB,GACrB,UAAW,IAEZC,GAAI,CACH,kBAAmB,QACnB,eAAgB,MAChB,eAAgB,MAChB,mBAAoB,OACpB,yBAA0B,kFAC1B,mBAAoB,eACpB,qBAAsB,UACtB,qBAAsB,UAEtB,gBAAiB,MACjB,mBAAoB,KACpB,oBAAqB,IACrB,wBAAyB,KACzB,2BAA4B,KAC5B,0BAA2B,MAC3B,sBAAuB,KACvB,0BAA2B,KAC3B,2BAA4B,KAC5B,4BAA6B,MAC7B,6BAA8B,OAC9B,6BAA8B,QAC9B,iBAAkB,KAClB,6BAA8B,KAC9B,mBAAoB,KACpB,4BAA6B,OAC7B,4BAA6B,MAC7B,wBAAyB,MACzB,8BAA+B,CAAC,WAAY,mBAC5C,0BAA2B,MAC3B,mCAAoC,MACpC,mBAAoB,MACpB,yBAA0B,MAC1B,2BAA4B,MAC5B,+BAAgC,MAChC,2BAA4B,MAC5B,6BAA8B,MAC9B,8BAA+B,MAC/B,4BAA6B,OAC7B,0BAA2B,MAC3B,iCAAkC,MAClC,0BAA2B,MAC3B,wBAAyB,MACzB,0BAA2B,MAC3B,6BAA8B,MAE9B,gBAAiB,MACjB,cAAe,KAEf,oBAAqB,GACrB,UAAW,IAEZC,GAAI,CACH,kBAAmB,iBACnB,eAAgB,sBAChB,eAAgB,oBAChB,mBAAoB,gBACpB,yBAA0B,8IAC1B,mBAAoB,mCACpB,qBAAsB,sBACtB,qBAAsB,eAEtB,gBAAiB,yBACjB,mBAAoB,aACpB,oBAAqB,WACrB,wBAAyB,WACzB,2BAA4B,UAC5B,0BAA2B,WAC3B,sBAAuB,YACvB,0BAA2B,WAC3B,6BAA8B,UAC9B,4BAA6B,WAC7B,6BAA8B,QAC9B,6BAA8B,SAC9B,iBAAkB,QAClB,6BAA8B,QAC9B,mBAAoB,YACpB,4BAA6B,OAC7B,4BAA6B,gBAC7B,wBAAyB,QACzB,8BAA+B,CAAC,oBAAqB,kCACrD,0BAA2B,WAC3B,mCAAoC,sBACpC,mBAAoB,aACpB,yBAA0B,YAC1B,2BAA4B,QAC5B,+BAAgC,WAChC,2BAA4B,kBAC5B,6BAA8B,WAC9B,8BAA+B,gBAC/B,4BAA6B,OAC7B,0BAA2B,WAC3B,iCAAkC,iBAClC,0BAA2B,QAC3B,wBAAyB,QACzB,0BAA2B,WAC3B,6BAA8B,cAE9B,gBAAiB,UACjB,cAAe,WAEf,oBAAqB,GACrB,UAAW,IAEZC,GAAI,CACH,kBAAmB,YACnB,eAAgB,cAChB,eAAgB,gBAChB,mBAAoB,UACpB,yBAA0B,0IAC1B,mBAAoB,+BACpB,qBAAsB,gBACtB,qBAAsB,cAEtB,gBAAiB,iBACjB,mBAAoB,WACpB,oBAAqB,YACrB,wBAAyB,iBACzB,2BAA4B,gBAC5B,0BAA2B,MAC3B,sBAAuB,YACvB,0BAA2B,iBAC3B,6BAA8B,gBAC9B,4BAA6B,MAC7B,6BAA8B,MAC9B,6BAA8B,MAC9B,iBAAkB,WAClB,6BAA8B,MAC9B,mBAAoB,UACpB,4BAA6B,WAC7B,4BAA6B,aAC7B,wBAAyB,MACzB,8BAA+B,CAAC,MAAO,OACvC,0BAA2B,MAC3B,mCAAoC,OACpC,mBAAoB,WACpB,yBAA0B,SAC1B,2BAA4B,iBAC5B,+BAAgC,QAChC,2BAA4B,WAC5B,6BAA8B,eAC9B,8BAA+B,YAC/B,4BAA6B,WAC7B,0BAA2B,QAC3B,iCAAkC,eAClC,0BAA2B,MAC3B,wBAAyB,MACzB,0BAA2B,MAC3B,6BAA8B,MAE9B,gBAAiB,MACjB,cAAe,MAEf,oBAAqB,gBACrB,UAAW,KAIbR,EAAOvF,GAAG,mBAAoB9C,IAC7B6C,KAAKyF,SAAWtI,CAAK,GAEvB,CAEA,GAAAa,CAAIe,GAAO,OAAOiB,KAAK2F,OAAO3F,KAAKyF,UAAU1G,IAAQ,KAAO,EC7Q7D,MAAMkH,EAAY,mCAMX,MAAMC,EAEZ,WAAA5D,CAAY6D,GAEXnG,KAAKoG,IAAMC,SAASC,cAAcH,EACnC,CAEA,GAAAI,GAEC,IAAK,IAAIzH,EAAI,EAAGA,EAAIrB,UAAUC,OAAQoB,IAAK,CAE1C,MAAM0H,EAAW/I,UAAUqB,GAE3B,GAAI0H,aAAoBN,EAEvBlG,KAAKoG,IAAIK,YAAYD,EAASJ,UAExB,GAAIhH,MAAMsH,QAAQF,GAExB,IAAK,IAAIG,EAAI,EAAGA,EAAIH,EAAS9I,OAAQiJ,IAAK,CAEzC,MAAMC,EAAUJ,EAASG,GAErBC,aAAmBV,EAEtBlG,KAAKoG,IAAIK,YAAYG,EAAQR,KAG7B/B,QAAQxF,MAAM,aAAc+H,EAASX,EAEvC,MAGA5B,QAAQxF,MAAM,aAAc2H,EAAUP,EAExC,CACA,OAAOjG,IACR,CAEA,MAAA6G,GAEC,IAAK,IAAI/H,EAAI,EAAGA,EAAIrB,UAAUC,OAAQoB,IAAK,CAE1C,MAAM0H,EAAW/I,UAAUqB,GAEvB0H,aAAoBN,EAEvBlG,KAAKoG,IAAIU,YAAYN,EAASJ,KAEpBW,OAAOC,UAAUR,GAE3BxG,KAAKoG,IAAIU,YAAY9G,KAAKoG,IAAIa,WAAWT,IAGzCnC,QAAQxF,MAAM,aAAc2H,EAAUP,EAExC,CACA,OAAOjG,IACR,CAEA,KAAAsF,GAEC,KAAOtF,KAAKoG,IAAIc,SAASxJ,QAExBsC,KAAKoG,IAAIU,YAAY9G,KAAKoG,IAAIe,WAE/B,OAAOnH,IACR,CAEA,KAAAoH,CAAMC,GAGL,OADArH,KAAKoG,IAAIiB,GAAKA,EACPrH,IACR,CAEA,KAAAsH,GAEC,OAAOtH,KAAKoG,IAAIiB,EACjB,CAEA,eAAAE,CAAgB3D,GAGf,OADA5D,KAAKoG,IAAImB,gBAAgB3D,GAClB5D,IACR,CAEA,QAAAwH,CAAS5D,GAGR,OADA5D,KAAKoG,IAAIqB,UAAY7D,EACd5D,IACR,CAEA,QAAA0H,CAAS9D,GAGR,OADA5D,KAAKoG,IAAIuB,UAAUpB,IAAI3C,GAChB5D,IACR,CAEA,WAAA4H,CAAYhE,GAGX,OADA5D,KAAKoG,IAAIuB,UAAUd,OAAOjD,GACnB5D,IACR,CAEA,QAAA6H,CAAS9I,EAAK5B,GAGb,OADA6C,KAAKoG,IAAI0B,MAAM/I,GAAO5B,EACf6C,IACR,CAEA,QAAA+H,GAEC,OAAO/H,KAAKoG,IAAI4B,KACjB,CAEA,QAAAC,CAASD,GAIR,OAFIhI,KAAKoG,IAAI4B,QAAUA,GAASA,IAC/BhI,KAAKoG,IAAI4B,MAAQA,GACXhI,IACR,CAEA,cAAAkI,GAEC,OAAOlI,KAAKoG,IAAI+B,WACjB,CAEA,cAAAC,CAAeC,GAId,OAFIrI,KAAKoG,IAAI+B,cAAgBE,GAAQA,IACpCrI,KAAKoG,IAAI+B,YAAcE,GACjBrI,IACR,CAEA,qBAAAsI,GAEC,OAAOtI,KAAKoG,IAAIkC,uBACjB,EAOM,MAAMC,UAAerC,EAE3B,WAAA5D,CAAY+F,GAEXG,MAAM,QACNxI,KAAKoI,eAAeC,EACrB,EAMM,MAAMI,UAAcvC,EAE1B,WAAA5D,GAECkG,MAAM,MACP,CAEA,QAAAhB,CAASC,GAER,OADAzH,KAAKoG,IAAIqB,UAAYA,EACdzH,IACR,CAEA,QAAA0H,CAASD,GAER,OADAzH,KAAKoG,IAAIuB,UAAUpB,IAAIkB,GAChBzH,IACR,EAMM,MAAM0I,UAAcD,EAE1B,WAAAnG,GAECkG,QAEAxI,KAAKoG,IAAIqB,UAAY,KACtB,EAMM,MAAMkB,UAAgBF,EAE5B,WAAAnG,GAECkG,QAEAxI,KAAKoG,IAAIqB,UAAY,OACtB,EAQM,MAAMmB,UAAgB1C,EAE5B,WAAA5D,CAAY+F,EAAMhB,GAEjBmB,MAAM,SAENxI,KAAKoG,IAAI+B,YAAcE,EACnBhB,IAAIrH,KAAKoG,IAAIyC,QAAUxB,EAC5B,EAQM,MAAMyB,UAAe5C,EAE3B,WAAA5D,CAAYyG,EAAMV,GAEjBG,MAAM,KAENxI,KAAKoG,IAAI2C,KAAOA,GAAQ,IACxB/I,KAAKoG,IAAI+B,YAAcE,GAAQ,EAChC,CAEA,OAAAW,CAAQC,GAGP,OADAjJ,KAAKoG,IAAI2C,KAAOE,EACTjJ,IACR,EAOM,MAAMkJ,UAAeX,EAE3B,WAAAjG,CAAY+F,GAEXG,QAEAxI,KAAKoG,IAAI+B,YAAcE,CACxB,CAEA,QAAAc,GAEC,OAAOnJ,KAAKoG,IAAI+B,WACjB,CAEA,QAAAiB,CAASf,GAGR,OADArI,KAAKoG,IAAI+B,YAAcE,EAChBrI,IACR,EAkCM,MAAMqJ,UAAiBnD,EAE7B,WAAA5D,GAECkG,MAAM,SACP,CAEA,WAAAc,CAAYC,GAGX,OADAvJ,KAAKoG,IAAIoD,SAAWD,IAAW,EACxBvJ,IACR,CAEA,UAAAyJ,CAAWlM,GAEV,MAAMmM,EAAW1J,KAAKoG,IAAIjJ,MAC1B6C,KAAKsF,QAEL,IAAK,MAAMvG,KAAOxB,EAAS,CAE1B,MAAMoM,EAAStD,SAASC,cAAc,UACtCqD,EAAOxM,MAAQ4B,EACf4K,EAAOtB,KAAO9K,EAAQwB,GACtBiB,KAAKoG,IAAIK,YAAYkD,EACtB,CAEA,OADA3J,KAAKoG,IAAIjJ,MAAQuM,EACV1J,IACR,CAEA,QAAAmJ,GAEC,OAAOnJ,KAAKoG,IAAIjJ,KACjB,CAEA,QAAAiM,CAASjM,GAMR,OAJAA,EAAQyC,OAAOzC,GAEX6C,KAAKoG,IAAIjJ,QAAUA,IACtB6C,KAAKoG,IAAIjJ,MAAQA,GACX6C,IACR,EASM,MAAM4J,UAAgB1D,EAE5B,WAAA5D,CAAYtB,EAAM7D,EAAO6K,GAExBQ,MAAM,SAENxI,KAAKoG,IAAIpF,KAAOA,EAChBhB,KAAKoG,IAAIyD,UAAaxM,IAErBA,EAAEyM,iBAAiB,EAEpB9J,KAAKoJ,SAASjM,GACd6C,KAAKiI,SAASD,EACf,CAEA,OAAA+B,GAEC,OAAO/J,KAAKoG,IAAIxC,IACjB,CAEA,OAAAoG,CAAQpG,GAGP,OADA5D,KAAKoG,IAAIxC,KAAOA,EACT5D,IACR,CAEA,OAAAiK,GAEC,OAAOjK,KAAKoG,IAAIpF,IACjB,CAEA,OAAAkJ,CAAQlJ,GAGP,OADAhB,KAAKoG,IAAIpF,KAAOA,EACThB,IACR,CAEA,QAAAmJ,GAEC,OAAOnJ,KAAKoG,IAAIjJ,KACjB,CAEA,QAAAiM,CAASjM,GAIR,OAFI6C,KAAKoG,IAAIjJ,QAAUA,QAAmBe,IAAVf,IAC/B6C,KAAKoG,IAAIjJ,MAAQA,GACX6C,IACR,EAsDM,MAAMmK,UAAiBjE,EAE7B,WAAA5D,CAAYnF,EAAOiN,EAAMC,EAAK5L,EAAK6L,GAElC9B,MAAM,SAENxI,KAAKoG,IAAIpF,KAAO,SAChBhB,KAAKoG,IAAIgE,KAAOA,GAAQ,EACxBpK,KAAKoG,IAAIyD,UAAaxM,IAErBA,EAAEyM,iBAAiB,EAEpB9J,KAAK7C,MAAQA,GAAS,EACtB6C,KAAKqK,IAAMA,IAAO,IAClBrK,KAAKvB,IAAMA,GAAO,IAClBuB,KAAKsK,UAAYA,GAAa,EAC9BtK,KAAKoJ,SAASjM,GACd6C,KAAKoG,IAAImE,SAAYlN,IAEpB2C,KAAKoJ,SAASpJ,KAAK7C,MAAM,CAE3B,CAEA,OAAA4M,GAEC,OAAO/J,KAAKoG,IAAIxC,IACjB,CAEA,OAAAoG,CAAQpG,GAGP,OADA5D,KAAKoG,IAAIxC,KAAOA,EACT5D,IACR,CAEA,YAAAwK,CAAaF,GAIZ,OAFAtK,KAAKsK,UAAYA,EACjBtK,KAAKoJ,SAASpJ,KAAK7C,OACZ6C,IACR,CAEA,QAAAyK,CAASJ,EAAK5L,GAMb,OAJAuB,KAAKqK,IAAMA,EACXrK,KAAKvB,IAAMA,EACXuB,KAAKoG,IAAIiE,IAAMA,EACfrK,KAAKoG,IAAI3H,IAAMA,EACRuB,IACR,CAEA,OAAA0K,CAAQN,GAGP,OADApK,KAAKoG,IAAIgE,KAAOA,EACTpK,IACR,CAEA,QAAAmJ,GAEC,OAAOwB,WAAW3K,KAAKoG,IAAIjJ,MAC5B,CAEA,QAAAiM,CAASjM,GAaR,YAXce,IAAVf,KACHA,EAAQwN,WAAWxN,IAEP6C,KAAKqK,MAChBlN,EAAQ6C,KAAKqK,KACVlN,EAAQ6C,KAAKvB,MAChBtB,EAAQ6C,KAAKvB,KAEduB,KAAK7C,MAAQA,EACb6C,KAAKoG,IAAIjJ,MAAQA,EAAMyN,QAAQ5K,KAAKsK,YAE9BtK,IACR,EAiDM,MAAM6K,UAAsBpC,EAElC,WAAAnG,CAAYwI,GAEXtC,QAEAxI,KAAK8K,MAAQA,GAAS,aACtB9K,KAAK+K,KAAO,GACZ/K,KAAKgL,OAAS,GACdhL,KAAKiL,UAAW,IAAI1C,GAASf,SAAS,gBACtCxH,KAAKkL,SAAU,IAAIzC,GAAQjB,SAAS,QACpCxH,KAAKmL,SAAU,IAAI1C,GAAQjB,SAAS,QACpCxH,KAAKmL,QAAQ5E,IAAIvG,KAAKiL,UACtBjL,KAAKoL,WAAY,IAAI3C,GAAQjB,SAAS,UACtCxH,KAAK0J,SAAW,GAChB1J,KAAKuG,IAAIvG,KAAKkL,SACdlL,KAAKuG,IAAIvG,KAAKmL,SACdnL,KAAKuG,IAAIvG,KAAKoL,UACf,CAEA,OAAAC,CAAQC,GACPtL,KAAKkL,QAAQ3E,IAAI+E,EAClB,CAEA,MAAAC,CAAOlE,EAAImE,EAAOF,GAEjB,MAAMG,EAAM,IAAIC,EAAMF,EAAOxL,MAC7ByL,EAAIrE,MAAMC,GACVoE,EAAIjE,SAAS,OACbxH,KAAK+K,KAAKzJ,KAAKmK,GACfzL,KAAKmL,QAAQ5E,IAAIkF,GAEjB,MAAME,EAAQ,IAAIlD,EAClBkD,EAAMvE,MAAMC,GACZsE,EAAMpF,IAAI+E,GACVtL,KAAKgL,OAAO1J,KAAKqK,GACjB3L,KAAKoL,UAAU7E,IAAIoF,GACnB3L,KAAK4L,OAAOvE,EACb,CAEA,MAAAuE,CAAOvE,GAEN,IAAK,IAAIoE,KAAOzL,KAAK+K,KAChBU,EAAIrF,IAAIiB,KAAOA,GAClBoE,EAAI/D,SAAS,YACb1H,KAAK6L,kBAAkBJ,IACbA,EAAIrF,IAAIiB,KAAOrH,KAAK0J,UAC9B+B,EAAI7D,YAAY,YAIlB,IAAK,IAAI+D,KAAS3L,KAAKgL,OAClBW,EAAMvF,IAAIiB,KAAOA,EACpBsE,EAAMvF,IAAI0B,MAAMgE,QAAU,QAChBH,EAAMvF,IAAIiB,KAAOrH,KAAK0J,WAChCiC,EAAMvF,IAAI0B,MAAMgE,QAAU,QAK5B,OADA9L,KAAK0J,SAAWrC,EACTrH,IACR,CAEA,QAAA+L,CAAS1E,EAAIgB,GAEZ,IAAK,IAAIoD,KAAOzL,KAAK+K,KACpB,GAAIU,EAAIrF,IAAIiB,KAAOA,EAAI,CACtBoE,EAAIxD,SAASI,GACb,KACD,CAEF,CAEA,iBAAAwD,CAAkBJ,GAEjB,IAAIO,EACJ,MAAMC,EAAOR,EAAInD,wBACE,eAAftI,KAAK8K,OACRkB,EAAOC,EAAKC,MAAQlM,KAAK+K,KAAKjL,QAAQ2L,GACtCzL,KAAKiL,SAAS7E,IAAI0B,MAAMqE,UAAY,cAAcH,SAElDA,EAAOC,EAAKG,OAASpM,KAAK+K,KAAKjL,QAAQ2L,GACvCzL,KAAKiL,SAAS7E,IAAI0B,MAAMqE,UAAY,cAAcH,OAEpD,EAQM,MAAMN,UAAcjD,EAE1B,WAAAnG,CAAY+F,EAAMgE,GAEjB7D,QACAxI,KAAKsM,OAAS,IAAI1C,EAAQ,UAC1B5J,KAAKsM,OAAOlG,IAAI4B,MAAQK,EACxBrI,KAAKoG,IAAImG,QAAWlP,IAEnBgP,EAAOT,OAAO5L,KAAKoG,IAAIiB,IACvBhK,EAAEmP,gBAAgB,EAEnBxM,KAAKuG,IAAIvG,KAAKsM,OACf,EAOM,MAAMG,UAAevG,EAE3B,WAAA5D,CAAY+J,GAEX7D,MAAM,MACNxI,KAAKqM,OAASA,GAAUA,EAAOA,OAC/BrM,KAAK0M,UAAW,CACjB,CAEA,MAAAC,GAMC,OAJA3M,KAAK0M,UAAW,EAChB1M,KAAKoG,IAAI0B,MAAMgE,QAAU,QACrB9L,KAAKqM,QACRrM,KAAKqM,OAAOM,SACN3M,IACR,CAEA,OAAA4M,GAIC,OAFA5M,KAAK0M,UAAW,EAChB1M,KAAKoG,IAAI0B,MAAMgE,QAAU,OAClB9L,IACR,EAOM,MAAM6M,UAAe3G,EAE3B,WAAA5D,CAAY+J,GAEX7D,MAAM,MACNxI,KAAKqM,OAASA,EACdrM,KAAK0J,UAAW,CACjB,CAEA,GAAAnD,GACC,IAAIuG,EAAM,EACV,MAAMC,GAAM,IAAItE,GAAQrB,MAAM,YAC9B,IAAK,IAAItI,EAAI,EAAGA,EAAIrB,UAAUC,OAAQoB,IAAK,CAC1C,MAAM0H,EAAW/I,UAAUqB,GACvB0H,aAAoBiG,EACvBjE,MAAMjC,IAAIC,IAEVuG,EAAIxG,IAAIC,GACRsG,IAEF,CAEA,OADIA,GAAKtE,MAAMjC,IAAIwG,GACZ/M,IACR,CAEA,MAAA4L,GAIC,OAFA5L,KAAK0J,UAAW,EAChB1J,KAAKwH,SAAS,YACPxH,IACR,CAEA,QAAAgN,GAIC,OAFAhN,KAAK0J,UAAW,EAChB1J,KAAKuH,gBAAgB,SACdvH,IACR,EAOM,MAAMiN,UAAc/G,EAE1B,WAAA5D,CAAYgJ,GAEX9C,MAAM,OACNxI,KAAKwH,SAAS,OACdxH,KAAKuG,IAAI+E,EACV,EClwBM,MAAM4B,EAEZ,WAAA5K,CAAYkD,GAEX,MAAM2H,EAAU3H,EAAO2H,QACjBzH,EAAWF,EAAOE,SAElB0H,GAAY,IAAI3E,GAAQrB,MAAM,WAC9B5I,EAAO,CACZ,kBACA,eACA,eACA,mBACA,yBACA,mBACA,qBACA,qBACA,iBACA,iBAIK6O,GAAQ,IAAI5E,GAAQjB,SAAS,UAC7B8F,GAAY,IAAI7E,GAAQrB,MAAM,SAASI,SAAS,OAChD+F,EAAY,IAAI3D,EAAQ,UAW9B,IAAI4D,EAASC,EACTC,EAASC,EAXbJ,EAAUnH,IAAI4B,MAAQmF,EAAQnP,IAAIQ,EAAK,IACvC+O,EAAUnH,IAAImG,QAAWlP,IAExBmI,EAAOpF,KAAK,iBAAiB,GAC7BmN,EAAUnH,IAAIwH,OACdvQ,EAAEmP,gBAAgB,EAEnBc,EAAU/G,IAAIgH,GACdF,EAAM9G,IAAI+G,GAIc,YAApB5H,EAASmI,SACZL,GAAU,IAAI/E,GAAQrB,MAAM,SAASI,SAAS,OAC9CiG,EAAU,IAAI7D,EAAQ,UACtB6D,EAAQxF,SAASkF,EAAQnP,IAAIQ,EAAK,KAClCiP,EAAQrH,IAAImG,QAAWlP,IAEtBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,iBACFiB,EAAQrH,IAAIwH,MAAM,EAEnBJ,EAAQjH,IAAIkH,GACZJ,EAAM9G,IAAIiH,GAEVE,GAAU,IAAIjF,GAAQrB,MAAM,SAASI,SAAS,OAC9CmG,EAAU,IAAI/D,EAAQ,UACtB+D,EAAQvH,IAAI4B,MAAQmF,EAAQnP,IAAIQ,EAAK,IACrCmP,EAAQvH,IAAImG,QAAWlP,IAEtBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,iBACFmB,EAAQvH,IAAIwH,MAAM,EAEnBF,EAAQnH,IAAIoH,GACZN,EAAM9G,IAAImH,IAIX,MAAMI,GAAU,IAAIrF,GAAQrB,MAAM,YAAYI,SAAS,QACjDuG,GAAW,IAAIjF,GAAS1B,MAAM,aAAa4B,QAAQ,KAAKZ,eAAe,QAM7E,IAAI4F,EAAQC,EA8DRC,EAAcC,EAwFdC,EAAgBC,EA1JpBP,EAAQvH,IAAIwH,GACZV,EAAM9G,IAAIuH,GAIVE,GAAS,IAAIvF,GAAQrB,MAAM,SAASI,SAAS,OAC7CyG,EAAS,IAAIrE,EAAQ,UAGrBqE,EAAO7H,IAAImG,QAAWlP,IACrBA,EAAEyM,kBACFtE,EAAO8I,KAAKC,OAAOC,WAAWC,MAAMC,KASrC,SAAiBA,GAGhB,IAFkBrI,SAASsI,eAAe,oBAExB,CACjB,IAAIC,EAAUvI,SAASC,cAAc,MACrCsI,EAAQC,aAAa,KAAM,oBAE3B,IAAIC,EAAWzI,SAASC,cAAc,MACtCwI,EAAS3G,YAAc,UAEvByG,EAAQnI,YAAYqI,GAEpBJ,EAAI1P,SAAS+P,IACZ,IAAIC,EAAU3I,SAASC,cAAc,MACjC2I,EAAU5I,SAASC,cAAc,KAErC2I,EAAQlG,KAAO,IACfkG,EAAQ9G,YAAc4G,EAAQvD,MAE9ByD,EAAQ1C,QAAWlP,IAClBA,EAAEmP,iBAEFnG,SAAS6I,iBAAiB,0BAA0BlQ,SAASmQ,IAC5DA,EAAKxH,UAAUd,OAAO,SAAS,IAGhCoI,EAAQtH,UAAUpB,IAAI,UAGtBf,EAAO4J,UAAUtD,QAAQiD,EAAQhG,KAAK,EAGvCiG,EAAQvI,YAAYwI,GACpBL,EAAQnI,YAAYuI,EAAQ,IAG7BhB,EAAO5H,IAAIK,YAAYmI,EACxB,CAEcvI,SAASsI,eAAe,oBAC9BhH,UAAU0H,OAAO,SAC1B,CAjDEC,CAAQZ,EAAI,GACZ,EAGFV,EAAOzH,IAAI0H,GACXZ,EAAM9G,IAAIyH,GAkDVE,GAAe,IAAIzF,GAAQrB,MAAM,SAASI,SAAS,OACnD2G,EAAe,IAAIvE,EAAQ,UAE3BuE,EAAa/H,IAAImG,QAAWlP,IAC3BA,EAAEyM,kBAOH,WAGC,IAFmBzD,SAASsI,eAAe,0BAExB,CAClB,IAAIY,EAAgBlJ,SAASC,cAAc,MAC3CiJ,EAAcV,aAAa,KAAM,0BAEjC,IAAI7G,EAAQ3B,SAASC,cAAc,MACnC0B,EAAMG,YAAc,oBAEpBoH,EAAc9I,YAAYuB,GAE1BxC,EAAOE,SAAS8J,UAAUxQ,SAASyQ,IAClC,IAAIC,EAAerJ,SAASC,cAAc,MACtCqJ,EAAetJ,SAASC,cAAc,KACtCsJ,EAAYvJ,SAASC,cAAc,QAEvCqJ,EAAa5G,KAAO,IACpB4G,EAAaxH,YAAc,YAAYoH,EAAcrI,SAASxJ,SAE9DiS,EAAapD,QAAWlP,IACvBA,EAAEmP,iBAEFnG,SAAS6I,iBAAiB,gCAAgClQ,SAASmQ,IAClEA,EAAKxH,UAAUd,OAAO,SAAS,IAGhC8I,EAAahI,UAAUpB,IAAI,UAE3Bf,EAAO4J,UAAUtD,QAAQ2D,EAAI,EAG9BG,EAAUC,UAAY,mCAEtBD,EAAUrD,QAAWlP,IACpBA,EAAEyM,kBACFtE,EAAOsK,0BAA0BL,EAAI,EAGtCC,EAAajJ,YAAYkJ,GACzBD,EAAajJ,YAAYmJ,GACzBL,EAAc9I,YAAYiJ,EAAa,IAGxCK,EAAY3J,IAAIK,YAAY8I,EAC7B,CAEoBlJ,SAASsI,eAAe,0BAC9BhH,UAAU0H,OAAO,SAChC,CAvDCW,EAAe,EAGhB9B,EAAa3H,IAAI4H,GACjBd,EAAM9G,IAAI2H,GAsDV1I,EAAOsK,0BAA4B,SAAUL,GAC5C,IAAIF,EAAgBlJ,SAASsI,eAAe,0BAC5C,IAAKY,EAAe,OAEpB,IAAIU,EAAgBV,EAAcL,iBAAiB,MAC/CgB,EAAa9Q,MAAM+Q,KAAKF,GAAeG,MAAKC,GACxCA,EAAKC,cAAc,KAAKnI,YAAYoI,SAASd,KAGjDS,GACHA,EAAWrJ,SAGZ,MAAM2J,EAAQhL,EAAOE,SAAS8J,UAAU1P,QAAQ2P,IACjC,IAAXe,GACHhL,EAAOE,SAAS8J,UAAU/N,OAAO+O,EAAO,GAGzChL,EAAOpF,KAAK,cAAc,EAAOqP,EAClC,EAMArB,GAAiB,IAAI3F,GAAQrB,MAAM,SAASI,SAAS,OACrD6G,EAAiB,IAAIzE,EAAQ,UAG7ByE,EAAejI,IAAImG,QAAWlP,IAC7BA,EAAEyM,kBAQH,WAGC,IAFmBzD,SAASsI,eAAe,4BAExB,CAClB,IAAI8B,EAAkBpK,SAASC,cAAc,MAC7CmK,EAAgB5B,aAAa,KAAM,4BAEnC,IAAI7G,EAAQ3B,SAASC,cAAc,MACnC0B,EAAMG,YAAc,uBAEpBsI,EAAgBhK,YAAYuB,GAE5BxC,EAAOE,SAASgL,YAAY1R,SAAS2R,IACpC,IAAIC,EAAWvK,SAASC,cAAc,MAClCuK,EAAWxK,SAASC,cAAc,KAClCsJ,EAAYvJ,SAASC,cAAc,QAEvCuK,EAAS9H,KAAO,IAChB8H,EAAS1I,YAAcwI,EAAKtI,KAE5BwI,EAAStE,QAAWlP,IACnBA,EAAEmP,iBAEFnG,SAAS6I,iBAAiB,kCAAkClQ,SAASmQ,IACpEA,EAAKxH,UAAUd,OAAO,SAAS,IAGhCgK,EAASlJ,UAAUpB,IAAI,UAEvBf,EAAO4J,UAAUtD,QAAQ6E,EAAKlB,IAAI,EAGnCG,EAAUC,UAAY,mCAGtBD,EAAUrD,QAAWlP,IACpBA,EAAEyM,kBACFtE,EAAOsL,sBAAsBH,EAAK,EAGnCC,EAASnK,YAAYoK,GACrBD,EAASnK,YAAYmJ,GACrBa,EAAgBhK,YAAYmK,EAAS,IAGtCxC,EAAehI,IAAIK,YAAYgK,EAChC,CAEsBpK,SAASsI,eAAe,4BAC9BhH,UAAU0H,OAAO,SAClC,CAzDC0B,EAAiB,EAGlB3C,EAAe7H,IAAI8H,GACnBhB,EAAM9G,IAAI6H,GAuDV5I,EAAOsL,sBAAwB,SAAUH,GACxC,IAAIF,EAAkBpK,SAASsI,eAAe,4BAC9C,IAAK8B,EAAiB,OAEtB,IAAIO,EAAYP,EAAgBvB,iBAAiB,MAC7CgB,EAAa9Q,MAAM+Q,KAAKa,GAAWZ,MAAKC,IAC3CA,EAAKC,cAAc,KAAKnI,YAAgBwI,EAAKtI,IAAI,IAG9C6H,GACHA,EAAWrJ,SAGZ,MAAMoK,EAAmBzL,EAAOyL,iBAC5BA,IACHA,EAAiBC,WAAWP,GAC5BM,EAAiBE,UAGlB,MAAMX,EAAQhL,EAAOE,SAASgL,YAAYU,WAAWC,GAAMA,EAAE5B,MAAQkB,EAAKlB,OAC3D,IAAXe,GACHhL,EAAOE,SAASgL,YAAYjP,OAAO+O,EAAO,GAG3ChL,EAAO4J,UAAUsB,YAAY7J,OAAO8J,EAAKlB,IAAK,YAC/C,EAMA,MAAM6B,GAAkB,IAAI7I,GAAQjB,SAAS,eAEvC+J,GAAc,IAAI3I,GAAUpB,SAAS,wBAC3C+J,EAAYnJ,eAAe,cAE3B,MAAMoJ,GAAa,IAAI/I,GAAQjB,SAAS,YAClCiK,GAAe,IAAIlJ,GAASf,SAAS,sBAAsBY,eAAe,KAC1EsJ,GAAY,IAAIxI,GAASd,eAAe,SACxCuJ,GAAY,IAAIpJ,GAASf,SAAS,eAAeY,eAAe,OAEtEoJ,EAAWjL,IAAIkL,GACfD,EAAWjL,IAAImL,GACfF,EAAWjL,IAAIoL,GAEfL,EAAgB/K,IAAIgL,GACpBD,EAAgB/K,IAAIiL,GAKpB,MAAMI,GAAQ,IAAInJ,GAAQjB,SAAS,UAEnC,IAAIqK,EAAeC,EACfpM,EAASqM,aAEZF,GAAgB,IAAIpJ,GAAQrB,MAAM,UAAUI,SAAS,OACrDsK,EAAc,IAAIlI,EAAQ,SAASpC,SAAS,gBAC5CsK,EAAY1L,IAAI4B,MAAQmF,EAAQnP,IAAIQ,EAAK,IAGzCsT,EAAY1L,IAAI4L,QAAW3U,IAC1B,MAAM4U,EAAgB5U,EAAEyH,OAAO3H,MAG/BqI,EAAOpF,KAAK,eAAgB6R,EAAc,EAG3CJ,EAActL,IAAIuL,GAClBF,EAAMrL,IAAIsL,IAKX,IA4CIK,EA6CAC,EAAWC,EAiBXrC,EAAasC,EAkBbC,EAuCAC,EAAUC,EAnKVC,GAAY,IAAI7J,GAAUpB,SAAS,gBAAgBY,eAAe,kBAClEsK,GAAc,IAAIjK,GAAQrB,MAAM,gBAAgBI,SAAS,OACzDmL,EAAkB,IAAI/I,EAAQ,UAAUpC,SAAS,qBACjDoL,EAAkB,IAAIhJ,EAAQ,UAAUpC,SAAS,qBACjDqL,EAAgB,IAAIjJ,EAAQ,QAAQpC,SAAS,mBAE7CsL,EAAWpN,EAASoN,UAAY,GAuCpC,GAtCAD,EAAczM,IAAIjJ,MAAQ2V,EAE1BH,EAAgBvM,IAAI+B,YAAc,IAClCwK,EAAgBvM,IAAImG,QAAU,KAC7BuG,EAAWpU,KAAKD,IAAI,EAAGqU,EAAW,GAClCD,EAAczM,IAAIjJ,MAAQ2V,EAE1BtN,EAAOpF,KAAK,gBAAiB,CAAE0S,SAAUA,GAAW,EAGrDF,EAAgBxM,IAAI+B,YAAc,IAClCyK,EAAgBxM,IAAImG,QAAU,KAC7BuG,EAAWpU,KAAK2L,IAAI,GAAIyI,EAAW,GACnCD,EAAczM,IAAIjJ,MAAQ2V,EAE1BtN,EAAOpF,KAAK,gBAAiB,CAAE0S,SAAUA,GAAW,EAGrDD,EAAczM,IAAImE,SAAW,KAC5B,IAAIwI,EAAUC,SAASH,EAAczM,IAAIjJ,MAAO,KAC3C8V,MAAMF,IAAYA,GAAW,GAAKA,GAAW,IACjDD,EAAWC,EAEXvN,EAAOpF,KAAK,gBAAiB,CAAE0S,SAAUA,KAEzCD,EAAczM,IAAIjJ,MAAQ2V,CAC3B,EAGDJ,EAAYnM,IAAIkM,GAChBC,EAAYnM,IAAIoM,GAChBD,EAAYnM,IAAIsM,GAChBH,EAAYnM,IAAIqM,GAChBhB,EAAMrL,IAAImM,GAKNhN,EAASwN,SAAU,CACtB,MAAMC,EAAU9V,IAEfmI,EAAO4N,QAAQ9N,QACfE,EAAO4N,QAAQnV,IAAIZ,EAAEyH,OAAOtF,QAAQ,KACnCgG,EAAO6N,SACP7N,EAAOlB,KAAKjH,EAAEyH,OAAOtF,QACrB,MAAMyJ,EAAM,IAAIqK,IAAItP,OAAOuP,SAASC,QACpCxP,OAAOyP,QAAQC,UAAU,CAAC,EAAG,GAAIzK,EAAI,GACpC,EAEGvE,EAAWrH,IAChBgH,QAAQxF,MAAMxB,EAAE,EAEXsW,GAAc,IAAIlL,GAAQrB,MAAM,SAASI,SAAS,OACxD0K,EAAc,IAAItI,EAAQ,QAC1BsI,EAAY9L,IAAI4B,MAAQmF,EAAQnP,IAAIQ,EAAK,IACzC0T,EAAY9L,IAAIwN,OAAS,uBACzB1B,EAAY9L,IAAImE,SAAYlN,IAE3B,GAA8B,IAA1BA,EAAEyH,OAAO+O,MAAMnW,OAGnB,GAAIsG,OAAO8P,WAAY,CAEtB,MAAMjO,EAAK,IAAIiO,WACfjO,EAAGsN,OAASA,EACZtN,EAAGkO,kBAAkB1W,EAAEyH,OAAO+O,MAAM,IACpChO,EAAGnB,QAAUA,CACd,MACCsP,MAAM7G,EAAQnP,IAAIQ,EAAK,IACxB,EAGD0T,EAAY9L,IAAImG,QAAWlP,IAE1B6U,EAAY9L,IAAIwH,MAAM,EAEvB+F,EAAYpN,IAAI2L,GAChBN,EAAMrL,IAAIoN,EACX,CAwCA,GAlCAxB,GAAY,IAAI1J,GAAQrB,MAAM,SAASI,SAAS,OAChD4K,EAAY,IAAIxI,EAAQ,UACxBwI,EAAUnK,SAASkF,EAAQnP,IAAIQ,EAAK,KACpC4T,EAAUhM,IAAImG,QAAU,KACvB4F,EAAU3K,SAAS,gBALhByM,GAMS7N,IAAI8N,OAAO,EAKxB/B,EAAU5L,IAAI6L,GACdR,EAAMrL,IAAI4L,GAKNzM,EAAS8J,YACZO,GAAc,IAAItH,GAAQrB,MAAM,SAASI,SAAS,OAClD6K,EAAc,IAAIzI,EAAQ,UAC1ByI,EAAYpK,SAASkF,EAAQnP,IAAIQ,EAAK,KACtC6T,EAAYjM,IAAImG,QAAWlP,IAE1B,MAAMoS,EAAMzP,KAAKmU,YACXjV,GAAoC,IAA9BsG,EAAO4O,aAAa3E,GAChCjK,EAAOpF,KAAK,aAAclB,GAC1B7B,EAAEmP,iBACF6F,EAAYjM,IAAIwH,MAAM,EAEvBmC,EAAYxJ,IAAI8L,GAChBT,EAAMrL,IAAIwJ,IAKPrK,EAAS2O,WAAY,CAExB,MAAMC,GAAgB,IAAI7L,GAAQrB,MAAM,SAASI,SAAS,OAC1D8K,EAAgB,IAAI1I,EAAQ,UAC5B0I,EAAcrK,SAASkF,EAAQnP,IAAIQ,EAAK,KACxC8T,EAAclM,IAAImG,QAAWlP,IAE5B2C,KAAKuU,mBACLlX,EAAEmP,gBAAgB,EAGnBnG,SAASwD,UAAaxM,IAEP,QAAVA,EAAE0B,MACL1B,EAAEmP,iBACFxM,KAAKuU,mBACN,EAGDlO,SAASmO,mBAAsBnX,IAE9B,MAAMC,EAAI0G,OAAOyQ,OAAOvI,QAAU7O,EAAEyH,OAAO4P,YACrCC,EAAI3Q,OAAOyQ,OAAOrI,SAAW/O,EAAEyH,OAAO8P,aAExCtX,GAAKqX,EACRL,EAAc5M,SAAS,gBAEvB4M,EAAc1M,YAAY,eAC3B,EAED0M,EAAc/N,IAAI+L,GAClBV,EAAMrL,IAAI+N,EACX,CAEAlH,EAAU7G,IAAI,CAAC8G,EAAOiE,EAAiBM,IACvCvL,SAASwO,KAAKpO,YAAY2G,EAAUhH,KAIpCmM,GAAW,IAAI9J,GAAQrB,MAAM,aAAaI,SAAS,OACnDgL,EAAW,IAAI5I,EAAQ,UAAUpC,SAAS,UAC1CgL,EAASvK,SAASkF,EAAQnP,IAAIQ,EAAK,KAInC+T,EAAShM,IAAIiM,GACbZ,EAAMrL,IAAIgM,GAKV/M,EAAOvF,GAAG,aAAcsT,IAEvB,GAAI7N,EAAS8J,UAAW,CACvB,MAAMC,EAAM8D,EAASuB,MAAMrF,KACe,IAA9BjK,EAAO4O,aAAa3E,GAE/BM,EAAYnI,YAAY,cAExBmI,EAAYrI,SAAS,cAEtB1H,KAAKmU,YAAc1E,CACpB,CACwB,YAApB/J,EAASmI,SACZL,EAAQpH,IAAI0B,MAAMgE,QAAUyH,EAASwB,QAAU,OAAS,QACxDrH,EAAQtH,IAAI0B,MAAMgE,QAAUyH,EAASyB,MAAQ,OAAS,QACvD,IAGDxP,EAAOvF,GAAG,cAAesJ,IAEpBA,EACHwG,EAAYrI,SAAS,cAErBqI,EAAYnI,YAAY,aACzB,IAGDpC,EAAOvF,GAAG,mBAAoB9C,IAE7BoQ,EAAUtF,SAASkF,EAAQnP,IAAIQ,EAAK,KAEZ,YAApBkH,EAASmI,SACZJ,EAAQxF,SAASkF,EAAQnP,IAAIQ,EAAK,KAClCmP,EAAQ1F,SAASkF,EAAQnP,IAAIQ,EAAK,MAE/BkH,EAASwN,UACZhB,EAAYjK,SAASkF,EAAQnP,IAAIQ,EAAK,KAEnCkH,EAAS8J,WACZ6C,EAAYpK,SAASkF,EAAQnP,IAAIQ,EAAK,KAEnCkH,EAAS2O,YACZ/B,EAAcrK,SAASkF,EAAQnP,IAAIQ,EAAK,KAErCkH,EAASqM,YACZkD,cAAchN,SAASkF,EAAQnP,IAAIQ,EAAK,IACzC,GAGF,CAEA,gBAAA+V,GAEClO,SAAS6O,cAActH,OAEY,OAA/BvH,SAAS8O,kBACZ9O,SAAS+O,gBAAgBC,oBACfhP,SAASiP,gBACnBjP,SAASiP,gBAEX,ECrlBM,MAAMC,EAEZ,WAAAjT,CAAYkD,GAEX,MAAME,EAAWF,EAAOE,SAClB0H,GAAY,IAAI3E,GAAQrB,MAAM,WAEpC,IAAIoO,EACJ,GAAwB,YAApB9P,EAASmI,OAAsB,CAElC2H,GAAO,IAAI/M,GAAQrB,MAAM,QAAQI,SAAS,SAC1CgO,EAAKpP,IAAImG,QAAWlP,IAEnBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,gBAAgB,EAEnB,MAAMiJ,EAAW,IAAIlN,EACrBkN,EAASrP,IAAIyJ,UAAY,yCACzB2F,EAAKjP,IAAIkP,GACTrI,EAAU7G,IAAIiP,EACf,CAEA,MAAME,GAAS,IAAIjN,GAAQrB,MAAM,UAQjC,IAAIuO,EACJ,GARAvI,EAAU7G,IAAImP,GAGdlQ,EAAOvF,GAAG,gBAAiB2V,IAC1BF,EAAOtP,IAAI0B,MAAM+N,gBAAkBD,CAAK,IAIjB,YAApBlQ,EAASmI,OAAsB,CAClC8H,GAAO,IAAIlN,GAAQrB,MAAM,QAAQI,SAAS,SAC1CmO,EAAKvP,IAAImG,QAAWlP,IAEnBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,gBAAgB,EAEnB,MAAMsJ,EAAY,IAAIvN,EACtBuN,EAAU1P,IAAIyJ,UAAY,0CAC1B8F,EAAKpP,IAAIuP,GACT1I,EAAU7G,IAAIoP,EACf,CAEA,MAAMI,GAAS,IAAItN,GAAQrB,MAAM,UAC3B4O,GAAU,IAAIvN,GAAQrB,MAAM,WAC5B6O,GAAU,IAAIxN,GAAQrB,MAAM,WAClC6O,EAAQ7P,IAAImG,QAAWlP,IACtBmI,EAAOpF,KAAK,iBAAiB,GAC7B/C,EAAEmP,gBAAgB,EAGnBY,EAAU7G,IAAI,CAACwP,EAAQC,EAASC,IAChC5P,SAASwO,KAAKpO,YAAY2G,EAAUhH,KAIpCZ,EAAOvF,GAAG,aAAciW,IAEvBR,EAAOlO,SAAS0O,EAAIC,MACpBJ,EAAO3P,IAAI0B,MAAMgE,QAAU,OAAO,IAGnCtG,EAAOvF,GAAG,cAAc,KAEvB8V,EAAO3P,IAAI0B,MAAMgE,QAAU,MAAM,IAGlCtG,EAAOvF,GAAG,UAAWmW,IAEhBA,EAAMC,QAAUD,EAAMlK,MAAQkK,EAAME,YACvCN,EAAQ5P,IAAI0B,MAAMgE,QAAU,QAE5BkK,EAAQ5P,IAAI0B,MAAMgE,QAAU,MAC7B,IAGDtG,EAAOvF,GAAG,eAAgB9C,IAEzBuY,EAAOlO,SAASrK,EAAM,IAGvBqI,EAAOvF,GAAG,aAAcsT,IAEC,YAApB7N,EAASmI,SACR0F,EAASwB,QACZS,EAAK9N,SAAS,YAEd8N,EAAK5N,YAAY,YAEd2L,EAASyB,MACZW,EAAKjO,SAAS,YAEdiO,EAAK/N,YAAY,YAEnB,IAGDpC,EAAOvF,GAAG,QAAQ,KAEO,YAApByF,EAASmI,SACZ2H,EAAK9N,SAAS,UACd6O,YAAW,KAAQf,EAAK5N,YAAY,SAAS,GAAK,KACnD,IAGDpC,EAAOvF,GAAG,QAAQ,KAEO,YAApByF,EAASmI,SACZ8H,EAAKjO,SAAS,UACd6O,YAAW,KAAQZ,EAAK/N,YAAY,SAAS,GAAK,KACnD,IAGDpC,EAAOvF,GAAG,iBAAkB9C,IAE3B8Y,EAAQ7P,IAAI0B,MAAMgE,QAAU3O,EAAQ,QAAU,MAAM,IAGrDqI,EAAOvF,GAAG,iBAAiB,KAE1ByV,EAAOpQ,OAAO,GAEhB,EC3HM,MAAMkR,UAAiB7N,EAE7B,WAAArG,CAAYkD,GAEXgD,QACA,MAAM4E,GAAY,IAAI3E,GAAQjB,SAAS,kBACjC2F,EAAU3H,EAAO2H,QACjB3O,EAAO,CACZ,oBAEKgN,EAAQ,IAAItC,EAAOiE,EAAQnP,IAAIQ,EAAK,KAAKgJ,SAAS,SACxDxH,KAAKwF,OAASA,EACdxF,KAAKiL,cAAW/M,EAChB8B,KAAKoH,MAAM,YACXpH,KAAKuG,IAAI,IAAI0G,EAAMzB,GAAO9D,SAAS,WAInClC,EAAOvF,GAAG,cAAeyO,IAExBtB,EAAU9H,QACV8H,EAAU7G,IAAIvG,KAAKyW,YAAY/H,IAC/B1O,KAAKuG,IAAI6G,EAAU,IAGpB5H,EAAOvF,GAAG,mBAAoB9C,IAE7BqO,EAAMpC,SAAS+D,EAAQnP,IAAIQ,EAAK,IAAI,GAEtC,CAEA,WAAAiY,CAAY/H,EAAKrC,GAEhB,MAAMqK,EAAO,IAAIjK,EAAOJ,GAoDxB,OAlDAqC,EAAI1P,SAAS+P,IAEZ,MAAMI,EAAO,IAAIrG,EAAOiG,EAAQhG,KAAMgG,EAAQvD,OACxC6E,EAAO,IAAIxD,EAAO6J,GAAMtP,MAAM2H,EAAQ1H,IACtCsP,EAAO,IAAIpO,EAyBjB,GAvBA4G,EAAK/I,IAAImG,QAAWlP,IAEf2C,KAAKiL,UAAYjL,KAAKiL,WAAaoF,GACtCrQ,KAAKiL,SAAS+B,WAEfqD,EAAKzE,SACL5L,KAAKiL,SAAWoF,EAChBrQ,KAAKwF,OAAOE,SAASkR,UAAY7H,EAAQ1H,GACzCrH,KAAKwF,OAAO4J,UAAUtD,QAAQiD,EAAQhG,MACtC1L,EAAEmP,gBAAgB,EAEnB6D,EAAK9J,IAAI,CAACoQ,EAAMxH,IAChBnP,KAAKwF,OAAOqR,SAAS9H,EAAQhG,MAAQ,CACpC1B,GAAI0H,EAAQ1H,GACZmE,MAAOuD,EAAQvD,OAGZxL,KAAKwF,OAAOE,SAASkR,YAAc7H,EAAQ1H,KAC9CqP,EAAK/J,SACL0D,EAAKzE,SACL5L,KAAKiL,SAAWoF,GAGbtB,EAAQ+H,UAAY/H,EAAQ+H,SAASpZ,OAAS,EAAG,CAEpD,MAAMqZ,EAAW/W,KAAKyW,YAAY1H,EAAQ+H,SAAUzG,GACpDsG,EAAKnP,SAAS,oBACdmP,EAAKvQ,IAAImG,QAAU,KAEdwK,EAASrK,UACZqK,EAASnK,UACT+J,EAAKnP,SAAS,sBAEduP,EAASpK,SACTgK,EAAKnP,SAAS,qBAER,GAER6I,EAAK9J,IAAIwQ,EACV,CAEAL,EAAKnQ,IAAI8J,EAAK,IAGRqG,CACR,ECtFM,MAAMM,UAAuBrO,EAEnC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM4E,GAAY,IAAI3E,GAAQjB,SAAS,kBACjC2F,EAAU3H,EAAO2H,QACjB3O,EAAO,CACZ,oBACA,2BAEKyY,EAAc,IAAI/N,EAAOiE,EAAQnP,IAAIQ,EAAK,KAAKgJ,SAAS,SACxD0P,EAAW,IAAItN,EAAQ,SAAUuD,EAAQnP,IAAIQ,EAAK,KACxD0Y,EAAS9Q,IAAImG,QAAWlP,IAEvB2C,KAAKmX,iBACL3R,EAAOpF,KAAK,cAAc,GAC1B/C,EAAEmP,gBAAgB,EAEnBxM,KAAKuG,IAAI,IAAI0G,EAAM,CAACgK,EAAaC,IAAWxP,SAAS,WACrD1H,KAAKiL,cAAW/M,EAChB8B,KAAKwP,UAAY,IAAI/C,EACrBW,EAAU7G,IAAIvG,KAAKwP,WACnBxP,KAAKoH,MAAM,aACXpH,KAAKuG,IAAI6G,GACTpN,KAAKwF,OAASA,EAEd,MAAM2L,EAAS,KAEd+F,EAAS9Q,IAAIgR,SAAgD,IAArC5R,EAAOE,SAAS8J,UAAU9R,MAAY,EAK/D8H,EAAOvF,GAAG,aAAa,CAACoX,EAAUnB,KAEjCA,EAAI1G,UAAUxQ,SAASyQ,IAEtBzP,KAAKsX,YAAY7H,EAAI,IAEtB0B,GAAQ,IAGT3L,EAAOvF,GAAG,aAAcsT,IAEvBvT,KAAKmU,YAAcZ,EAASuB,MAAMrF,GAAG,IAGtCjK,EAAOvF,GAAG,cAAc,CAACsJ,EAASkG,KAE7BlG,EACHvJ,KAAKuX,iBAELvX,KAAKwX,eAAe/H,GAErB0B,GAAQ,IAGT3L,EAAOvF,GAAG,mBAAoB9C,IAE7B8Z,EAAY7N,SAAS+D,EAAQnP,IAAIQ,EAAK,KACtC0Y,EAAS9N,SAAS+D,EAAQnP,IAAIQ,EAAK,IAAI,GAEzC,CAEA,cAAA+Y,GAEC,MAAM9H,EAAMzP,KAAKmU,YACbnU,KAAKwF,OAAO4O,aAAa3E,IAAQ,IAGrCzP,KAAKsX,YAAY7H,GACjBzP,KAAKwF,OAAOE,SAAS8J,UAAUlO,KAAKmO,GACrC,CAEA,cAAA+H,CAAe/H,GAEd,MAAMgI,EAAOhI,GAAOzP,KAAKmU,YACnB3D,EAAQxQ,KAAKwF,OAAO4O,aAAaqD,IACxB,IAAXjH,IAGJxQ,KAAKwP,UAAU3I,OAAO2J,GACtBxQ,KAAKwF,OAAOE,SAAS8J,UAAU/N,OAAO+O,EAAO,GAC9C,CAEA,cAAA2G,GAECnX,KAAKwP,UAAUlK,QACftF,KAAKwF,OAAOE,SAAS8J,UAAY,EAClC,CAEA,WAAA8H,CAAY7H,GAEX,MAAMN,EAAO,IAAIrG,EACXuH,EAAO,IAAIxD,EACX6K,GAAO,IAAInP,GAASf,SAAS,cAC7BmQ,EAAU3X,KAAKwF,OAAOoS,eAAenI,GAC3C,IAAIoI,EACArM,EAEJ,QAAgBtN,IAAZyZ,EAAuB,CAC1B,MAAMG,EAAY9X,KAAKwF,OAAO8I,KAAKyJ,MAAM/Z,IAAIyR,GAC7CoI,EAAQC,EAAUD,MAClBrM,EAAQsM,EAAUD,KACnB,MACCA,EAAQF,EAAQtQ,GAChBmE,EAAQmM,EAAQnM,MAGjB2D,EAAKnG,QAAQ,IAAMyG,GACnBN,EAAK/I,IAAImG,QAAWlP,IAEf2C,KAAKiL,UAAYjL,KAAKiL,WAAaoF,GACtCrQ,KAAKiL,SAAS+B,WAEfqD,EAAKzE,SACL5L,KAAKiL,SAAWoF,EAChBrQ,KAAKwF,OAAO4J,UAAUtD,QAAQ2D,GAC9BpS,EAAEmP,gBAAgB,EAEnB2C,EAAK/G,eAAeoD,GAEpBkM,EAAKtR,IAAImG,QAAWlP,IAEnB2C,KAAKwF,OAAOpF,KAAK,cAAc,EAAOqP,GACtCpS,EAAEmP,gBAAgB,EAGnB6D,EAAK9J,IAAI,CAAC4I,EAAMuI,IAChBrH,EAAKjJ,MAAMyQ,GACX7X,KAAKwP,UAAUjJ,IAAI8J,EACpB,ECpIM,MAAM2H,UAAyBrP,EAErC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM4E,GAAY,IAAI3E,GAAQjB,SAAS,kBACjC2F,EAAU3H,EAAO2H,QACjB3O,EAAO,CACZ,sBACA,6BAEKyY,EAAc,IAAI/N,EAAOiE,EAAQnP,IAAIQ,EAAK,KAAKgJ,SAAS,SACxD0P,EAAW,IAAItN,EAAQ,SAAUuD,EAAQnP,IAAIQ,EAAK,KACxD0Y,EAAS9Q,IAAImG,QAAWlP,IAEvB2C,KAAKiY,aACL5a,EAAEmP,gBAAgB,EAEnBxM,KAAKuG,IAAI,IAAI0G,EAAM,CAACgK,EAAaC,IAAWxP,SAAS,WACrD1H,KAAKiL,cAAW/M,EAChB8B,KAAKkY,MAAQ,IAAIzL,EACjBW,EAAU7G,IAAIvG,KAAKkY,OACnBlY,KAAKoH,MAAM,eACXpH,KAAKuG,IAAI6G,GACTpN,KAAKwF,OAASA,EACdxF,KAAKmR,OAAS,KAEb+F,EAAS9Q,IAAIgR,SAAkD,IAAvC5R,EAAOE,SAASgL,YAAYhT,MAAY,EAKjE8H,EAAOvF,GAAG,aAAciW,IAEvBA,EAAIxF,YAAY1R,SAAS2R,IAExB3Q,KAAK/B,IAAI0S,EAAK,IAEf3Q,KAAKmR,QAAQ,IAGd3L,EAAOvF,GAAG,aAAc0Q,IAEvB3Q,KAAK/B,IAAI0S,GACT3Q,KAAKmR,QAAQ,IAGd3L,EAAOvF,GAAG,mBAAoB9C,IAE7B8Z,EAAY7N,SAAS+D,EAAQnP,IAAIQ,EAAK,KACtC0Y,EAAS9N,SAAS+D,EAAQnP,IAAIQ,EAAK,IAAI,GAEzC,CAEA,GAAAP,CAAI0S,GAEH,MAAMxB,EAAO,IAAIrG,EAAO,IAAM6H,EAAKlB,IAAKkB,EAAKtI,MACvCgI,GAAO,IAAIxD,GAASzF,MAAM,QAAUuJ,EAAKtN,MACzCqU,GAAO,IAAInP,GAASf,SAAS,cAGnC2H,EAAK/I,IAAImG,QAAWlP,IAEf2C,KAAKiL,UAAYjL,KAAKiL,WAAaoF,GACtCrQ,KAAKiL,SAAS+B,WAEfqD,EAAKzE,SACL5L,KAAKiL,SAAWoF,EAChBrQ,KAAKwF,OAAO4J,UAAUtD,QAAQ6E,EAAKlB,KACnCpS,EAAEmP,gBAAgB,EAGnBkL,EAAKtR,IAAImG,QAAWlP,IAEnB2C,KAAKkR,WAAWP,GAChBtT,EAAEmP,gBAAgB,EAGnB6D,EAAK9J,IAAI,CAAC4I,EAAMuI,IAChB1X,KAAKkY,MAAM3R,IAAI8J,GACfrQ,KAAKwF,OAAO4J,UAAUsB,YAAYnK,IACjC,YAAaoK,EAAKlB,IAAK,CAAC,GAtBZ,QAsBqB,iBAAkB,CAAC,GACrDzP,KAAKmR,SAEL,MAAMgH,EAAc9R,SAASsI,eAAe,4BAC5C,GAAIwJ,EAAa,CAChB,MAAMC,EAAkB/R,SAASC,cAAc,MACzC+R,EAAkBhS,SAASC,cAAc,KAC/C+R,EAAgBtP,KAAO,IACvBsP,EAAgBlQ,YAAcwI,EAAKtI,KACnCgQ,EAAgB9L,QAAWlP,IAC1BA,EAAEmP,iBACFxM,KAAKwF,OAAO4J,UAAUtD,QAAQ6E,EAAKlB,IAAI,EAExC2I,EAAgB3R,YAAY4R,GAE5B,MAAMzI,EAAYvJ,SAASC,cAAc,QACzCsJ,EAAUC,UAAY,mCAEtBD,EAAUrD,QAAWlP,IACpBA,EAAEyM,kBACF9J,KAAKwF,OAAOsL,sBAAsBH,EAAK,EAExCyH,EAAgB3R,YAAYmJ,GAC5BuI,EAAY1R,YAAY2R,EACzB,CACD,CAEA,UAAAlH,CAAWP,GAEV,MAAMH,EAAQxQ,KAAKwF,OAAOE,SAASgL,YAAY5Q,QAAQ6Q,GACvD,IAAe,IAAXH,EACH,OAEDxQ,KAAKkY,MAAMrR,OAAO2J,GAClBxQ,KAAKwF,OAAOE,SAASgL,YAAYjP,OAAO+O,EAAO,GAC/CxQ,KAAKwF,OAAO4J,UAAUsB,YAAY7J,OAAO8J,EAAKlB,IAAK,aACnDzP,KAAKmR,SAEL,MAAMgH,EAAc9R,SAASsI,eAAe,4BACxCwJ,GACkBA,EAAYjJ,iBAAiB,MACrClQ,SAAQqR,IAChBA,EAAKC,cAAc,KAAKnI,cAAgBwI,EAAKtI,MAChDgI,EAAKxJ,QACN,GAGH,CAEA,UAAAoR,GAECjY,KAAKwF,OAAOE,SAASgL,YAAY1R,SAAQ2R,IACxC3Q,KAAKwF,OAAO4J,UAAUsB,YAAY7J,OAAO8J,EAAKlB,IAAK,YAAY,IAEhEzP,KAAKkY,MAAM5S,QACXtF,KAAKwF,OAAOE,SAASgL,YAAc,GACnC1Q,KAAKmR,QACN,EC1IM,MAAMmH,UAAoB3P,EAEhC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM4E,GAAY,IAAI3E,GAAQjB,SAAS,kBACjC2F,EAAU3H,EAAO2H,QAEvB,IAAIoL,EACJ,MAAMC,EAAS,IAAI5O,EAAQ,UAAUxC,MAAM,SAC3CoR,EAAOpS,IAAIqS,YAActL,EAAQnP,IAAI,8BACrCwa,EAAOpS,IAAIsS,SAAW,KAErB,MAAMvb,EAAQqb,EAAOrP,WAEA,IAAjBhM,EAAMO,OACTsC,KAAKsL,MAAMhG,QACDiT,IAAgBpb,IAC1B6C,KAAKsL,MAAMhG,QACXtF,KAAK2Y,SAASxb,GAAOsR,MAAKmK,IAEzBA,EAAQ5Z,SAAQoC,IACfpB,KAAK/B,IAAImD,EAAK,GACb,KAGJmX,EAAcpb,CAAK,EAGpB6C,KAAKoH,MAAM,UACXpH,KAAKsL,MAAQ,IAAImB,EACjBW,EAAU7G,IAAIvG,KAAKsL,OACnBtL,KAAKuG,IAAI,CAAC,IAAI0G,EAAMuL,GAASpL,IAC7BpN,KAAKwF,OAASA,EACdxF,KAAKiL,cAAW/M,CAIjB,CAOA,cAAMya,CAAS1V,GAEd,MAAMqL,EAAOtO,KAAKwF,OAAO8I,KACnBsK,QAAgBC,QAAQC,IAC7BxK,EAAKyJ,MAAMgB,WAAWC,KAAI3I,GAAQA,EAAK4I,KAAK3K,EAAK2K,KAAKC,KAAK5K,IACzDG,KAAK4B,EAAKD,KAAK8I,KAAK7I,EAAMpN,IAAIkW,QAAQ9I,EAAKgD,OAAO6F,KAAK7I,OAC1D,aAAawI,QAAQO,QAAQ,GAAGC,OAAO3Y,MAAM,GAAIkY,GAClD,CAEA,GAAA3a,CAAImD,GAEH,MAAM+N,EAAO,IAAIrG,EAAO,IAAM1H,EAAKqO,IAAKrO,EAAKkY,SACvCjJ,EAAO,IAAIxD,EACjBsC,EAAK/I,IAAImG,QAAU,KAEdvM,KAAKiL,UAAYjL,KAAKiL,WAAaoF,GACtCrQ,KAAKiL,SAAS+B,WAEfqD,EAAKzE,SACL5L,KAAKiL,SAAWoF,EAChBrQ,KAAKwF,OAAO4J,UAAUtD,QAAQ1K,EAAKqO,MAC5B,GAERY,EAAK9J,IAAI4I,GACTnP,KAAKsL,MAAM/E,IAAI8J,EAChB,ECtEM,MAAMkJ,UAAsB5Q,EAElC,WAAArG,CAAYkD,GAEXgD,QACAA,MAAMpB,MAAM,YAEZ,MAAM+F,EAAU3H,EAAO2H,QACjB3O,EAAO,CACZ,mBACA,4BACA,4BACA,wBACA,0BACA,oCAEKyY,EAAc,IAAI/N,EAAOiE,EAAQnP,IAAIQ,EAAK,KAAKgJ,SAAS,SAC9DxH,KAAKuG,IAAI,IAAI0G,EAAMgK,GAAavP,SAAS,WAEzC,MAAM8R,EAAgB,IAAI5Q,EAAQuE,EAAQnP,IAAIQ,EAAK,IAAK,eAClDib,EAAc,IAAI/Q,EAClBjD,GAAW,IAAI4D,GAAWI,WAAW,CAC1C7D,GAAI,UACJC,GAAI,SACJC,GAAI,WACJC,GAAI,UACJC,GAAI,eAELP,EAASW,IAAImE,SAAYlN,IAExBmI,EAAOpF,KAAK,kBAAmB/C,EAAEyH,OAAO3H,MAAM,EAE/CsI,EAAS2B,MAAM,eACfqS,EAAYlT,IAAIiT,GAChBC,EAAYlT,IAAId,GAEhB,MAAMiU,EAAgB,IAAI9Q,EAAQuE,EAAQnP,IAAIQ,EAAK,IAAK,YAClDmb,EAAc,IAAIjR,EAClBoK,EAAW,IAAI3I,EAAS,GAAI,GAElC2I,EAAS1M,IAAImE,SAAYlN,IACxB,MAAM0V,EAAUC,SAAS3V,EAAEyH,OAAO3H,OAE9B4V,GAAW,GAAKA,GAAW,IAC9BvN,EAAOpF,KAAK,gBAAiB,CAC5B0S,SAAUC,GAEZ,EAGDD,EAAS1L,MAAM,YACfuS,EAAYpT,IAAImT,GAChBC,EAAYpT,IAAIuM,GAChBA,EAAS1M,IAAIgR,UAAW,EAIxB,MAAMwC,EAAY,IAAIhR,EAAQuE,EAAQnP,IAAIQ,EAAK,IAAK,QAC9Cqb,EAAU,IAAInR,EACdyN,GAAO,IAAI9M,GAAWI,WAAW,CACtCqQ,UAAW,YACXC,SAAU,aAEX5D,EAAK/P,IAAImE,SAAYlN,IAEpBmI,EAAOpF,KAAK,cAAe/C,EAAEyH,OAAO3H,OAEb,aAAnBE,EAAEyH,OAAO3H,MACZqI,EAAOpF,KAAK,gBAAiB,CAC5B4Z,IAAK,OACL3P,SAAKnM,IAGNsH,EAAOpF,KAAK,gBAAiB,CAC5B4Z,SAAK9b,EACLmM,SAAKnM,GAEP,EAEDiY,EAAK/O,MAAM,QACXyS,EAAQtT,IAAIqT,GACZC,EAAQtT,IAAI4P,GAIZ,MAAM8D,EAAiB,IAAI9P,EAAS,IAAK,GACnC+P,EAAc,IAAItR,EAAQuE,EAAQnP,IAAIQ,EAAK,IAAK,UAChD2b,EAAY,IAAIzR,EAChB2N,GAAS,IAAIhN,GAAWI,WAAW,CACxC2Q,KAAM,OACNC,KAAM,SAEPhE,EAAOjQ,IAAImE,SAAYlN,IAEtBmI,EAAOpF,KAAK,gBAAiB,CAC5B4Z,IAAK3c,EAAEyH,OAAO3H,MACdkN,SAAKnM,IAEN+b,EAAe7T,IAAIgR,SAA8B,SAAnB/Z,EAAEyH,OAAO3H,KAAgB,EAExDkZ,EAAOjP,MAAM,UAEb+S,EAAU5T,IAAI2T,GACdC,EAAU5T,IAAI8P,GAEd,MAAMiE,EAAsB,IAAI1R,EAAQuE,EAAQnP,IAAIQ,EAAK,IAAK,oBACxD+b,EAAoB,IAAI7R,EAC9BuR,EAAe7T,IAAImE,SAAYlN,IAE9BmI,EAAOpF,KAAK,gBAAiB,CAC5B4Z,SAAK9b,EACLmM,IAAK2I,SAAS3V,EAAEyH,OAAO3H,QACtB,EAEH8c,EAAe7S,MAAM,oBACrBmT,EAAkBhU,IAAI+T,GACtBC,EAAkBhU,IAAI0T,GAItB,MAAMO,EAAgBrN,EAAQnP,IAAI,+BAC5Byc,EAAgB,IAAI/R,EACpBgS,EAAa,IAAI9Q,EAAQ,YAAY,EAAO4Q,EAAc,IAChEE,EAAWtT,MAAM,cACjBsT,EAAWtU,IAAImG,QAAWlP,IAAD,EAKzBod,EAAclU,IAAI,IAAIqC,EAAQ4R,EAAc,GAAI,eAChDC,EAAclU,IAAImU,GAElB1a,KAAKuG,IAAI,IAAI0G,EAAM,CAClBwM,EACAE,EACAE,EACAM,EACAI,KAMD/U,EAAOvF,GAAG,aAAciW,IAEvBzQ,EAAS2D,SAAS8M,EAAIzQ,UACtBqN,EAAS1J,SAAS8M,EAAIyE,OAAO7H,UAC7BqD,EAAK/M,SAAS8M,EAAIC,MAClBE,EAAOjN,SAAS8M,EAAIG,OAAO2D,KAC3BC,EAAe7Q,SAAS8M,EAAIG,OAAOhM,KACnC4P,EAAe7T,IAAIgR,SAA8B,SAAnBlB,EAAIG,OAAO2D,GAAc,IAGxDxU,EAAOvF,GAAG,UAAWmW,IAED,aAAfA,EAAMD,MACTE,EAAOjN,SAAS,QAChBiN,EAAOjQ,IAAIgR,UAAW,EACtB6C,EAAe7T,IAAIgR,UAAW,GAE9Bf,EAAOjQ,IAAIgR,UAAW,CACvB,IAGD5R,EAAOvF,GAAG,mBAAoB9C,IAE7B8Z,EAAY7O,eAAe+E,EAAQnP,IAAIQ,EAAK,KAC5Cgb,EAAcpR,eAAe+E,EAAQnP,IAAIQ,EAAK,KAC9Ckb,EAActR,eAAe+E,EAAQnP,IAAIQ,EAAK,KAC9Cob,EAAUxR,eAAe+E,EAAQnP,IAAIQ,EAAK,KAC1C0b,EAAY9R,eAAe+E,EAAQnP,IAAIQ,EAAK,KAC5C8b,EAAoBlS,eAAe+E,EAAQnP,IAAIQ,EAAK,IAAI,GAE1D,EC7KM,MAAMoc,UAAsBjS,EAElC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM4E,GAAY,IAAI3E,GAAQjB,SAAS,kBACjC2F,EAAU3H,EAAO2H,QACjB0N,EAAS,CAAC,EACV9b,EAAM,mBACNyM,EAAQ,IAAItC,EAAOiE,EAAQnP,IAAIe,IAAMyI,SAAS,SACpDxH,KAAKuG,IAAI,IAAI0G,EAAMzB,GAAO9D,SAAS,WACnCmT,EAAO9b,GAAOyM,EAEdxL,KAAKsL,MAAQ,IAAImB,EACjBzM,KAAKoH,MAAM,YACXpH,KAAKuG,IAAI6G,GAET,MAAM9I,EAAO,CAACzB,EAAMiY,KACnB,QAAmB5c,IAAf4c,EAAKjY,IACO,OAAfiY,EAAKjY,IAAyC,iBAAfiY,EAAKjY,IAA4C,IAAtBiY,EAAKjY,GAAMnF,OACrE,OAED,MAAM2S,EAAO,IAAIxD,EACXrB,GAAQ,IAAItC,GAAS1B,SAAS,SAC9BrK,GAAQ,IAAI+L,GAAS1B,SAAS,SACpCgE,EAAMpC,SAAS+D,EAAQnP,IAAIe,EAAM,IAAM8D,GAAMkY,eAChC,gBAATlY,EACH1F,EAAMiJ,IAAIyJ,UAAYiL,EAAKjY,GAE3B1F,EAAMiM,SAAS0R,EAAKjY,IAErBgY,EAAO9b,EAAM,IAAM8D,GAAQ2I,EAC3B6E,EAAK9J,IAAI,CAACiF,EAAOrO,IACjB6C,KAAKsL,MAAM/E,IAAI8J,EAAK,EAKrB7K,EAAOvF,GAAG,YAAa6a,IAEtB9a,KAAKsL,MAAMhG,QACX8H,EAAU9H,QACV8H,EAAU7G,IAAIvG,KAAKsL,OACnBjF,SAAS2B,MAAQ8S,EAAK9S,MACtB,IAAK,MAAMnF,KAAQiY,EAClBxW,EAAKzB,EAAMiY,EACZ,IAGDtV,EAAOvF,GAAG,mBAAoB9C,IAE7B,IAAK,MAAM0F,KAAQgY,EAAQ,CAC1B,IAAIxS,EAEHA,EADGxF,IAAS9D,EACLoO,EAAQnP,IAAI6E,GAEZsK,EAAQnP,IAAI6E,GAAMkY,cAE1BF,EAAOhY,GAAMuG,SAASf,EACvB,IAEF,ECvDM,MAAM2S,EAEZ,WAAA1Y,CAAYkD,GAEX,MAAM2H,EAAU3H,EAAO2H,QACjB8N,EAAWzV,EAAOE,SAClBlH,EAAO,CACZ,gBACA,mBACA,oBACA,sBACA,iBACA,mBACA,oBAGK4O,EAAY,IAAIvC,EAAc,YAAYzD,MAAM,WAEhDkG,GAAY,IAAI7E,GAAQrB,MAAM,SAASM,SAAS,OAChD6F,EAAY,IAAI3D,EAAQ,UAe9B,GAdA2D,EAAUtF,SAASkF,EAAQnP,IAAIQ,EAAK,KACpC+O,EAAUnH,IAAImG,QAAWlP,IAExBmI,EAAOpF,KAAK,iBAAiB,GAC7B/C,EAAEmP,iBACFe,EAAUnH,IAAIwH,MAAM,EAErBN,EAAU/G,IAAIgH,GACdH,EAAU/B,QAAQiC,GAElBF,EAAU7B,OAAO,QAAS4B,EAAQnP,IAAIQ,EAAK,IAAK,IAAIgY,EAAShR,IACzDyV,EAASzL,WACZpC,EAAU7B,OAAO,QAAS4B,EAAQnP,IAAIQ,EAAK,IAAK,IAAIwY,EAAexR,IAEhEyV,EAASvK,YAAa,CACzB,MAAMwK,EAAkB,IAAIlD,EAAiBxS,GAC7C4H,EAAU7B,OAAO,QAAS4B,EAAQnP,IAAIQ,EAAK,IAAK0c,GAChD1V,EAAOyL,iBAAmBiK,CAC3B,CAEA9N,EAAU7B,OAAO,QAAS4B,EAAQnP,IAAIQ,EAAK,IAAK,IAAI8Z,EAAY9S,IAChE4H,EAAU7B,OAAO,QAAS4B,EAAQnP,IAAIQ,EAAK,IAAK,IAAI+a,EAAc/T,IAClE4H,EAAU7B,OAAO,QAAS4B,EAAQnP,IAAIQ,EAAK,IAAK,IAAIoc,EAAcpV,IAClE4H,EAAUxB,OAAO,SAEjBvF,SAASwO,KAAKpO,YAAY2G,EAAUhH,KAIpCZ,EAAOvF,GAAG,iBAAkB9C,IAEvBA,EACHiQ,EAAU5F,SAAS,QAEnB4F,EAAU7F,gBAAgB,QAC3B,IAGD/B,EAAOvF,GAAG,mBAAoB9C,IAE7BoQ,EAAUtF,SAASkF,EAAQnP,IAAIQ,EAAK,KACpC4O,EAAUrB,SAAS,QAASoB,EAAQnP,IAAIQ,EAAK,KACzCyc,EAASzL,WACZpC,EAAUrB,SAAS,QAASoB,EAAQnP,IAAIQ,EAAK,KAE1Cyc,EAASvK,aACZtD,EAAUrB,SAAS,QAASoB,EAAQnP,IAAIQ,EAAK,KAE9C4O,EAAUrB,SAAS,QAASoB,EAAQnP,IAAIQ,EAAK,KAC7C4O,EAAUrB,SAAS,QAASoB,EAAQnP,IAAIQ,EAAK,KAC7C4O,EAAUrB,SAAS,QAASoB,EAAQnP,IAAIQ,EAAK,IAAI,GAEnD,EC7EM,MAAM2c,EAET,WAAA7Y,CAAYkD,GAER,MAAM4H,GAAY,IAAI3E,GAAQrB,MAAM,WAC9B+F,EAAU3H,EAAO2H,QACjB3O,EAAO,CACT,gBACA,eAEEgN,EAAQ,IAAI5C,EAAQuE,EAAQnP,IAAIQ,EAAK,IAAK,cAC1C4c,EAAU,IAAIxR,EAAQ,OAAQ,IAAIxC,MAAM,cAC9CgU,EAAQhV,IAAI4L,QAAW3U,IAEnB2C,KAAKmR,SACL9T,EAAEmP,gBAAgB,EAGtB,MAAM6O,EAAS,IAAIzR,EAAQ,SAAUuD,EAAQnP,IAAIQ,EAAK,KACtD6c,EAAOjV,IAAIgR,UAAW,EACtBiE,EAAOjV,IAAImG,QAAWlP,IAElB,MAAMsT,EAAO,CACTlB,IAAKzP,KAAKyP,IACV6L,KAAM,IAAIhY,KACV+E,KAAM+S,EAAQjS,WACd9F,KAAMA,KAEVrD,KAAKub,WAAQrd,EACbsH,EAAOE,SAASgL,YAAYpP,KAAKqP,GACjCnL,EAAOpF,KAAK,YAAauQ,GACzBvD,EAAU7F,gBAAgB,SAC1BlK,EAAEmP,iBACF6O,EAAOjV,IAAIwH,MAAM,EAGrB5N,KAAKmR,OAAS,KAEVkK,EAAOjV,IAAIgR,WAAapX,KAAKub,OAASH,EAAQjS,WAAWzL,OAAS,EAAE,EAGxE0P,EAAU7G,IAAI,IAAI0G,EAAM,CAACzB,EAAO4P,EAASC,IAAS3T,SAAS,YAC3DrB,SAASwO,KAAKpO,YAAY2G,EAAUhH,KAIpCZ,EAAOvF,GAAG,YAAY,CAACwP,EAAK+L,KAExBxb,KAAKyP,IAAMA,EACXzP,KAAKub,MAAQC,EAASD,MAAM9L,GAC5BzP,KAAKmR,SACL/D,EAAU5F,SAAS,QACnB4T,EAAQhS,SAAS,GAAG,IAGxB5D,EAAOvF,GAAG,cAAc,KAEpBD,KAAKub,WAAQrd,EACb8B,KAAKmR,SACL/D,EAAU7F,gBAAgB,QAAQ,IAGtC/B,EAAOvF,GAAG,mBAAoB9C,IAE1BqO,EAAMpD,eAAe+E,EAAQnP,IAAIQ,EAAK,KACtC6c,EAAOjS,SAAS+D,EAAQnP,IAAIQ,EAAK,IAAI,GAE7C,ECpEG,MAAMid,EACT,WAAAnZ,CAAYkD,GACR,MAAM2H,EAAU3H,EAAO2H,QACjBzH,EAAWF,EAAOE,SAElB0H,GAAY,IAAI3E,GAAQrB,MAAM,cAC9B5I,EAAO,CACT,oBACA,iBAIEkd,GAAW,IAAIjT,GAAQjB,SAAS,gBAChCmU,GAAc,IAAIlT,GAAQjB,SAAS,iBAEzC,IAKIoU,EALAvT,GAAO,IAAIO,GAAUpB,SAAS,eAAeY,eAAe,yBAChEsT,EAASnV,IAAI8B,GAKb,MAAMwT,GAAY,IAAIpT,GAAQrB,MAAM,UAAUI,SAAS,OAYvD,IAAI8K,EACJ,GAZAsJ,EAAY,IAAIhS,EAAQ,UACxBgS,EAAU3T,SAASkF,EAAQnP,IAAIQ,EAAK,KACpCod,EAAUxV,IAAImG,QAAWlP,IACrBA,EAAEmP,gBAAgB,EAGtBqP,EAAUtV,IAAIqV,GACdD,EAAYpV,IAAIsV,GAKZnW,EAAS2O,WAAY,CAErB,MAAMC,GAAgB,IAAI7L,GAAQrB,MAAM,SAASI,SAAS,OAC1D8K,EAAgB,IAAI1I,EAAQ,UAC5B0I,EAAcrK,SAASkF,EAAQnP,IAAIQ,EAAK,KACxC8T,EAAclM,IAAImG,QAAWlP,IAEzB2C,KAAKuU,mBACLlX,EAAEmP,gBAAgB,EAGtBnG,SAASwD,UAAaxM,IAEJ,QAAVA,EAAE0B,MACF1B,EAAEmP,iBACFxM,KAAKuU,mBACT,EAGJlO,SAASmO,mBAAsBnX,IAKvBgJ,SAAS8O,kBACTb,EAAc5M,SAAS,gBAEvB4M,EAAc1M,YAAY,eAC9B,EAIJ0M,EAAc/N,IAAI+L,GAClBqJ,EAAYpV,IAAI+N,EACpB,CAEA9O,EAAOvF,GAAG,mBAAoB9C,IACtBuI,EAAS2O,YACT/B,EAAcrK,SAASkF,EAAQnP,IAAIQ,EAAK,IAC5C,IAIJ4O,EAAU7G,IAAI,CAACmV,EAAUC,IACzBtV,SAASwO,KAAKpO,YAAY2G,EAAUhH,IACxC,CAEA,gBAAAmO,GAEIlO,SAAS6O,cAActH,OAEY,OAA/BvH,SAAS8O,kBACT9O,SAAS+O,gBAAgBC,oBAClBhP,SAASiP,gBAChBjP,SAASiP,gBAEjB,ECjFG,MAAMwG,EAEZ,WAAAxZ,CAAYyZ,EAAUrW,GAErB,MAAMsW,EAAW5a,IAChB,MAAM6H,EAAM,IAAIqK,IAAItP,OAAOuP,UAC3B,IAAI0I,EAAOF,EACPrW,IAAaA,EAASwN,UACzB+I,EAAOF,EACH3a,GAAMpB,KAAKoT,QAAQ9N,SACblE,GAA8B,IAAtB6H,EAAIuP,OAAO9a,SAC7Bue,EAAO7a,GAERpB,KAAKkc,QAAQD,EAAMvW,GACnB1F,KAAKmN,QAAU,IAAI5H,EAAQvF,MAC3BA,KAAKmc,QAAU,IAAIjP,EAAQlN,MAC3BA,KAAKoc,QAAU,IAAI7G,EAAQvV,MAC3BA,KAAKqc,OAAS,IAAIZ,EAAOzb,MACzBA,KAAKsc,QAAU,IAAItB,EAAQhb,MACvBA,KAAK0F,SAASgL,cACjB1Q,KAAKuc,QAAU,IAAIpB,EAAQnb,OAE5BA,KAAKsE,MAAM,EAGZtE,KAAK0F,cAAWxH,EAChB8B,KAAKwc,SfUa,CACZ,WACA,cACA,UACA,QACA,QACA,iBACA,UAEWC,MAAM3d,GAAM4d,UAAUC,UAAUC,MAAM9d,KelBvDkB,KAAKoT,QAAU,IAAIzP,EACnB,MAAMuP,EAAWxN,GAAYA,EAASwN,UAElClT,KAAKoT,QAAQrP,WAAe2B,IAAYwN,EAG3C8I,IAFAhc,KAAKoT,QAAQ9O,MAAK,IAAMtE,KAAKoT,QAAQpV,KAAKoD,GAAS4a,EAAQ5a,OAK5D4C,OAAO6Y,eAAiB7c,KAAKqT,OAAO6F,KAAKlZ,MACzCgE,OAAO8Y,aAAe9c,KAAK+c,YAAY7D,KAAKlZ,MAC5CgE,OAAO6F,UAAY7J,KAAKgd,gBAAgB9D,KAAKlZ,MAC7CgE,OAAOiZ,QAAW5f,IACbA,EAAE6f,SACL7f,EAAEmP,gBACH,CAEF,CAOA,IAAAlI,CAAKyX,EAAUrW,GAEd1F,KAAKI,KAAK,iBACVJ,KAAK6W,SAAW,CAAC,EAEbpZ,UAAUC,OAAS,GAEtBsC,KAAKkc,QAAQH,EAAUrW,GAGxB1F,KAAKsO,KAAO6O,KAAKnd,KAAK0F,SAASqW,UAC/B/b,KAAKoP,UAAYpP,KAAKsO,KAAK8O,SAAS,SAAU,CAC7CC,QAASrd,KAAK0F,SAAS2X,QACvBlH,KAAMnW,KAAK0F,SAASyQ,KACpBE,OAAQrW,KAAK0F,SAAS2Q,OAAO2D,IAC7BC,eAAgBja,KAAK0F,SAAS2Q,OAAOhM,IACrC6B,MAAO,OACPE,OAAQ,OACRkR,MAAM,IAGP,MAAM7N,EAAMzP,KAAK0F,SAAS6X,oBAEzBvd,KAAKwd,UADF/N,EACczP,KAAKoP,UAAUtD,QAAQ2D,GAEvBzP,KAAKoP,UAAUtD,UAGjC9L,KAAKwd,UAAU/O,MAAM4I,IACpBrX,KAAKI,KAAK,YAAaiX,EAAUrX,KAAK0F,SAAS,IAGhD1F,KAAKsO,KAAKmP,MAAMhP,MAAK,KACpBzO,KAAKI,KAAK,YAAaJ,KAAK0F,SAAS,IACnC+I,MAAK,KACPzO,KAAKI,KAAK,aAAa,IAGxBJ,KAAKsO,KAAKC,OAAOmP,SAASjP,MAAMqM,IAC/B9a,KAAKI,KAAK,WAAY0a,EAAK,IAG5B9a,KAAKsO,KAAKC,OAAOC,WAAWC,MAAMC,IACjC1O,KAAKI,KAAK,aAAcsO,EAAI,IAG7B1O,KAAKoP,UAAUnP,GAAG,SAAU5C,IAEJ,UADLA,EAAEsgB,KAAKtX,SAASuX,eACpB5c,MACbhB,KAAKI,KAAK,aACX,IAGDJ,KAAKoP,UAAUnP,GAAG,UAAWmW,IAC5BpW,KAAKI,KAAK,SAAUgW,EAAM,IAG3BpW,KAAKoP,UAAUnP,GAAG,YAAY,CAAC4d,EAAUrC,KACxCxb,KAAK8d,YAAYD,GACjB7d,KAAKI,KAAK,WAAYyd,EAAUrC,EAAS,IAG1Cxb,KAAKoP,UAAUnP,GAAG,aAAcsT,IAC/BvT,KAAK8d,YAAYvK,EAASuB,MAAMrF,KAChCzP,KAAKI,KAAK,YAAamT,EAAS,IAGjCvT,KAAKoP,UAAUnP,GAAG,UAAWD,KAAKgd,gBAAgB9D,KAAKlZ,OAEvDA,KAAKC,GAAG,QAAQ,KAC8B,QAAzCD,KAAKsO,KAAKyP,QAAQL,SAASM,UAC9Bhe,KAAKoP,UAAUuG,OAEf3V,KAAKoP,UAAUoG,MAChB,IAGDxV,KAAKC,GAAG,QAAQ,KAC8B,QAAzCD,KAAKsO,KAAKyP,QAAQL,SAASM,UAC9Bhe,KAAKoP,UAAUoG,OAEfxV,KAAKoP,UAAUuG,MAChB,IAGD3V,KAAKC,GAAG,mBAAoB9C,IAC3B6C,KAAK0F,SAASD,SAAWtI,CAAK,IAG/B6C,KAAKC,GAAG,eAAgB9C,IACvB6C,KAAK0F,SAASyQ,KAAOhZ,EACrB6C,KAAKoP,UAAU+G,KAAKhZ,EAAM,IAG3B6C,KAAKC,GAAG,iBAAkB9C,IACzB,MAAM6c,EAAM7c,EAAM6c,KAAOha,KAAK0F,SAAS2Q,OAAO2D,IACxC3P,EAAMlN,EAAMkN,KAAOrK,KAAK0F,SAAS2Q,OAAOhM,IAC9CrK,KAAK0F,SAAS2Q,OAAO2D,IAAMA,EAC3Bha,KAAK0F,SAAS2Q,OAAOhM,IAAMA,EAC3BrK,KAAKoP,UAAUiH,OAAO2D,EAAK3P,EAAI,IAGhCrK,KAAKC,GAAG,iBAAkB9C,IACzB,MAAM2V,EAAW3V,EAAM2V,SACvB9S,KAAK0F,SAASiV,OAAO7H,SAAWA,EAChC9S,KAAKoP,UAAU6O,OAAOnL,SAASA,EAAW,KAAK,GAEjD,CAIA,cAAA8E,CAAenI,GAKd,MAAM8L,EAAQvb,KAAKoP,UAAU8O,SAASzO,GAChCoI,EAAQ0D,EAAQA,EAAM4C,eAAeC,WAAW/W,QAAKnJ,EAErD6K,EADW/I,KAAKoP,UAAUiP,kBACVvJ,MAAM/L,KAC5B,OAAO/I,KAAK6W,SAAS9N,EAAO,IAAM8O,IAAU7X,KAAK6W,SAAS9N,EAC3D,CASA,YAAAqL,CAAa3E,GAEZ,OAAOzP,KAAK0F,SAAS8J,UAAU1P,QAAQ2P,EACxC,CAIA,WAAA6O,CAAY3N,GAEX,OAAO3Q,KAAK0F,SAASgL,YAAY5Q,QAAQ6Q,EAC1C,CASA,OAAAuL,CAAQH,EAAUrW,GAEjB1F,KAAKue,SAAWC,IAAIzC,GAAU5Z,WAC9BnC,KAAK0F,SAAW,CACfqW,SAAUA,EACVlO,OAAQ7N,KAAKwc,SAAW,OAAS,UACjCa,QAASrd,KAAKwc,SAAW,aAAe,UACxCiC,SAAS,EACThL,SAAS,EACTP,WAAUlT,KAAKoT,QAAQrP,UACvB0B,SAAU,KACVmR,eAAW1Y,EACXsR,UAAW,GACXkB,YAAa,GACbyF,KAAM,YACNE,OAAQ,CACP2D,IAAK,OACL3P,IAAK,KAENsQ,OAAQ,CACP7H,SAAU,IAEX4H,gBAAYxc,EACZmW,WAAYhO,SAASqY,kBACrB3M,WAAY,IAGb3O,EAAOsC,GAAY,CAAC,EAAG1F,KAAK0F,UAExB1F,KAAK0F,SAAS+Y,QACjBze,KAAK2e,mBAAmBjZ,GAAY,CAAC,GAErC1F,KAAK4e,qBAEP,CAMA,OAAAC,GAEC,OAAOC,cAAwD,OAAxCA,aAAaC,QAAQ/e,KAAKue,SAClD,CAOA,mBAAAK,GAEC,QAAK5e,KAAK6e,YAGVC,aAAaE,WAAWhf,KAAKue,WACtB,EACR,CAOA,kBAAAI,CAAmBM,GAElB,IAAKjf,KAAK6e,UACT,OAAO,EAER,IAAIK,EACJ,IACCA,EAASC,KAAKC,MAAMN,aAAaC,QAAQ/e,KAAKue,UAC/C,CAAE,MAAOlhB,GACRgH,QAAQgb,UAAUhiB,EACnB,CAEA,QAAI6hB,IACH9b,EAAO8b,EAAQlf,KAAK0F,SAAUuZ,IACvB,EAIT,CAKA,YAAAK,GAECtf,KAAK0F,SAAS6X,oBAAsBvd,KAAKoP,UAAUmE,SAASuB,MAAMrF,IAClE,MAAMyG,EAAM/X,OAAOtB,OAAO,CAAC,EAAGmD,KAAK0F,iBAC5BwQ,EAAIrI,cACJqI,EAAImH,eACJnH,EAAIzC,eACJyC,EAAIuI,eACJvI,EAAIhD,gBACJgD,EAAIwE,kBACJxE,EAAI7B,kBACJ6B,EAAInE,WACX+M,aAAaS,QAAQvf,KAAKue,SAAUY,KAAKK,UAAUtJ,GACpD,CAEA,WAAA4H,CAAYrO,GAEX,MAAMgQ,EAAUzf,KAAKsO,KAAKoR,cAAWxhB,EAAY8B,KAAKsO,KAAKrF,IACrDA,EAAM,IAAIqK,IAAItP,OAAOuP,SAAUkM,GACrCxW,EAAI0W,KAAO,IAAMlQ,EAGbzP,KAAK0F,SAAS+N,SAAWzP,OAAOuP,SAASoM,OAAS1W,EAAI0W,OAEzD3b,OAAOyP,QAAQC,UAAU,CAAC,EAAG,GAAIzK,GACjCjJ,KAAK4f,mBAAqBnQ,EAE5B,CAIA,MAAA4D,GAEKrT,KAAK0F,SAAS+Y,SAAWK,cAC5B9e,KAAKsf,cAEP,CAEA,WAAAvC,GAEC,MAAM4C,EAAO3b,OAAOuP,SAASoM,KAAK/d,MAAM,GACxC5B,KAAKoP,UAAUtD,QAAQ6T,EACxB,CAEA,eAAA3C,CAAgB3f,GAGf,IAAIF,EAAQ6C,KAAK0F,SAASiV,OAAO7H,SAEjC,OAAQzV,EAAE0B,KAET,IAAK,IACL,IAAK,IACJ5B,GAPW,EAQX6C,KAAKI,KAAK,gBAAiB,CAAE0S,SAAU3V,IACvC,MACD,IAAK,IACJA,GAXW,EAYX6C,KAAKI,KAAK,gBAAiB,CAAE0S,SAAU3V,IACvC,MACD,IAAK,IACJA,EAAQ,GACR6C,KAAKI,KAAK,gBAAiB,CAAE0S,SAAU3V,IACvC,MACD,IAAK,YACJ6C,KAAKI,KAAK,QACV,MACD,IAAK,aACJJ,KAAKI,KAAK,QAGb,EAGD,EAAa0b,EAAOzc,W","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (!existingToc) {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet bookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\n\t\t\t\tbookmarksList.appendChild(title);\n\n\t\t\t\treader.settings.bookmarks.forEach((cfi) => {\n\t\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\t\tbookmarkLink.textContent = `Bookmark ${bookmarksList.children.length}`;\n\n\t\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t\t})\n\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\t\tsearchBtn.dom.onclick = () => {\n\t\t\tsearchBox.setClass(\"active\");\n\t\t\tsearchInput.dom.focus();\n\t\t}\n\n\t\t\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\t}\n\n\tremoveBookmark(cfi) {\n\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), new BookmarksPanel(reader));\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","Toolbar","strings","container","menu1","openerBox","openerBtn","prevBox","prevBtn","nextBox","nextBtn","blur","arrows","logoBox","logoLink","tocBox","tocBtn","bookmarksBox","bookmarksBtn","annotationsBox","annotationsBtn","book","loaded","navigation","then","toc","getElementById","tocList","setAttribute","tocTitle","chapter","tocItem","tocLink","querySelectorAll","link","rendition","toggle","showToc","bookmarksList","bookmarks","cfi","bookmarkItem","bookmarkLink","deleteBtn","innerHTML","removeBookmarkFromToolbar","bookmarkBox","showBookmarks","bookmarkItems","targetItem","from","find","item","querySelector","includes","index","annotationsList","annotations","note","noteItem","noteLink","removeNoteFromToolbar","showAnnotations","noteItems","annotationsPanel","removeNote","update","findIndex","n","centerPageCount","centerLabel","curOfTotal","curPageIndex","separator","totalPage","menu2","backgroundBox","colorPicker","background","oninput","selectedColor","openbookBtn","searchBox","searchBtn","bookmarkBtn","fullscreenBtn","closeBox","closeBtn","fontLabel","fontSizeBox","decreaseFontBtn","increaseFontBtn","fontSizeInput","fontSize","newSize","parseInt","isNaN","openbook","onload","storage","unload","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","searchInput","focus","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","body","start","atStart","atEnd","backgroundBtn","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","iconLeft","viewer","next","color","backgroundColor","iconRight","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","generateToc","list","ibtn","sectionId","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","disabled","renderer","setBookmark","appendBookmark","removeBookmark","_cfi","btnr","navItem","navItemFromCfi","idref","spineItem","spine","AnnotationsPanel","clearNotes","notes","toolbarList","toolbarNoteItem","toolbarNoteLink","SearchPanel","searchQuery","search","placeholder","onsearch","doSearch","results","Promise","all","spineItems","map","load","bind","finally","resolve","concat","excerpt","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","Sidebar","controls","annotationPanel","NoteDlg","textBox","addBtn","date","range","contents","Status","leftText","rightAction","appRecBtn","appRecBox","Reader","bookPath","preinit","path","cfgInit","toolbar","content","status","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","metadata","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.min.js","mappings":"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","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (!existingToc) {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) {\n\t\t\t\tbookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tupdateBookmarksList();\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tupdateBookmarksList();\n\t\t})\n\n\t\tfunction updateBookmarksList() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tbookmarksList.innerHTML = \"\";\n\n\t\t\tlet title = document.createElement(\"h3\");\n\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\t\t\tbookmarksList.appendChild(title);\n\n\t\t\treader.settings.bookmarks.forEach((cfi, index) => {\n\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\tbookmarkLink.textContent = `Bookmark ${index + 1}`;\n\n\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t});\n\n\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t};\n\n\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t};\n\n\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t})\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t\treader.bookmarksPanel.removeBookmark(cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\n\t\tsearchBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowSearchPopup();\n\t\t}\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\t\tfunction showSearchPopup() {\n\t\t\tlet existingPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tif (!existingPopup) {\n\t\t\t\tlet searchPopup = document.createElement(\"div\");\n\t\t\t\tsearchPopup.setAttribute(\"id\", \"toolbar-search-list\");\n\t\t\t\tsearchPopup.classList.add(\"search-popup\");\n\n\t\t\t\tlet searchContainer = document.createElement(\"div\");\n\t\t\t\tsearchContainer.classList.add(\"search-container\");\n\n\t\t\t\tlet searchIcon = document.createElement(\"span\");\n\t\t\t\tsearchIcon.classList.add(\"search-icon\");\n\t\t\t\tsearchIcon.innerHTML = '';\n\n\t\t\t\tlet searchInput = document.createElement(\"input\");\n\t\t\t\tsearchInput.setAttribute(\"type\", \"search\");\n\t\t\t\tsearchInput.setAttribute(\"placeholder\", \"Search\");\n\t\t\t\tsearchInput.setAttribute(\"id\", \"nav-q\");\n\t\t\t\tsearchInput.setAttribute(\"class\", \"toolbar-search-input\");\n\n\t\t\t\tsearchContainer.appendChild(searchIcon);\n\t\t\t\tsearchContainer.appendChild(searchInput);\n\n\t\t\t\tlet resultContainer = document.createElement(\"ul\");\n\t\t\t\tresultContainer.setAttribute('id', 'toolbar-search-results');\n\n\t\t\t\tlet searchPanel = new SearchPanel(reader);\n\t\t\t\tsearchInput.oninput = async () => {\n\t\t\t\t\tlet query = searchInput.value.trim();\n\t\t\t\t\tif (query.length > 0) {\n\t\t\t\t\t\tlet results = await searchPanel.doSearch(query);\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\n\t\t\t\t\t\tif (results.length === 0) {\n\t\t\t\t\t\t\tlet noResultItem = document.createElement(\"li\");\n\t\t\t\t\t\t\tnoResultItem.innerText = \"Không tìm thấy kết quả trùng khớp\";\n\t\t\t\t\t\t\tnoResultItem.style.color = \"gray\";\n\t\t\t\t\t\t\tnoResultItem.style.padding = \"8px\";\n\t\t\t\t\t\t\tresultContainer.appendChild(noResultItem);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresults.forEach((data) => {\n\t\t\t\t\t\t\tlet item = document.createElement(\"li\");\n\t\t\t\t\t\t\tlet link = document.createElement(\"a\");\n\t\t\t\t\t\t\tlink.href = \"#\" + data.cfi;\n\t\t\t\t\t\t\tlink.textContent = data.excerpt;\n\t\t\t\t\t\t\tlink.onclick = (e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tsearchPanel.reader.rendition.display(data.cfi);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\titem.appendChild(link);\n\t\t\t\t\t\t\tresultContainer.appendChild(item);\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsearchPopup.appendChild(searchContainer);\n\t\t\t\tsearchPopup.appendChild(resultContainer);\n\t\t\t\tsearchBox.dom.appendChild(searchPopup);\n\t\t\t}\n\n\t\t\tlet searchPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tsearchPopup.classList.toggle(\"active\");\n\t\t}\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\n\t}\n\n\tremoveBookmark(cfi) {\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tconst bookmarkPanel = new BookmarksPanel(reader);\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), bookmarkPanel);\n\t\t\treader.bookmarksPanel = bookmarkPanel;\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","SearchPanel","container","strings","searchQuery","search","placeholder","onsearch","doSearch","then","results","book","Promise","all","spine","spineItems","map","item","load","bind","find","finally","unload","resolve","concat","link","cfi","excerpt","rendition","Toolbar","menu1","openerBox","openerBtn","prevBox","prevBtn","nextBox","nextBtn","blur","arrows","logoBox","logoLink","tocBox","tocBtn","bookmarksBox","bookmarksBtn","annotationsBox","annotationsBtn","updateBookmarksList","bookmarksList","getElementById","innerHTML","bookmarks","index","bookmarkItem","bookmarkLink","deleteBtn","querySelectorAll","removeBookmarkFromToolbar","loaded","navigation","toc","tocList","setAttribute","tocTitle","chapter","tocItem","tocLink","toggle","showToc","bookmarkBox","showBookmarks","bookmarkItems","targetItem","from","querySelector","includes","bookmarksPanel","removeBookmark","annotationsList","annotations","note","noteItem","noteLink","removeNoteFromToolbar","showAnnotations","noteItems","annotationsPanel","removeNote","update","findIndex","n","centerPageCount","centerLabel","curOfTotal","curPageIndex","separator","totalPage","menu2","backgroundBox","colorPicker","background","oninput","selectedColor","openbookBtn","searchBox","searchBtn","bookmarkBtn","fullscreenBtn","closeBox","closeBtn","fontLabel","fontSizeBox","decreaseFontBtn","increaseFontBtn","fontSizeInput","fontSize","newSize","parseInt","isNaN","openbook","onload","storage","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","searchPopup","searchContainer","searchIcon","searchInput","resultContainer","searchPanel","async","query","trim","noResultItem","innerText","color","padding","showSearchPopup","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","body","start","atStart","atEnd","backgroundBtn","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","iconLeft","viewer","next","backgroundColor","iconRight","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","generateToc","list","ibtn","sectionId","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","disabled","renderer","setBookmark","appendBookmark","_cfi","btnr","navItem","navItemFromCfi","idref","spineItem","AnnotationsPanel","clearNotes","notes","toolbarList","toolbarNoteItem","toolbarNoteLink","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","Sidebar","controls","bookmarkPanel","annotationPanel","NoteDlg","textBox","addBtn","date","range","contents","Status","leftText","rightAction","appRecBtn","appRecBox","Reader","bookPath","preinit","path","cfgInit","toolbar","content","status","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","metadata","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/js/eventProcess.js b/dist/js/eventProcess.js index 8fe1cc7..a43870e 100644 --- a/dist/js/eventProcess.js +++ b/dist/js/eventProcess.js @@ -28,3 +28,14 @@ document.addEventListener("click", (e) => { bookmarkList.classList.remove("active"); } }) + + +// +document.addEventListener("click", (e) => { + const searchBtn = document.querySelector("#btn-s.box input"); + const searchPopup = document.querySelector("#toolbar-search-list"); + + if (searchPopup && !searchPopup.contains(e.target) && !searchBtn.contains(e.target)) { + searchPopup.classList.remove("active"); + } +}) \ No newline at end of file diff --git a/src/reader.js b/src/reader.js index a0ee656..c618e70 100644 --- a/src/reader.js +++ b/src/reader.js @@ -191,7 +191,6 @@ export class Reader { * @returns The index of the bookmark if it exists, or -1 otherwise. */ isBookmarked(cfi) { - return this.settings.bookmarks.indexOf(cfi); } diff --git a/src/sidebar.js b/src/sidebar.js index 36af35d..9510f2b 100644 --- a/src/sidebar.js +++ b/src/sidebar.js @@ -38,7 +38,9 @@ export class Sidebar { container.addTab("btn-t", strings.get(keys[1]), new TocPanel(reader)); if (controls.bookmarks) { - container.addTab("btn-d", strings.get(keys[2]), new BookmarksPanel(reader)); + const bookmarkPanel = new BookmarksPanel(reader); + container.addTab("btn-d", strings.get(keys[2]), bookmarkPanel); + reader.bookmarksPanel = bookmarkPanel; } if (controls.annotations) { const annotationPanel = new AnnotationsPanel(reader); diff --git a/src/sidebar/annotations.js b/src/sidebar/annotations.js index 556b1d1..7d23555 100644 --- a/src/sidebar/annotations.js +++ b/src/sidebar/annotations.js @@ -42,7 +42,6 @@ export class AnnotationsPanel extends UIPanel { }); reader.on("noteadded", (note) => { - this.set(note); this.update(); }); diff --git a/src/sidebar/bookmarks.js b/src/sidebar/bookmarks.js index 7fcd372..9c0c985 100644 --- a/src/sidebar/bookmarks.js +++ b/src/sidebar/bookmarks.js @@ -49,7 +49,6 @@ export class BookmarksPanel extends UIPanel { }); reader.on("bookmarked", (boolean, cfi) => { - if (boolean) { this.appendBookmark(); } else { @@ -68,15 +67,16 @@ export class BookmarksPanel extends UIPanel { appendBookmark() { const cfi = this.locationCfi; + if (this.reader.isBookmarked(cfi) > -1) { return; } this.setBookmark(cfi); this.reader.settings.bookmarks.push(cfi); + } removeBookmark(cfi) { - const _cfi = cfi || this.locationCfi; const index = this.reader.isBookmarked(_cfi); if (index === -1) { @@ -93,7 +93,6 @@ export class BookmarksPanel extends UIPanel { } setBookmark(cfi) { - const link = new UILink(); const item = new UIItem(); const btnr = new UISpan().setClass("btn-remove"); diff --git a/src/toolbar.js b/src/toolbar.js index 17338bb..57bcbaa 100644 --- a/src/toolbar.js +++ b/src/toolbar.js @@ -1,4 +1,5 @@ import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from "./ui.js"; +import { SearchPanel } from "./sidebar/search.js"; export class Toolbar { @@ -146,58 +147,68 @@ export class Toolbar { menu1.add(bookmarksBox); function showBookmarks() { - let existingList = document.getElementById("toolbar-bookmarks-list"); + let bookmarksList = document.getElementById("toolbar-bookmarks-list"); - if (!existingList) { - let bookmarksList = document.createElement("ul"); + if (!bookmarksList) { + bookmarksList = document.createElement("ul"); bookmarksList.setAttribute("id", "toolbar-bookmarks-list"); + bookmarkBox.dom.appendChild(bookmarksList); + } - let title = document.createElement("h3"); - title.textContent = "Bookmarks của tui"; + updateBookmarksList(); + bookmarksList.classList.toggle("active"); + } - bookmarksList.appendChild(title); + reader.on("bookmarked", (boolean, cfi) => { + updateBookmarksList(); + }) - reader.settings.bookmarks.forEach((cfi) => { - let bookmarkItem = document.createElement("li"); - let bookmarkLink = document.createElement("a"); - let deleteBtn = document.createElement("span"); + function updateBookmarksList() { + let bookmarksList = document.getElementById("toolbar-bookmarks-list"); - bookmarkLink.href = "#"; - bookmarkLink.textContent = `Bookmark ${bookmarksList.children.length}`; + if (!bookmarksList) return; - bookmarkLink.onclick = (e) => { - e.preventDefault(); + bookmarksList.innerHTML = ""; - document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((link) => { - link.classList.remove("active"); - }) + let title = document.createElement("h3"); + title.textContent = "Bookmarks của tui"; + bookmarksList.appendChild(title); - bookmarkLink.classList.add("active"); + reader.settings.bookmarks.forEach((cfi, index) => { + let bookmarkItem = document.createElement("li"); + let bookmarkLink = document.createElement("a"); + let deleteBtn = document.createElement("span"); - reader.rendition.display(cfi); - } + bookmarkLink.href = "#"; + bookmarkLink.textContent = `Bookmark ${index + 1}`; - deleteBtn.innerHTML = ''; + bookmarkLink.onclick = (e) => { + e.preventDefault(); - deleteBtn.onclick = (e) => { - e.stopPropagation(); - reader.removeBookmarkFromToolbar(cfi); - } + document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((link) => { + link.classList.remove("active"); + }); - bookmarkItem.appendChild(bookmarkLink); - bookmarkItem.appendChild(deleteBtn); - bookmarksList.appendChild(bookmarkItem); - }) + bookmarkLink.classList.add("active"); - bookmarkBox.dom.appendChild(bookmarksList); - } + reader.rendition.display(cfi); + }; - let bookmarksList = document.getElementById("toolbar-bookmarks-list"); - bookmarksList.classList.toggle("active"); + deleteBtn.innerHTML = ''; + deleteBtn.onclick = (e) => { + e.stopPropagation(); + reader.removeBookmarkFromToolbar(cfi); + }; + + bookmarkItem.appendChild(bookmarkLink); + bookmarkItem.appendChild(deleteBtn); + bookmarksList.appendChild(bookmarkItem); + }) } // Hàm xóa bookmark từ toolbar reader.removeBookmarkFromToolbar = function (cfi) { + let bookmarksList = document.getElementById("toolbar-bookmarks-list"); if (!bookmarksList) return; @@ -216,6 +227,7 @@ export class Toolbar { } reader.emit("bookmarked", false, cfi); + reader.bookmarksPanel.removeBookmark(cfi); }; @@ -268,7 +280,6 @@ export class Toolbar { } deleteBtn.innerHTML = ''; - // emit event to delete annotation items deleteBtn.onclick = (e) => { e.stopPropagation(); @@ -471,10 +482,67 @@ export class Toolbar { searchPopup.setAttribute("id", "toolbar-search-list"); searchPopup.classList.add("search-popup"); - + let searchContainer = document.createElement("div"); + searchContainer.classList.add("search-container"); + + let searchIcon = document.createElement("span"); + searchIcon.classList.add("search-icon"); + searchIcon.innerHTML = ''; + + let searchInput = document.createElement("input"); + searchInput.setAttribute("type", "search"); + searchInput.setAttribute("placeholder", "Search"); + searchInput.setAttribute("id", "nav-q"); + searchInput.setAttribute("class", "toolbar-search-input"); + + searchContainer.appendChild(searchIcon); + searchContainer.appendChild(searchInput); + + let resultContainer = document.createElement("ul"); + resultContainer.setAttribute('id', 'toolbar-search-results'); + + let searchPanel = new SearchPanel(reader); + searchInput.oninput = async () => { + let query = searchInput.value.trim(); + if (query.length > 0) { + let results = await searchPanel.doSearch(query); + resultContainer.innerHTML = ""; + + if (results.length === 0) { + let noResultItem = document.createElement("li"); + noResultItem.innerText = "Không tìm thấy kết quả trùng khớp"; + noResultItem.style.color = "gray"; + noResultItem.style.padding = "8px"; + resultContainer.appendChild(noResultItem); + } + + results.forEach((data) => { + let item = document.createElement("li"); + let link = document.createElement("a"); + link.href = "#" + data.cfi; + link.textContent = data.excerpt; + link.onclick = (e) => { + e.preventDefault(); + searchPanel.reader.rendition.display(data.cfi); + } + item.appendChild(link); + resultContainer.appendChild(item); + }) + } else { + resultContainer.innerHTML = ""; + } + } + + searchPopup.appendChild(searchContainer); + searchPopup.appendChild(resultContainer); + searchBox.dom.appendChild(searchPopup); } + + let searchPopup = document.getElementById("toolbar-search-list"); + searchPopup.classList.toggle("active"); } + // Button Bookmark let bookmarkBox, bookmarkBtn; if (settings.bookmarks) { From d9b4f59dd1ee77b86023f87242541ced8cde4c0b Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Fri, 21 Feb 2025 21:30:34 +0700 Subject: [PATCH 15/21] create danh muc on status bar --- dist/css/status.css | 100 ++++++++++++++++++++++++++++++++++ dist/index.html | 1 + dist/js/epubreader.js | 60 ++++++++++++++++++++ dist/js/epubreader.js.map | 2 +- dist/js/epubreader.min.js | 2 +- dist/js/epubreader.min.js.map | 2 +- dist/js/eventProcess.js | 14 +++++ src/status.js | 60 ++++++++++++++++++++ 8 files changed, 238 insertions(+), 3 deletions(-) create mode 100644 dist/css/status.css diff --git a/dist/css/status.css b/dist/css/status.css new file mode 100644 index 0000000..7853022 --- /dev/null +++ b/dist/css/status.css @@ -0,0 +1,100 @@ +#status-bar { + border: none; +} + +.status-action #btn-ar.box { + position: relative; +} + +#book-list-modal { + display: none; +} + +#book-list-modal { + position: absolute; + right: 0; + left: 0; + bottom: 50px; + max-height: 250px; + padding: 20px; + margin: 0 20px; + height: 250px; + background: #fff; + border-radius: 10px; + box-shadow: 0px 4px 14px 0px #00000026; + z-index: 10; +} + +#book-list-modal.active { + display: block; +} + +.book-modal-content { + height: 100%; +} + +.book-grid { + height: 100%; + max-height: 100%; + display: grid; + grid-auto-flow: column; + grid-auto-columns: minmax(150px, 1fr); + gap: 16px; + overflow-x: auto; + scroll-snap-type: x mandatory; +} + +.book-item { + border-radius: 16px; + border: 1px solid #C7C7C7; + text-align: center; + cursor: pointer; + scroll-snap-align: center; + display: inline-grid; + align-items: center; + grid-template-rows: 1fr auto; +} + +.book-info {} + +.book-cover { + font-weight: 700; +} + +.book-cover { + border-bottom-right-radius: 15px; + border-bottom-left-radius: 15px; +} + +.book-cover { + background: #0000001A; + color: #000; + line-height: 2.4rem; +} + +.book-item.clicked, +.book-item:hover { + border: 2px solid #966412; +} + +.book-item.clicked .book-cover, +.book-item:hover .book-cover { + background: #FFD244; + color: #966412; + border-bottom-right-radius: 14px; + border-bottom-left-radius: 14px; +} + +.book-grid::-webkit-scrollbar { + width: 5px; + display: none; +} + +.book-grid::-webkit-scrollbar-thumb { + border-radius: 5px; + background-color: #ccc; +} + +.book-grid::-webkit-scrollbar-thumb:hover { + background-color: #999; +} \ No newline at end of file diff --git a/dist/index.html b/dist/index.html index 63b83a4..702d696 100644 --- a/dist/index.html +++ b/dist/index.html @@ -36,6 +36,7 @@ + Chế độ đọc sách diff --git a/dist/js/epubreader.js b/dist/js/epubreader.js index 3658628..05d4d75 100644 --- a/dist/js/epubreader.js +++ b/dist/js/epubreader.js @@ -3485,13 +3485,73 @@ class Status { const appRecBox = new UIDiv().setId("btn-ar").setClass("box"); appRecBtn = new UIInput("button"); appRecBtn.setTitle(strings.get(keys[1])); + appRecBtn.dom.onclick = (e) => { e.preventDefault(); + toggleBookList(); }; appRecBox.add(appRecBtn); rightAction.add(appRecBox); + function toggleBookList() { + const bookList = [ + { title: "Determined", author: "Robert M. Sapolsky", page: 1 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 2 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 3 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 4 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 5 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 6 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 7 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 8 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 9 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 10 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 11 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 12 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 13 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 14 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 15 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 16 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 17 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 18 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 19 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 20 }, + ]; + + let existingModal = document.getElementById('book-list-modal'); + if (!existingModal) { + let modal = document.createElement('div'); + modal.setAttribute('id', 'book-list-modal'); + modal.setAttribute('class', 'book-modal'); + + let modalContent = document.createElement('div'); + modalContent.setAttribute('class', 'book-modal-content'); + + let bookGrid = document.createElement('div'); + bookGrid.setAttribute('class', 'book-grid'); + bookList.forEach((book) => { + let bookItem = document.createElement('div'); + bookItem.setAttribute('class', 'book-item'); + bookItem.innerHTML = ` +
+

${book.title}

+

${book.author}

+
+
${book.page}
+ `; + bookGrid.appendChild(bookItem); + }); + + modalContent.appendChild(bookGrid); + modal.appendChild(modalContent); + + container.dom.appendChild(modal); + } + + let modal = document.getElementById('book-list-modal'); + modal.classList.toggle("active"); + } + // Button Full Screen let fullscreenBtn; diff --git a/dist/js/epubreader.js.map b/dist/js/epubreader.js.map index 68f00dd..4ebf59b 100644 --- a/dist/js/epubreader.js.map +++ b/dist/js/epubreader.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;AClRA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB;AACO;AACP;AACA;AACA;AACA;;AC/wBkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEoF;AAClC;;AAE3C;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,KAAK;AAC3B,uBAAuB,MAAM;;AAE7B;AACA;;AAEA;AACA;AACA,eAAe,KAAK;AACpB,eAAe,OAAO;;AAEtB;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;;AAE5B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,2CAA2C,UAAU;;AAErD;AACA;;AAEA;AACA;AACA,MAAM;;AAEN;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,uBAAuB,KAAK;AAC5B,uBAAuB,OAAO;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA,8BAA8B,KAAK;;AAEnC,0BAA0B,OAAO;AACjC;;AAEA,yBAAyB,KAAK;AAC9B,2BAA2B,MAAM;AACjC,wBAAwB,MAAM;AAC9B,wBAAwB,MAAM;;AAE9B;AACA;AACA;;AAEA;AACA;;;;AAIA;AACA,oBAAoB,KAAK;AACzB;AACA;AACA;AACA;AACA,uBAAuB,KAAK;AAC5B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA,sBAAsB,OAAO;AAC7B,wBAAwB,KAAK;AAC7B,4BAA4B,OAAO;AACnC,4BAA4B,OAAO;AACnC,0BAA0B,OAAO;;AAEjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,mCAAmC,oBAAoB;AACvD,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,kBAAkB,KAAK;AACvB,kBAAkB,OAAO;AACzB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,0BAA0B,WAAW;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;;;;AAIA;AACA;;;AAGA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;ACrqBwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,wBAAwB,MAAM;AAC9B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,yBAAyB,MAAM;AAC/B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;AC9HyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;ACzFyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACtI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;;AAEA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC5IsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;;AAE/B;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChLyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,6BAA6B,cAAc;AAC3C;AACA;AACA;AACA;AACA,+BAA+B,gBAAgB;AAC/C;AACA;AACA;;AAEA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;ACnFkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEkD;AAClD;AACO;AACP;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,KAAK;AAClC,gCAAgC,KAAK;AACrC;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC,wBAAwB,OAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,KAAK;AAC3C,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;;AC7FyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;AACF;;AAE9B;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,qBAAqB,MAAM;AAC3B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (!existingToc) {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) {\n\t\t\t\tbookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tupdateBookmarksList();\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tupdateBookmarksList();\n\t\t})\n\n\t\tfunction updateBookmarksList() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tbookmarksList.innerHTML = \"\";\n\n\t\t\tlet title = document.createElement(\"h3\");\n\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\t\t\tbookmarksList.appendChild(title);\n\n\t\t\treader.settings.bookmarks.forEach((cfi, index) => {\n\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\tbookmarkLink.textContent = `Bookmark ${index + 1}`;\n\n\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t});\n\n\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t};\n\n\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t};\n\n\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t})\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t\treader.bookmarksPanel.removeBookmark(cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\n\t\tsearchBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowSearchPopup();\n\t\t}\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\t\tfunction showSearchPopup() {\n\t\t\tlet existingPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tif (!existingPopup) {\n\t\t\t\tlet searchPopup = document.createElement(\"div\");\n\t\t\t\tsearchPopup.setAttribute(\"id\", \"toolbar-search-list\");\n\t\t\t\tsearchPopup.classList.add(\"search-popup\");\n\n\t\t\t\tlet searchContainer = document.createElement(\"div\");\n\t\t\t\tsearchContainer.classList.add(\"search-container\");\n\n\t\t\t\tlet searchIcon = document.createElement(\"span\");\n\t\t\t\tsearchIcon.classList.add(\"search-icon\");\n\t\t\t\tsearchIcon.innerHTML = '';\n\n\t\t\t\tlet searchInput = document.createElement(\"input\");\n\t\t\t\tsearchInput.setAttribute(\"type\", \"search\");\n\t\t\t\tsearchInput.setAttribute(\"placeholder\", \"Search\");\n\t\t\t\tsearchInput.setAttribute(\"id\", \"nav-q\");\n\t\t\t\tsearchInput.setAttribute(\"class\", \"toolbar-search-input\");\n\n\t\t\t\tsearchContainer.appendChild(searchIcon);\n\t\t\t\tsearchContainer.appendChild(searchInput);\n\n\t\t\t\tlet resultContainer = document.createElement(\"ul\");\n\t\t\t\tresultContainer.setAttribute('id', 'toolbar-search-results');\n\n\t\t\t\tlet searchPanel = new SearchPanel(reader);\n\t\t\t\tsearchInput.oninput = async () => {\n\t\t\t\t\tlet query = searchInput.value.trim();\n\t\t\t\t\tif (query.length > 0) {\n\t\t\t\t\t\tlet results = await searchPanel.doSearch(query);\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\n\t\t\t\t\t\tif (results.length === 0) {\n\t\t\t\t\t\t\tlet noResultItem = document.createElement(\"li\");\n\t\t\t\t\t\t\tnoResultItem.innerText = \"Không tìm thấy kết quả trùng khớp\";\n\t\t\t\t\t\t\tnoResultItem.style.color = \"gray\";\n\t\t\t\t\t\t\tnoResultItem.style.padding = \"8px\";\n\t\t\t\t\t\t\tresultContainer.appendChild(noResultItem);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresults.forEach((data) => {\n\t\t\t\t\t\t\tlet item = document.createElement(\"li\");\n\t\t\t\t\t\t\tlet link = document.createElement(\"a\");\n\t\t\t\t\t\t\tlink.href = \"#\" + data.cfi;\n\t\t\t\t\t\t\tlink.textContent = data.excerpt;\n\t\t\t\t\t\t\tlink.onclick = (e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tsearchPanel.reader.rendition.display(data.cfi);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\titem.appendChild(link);\n\t\t\t\t\t\t\tresultContainer.appendChild(item);\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsearchPopup.appendChild(searchContainer);\n\t\t\t\tsearchPopup.appendChild(resultContainer);\n\t\t\t\tsearchBox.dom.appendChild(searchPopup);\n\t\t\t}\n\n\t\t\tlet searchPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tsearchPopup.classList.toggle(\"active\");\n\t\t}\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\n\t}\n\n\tremoveBookmark(cfi) {\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tconst bookmarkPanel = new BookmarksPanel(reader);\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), bookmarkPanel);\n\t\t\treader.bookmarksPanel = bookmarkPanel;\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;AClRA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB;AACO;AACP;AACA;AACA;AACA;;AC/wBkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEoF;AAClC;;AAE3C;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,KAAK;AAC3B,uBAAuB,MAAM;;AAE7B;AACA;;AAEA;AACA;AACA,eAAe,KAAK;AACpB,eAAe,OAAO;;AAEtB;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;;AAE5B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,2CAA2C,UAAU;;AAErD;AACA;;AAEA;AACA;AACA,MAAM;;AAEN;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,uBAAuB,KAAK;AAC5B,uBAAuB,OAAO;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA,8BAA8B,KAAK;;AAEnC,0BAA0B,OAAO;AACjC;;AAEA,yBAAyB,KAAK;AAC9B,2BAA2B,MAAM;AACjC,wBAAwB,MAAM;AAC9B,wBAAwB,MAAM;;AAE9B;AACA;AACA;;AAEA;AACA;;;;AAIA;AACA,oBAAoB,KAAK;AACzB;AACA;AACA;AACA;AACA,uBAAuB,KAAK;AAC5B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA,sBAAsB,OAAO;AAC7B,wBAAwB,KAAK;AAC7B,4BAA4B,OAAO;AACnC,4BAA4B,OAAO;AACnC,0BAA0B,OAAO;;AAEjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,mCAAmC,oBAAoB;AACvD,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,kBAAkB,KAAK;AACvB,kBAAkB,OAAO;AACzB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,0BAA0B,WAAW;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;;;;AAIA;AACA;;;AAGA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;ACrqBwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,wBAAwB,MAAM;AAC9B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,yBAAyB,MAAM;AAC/B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;AC9HyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;ACzFyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACtI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;;AAEA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC5IsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;;AAE/B;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChLyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,6BAA6B,cAAc;AAC3C;AACA;AACA;AACA;AACA,+BAA+B,gBAAgB;AAC/C;AACA;AACA;;AAEA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;ACnFkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEkD;AAClD;AACO;AACP;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,KAAK;AAClC,gCAAgC,KAAK;AACrC;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC,wBAAwB,OAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,WAAW;AAC/D,qDAAqD,YAAY;AACjE;AACA,kDAAkD,UAAU;AAC5D;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,KAAK;AAC3C,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;;ACzJyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;AACF;;AAE9B;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,qBAAqB,MAAM;AAC3B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (!existingToc) {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) {\n\t\t\t\tbookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tupdateBookmarksList();\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tupdateBookmarksList();\n\t\t})\n\n\t\tfunction updateBookmarksList() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tbookmarksList.innerHTML = \"\";\n\n\t\t\tlet title = document.createElement(\"h3\");\n\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\t\t\tbookmarksList.appendChild(title);\n\n\t\t\treader.settings.bookmarks.forEach((cfi, index) => {\n\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\tbookmarkLink.textContent = `Bookmark ${index + 1}`;\n\n\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t});\n\n\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t};\n\n\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t};\n\n\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t})\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t\treader.bookmarksPanel.removeBookmark(cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\n\t\tsearchBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowSearchPopup();\n\t\t}\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\t\tfunction showSearchPopup() {\n\t\t\tlet existingPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tif (!existingPopup) {\n\t\t\t\tlet searchPopup = document.createElement(\"div\");\n\t\t\t\tsearchPopup.setAttribute(\"id\", \"toolbar-search-list\");\n\t\t\t\tsearchPopup.classList.add(\"search-popup\");\n\n\t\t\t\tlet searchContainer = document.createElement(\"div\");\n\t\t\t\tsearchContainer.classList.add(\"search-container\");\n\n\t\t\t\tlet searchIcon = document.createElement(\"span\");\n\t\t\t\tsearchIcon.classList.add(\"search-icon\");\n\t\t\t\tsearchIcon.innerHTML = '';\n\n\t\t\t\tlet searchInput = document.createElement(\"input\");\n\t\t\t\tsearchInput.setAttribute(\"type\", \"search\");\n\t\t\t\tsearchInput.setAttribute(\"placeholder\", \"Search\");\n\t\t\t\tsearchInput.setAttribute(\"id\", \"nav-q\");\n\t\t\t\tsearchInput.setAttribute(\"class\", \"toolbar-search-input\");\n\n\t\t\t\tsearchContainer.appendChild(searchIcon);\n\t\t\t\tsearchContainer.appendChild(searchInput);\n\n\t\t\t\tlet resultContainer = document.createElement(\"ul\");\n\t\t\t\tresultContainer.setAttribute('id', 'toolbar-search-results');\n\n\t\t\t\tlet searchPanel = new SearchPanel(reader);\n\t\t\t\tsearchInput.oninput = async () => {\n\t\t\t\t\tlet query = searchInput.value.trim();\n\t\t\t\t\tif (query.length > 0) {\n\t\t\t\t\t\tlet results = await searchPanel.doSearch(query);\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\n\t\t\t\t\t\tif (results.length === 0) {\n\t\t\t\t\t\t\tlet noResultItem = document.createElement(\"li\");\n\t\t\t\t\t\t\tnoResultItem.innerText = \"Không tìm thấy kết quả trùng khớp\";\n\t\t\t\t\t\t\tnoResultItem.style.color = \"gray\";\n\t\t\t\t\t\t\tnoResultItem.style.padding = \"8px\";\n\t\t\t\t\t\t\tresultContainer.appendChild(noResultItem);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresults.forEach((data) => {\n\t\t\t\t\t\t\tlet item = document.createElement(\"li\");\n\t\t\t\t\t\t\tlet link = document.createElement(\"a\");\n\t\t\t\t\t\t\tlink.href = \"#\" + data.cfi;\n\t\t\t\t\t\t\tlink.textContent = data.excerpt;\n\t\t\t\t\t\t\tlink.onclick = (e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tsearchPanel.reader.rendition.display(data.cfi);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\titem.appendChild(link);\n\t\t\t\t\t\t\tresultContainer.appendChild(item);\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsearchPopup.appendChild(searchContainer);\n\t\t\t\tsearchPopup.appendChild(resultContainer);\n\t\t\t\tsearchBox.dom.appendChild(searchPopup);\n\t\t\t}\n\n\t\t\tlet searchPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tsearchPopup.classList.toggle(\"active\");\n\t\t}\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\n\t}\n\n\tremoveBookmark(cfi) {\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tconst bookmarkPanel = new BookmarksPanel(reader);\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), bookmarkPanel);\n\t\t\treader.bookmarksPanel = bookmarkPanel;\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n toggleBookList();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n function toggleBookList() {\r\n const bookList = [\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 1 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 2 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 3 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 4 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 5 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 6 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 7 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 8 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 9 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 10 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 11 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 12 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 13 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 14 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 15 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 16 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 17 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 18 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 19 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 20 },\r\n ];\r\n\r\n let existingModal = document.getElementById('book-list-modal');\r\n if (!existingModal) {\r\n let modal = document.createElement('div');\r\n modal.setAttribute('id', 'book-list-modal');\r\n modal.setAttribute('class', 'book-modal');\r\n\r\n let modalContent = document.createElement('div');\r\n modalContent.setAttribute('class', 'book-modal-content');\r\n\r\n let bookGrid = document.createElement('div');\r\n bookGrid.setAttribute('class', 'book-grid');\r\n bookList.forEach((book) => {\r\n let bookItem = document.createElement('div');\r\n bookItem.setAttribute('class', 'book-item');\r\n bookItem.innerHTML = `\r\n
\r\n

${book.title}

\r\n

${book.author}

\r\n
\r\n
${book.page}
\r\n `;\r\n bookGrid.appendChild(bookItem);\r\n });\r\n\r\n modalContent.appendChild(bookGrid);\r\n modal.appendChild(modalContent);\r\n\r\n container.dom.appendChild(modal);\r\n }\r\n\r\n let modal = document.getElementById('book-list-modal');\r\n modal.classList.toggle(\"active\");\r\n }\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/dist/js/epubreader.min.js b/dist/js/epubreader.min.js index 942eb0f..59f0ed3 100644 --- a/dist/js/epubreader.min.js +++ b/dist/js/epubreader.min.js @@ -1,2 +1,2 @@ -var e={263:(e,t,s)=>{var a=s(175),n=s(873),o=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,n,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),n=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,n=!1),c={value:t,configurable:s,enumerable:n,writable:d},l?o(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?n(t)?a(s)?n(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?o(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),n=s(134),o=Math.max;e.exports=function(e,t){var s,i,r,d=o(arguments.length,2);for(e=Object(n(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),n=Object.keys;e.exports=function(e){return n(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),n=Array.prototype.forEach,o=Object.create;e.exports=function(e){var t=o(null);return n.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,n,o,i,r,d,l,c=s(263),h=s(499),u=Function.prototype.apply,m=Function.prototype.call,b=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,k={configurable:!0,enumerable:!1,writable:!0};n=function(e,t){var s,n;return h(t),n=this,a.call(this,e,s=function(){o.call(n,e,s),u.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=k.value=b(null),g(this,"__ee__",k),k.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:n,off:o=function(e,t){var s,a,n,o;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(o=0;n=a[o];++o)n!==t&&n.__eeOnceListener__!==t||(2===a.length?s[e]=a[o?0:1]:a.splice(o,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,n,o;if(f.call(this,"__ee__")&&(n=this.__ee__[e]))if("object"==typeof n){for(s=arguments.length,o=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),n={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(n,typeof e)}},873:(e,t,s)=>{var a=s(80),n=/^\s*class[\s{/}]/,o=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!n.test(o.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var n=t[a];if(void 0!==n)return n.exports;var o=t[a]={exports:{}};return e[a](o,o.exports,s),o.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>V});var n=s(68);const o=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let n;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":n=t[a]?e[a]:t[a];break;default:n=t[a]}else n="arrows"===a?t[a]:void 0===o(s,a)?e[a]:t[a];return n},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],o(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add","status/fullscreen":"Fullscreen","status/":""},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter","status/fullscreen":"","status/":""},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加","status/fullscreen":"","status/":""},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить","status/fullscreen":"","status/":""},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???","status/fullscreen":"Toàn màn hình","status/":""}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class u{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class y extends u{constructor(e,t,s,a,n){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=n||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends b{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new m).setClass("tab-selector"),this.menuDiv=(new b).setClass("menu"),this.tabsDiv=(new b).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new b).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new I(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const n=new b;n.setId(e),n.add(s),this.panels.push(n),this.panelsDiv.add(n),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class I extends b{constructor(e,t){super(),this.button=new x("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class S extends u{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends u{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new b).setId("item-box");for(let s=0;s{const e=n.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new S,t.add(this.items),this.add([new E(n),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new k("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class B{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("toolbar"),n=["toolbar/sidebar","toolbar/prev","toolbar/next","toolbar/openbook","toolbar/openbook/error","toolbar/bookmark","toolbar/fullscreen","toolbar/background","toolbar/search","toolbar/close"],o=(new b).setClass("menu-1"),i=(new b).setId("btn-m").setClass("box"),r=new x("button");let d,l,c,h;r.dom.title=t.get(n[0]),r.dom.onclick=t=>{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),o.add(i),"toolbar"===s.arrows&&(d=(new b).setId("btn-p").setClass("box"),l=new x("button"),l.setTitle(t.get(n[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),o.add(d),c=(new b).setId("btn-n").setClass("box"),h=new x("button"),h.dom.title=t.get(n[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),o.add(c));const u=(new b).setId("btn-logo").setClass("logo"),g=(new k).setId("logo-link").setHref("#").setTextContent("LOGO");let p,v,y,C,I,S;function T(){let t=document.getElementById("toolbar-bookmarks-list");if(!t)return;t.innerHTML="";let s=document.createElement("h3");s.textContent="Bookmarks của tui",t.appendChild(s),e.settings.bookmarks.forEach(((s,a)=>{let n=document.createElement("li"),o=document.createElement("a"),i=document.createElement("span");o.href="#",o.textContent=`Bookmark ${a+1}`,o.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((e=>{e.classList.remove("active")})),o.classList.add("active"),e.rendition.display(s)},i.innerHTML='',i.onclick=t=>{t.stopPropagation(),e.removeBookmarkFromToolbar(s)},n.appendChild(o),n.appendChild(i),t.appendChild(n)}))}u.add(g),o.add(u),p=(new b).setId("btn-t").setClass("box"),v=new x("button"),v.dom.onclick=t=>{t.stopPropagation(),e.book.loaded.navigation.then((t=>{!function(t){if(!document.getElementById("toolbar-toc-list")){let s=document.createElement("ul");s.setAttribute("id","toolbar-toc-list");let a=document.createElement("h3");a.textContent="Mục lục",s.appendChild(a),t.forEach((t=>{let a=document.createElement("li"),n=document.createElement("a");n.href="#",n.textContent=t.label,n.onclick=s=>{s.preventDefault(),document.querySelectorAll("#toolbar-toc-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(t.href)},a.appendChild(n),s.appendChild(a)})),p.dom.appendChild(s)}document.getElementById("toolbar-toc-list").classList.toggle("active")}(t)}))},p.add(v),o.add(p),y=(new b).setId("btn-d").setClass("box"),C=new x("button"),C.dom.onclick=e=>{e.stopPropagation(),function(){let e=document.getElementById("toolbar-bookmarks-list");e||(e=document.createElement("ul"),e.setAttribute("id","toolbar-bookmarks-list"),N.dom.appendChild(e)),T(),e.classList.toggle("active")}()},y.add(C),o.add(y),e.on("bookmarked",((e,t)=>{T()})),e.removeBookmarkFromToolbar=function(t){let s=document.getElementById("toolbar-bookmarks-list");if(!s)return;let a=s.querySelectorAll("li"),n=Array.from(a).find((e=>e.querySelector("a").textContent.includes(t)));n&&n.remove();const o=e.settings.bookmarks.indexOf(t);-1!==o&&e.settings.bookmarks.splice(o,1),e.emit("bookmarked",!1,t),e.bookmarksPanel.removeBookmark(t)},I=(new b).setId("btn-a").setClass("box"),S=new x("button"),S.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-annotations-list")){let t=document.createElement("ul");t.setAttribute("id","toolbar-annotations-list");let s=document.createElement("h3");s.textContent="Highlights & Ghi chú",t.appendChild(s),e.settings.annotations.forEach((s=>{let a=document.createElement("li"),n=document.createElement("a"),o=document.createElement("span");n.href="#",n.textContent=s.text,n.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-annotations-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(s.cfi)},o.innerHTML='',o.onclick=t=>{t.stopPropagation(),e.removeNoteFromToolbar(s)},a.appendChild(n),a.appendChild(o),t.appendChild(a)})),I.dom.appendChild(t)}document.getElementById("toolbar-annotations-list").classList.toggle("active")}()},I.add(S),o.add(I),e.removeNoteFromToolbar=function(t){let s=document.getElementById("toolbar-annotations-list");if(!s)return;let a=s.querySelectorAll("li"),n=Array.from(a).find((e=>{e.querySelector("a").textContent,t.text}));n&&n.remove();const o=e.annotationsPanel;o&&(o.removeNote(t),o.update());const i=e.settings.annotations.findIndex((e=>e.cfi===t.cfi));-1!==i&&e.settings.annotations.splice(i,1),e.rendition.annotations.remove(t.cfi,"highlight")};const E=(new b).setClass("menu-center"),B=(new f).setClass("toolbar-center-label");B.setTextContent("Determined");const L=(new b).setClass("page-map"),A=(new m).setClass("current-page-index").setTextContent("1"),z=(new w).setTextContent(" của "),O=(new m).setClass("total-pages").setTextContent("200");L.add(A),L.add(z),L.add(O),E.add(B),E.add(L);const _=(new b).setClass("menu-2");let F,P;s.background&&(F=(new b).setId("btn-bg").setClass("box"),P=new x("color").setClass("color-picker"),P.dom.title=t.get(n[7]),P.dom.oninput=t=>{const s=t.target.value;e.emit("colorchanged",s)},F.add(P),_.add(F));let M,j,V,N,R,q,H,U,G=(new f).setClass("font-size-px").setTextContent("Fontsize (px):"),K=(new b).setId("btn-fontsize").setClass("box"),$=new x("button").setClass("btn-font-decrease"),W=new x("button").setClass("btn-font-increase"),J=new x("text").setClass("input-font-size"),X=s.fontSize||16;if(J.dom.value=X,$.dom.textContent="-",$.dom.onclick=()=>{X=Math.max(8,X-1),J.dom.value=X,e.emit("styleschanged",{fontSize:X})},W.dom.textContent="+",W.dom.onclick=()=>{X=Math.min(72,X+1),J.dom.value=X,e.emit("styleschanged",{fontSize:X})},J.dom.onchange=()=>{let t=parseInt(J.dom.value,10);!isNaN(t)&&t>=8&&t<=72?(X=t,e.emit("styleschanged",{fontSize:X})):J.dom.value=X},K.add(G),K.add($),K.add(J),K.add(W),_.add(K),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},o=(new b).setId("btn-o").setClass("box");M=new x("file"),M.dom.title=t.get(n[3]),M.dom.accept="application/epub+zip",M.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(n[4]))},M.dom.onclick=e=>{M.dom.blur()},o.add(M),_.add(o)}if(j=(new b).setId("btn-s").setClass("box"),V=new x("button"),V.setTitle(t.get(n[8])),V.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-search-list")){let t=document.createElement("div");t.setAttribute("id","toolbar-search-list"),t.classList.add("search-popup");let s=document.createElement("div");s.classList.add("search-container");let a=document.createElement("span");a.classList.add("search-icon"),a.innerHTML='';let n=document.createElement("input");n.setAttribute("type","search"),n.setAttribute("placeholder","Search"),n.setAttribute("id","nav-q"),n.setAttribute("class","toolbar-search-input"),s.appendChild(a),s.appendChild(n);let o=document.createElement("ul");o.setAttribute("id","toolbar-search-results");let i=new D(e);n.oninput=async()=>{let e=n.value.trim();if(e.length>0){let t=await i.doSearch(e);if(o.innerHTML="",0===t.length){let e=document.createElement("li");e.innerText="Không tìm thấy kết quả trùng khớp",e.style.color="gray",e.style.padding="8px",o.appendChild(e)}t.forEach((e=>{let t=document.createElement("li"),s=document.createElement("a");s.href="#"+e.cfi,s.textContent=e.excerpt,s.onclick=t=>{t.preventDefault(),i.reader.rendition.display(e.cfi)},t.appendChild(s),o.appendChild(t)}))}else o.innerHTML=""},t.appendChild(s),t.appendChild(o),j.dom.appendChild(t)}document.getElementById("toolbar-search-list").classList.toggle("active")}()},j.add(V),_.add(j),s.bookmarks&&(N=(new b).setId("btn-b").setClass("box"),R=new x("button"),R.setTitle(t.get(n[5])),R.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),R.dom.blur()},N.add(R),_.add(N)),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");q=new x("button"),q.setTitle(t.get(n[6])),q.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(q),_.add(e)}a.add([o,E,_]),document.body.appendChild(a.dom),H=(new b).setId("btn-close").setClass("box"),U=new x("button").setClass("active"),U.setTitle(t.get(n[9])),H.add(U),_.add(H),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?N.removeClass("bookmarked"):N.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?N.addClass("bookmarked"):N.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(n[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(n[1])),h.setTitle(t.get(n[2]))),s.openbook&&M.setTitle(t.get(n[3])),s.bookmarks&&R.setTitle(t.get(n[5])),s.fullscreen&&q.setTitle(t.get(n[6])),s.background&&backgroundBtn.setTitle(t.get(n[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class L{constructor(e){const t=e.settings,s=(new b).setId("content");let a;if("content"===t.arrows){a=(new b).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()};const t=new m;t.dom.innerHTML='',a.add(t),s.add(a)}const n=(new b).setId("viewer");let o;if(s.add(n),e.on("colorchanged",(e=>{n.dom.style.backgroundColor=e})),"content"===t.arrows){o=(new b).setId("next").setClass("arrow"),o.dom.onclick=t=>{e.emit("next"),t.preventDefault()};const t=new m;t.dom.innerHTML='',o.add(t),s.add(o)}const i=(new b).setId("loader"),r=(new b).setId("divider"),d=(new b).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{n.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{n.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?o.addClass("disabled"):o.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(o.addClass("active"),setTimeout((()=>{o.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{n.clear()}))}}class A extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/contents"],n=new w(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new E(n).addClass("header")),e.on("navigation",(e=>{t.clear(),t.add(this.generateToc(e)),this.add(t)})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new S(t);return e.forEach((e=>{const t=new k(e.href,e.label),a=new T(s).setId(e.id),n=new m;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([n,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);n.setClass("toggle-collapsed"),n.dom.onclick=()=>(t.expanded?(t.collaps(),n.setClass("toggle-collapsed")):(t.expand(),n.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class z extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],n=new w(s.get(a[0])).setClass("label"),o=new x("button",s.get(a[1]));o.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new E([n,o]).addClass("header")),this.selector=void 0,this.bookmarks=new S,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{o.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0])),o.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new k,s=new T,a=(new m).setClass("btn-remove"),n=this.reader.navItemFromCfi(e);let o,i;if(void 0===n){const t=this.reader.book.spine.get(e);o=t.idref,i=t.idref}else o=n.id,i=n.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(o),this.bookmarks.add(s)}}class O extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],n=new w(s.get(a[0])).setClass("label"),o=new x("button",s.get(a[1]));o.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new E([n,o]).addClass("header")),this.selector=void 0,this.notes=new S,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{o.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{n.setValue(s.get(a[0])),o.setValue(s.get(a[1]))}))}set(e){const t=new k("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new m).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update();const n=document.getElementById("toolbar-annotations-list");if(n){const t=document.createElement("li"),s=document.createElement("a");s.href="#",s.textContent=e.text,s.onclick=t=>{t.preventDefault(),this.reader.rendition.display(e.cfi)},t.appendChild(s);const a=document.createElement("span");a.innerHTML='',a.onclick=t=>{t.stopPropagation(),this.reader.removeNoteFromToolbar(e)},t.appendChild(a),n.appendChild(t)}}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);if(-1===t)return;this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update();const s=document.getElementById("toolbar-annotations-list");s&&s.querySelectorAll("li").forEach((t=>{t.querySelector("a").textContent===e.text&&t.remove()}))}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class _ extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new w(t.get(s[0])).setClass("label");this.add(new E(a).addClass("header"));const n=new f(t.get(s[1]),"language-ui"),o=new g,i=(new v).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),o.add(n),o.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new y(16,1);l.dom.onchange=t=>{const s=parseInt(t.target.value);s>=8&&s<=72&&e.emit("styleschanged",{fontSize:s})},l.setId("fontsize"),d.add(r),d.add(l),l.dom.disabled=!0;const c=new f(t.get(s[3]),"flow"),h=new g,u=(new v).setOptions({paginated:"Paginated",scrolled:"Scrolled"});u.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},u.setId("flow"),h.add(c),h.add(u);const m=new y(800,1),b=new f(t.get(s[4]),"spread"),p=new g,k=(new v).setOptions({none:"None",auto:"Auto"});k.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),m.dom.disabled="none"===t.target.value},k.setId("spread"),p.add(b),p.add(k);const C=new f(t.get(s[5]),"min-spread-width"),I=new g;m.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},m.setId("min-spread-width"),I.add(C),I.add(m);const S=t.get("sidebar/settings/pagination"),T=new g,D=new x("checkbox",!1,S[1]);D.setId("pagination"),D.dom.onclick=e=>{},T.add(new f(S[0],"pagination")),T.add(D),this.add(new E([o,d,h,p,I])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),u.setValue(e.flow),k.setValue(e.spread.mod),m.setValue(e.spread.min),m.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(k.setValue("none"),k.dom.disabled=!0,m.dom.disabled=!0):k.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),n.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),b.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class F extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a={},n="sidebar/metadata",o=new w(s.get(n)).setClass("label");this.add(new E(o).addClass("header")),a[n]=o,this.items=new S,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const o=new T,i=(new w).setClass("label"),r=(new w).setClass("value");i.setValue(s.get(n+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[n+"/"+e]=i,o.add([i,r]),this.items.add(o)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===n?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class P{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],n=new C("vertical").setId("sidebar"),o=(new b).setId("btn-p").addClass("box"),i=new x("button");if(i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},o.add(i),n.addMenu(o),n.addTab("btn-t",t.get(a[1]),new A(e)),s.bookmarks){const s=new z(e);n.addTab("btn-d",t.get(a[2]),s),e.bookmarksPanel=s}if(s.annotations){const s=new O(e);n.addTab("btn-a",t.get(a[3]),s),e.annotationsPanel=s}n.addTab("btn-s",t.get(a[4]),new D(e)),n.addTab("btn-c",t.get(a[5]),new _(e)),n.addTab("btn-i",t.get(a[6]),new F(e)),n.select("btn-t"),document.body.appendChild(n.dom),e.on("sidebaropener",(e=>{e?n.setClass("open"):n.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),n.setLabel("btn-t",t.get(a[1])),s.bookmarks&&n.setLabel("btn-d",t.get(a[2])),s.annotations&&n.setLabel("btn-a",t.get(a[3])),n.setLabel("btn-s",t.get(a[4])),n.setLabel("btn-c",t.get(a[5])),n.setLabel("btn-i",t.get(a[6]))}))}}class M{constructor(e){const t=(new b).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],n=new f(s.get(a[0]),"note-input"),o=new x("text","").setId("note-input");o.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new x("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:o.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&o.getValue().length>0)},t.add(new E([n,o,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),o.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{n.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class j{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("status-bar"),n=["status/fullscreen","status/apprec"],o=(new b).setClass("status-title"),i=(new b).setClass("status-action");let r,d=(new f).setClass("status-text").setTextContent("Trang cuối của chương");o.add(d);const l=(new b).setId("btn-ar").setClass("box");let c;if(r=new x("button"),r.setTitle(t.get(n[1])),r.dom.onclick=e=>{e.preventDefault()},l.add(r),i.add(l),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");c=new x("button"),c.setTitle(t.get(n[0])),c.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{document.fullscreenElement?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(c),i.add(e)}e.on("languagechanged",(e=>{s.fullscreen&&c.setTitle(t.get(n[0]))})),a.add([o,i]),document.body.appendChild(a.dom)}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class V{constructor(e,t){const s=s=>{const a=new URL(window.location);let n=e;t&&!t.openbook?(n=e,s&&this.storage.clear()):s&&0===a.search.length&&(n=s),this.cfgInit(n,t),this.strings=new c(this),this.toolbar=new B(this),this.content=new L(this),this.status=new j(this),this.sidebar=new P(this),this.settings.annotations&&(this.notedlg=new M(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("navigation",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"px")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:16},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=1,this.emit("styleschanged",{fontSize:t});break;case"-":t-=1,this.emit("styleschanged",{fontSize:t});break;case"0":t=16,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}n(V.prototype);var N=a.Reader;export{N as Reader}; +var e={263:(e,t,s)=>{var a=s(175),o=s(873),n=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,o,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),o=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,o=!1),c={value:t,configurable:s,enumerable:o,writable:d},l?n(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?o(t)?a(s)?o(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?n(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),o=s(134),n=Math.max;e.exports=function(e,t){var s,i,r,d=n(arguments.length,2);for(e=Object(o(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),o=Object.keys;e.exports=function(e){return o(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),o=Array.prototype.forEach,n=Object.create;e.exports=function(e){var t=n(null);return o.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,o,n,i,r,d,l,c=s(263),h=s(499),m=Function.prototype.apply,u=Function.prototype.call,b=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,k={configurable:!0,enumerable:!1,writable:!0};o=function(e,t){var s,o;return h(t),o=this,a.call(this,e,s=function(){n.call(o,e,s),m.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=k.value=b(null),g(this,"__ee__",k),k.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:o,off:n=function(e,t){var s,a,o,n;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(n=0;o=a[n];++n)o!==t&&o.__eeOnceListener__!==t||(2===a.length?s[e]=a[n?0:1]:a.splice(n,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,o,n;if(f.call(this,"__ee__")&&(o=this.__ee__[e]))if("object"==typeof o){for(s=arguments.length,n=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),o={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(o,typeof e)}},873:(e,t,s)=>{var a=s(80),o=/^\s*class[\s{/}]/,n=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!o.test(n.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var o=t[a];if(void 0!==o)return o.exports;var n=t[a]={exports:{}};return e[a](n,n.exports,s),n.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>j});var o=s(68);const n=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let o;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":o=t[a]?e[a]:t[a];break;default:o=t[a]}else o="arrows"===a?t[a]:void 0===n(s,a)?e[a]:t[a];return o},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],n(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add","status/fullscreen":"Fullscreen","status/":""},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter","status/fullscreen":"","status/":""},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加","status/fullscreen":"","status/":""},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить","status/fullscreen":"","status/":""},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???","status/fullscreen":"Toàn màn hình","status/":""}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class m{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class x extends m{constructor(e,t,s,a,o){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=o||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends b{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new u).setClass("tab-selector"),this.menuDiv=(new b).setClass("menu"),this.tabsDiv=(new b).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new b).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new S(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const o=new b;o.setId(e),o.add(s),this.panels.push(o),this.panelsDiv.add(o),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class S extends b{constructor(e,t){super(),this.button=new y("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class I extends m{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends m{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new b).setId("item-box");for(let s=0;s{const e=o.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new I,t.add(this.items),this.add([new D(o),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new k("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class M{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("toolbar"),o=["toolbar/sidebar","toolbar/prev","toolbar/next","toolbar/openbook","toolbar/openbook/error","toolbar/bookmark","toolbar/fullscreen","toolbar/background","toolbar/search","toolbar/close"],n=(new b).setClass("menu-1"),i=(new b).setId("btn-m").setClass("box"),r=new y("button");let d,l,c,h;r.dom.title=t.get(o[0]),r.dom.onclick=t=>{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),n.add(i),"toolbar"===s.arrows&&(d=(new b).setId("btn-p").setClass("box"),l=new y("button"),l.setTitle(t.get(o[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),n.add(d),c=(new b).setId("btn-n").setClass("box"),h=new y("button"),h.dom.title=t.get(o[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),n.add(c));const m=(new b).setId("btn-logo").setClass("logo"),g=(new k).setId("logo-link").setHref("#").setTextContent("LOGO");let p,v,x,C,S,I;function T(){let t=document.getElementById("toolbar-bookmarks-list");if(!t)return;t.innerHTML="";let s=document.createElement("h3");s.textContent="Bookmarks của tui",t.appendChild(s),e.settings.bookmarks.forEach(((s,a)=>{let o=document.createElement("li"),n=document.createElement("a"),i=document.createElement("span");n.href="#",n.textContent=`Bookmark ${a+1}`,n.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(s)},i.innerHTML='',i.onclick=t=>{t.stopPropagation(),e.removeBookmarkFromToolbar(s)},o.appendChild(n),o.appendChild(i),t.appendChild(o)}))}m.add(g),n.add(m),p=(new b).setId("btn-t").setClass("box"),v=new y("button"),v.dom.onclick=t=>{t.stopPropagation(),e.book.loaded.navigation.then((t=>{!function(t){if(!document.getElementById("toolbar-toc-list")){let s=document.createElement("ul");s.setAttribute("id","toolbar-toc-list");let a=document.createElement("h3");a.textContent="Mục lục",s.appendChild(a),t.forEach((t=>{let a=document.createElement("li"),o=document.createElement("a");o.href="#",o.textContent=t.label,o.onclick=s=>{s.preventDefault(),document.querySelectorAll("#toolbar-toc-list li a").forEach((e=>{e.classList.remove("active")})),o.classList.add("active"),e.rendition.display(t.href)},a.appendChild(o),s.appendChild(a)})),p.dom.appendChild(s)}document.getElementById("toolbar-toc-list").classList.toggle("active")}(t)}))},p.add(v),n.add(p),x=(new b).setId("btn-d").setClass("box"),C=new y("button"),C.dom.onclick=e=>{e.stopPropagation(),function(){let e=document.getElementById("toolbar-bookmarks-list");e||(e=document.createElement("ul"),e.setAttribute("id","toolbar-bookmarks-list"),V.dom.appendChild(e)),T(),e.classList.toggle("active")}()},x.add(C),n.add(x),e.on("bookmarked",((e,t)=>{T()})),e.removeBookmarkFromToolbar=function(t){let s=document.getElementById("toolbar-bookmarks-list");if(!s)return;let a=s.querySelectorAll("li"),o=Array.from(a).find((e=>e.querySelector("a").textContent.includes(t)));o&&o.remove();const n=e.settings.bookmarks.indexOf(t);-1!==n&&e.settings.bookmarks.splice(n,1),e.emit("bookmarked",!1,t),e.bookmarksPanel.removeBookmark(t)},S=(new b).setId("btn-a").setClass("box"),I=new y("button"),I.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-annotations-list")){let t=document.createElement("ul");t.setAttribute("id","toolbar-annotations-list");let s=document.createElement("h3");s.textContent="Highlights & Ghi chú",t.appendChild(s),e.settings.annotations.forEach((s=>{let a=document.createElement("li"),o=document.createElement("a"),n=document.createElement("span");o.href="#",o.textContent=s.text,o.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-annotations-list li a").forEach((e=>{e.classList.remove("active")})),o.classList.add("active"),e.rendition.display(s.cfi)},n.innerHTML='',n.onclick=t=>{t.stopPropagation(),e.removeNoteFromToolbar(s)},a.appendChild(o),a.appendChild(n),t.appendChild(a)})),S.dom.appendChild(t)}document.getElementById("toolbar-annotations-list").classList.toggle("active")}()},S.add(I),n.add(S),e.removeNoteFromToolbar=function(t){let s=document.getElementById("toolbar-annotations-list");if(!s)return;let a=s.querySelectorAll("li"),o=Array.from(a).find((e=>{e.querySelector("a").textContent,t.text}));o&&o.remove();const n=e.annotationsPanel;n&&(n.removeNote(t),n.update());const i=e.settings.annotations.findIndex((e=>e.cfi===t.cfi));-1!==i&&e.settings.annotations.splice(i,1),e.rendition.annotations.remove(t.cfi,"highlight")};const D=(new b).setClass("menu-center"),M=(new f).setClass("toolbar-center-label");M.setTextContent("Determined");const A=(new b).setClass("page-map"),B=(new u).setClass("current-page-index").setTextContent("1"),L=(new w).setTextContent(" của "),z=(new u).setClass("total-pages").setTextContent("200");A.add(B),A.add(L),A.add(z),D.add(M),D.add(A);const O=(new b).setClass("menu-2");let _,R;s.background&&(_=(new b).setId("btn-bg").setClass("box"),R=new y("color").setClass("color-picker"),R.dom.title=t.get(o[7]),R.dom.oninput=t=>{const s=t.target.value;e.emit("colorchanged",s)},_.add(R),O.add(_));let F,P,j,V,N,H,q,$,U=(new f).setClass("font-size-px").setTextContent("Fontsize (px):"),G=(new b).setId("btn-fontsize").setClass("box"),K=new y("button").setClass("btn-font-decrease"),W=new y("button").setClass("btn-font-increase"),J=new y("text").setClass("input-font-size"),X=s.fontSize||16;if(J.dom.value=X,K.dom.textContent="-",K.dom.onclick=()=>{X=Math.max(8,X-1),J.dom.value=X,e.emit("styleschanged",{fontSize:X})},W.dom.textContent="+",W.dom.onclick=()=>{X=Math.min(72,X+1),J.dom.value=X,e.emit("styleschanged",{fontSize:X})},J.dom.onchange=()=>{let t=parseInt(J.dom.value,10);!isNaN(t)&&t>=8&&t<=72?(X=t,e.emit("styleschanged",{fontSize:X})):J.dom.value=X},G.add(U),G.add(K),G.add(J),G.add(W),O.add(G),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},n=(new b).setId("btn-o").setClass("box");F=new y("file"),F.dom.title=t.get(o[3]),F.dom.accept="application/epub+zip",F.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(o[4]))},F.dom.onclick=e=>{F.dom.blur()},n.add(F),O.add(n)}if(P=(new b).setId("btn-s").setClass("box"),j=new y("button"),j.setTitle(t.get(o[8])),j.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-search-list")){let t=document.createElement("div");t.setAttribute("id","toolbar-search-list"),t.classList.add("search-popup");let s=document.createElement("div");s.classList.add("search-container");let a=document.createElement("span");a.classList.add("search-icon"),a.innerHTML='';let o=document.createElement("input");o.setAttribute("type","search"),o.setAttribute("placeholder","Search"),o.setAttribute("id","nav-q"),o.setAttribute("class","toolbar-search-input"),s.appendChild(a),s.appendChild(o);let n=document.createElement("ul");n.setAttribute("id","toolbar-search-results");let i=new E(e);o.oninput=async()=>{let e=o.value.trim();if(e.length>0){let t=await i.doSearch(e);if(n.innerHTML="",0===t.length){let e=document.createElement("li");e.innerText="Không tìm thấy kết quả trùng khớp",e.style.color="gray",e.style.padding="8px",n.appendChild(e)}t.forEach((e=>{let t=document.createElement("li"),s=document.createElement("a");s.href="#"+e.cfi,s.textContent=e.excerpt,s.onclick=t=>{t.preventDefault(),i.reader.rendition.display(e.cfi)},t.appendChild(s),n.appendChild(t)}))}else n.innerHTML=""},t.appendChild(s),t.appendChild(n),P.dom.appendChild(t)}document.getElementById("toolbar-search-list").classList.toggle("active")}()},P.add(j),O.add(P),s.bookmarks&&(V=(new b).setId("btn-b").setClass("box"),N=new y("button"),N.setTitle(t.get(o[5])),N.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),N.dom.blur()},V.add(N),O.add(V)),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");H=new y("button"),H.setTitle(t.get(o[6])),H.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(H),O.add(e)}a.add([n,D,O]),document.body.appendChild(a.dom),q=(new b).setId("btn-close").setClass("box"),$=new y("button").setClass("active"),$.setTitle(t.get(o[9])),q.add($),O.add(q),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?V.removeClass("bookmarked"):V.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?V.addClass("bookmarked"):V.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(o[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(o[1])),h.setTitle(t.get(o[2]))),s.openbook&&F.setTitle(t.get(o[3])),s.bookmarks&&N.setTitle(t.get(o[5])),s.fullscreen&&H.setTitle(t.get(o[6])),s.background&&backgroundBtn.setTitle(t.get(o[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class A{constructor(e){const t=e.settings,s=(new b).setId("content");let a;if("content"===t.arrows){a=(new b).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()};const t=new u;t.dom.innerHTML='',a.add(t),s.add(a)}const o=(new b).setId("viewer");let n;if(s.add(o),e.on("colorchanged",(e=>{o.dom.style.backgroundColor=e})),"content"===t.arrows){n=(new b).setId("next").setClass("arrow"),n.dom.onclick=t=>{e.emit("next"),t.preventDefault()};const t=new u;t.dom.innerHTML='',n.add(t),s.add(n)}const i=(new b).setId("loader"),r=(new b).setId("divider"),d=(new b).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{o.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{o.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?n.addClass("disabled"):n.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(n.addClass("active"),setTimeout((()=>{n.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{o.clear()}))}}class B extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/contents"],o=new w(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new D(o).addClass("header")),e.on("navigation",(e=>{t.clear(),t.add(this.generateToc(e)),this.add(t)})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new I(t);return e.forEach((e=>{const t=new k(e.href,e.label),a=new T(s).setId(e.id),o=new u;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([o,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);o.setClass("toggle-collapsed"),o.dom.onclick=()=>(t.expanded?(t.collaps(),o.setClass("toggle-collapsed")):(t.expand(),o.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class L extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],o=new w(s.get(a[0])).setClass("label"),n=new y("button",s.get(a[1]));n.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.bookmarks=new I,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{n.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new k,s=new T,a=(new u).setClass("btn-remove"),o=this.reader.navItemFromCfi(e);let n,i;if(void 0===o){const t=this.reader.book.spine.get(e);n=t.idref,i=t.idref}else n=o.id,i=o.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(n),this.bookmarks.add(s)}}class z extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],o=new w(s.get(a[0])).setClass("label"),n=new y("button",s.get(a[1]));n.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.notes=new I,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{n.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}set(e){const t=new k("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new u).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update();const o=document.getElementById("toolbar-annotations-list");if(o){const t=document.createElement("li"),s=document.createElement("a");s.href="#",s.textContent=e.text,s.onclick=t=>{t.preventDefault(),this.reader.rendition.display(e.cfi)},t.appendChild(s);const a=document.createElement("span");a.innerHTML='',a.onclick=t=>{t.stopPropagation(),this.reader.removeNoteFromToolbar(e)},t.appendChild(a),o.appendChild(t)}}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);if(-1===t)return;this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update();const s=document.getElementById("toolbar-annotations-list");s&&s.querySelectorAll("li").forEach((t=>{t.querySelector("a").textContent===e.text&&t.remove()}))}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class O extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new w(t.get(s[0])).setClass("label");this.add(new D(a).addClass("header"));const o=new f(t.get(s[1]),"language-ui"),n=new g,i=(new v).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),n.add(o),n.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new x(16,1);l.dom.onchange=t=>{const s=parseInt(t.target.value);s>=8&&s<=72&&e.emit("styleschanged",{fontSize:s})},l.setId("fontsize"),d.add(r),d.add(l),l.dom.disabled=!0;const c=new f(t.get(s[3]),"flow"),h=new g,m=(new v).setOptions({paginated:"Paginated",scrolled:"Scrolled"});m.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},m.setId("flow"),h.add(c),h.add(m);const u=new x(800,1),b=new f(t.get(s[4]),"spread"),p=new g,k=(new v).setOptions({none:"None",auto:"Auto"});k.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),u.dom.disabled="none"===t.target.value},k.setId("spread"),p.add(b),p.add(k);const C=new f(t.get(s[5]),"min-spread-width"),S=new g;u.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},u.setId("min-spread-width"),S.add(C),S.add(u);const I=t.get("sidebar/settings/pagination"),T=new g,E=new y("checkbox",!1,I[1]);E.setId("pagination"),E.dom.onclick=e=>{},T.add(new f(I[0],"pagination")),T.add(E),this.add(new D([n,d,h,p,S])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),m.setValue(e.flow),k.setValue(e.spread.mod),u.setValue(e.spread.min),u.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(k.setValue("none"),k.dom.disabled=!0,u.dom.disabled=!0):k.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),o.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),b.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class _ extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a={},o="sidebar/metadata",n=new w(s.get(o)).setClass("label");this.add(new D(n).addClass("header")),a[o]=n,this.items=new I,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const n=new T,i=(new w).setClass("label"),r=(new w).setClass("value");i.setValue(s.get(o+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[o+"/"+e]=i,n.add([i,r]),this.items.add(n)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===o?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class R{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],o=new C("vertical").setId("sidebar"),n=(new b).setId("btn-p").addClass("box"),i=new y("button");if(i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},n.add(i),o.addMenu(n),o.addTab("btn-t",t.get(a[1]),new B(e)),s.bookmarks){const s=new L(e);o.addTab("btn-d",t.get(a[2]),s),e.bookmarksPanel=s}if(s.annotations){const s=new z(e);o.addTab("btn-a",t.get(a[3]),s),e.annotationsPanel=s}o.addTab("btn-s",t.get(a[4]),new E(e)),o.addTab("btn-c",t.get(a[5]),new O(e)),o.addTab("btn-i",t.get(a[6]),new _(e)),o.select("btn-t"),document.body.appendChild(o.dom),e.on("sidebaropener",(e=>{e?o.setClass("open"):o.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),o.setLabel("btn-t",t.get(a[1])),s.bookmarks&&o.setLabel("btn-d",t.get(a[2])),s.annotations&&o.setLabel("btn-a",t.get(a[3])),o.setLabel("btn-s",t.get(a[4])),o.setLabel("btn-c",t.get(a[5])),o.setLabel("btn-i",t.get(a[6]))}))}}class F{constructor(e){const t=(new b).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],o=new f(s.get(a[0]),"note-input"),n=new y("text","").setId("note-input");n.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new y("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:n.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&n.getValue().length>0)},t.add(new D([o,n,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),n.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{o.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class P{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("status-bar"),o=["status/fullscreen","status/apprec"],n=(new b).setClass("status-title"),i=(new b).setClass("status-action");let r,d=(new f).setClass("status-text").setTextContent("Trang cuối của chương");n.add(d);const l=(new b).setId("btn-ar").setClass("box");let c;if(r=new y("button"),r.setTitle(t.get(o[1])),r.dom.onclick=e=>{e.preventDefault(),function(){const e=[{title:"Determined",author:"Robert M. Sapolsky",page:1},{title:"Determined",author:"Robert M. Sapolsky",page:2},{title:"Determined",author:"Robert M. Sapolsky",page:3},{title:"Determined",author:"Robert M. Sapolsky",page:4},{title:"Determined",author:"Robert M. Sapolsky",page:5},{title:"Determined",author:"Robert M. Sapolsky",page:6},{title:"Determined",author:"Robert M. Sapolsky",page:7},{title:"Determined",author:"Robert M. Sapolsky",page:8},{title:"Determined",author:"Robert M. Sapolsky",page:9},{title:"Determined",author:"Robert M. Sapolsky",page:10},{title:"Determined",author:"Robert M. Sapolsky",page:11},{title:"Determined",author:"Robert M. Sapolsky",page:12},{title:"Determined",author:"Robert M. Sapolsky",page:13},{title:"Determined",author:"Robert M. Sapolsky",page:14},{title:"Determined",author:"Robert M. Sapolsky",page:15},{title:"Determined",author:"Robert M. Sapolsky",page:16},{title:"Determined",author:"Robert M. Sapolsky",page:17},{title:"Determined",author:"Robert M. Sapolsky",page:18},{title:"Determined",author:"Robert M. Sapolsky",page:19},{title:"Determined",author:"Robert M. Sapolsky",page:20}];if(!document.getElementById("book-list-modal")){let t=document.createElement("div");t.setAttribute("id","book-list-modal"),t.setAttribute("class","book-modal");let s=document.createElement("div");s.setAttribute("class","book-modal-content");let o=document.createElement("div");o.setAttribute("class","book-grid"),e.forEach((e=>{let t=document.createElement("div");t.setAttribute("class","book-item"),t.innerHTML=`\n
\n

${e.title}

\n

${e.author}

\n
\n
${e.page}
\n `,o.appendChild(t)})),s.appendChild(o),t.appendChild(s),a.dom.appendChild(t)}document.getElementById("book-list-modal").classList.toggle("active")}()},l.add(r),i.add(l),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");c=new y("button"),c.setTitle(t.get(o[0])),c.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{document.fullscreenElement?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(c),i.add(e)}e.on("languagechanged",(e=>{s.fullscreen&&c.setTitle(t.get(o[0]))})),a.add([n,i]),document.body.appendChild(a.dom)}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class j{constructor(e,t){const s=s=>{const a=new URL(window.location);let o=e;t&&!t.openbook?(o=e,s&&this.storage.clear()):s&&0===a.search.length&&(o=s),this.cfgInit(o,t),this.strings=new c(this),this.toolbar=new M(this),this.content=new A(this),this.status=new P(this),this.sidebar=new R(this),this.settings.annotations&&(this.notedlg=new F(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("navigation",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"px")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:16},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=1,this.emit("styleschanged",{fontSize:t});break;case"-":t-=1,this.emit("styleschanged",{fontSize:t});break;case"0":t=16,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}o(j.prototype);var V=a.Reader;export{V as Reader}; //# sourceMappingURL=epubreader.min.js.map \ No newline at end of file diff --git a/dist/js/epubreader.min.js.map b/dist/js/epubreader.min.js.map index f815ebd..4c4256c 100644 --- a/dist/js/epubreader.min.js.map +++ b/dist/js/epubreader.min.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.min.js","mappings":"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","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (!existingToc) {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) {\n\t\t\t\tbookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tupdateBookmarksList();\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tupdateBookmarksList();\n\t\t})\n\n\t\tfunction updateBookmarksList() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tbookmarksList.innerHTML = \"\";\n\n\t\t\tlet title = document.createElement(\"h3\");\n\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\t\t\tbookmarksList.appendChild(title);\n\n\t\t\treader.settings.bookmarks.forEach((cfi, index) => {\n\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\tbookmarkLink.textContent = `Bookmark ${index + 1}`;\n\n\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t});\n\n\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t};\n\n\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t};\n\n\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t})\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t\treader.bookmarksPanel.removeBookmark(cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\n\t\tsearchBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowSearchPopup();\n\t\t}\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\t\tfunction showSearchPopup() {\n\t\t\tlet existingPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tif (!existingPopup) {\n\t\t\t\tlet searchPopup = document.createElement(\"div\");\n\t\t\t\tsearchPopup.setAttribute(\"id\", \"toolbar-search-list\");\n\t\t\t\tsearchPopup.classList.add(\"search-popup\");\n\n\t\t\t\tlet searchContainer = document.createElement(\"div\");\n\t\t\t\tsearchContainer.classList.add(\"search-container\");\n\n\t\t\t\tlet searchIcon = document.createElement(\"span\");\n\t\t\t\tsearchIcon.classList.add(\"search-icon\");\n\t\t\t\tsearchIcon.innerHTML = '';\n\n\t\t\t\tlet searchInput = document.createElement(\"input\");\n\t\t\t\tsearchInput.setAttribute(\"type\", \"search\");\n\t\t\t\tsearchInput.setAttribute(\"placeholder\", \"Search\");\n\t\t\t\tsearchInput.setAttribute(\"id\", \"nav-q\");\n\t\t\t\tsearchInput.setAttribute(\"class\", \"toolbar-search-input\");\n\n\t\t\t\tsearchContainer.appendChild(searchIcon);\n\t\t\t\tsearchContainer.appendChild(searchInput);\n\n\t\t\t\tlet resultContainer = document.createElement(\"ul\");\n\t\t\t\tresultContainer.setAttribute('id', 'toolbar-search-results');\n\n\t\t\t\tlet searchPanel = new SearchPanel(reader);\n\t\t\t\tsearchInput.oninput = async () => {\n\t\t\t\t\tlet query = searchInput.value.trim();\n\t\t\t\t\tif (query.length > 0) {\n\t\t\t\t\t\tlet results = await searchPanel.doSearch(query);\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\n\t\t\t\t\t\tif (results.length === 0) {\n\t\t\t\t\t\t\tlet noResultItem = document.createElement(\"li\");\n\t\t\t\t\t\t\tnoResultItem.innerText = \"Không tìm thấy kết quả trùng khớp\";\n\t\t\t\t\t\t\tnoResultItem.style.color = \"gray\";\n\t\t\t\t\t\t\tnoResultItem.style.padding = \"8px\";\n\t\t\t\t\t\t\tresultContainer.appendChild(noResultItem);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresults.forEach((data) => {\n\t\t\t\t\t\t\tlet item = document.createElement(\"li\");\n\t\t\t\t\t\t\tlet link = document.createElement(\"a\");\n\t\t\t\t\t\t\tlink.href = \"#\" + data.cfi;\n\t\t\t\t\t\t\tlink.textContent = data.excerpt;\n\t\t\t\t\t\t\tlink.onclick = (e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tsearchPanel.reader.rendition.display(data.cfi);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\titem.appendChild(link);\n\t\t\t\t\t\t\tresultContainer.appendChild(item);\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsearchPopup.appendChild(searchContainer);\n\t\t\t\tsearchPopup.appendChild(resultContainer);\n\t\t\t\tsearchBox.dom.appendChild(searchPopup);\n\t\t\t}\n\n\t\t\tlet searchPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tsearchPopup.classList.toggle(\"active\");\n\t\t}\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\n\t}\n\n\tremoveBookmark(cfi) {\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tconst bookmarkPanel = new BookmarksPanel(reader);\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), bookmarkPanel);\n\t\t\treader.bookmarksPanel = bookmarkPanel;\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","SearchPanel","container","strings","searchQuery","search","placeholder","onsearch","doSearch","then","results","book","Promise","all","spine","spineItems","map","item","load","bind","find","finally","unload","resolve","concat","link","cfi","excerpt","rendition","Toolbar","menu1","openerBox","openerBtn","prevBox","prevBtn","nextBox","nextBtn","blur","arrows","logoBox","logoLink","tocBox","tocBtn","bookmarksBox","bookmarksBtn","annotationsBox","annotationsBtn","updateBookmarksList","bookmarksList","getElementById","innerHTML","bookmarks","index","bookmarkItem","bookmarkLink","deleteBtn","querySelectorAll","removeBookmarkFromToolbar","loaded","navigation","toc","tocList","setAttribute","tocTitle","chapter","tocItem","tocLink","toggle","showToc","bookmarkBox","showBookmarks","bookmarkItems","targetItem","from","querySelector","includes","bookmarksPanel","removeBookmark","annotationsList","annotations","note","noteItem","noteLink","removeNoteFromToolbar","showAnnotations","noteItems","annotationsPanel","removeNote","update","findIndex","n","centerPageCount","centerLabel","curOfTotal","curPageIndex","separator","totalPage","menu2","backgroundBox","colorPicker","background","oninput","selectedColor","openbookBtn","searchBox","searchBtn","bookmarkBtn","fullscreenBtn","closeBox","closeBtn","fontLabel","fontSizeBox","decreaseFontBtn","increaseFontBtn","fontSizeInput","fontSize","newSize","parseInt","isNaN","openbook","onload","storage","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","searchPopup","searchContainer","searchIcon","searchInput","resultContainer","searchPanel","async","query","trim","noResultItem","innerText","color","padding","showSearchPopup","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","body","start","atStart","atEnd","backgroundBtn","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","iconLeft","viewer","next","backgroundColor","iconRight","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","generateToc","list","ibtn","sectionId","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","disabled","renderer","setBookmark","appendBookmark","_cfi","btnr","navItem","navItemFromCfi","idref","spineItem","AnnotationsPanel","clearNotes","notes","toolbarList","toolbarNoteItem","toolbarNoteLink","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","Sidebar","controls","bookmarkPanel","annotationPanel","NoteDlg","textBox","addBtn","date","range","contents","Status","leftText","rightAction","appRecBtn","appRecBox","Reader","bookPath","preinit","path","cfgInit","toolbar","content","status","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","metadata","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.min.js","mappings":"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","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (!existingToc) {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) {\n\t\t\t\tbookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tupdateBookmarksList();\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tupdateBookmarksList();\n\t\t})\n\n\t\tfunction updateBookmarksList() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tbookmarksList.innerHTML = \"\";\n\n\t\t\tlet title = document.createElement(\"h3\");\n\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\t\t\tbookmarksList.appendChild(title);\n\n\t\t\treader.settings.bookmarks.forEach((cfi, index) => {\n\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\tbookmarkLink.textContent = `Bookmark ${index + 1}`;\n\n\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t});\n\n\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t};\n\n\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t};\n\n\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t})\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t\treader.bookmarksPanel.removeBookmark(cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\n\t\tsearchBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowSearchPopup();\n\t\t}\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\t\tfunction showSearchPopup() {\n\t\t\tlet existingPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tif (!existingPopup) {\n\t\t\t\tlet searchPopup = document.createElement(\"div\");\n\t\t\t\tsearchPopup.setAttribute(\"id\", \"toolbar-search-list\");\n\t\t\t\tsearchPopup.classList.add(\"search-popup\");\n\n\t\t\t\tlet searchContainer = document.createElement(\"div\");\n\t\t\t\tsearchContainer.classList.add(\"search-container\");\n\n\t\t\t\tlet searchIcon = document.createElement(\"span\");\n\t\t\t\tsearchIcon.classList.add(\"search-icon\");\n\t\t\t\tsearchIcon.innerHTML = '';\n\n\t\t\t\tlet searchInput = document.createElement(\"input\");\n\t\t\t\tsearchInput.setAttribute(\"type\", \"search\");\n\t\t\t\tsearchInput.setAttribute(\"placeholder\", \"Search\");\n\t\t\t\tsearchInput.setAttribute(\"id\", \"nav-q\");\n\t\t\t\tsearchInput.setAttribute(\"class\", \"toolbar-search-input\");\n\n\t\t\t\tsearchContainer.appendChild(searchIcon);\n\t\t\t\tsearchContainer.appendChild(searchInput);\n\n\t\t\t\tlet resultContainer = document.createElement(\"ul\");\n\t\t\t\tresultContainer.setAttribute('id', 'toolbar-search-results');\n\n\t\t\t\tlet searchPanel = new SearchPanel(reader);\n\t\t\t\tsearchInput.oninput = async () => {\n\t\t\t\t\tlet query = searchInput.value.trim();\n\t\t\t\t\tif (query.length > 0) {\n\t\t\t\t\t\tlet results = await searchPanel.doSearch(query);\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\n\t\t\t\t\t\tif (results.length === 0) {\n\t\t\t\t\t\t\tlet noResultItem = document.createElement(\"li\");\n\t\t\t\t\t\t\tnoResultItem.innerText = \"Không tìm thấy kết quả trùng khớp\";\n\t\t\t\t\t\t\tnoResultItem.style.color = \"gray\";\n\t\t\t\t\t\t\tnoResultItem.style.padding = \"8px\";\n\t\t\t\t\t\t\tresultContainer.appendChild(noResultItem);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresults.forEach((data) => {\n\t\t\t\t\t\t\tlet item = document.createElement(\"li\");\n\t\t\t\t\t\t\tlet link = document.createElement(\"a\");\n\t\t\t\t\t\t\tlink.href = \"#\" + data.cfi;\n\t\t\t\t\t\t\tlink.textContent = data.excerpt;\n\t\t\t\t\t\t\tlink.onclick = (e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tsearchPanel.reader.rendition.display(data.cfi);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\titem.appendChild(link);\n\t\t\t\t\t\t\tresultContainer.appendChild(item);\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsearchPopup.appendChild(searchContainer);\n\t\t\t\tsearchPopup.appendChild(resultContainer);\n\t\t\t\tsearchBox.dom.appendChild(searchPopup);\n\t\t\t}\n\n\t\t\tlet searchPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tsearchPopup.classList.toggle(\"active\");\n\t\t}\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\n\t}\n\n\tremoveBookmark(cfi) {\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tconst bookmarkPanel = new BookmarksPanel(reader);\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), bookmarkPanel);\n\t\t\treader.bookmarksPanel = bookmarkPanel;\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n toggleBookList();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n function toggleBookList() {\r\n const bookList = [\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 1 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 2 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 3 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 4 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 5 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 6 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 7 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 8 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 9 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 10 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 11 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 12 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 13 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 14 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 15 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 16 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 17 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 18 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 19 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 20 },\r\n ];\r\n\r\n let existingModal = document.getElementById('book-list-modal');\r\n if (!existingModal) {\r\n let modal = document.createElement('div');\r\n modal.setAttribute('id', 'book-list-modal');\r\n modal.setAttribute('class', 'book-modal');\r\n\r\n let modalContent = document.createElement('div');\r\n modalContent.setAttribute('class', 'book-modal-content');\r\n\r\n let bookGrid = document.createElement('div');\r\n bookGrid.setAttribute('class', 'book-grid');\r\n bookList.forEach((book) => {\r\n let bookItem = document.createElement('div');\r\n bookItem.setAttribute('class', 'book-item');\r\n bookItem.innerHTML = `\r\n
\r\n

${book.title}

\r\n

${book.author}

\r\n
\r\n
${book.page}
\r\n `;\r\n bookGrid.appendChild(bookItem);\r\n });\r\n\r\n modalContent.appendChild(bookGrid);\r\n modal.appendChild(modalContent);\r\n\r\n container.dom.appendChild(modal);\r\n }\r\n\r\n let modal = document.getElementById('book-list-modal');\r\n modal.classList.toggle(\"active\");\r\n }\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","SearchPanel","container","strings","searchQuery","search","placeholder","onsearch","doSearch","then","results","book","Promise","all","spine","spineItems","map","item","load","bind","find","finally","unload","resolve","concat","link","cfi","excerpt","rendition","Toolbar","menu1","openerBox","openerBtn","prevBox","prevBtn","nextBox","nextBtn","blur","arrows","logoBox","logoLink","tocBox","tocBtn","bookmarksBox","bookmarksBtn","annotationsBox","annotationsBtn","updateBookmarksList","bookmarksList","getElementById","innerHTML","bookmarks","index","bookmarkItem","bookmarkLink","deleteBtn","querySelectorAll","removeBookmarkFromToolbar","loaded","navigation","toc","tocList","setAttribute","tocTitle","chapter","tocItem","tocLink","toggle","showToc","bookmarkBox","showBookmarks","bookmarkItems","targetItem","from","querySelector","includes","bookmarksPanel","removeBookmark","annotationsList","annotations","note","noteItem","noteLink","removeNoteFromToolbar","showAnnotations","noteItems","annotationsPanel","removeNote","update","findIndex","n","centerPageCount","centerLabel","curOfTotal","curPageIndex","separator","totalPage","menu2","backgroundBox","colorPicker","background","oninput","selectedColor","openbookBtn","searchBox","searchBtn","bookmarkBtn","fullscreenBtn","closeBox","closeBtn","fontLabel","fontSizeBox","decreaseFontBtn","increaseFontBtn","fontSizeInput","fontSize","newSize","parseInt","isNaN","openbook","onload","storage","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","searchPopup","searchContainer","searchIcon","searchInput","resultContainer","searchPanel","async","query","trim","noResultItem","innerText","color","padding","showSearchPopup","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","body","start","atStart","atEnd","backgroundBtn","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","iconLeft","viewer","next","backgroundColor","iconRight","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","generateToc","list","ibtn","sectionId","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","disabled","renderer","setBookmark","appendBookmark","_cfi","btnr","navItem","navItemFromCfi","idref","spineItem","AnnotationsPanel","clearNotes","notes","toolbarList","toolbarNoteItem","toolbarNoteLink","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","Sidebar","controls","bookmarkPanel","annotationPanel","NoteDlg","textBox","addBtn","date","range","contents","Status","leftText","rightAction","appRecBtn","appRecBox","bookList","author","page","modal","modalContent","bookGrid","bookItem","toggleBookList","Reader","bookPath","preinit","path","cfgInit","toolbar","content","status","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","metadata","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/js/eventProcess.js b/dist/js/eventProcess.js index a43870e..08af0df 100644 --- a/dist/js/eventProcess.js +++ b/dist/js/eventProcess.js @@ -38,4 +38,18 @@ document.addEventListener("click", (e) => { if (searchPopup && !searchPopup.contains(e.target) && !searchBtn.contains(e.target)) { searchPopup.classList.remove("active"); } +}) + + +// +document.querySelectorAll(".book-item").forEach((item) => { + item.addEventListener("click", () => { + document.querySelectorAll(".book-item").forEach((el) => { + el.classList.remove("clicked"); + el.querySelector(".book-cover").classList.remove("clicked"); + }) + + item.classList.add("clicked"); + item.querySelector(".book-cover").classList.add("clicked"); + }) }) \ No newline at end of file diff --git a/src/status.js b/src/status.js index cc2877e..95220ef 100644 --- a/src/status.js +++ b/src/status.js @@ -24,13 +24,73 @@ export class Status { const appRecBox = new UIDiv().setId("btn-ar").setClass("box"); appRecBtn = new UIInput("button"); appRecBtn.setTitle(strings.get(keys[1])); + appRecBtn.dom.onclick = (e) => { e.preventDefault(); + toggleBookList(); }; appRecBox.add(appRecBtn); rightAction.add(appRecBox); + function toggleBookList() { + const bookList = [ + { title: "Determined", author: "Robert M. Sapolsky", page: 1 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 2 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 3 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 4 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 5 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 6 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 7 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 8 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 9 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 10 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 11 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 12 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 13 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 14 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 15 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 16 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 17 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 18 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 19 }, + { title: "Determined", author: "Robert M. Sapolsky", page: 20 }, + ]; + + let existingModal = document.getElementById('book-list-modal'); + if (!existingModal) { + let modal = document.createElement('div'); + modal.setAttribute('id', 'book-list-modal'); + modal.setAttribute('class', 'book-modal'); + + let modalContent = document.createElement('div'); + modalContent.setAttribute('class', 'book-modal-content'); + + let bookGrid = document.createElement('div'); + bookGrid.setAttribute('class', 'book-grid'); + bookList.forEach((book) => { + let bookItem = document.createElement('div'); + bookItem.setAttribute('class', 'book-item'); + bookItem.innerHTML = ` +
+

${book.title}

+

${book.author}

+
+
${book.page}
+ `; + bookGrid.appendChild(bookItem); + }); + + modalContent.appendChild(bookGrid); + modal.appendChild(modalContent); + + container.dom.appendChild(modal); + } + + let modal = document.getElementById('book-list-modal'); + modal.classList.toggle("active"); + } + // Button Full Screen let fullscreenBtn; From c2dc41a0c1827a8a68dc231f6798bcbcec98551c Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Wed, 26 Feb 2025 20:17:30 +0700 Subject: [PATCH 16/21] add README file --- README.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..a7daca4 --- /dev/null +++ b/README.md @@ -0,0 +1,30 @@ +# EpubReader + + +## About the Reader +The epubreader application is based on the epub.js library and is a fork of the epub-reader repository. + +## Getting Started +Open up epubreader in a browser.
+

You can change the ePub it opens by passing a link to bookPath in the url:

+

?bookPath=https://s3.amazonaws.com/epubjs/books/alice.epub

+ +## Running Locally +Install node.js +

Then install the project dependencies with npm

+ +```sh +npm install +``` + +

Next you need to clone the repository into local with below command

+ +``` +git clone +``` + +

You can run the reader locally with the command

+ +``` + +``` \ No newline at end of file From 4fc4473bd66b4ea9856cd6fcbc340f5781028690 Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Wed, 26 Feb 2025 20:17:40 +0700 Subject: [PATCH 17/21] add demo for epub --- demo-ui.png | Bin 84906 -> 370234 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/demo-ui.png b/demo-ui.png index 479f454a0adbffbaae3839b97bedb30861894d65..47c37771acd7ba36aaf0c40795c650a9ffb23393 100644 GIT binary patch literal 370234 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%0AxSP$|dpm5bD_bMR2&O<5a{FOoaK~~B- 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°ld5Y7rI0JDiYPUZ=Q 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 literal 84906 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 Date: Wed, 26 Feb 2025 20:18:07 +0700 Subject: [PATCH 18/21] update code --- dist/css/toolbar.css | 2 +- dist/js/epubreader.js | 19 ++++++++++++------- dist/js/epubreader.js.map | 2 +- dist/js/epubreader.min.js | 2 +- dist/js/epubreader.min.js.map | 2 +- src/reader.js | 2 +- src/sidebar/toc.js | 13 ++++++++----- src/toolbar.js | 4 +++- 8 files changed, 28 insertions(+), 18 deletions(-) diff --git a/dist/css/toolbar.css b/dist/css/toolbar.css index 004a028..b3085e6 100644 --- a/dist/css/toolbar.css +++ b/dist/css/toolbar.css @@ -69,7 +69,7 @@ /* Hide the import epub file button in menu-2 on toolbar */ .menu-2 #btn-o { - display: none; + /* display: none; */ } diff --git a/dist/js/epubreader.js b/dist/js/epubreader.js index 05d4d75..246d243 100644 --- a/dist/js/epubreader.js +++ b/dist/js/epubreader.js @@ -1974,7 +1974,9 @@ class Toolbar { function showToc(toc) { let existingToc = document.getElementById("toolbar-toc-list"); - if (!existingToc) { + if (existingToc) { + existingToc.remove(); + } else { let tocList = document.createElement("ul"); tocList.setAttribute("id", "toolbar-toc-list"); @@ -2708,11 +2710,14 @@ class TocPanel extends UIPanel { //-- events --// - reader.on("navigation", (toc) => { - - container.clear(); - container.add(this.generateToc(toc)); - this.add(container); + reader.on("bookready", () => { + reader.book.loaded.navigation.then((toc) => { + container.clear(); + container.add(this.generateToc(toc)); + this.add(container); + console.log(toc); + + }) }); reader.on("languagechanged", (value) => { @@ -3720,7 +3725,7 @@ class Reader { }); this.book.loaded.navigation.then((toc) => { - this.emit("navigation", toc); + this.emit("bookready", toc); }); this.rendition.on("click", (e) => { diff --git a/dist/js/epubreader.js.map b/dist/js/epubreader.js.map index 4ebf59b..bfa1754 100644 --- a/dist/js/epubreader.js.map +++ b/dist/js/epubreader.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;AClRA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB;AACO;AACP;AACA;AACA;AACA;;AC/wBkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEoF;AAClC;;AAE3C;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,KAAK;AAC3B,uBAAuB,MAAM;;AAE7B;AACA;;AAEA;AACA;AACA,eAAe,KAAK;AACpB,eAAe,OAAO;;AAEtB;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;;AAE5B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,2CAA2C,UAAU;;AAErD;AACA;;AAEA;AACA;AACA,MAAM;;AAEN;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,uBAAuB,KAAK;AAC5B,uBAAuB,OAAO;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA,8BAA8B,KAAK;;AAEnC,0BAA0B,OAAO;AACjC;;AAEA,yBAAyB,KAAK;AAC9B,2BAA2B,MAAM;AACjC,wBAAwB,MAAM;AAC9B,wBAAwB,MAAM;;AAE9B;AACA;AACA;;AAEA;AACA;;;;AAIA;AACA,oBAAoB,KAAK;AACzB;AACA;AACA;AACA;AACA,uBAAuB,KAAK;AAC5B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA,sBAAsB,OAAO;AAC7B,wBAAwB,KAAK;AAC7B,4BAA4B,OAAO;AACnC,4BAA4B,OAAO;AACnC,0BAA0B,OAAO;;AAEjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,mCAAmC,oBAAoB;AACvD,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,kBAAkB,KAAK;AACvB,kBAAkB,OAAO;AACzB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,0BAA0B,WAAW;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;;;;AAIA;AACA;;;AAGA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;ACrqBwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,wBAAwB,MAAM;AAC9B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,yBAAyB,MAAM;AAC/B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;AC9HyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;ACzFyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACtI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;;AAEA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC5IsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;;AAE/B;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChLyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,6BAA6B,cAAc;AAC3C;AACA;AACA;AACA;AACA,+BAA+B,gBAAgB;AAC/C;AACA;AACA;;AAEA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;ACnFkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEkD;AAClD;AACO;AACP;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,KAAK;AAClC,gCAAgC,KAAK;AACrC;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC,wBAAwB,OAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,WAAW;AAC/D,qDAAqD,YAAY;AACjE;AACA,kDAAkD,UAAU;AAC5D;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,KAAK;AAC3C,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;;ACzJyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;AACF;;AAE9B;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,qBAAqB,MAAM;AAC3B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (!existingToc) {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) {\n\t\t\t\tbookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tupdateBookmarksList();\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tupdateBookmarksList();\n\t\t})\n\n\t\tfunction updateBookmarksList() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tbookmarksList.innerHTML = \"\";\n\n\t\t\tlet title = document.createElement(\"h3\");\n\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\t\t\tbookmarksList.appendChild(title);\n\n\t\t\treader.settings.bookmarks.forEach((cfi, index) => {\n\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\tbookmarkLink.textContent = `Bookmark ${index + 1}`;\n\n\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t});\n\n\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t};\n\n\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t};\n\n\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t})\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t\treader.bookmarksPanel.removeBookmark(cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\n\t\tsearchBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowSearchPopup();\n\t\t}\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\t\tfunction showSearchPopup() {\n\t\t\tlet existingPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tif (!existingPopup) {\n\t\t\t\tlet searchPopup = document.createElement(\"div\");\n\t\t\t\tsearchPopup.setAttribute(\"id\", \"toolbar-search-list\");\n\t\t\t\tsearchPopup.classList.add(\"search-popup\");\n\n\t\t\t\tlet searchContainer = document.createElement(\"div\");\n\t\t\t\tsearchContainer.classList.add(\"search-container\");\n\n\t\t\t\tlet searchIcon = document.createElement(\"span\");\n\t\t\t\tsearchIcon.classList.add(\"search-icon\");\n\t\t\t\tsearchIcon.innerHTML = '';\n\n\t\t\t\tlet searchInput = document.createElement(\"input\");\n\t\t\t\tsearchInput.setAttribute(\"type\", \"search\");\n\t\t\t\tsearchInput.setAttribute(\"placeholder\", \"Search\");\n\t\t\t\tsearchInput.setAttribute(\"id\", \"nav-q\");\n\t\t\t\tsearchInput.setAttribute(\"class\", \"toolbar-search-input\");\n\n\t\t\t\tsearchContainer.appendChild(searchIcon);\n\t\t\t\tsearchContainer.appendChild(searchInput);\n\n\t\t\t\tlet resultContainer = document.createElement(\"ul\");\n\t\t\t\tresultContainer.setAttribute('id', 'toolbar-search-results');\n\n\t\t\t\tlet searchPanel = new SearchPanel(reader);\n\t\t\t\tsearchInput.oninput = async () => {\n\t\t\t\t\tlet query = searchInput.value.trim();\n\t\t\t\t\tif (query.length > 0) {\n\t\t\t\t\t\tlet results = await searchPanel.doSearch(query);\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\n\t\t\t\t\t\tif (results.length === 0) {\n\t\t\t\t\t\t\tlet noResultItem = document.createElement(\"li\");\n\t\t\t\t\t\t\tnoResultItem.innerText = \"Không tìm thấy kết quả trùng khớp\";\n\t\t\t\t\t\t\tnoResultItem.style.color = \"gray\";\n\t\t\t\t\t\t\tnoResultItem.style.padding = \"8px\";\n\t\t\t\t\t\t\tresultContainer.appendChild(noResultItem);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresults.forEach((data) => {\n\t\t\t\t\t\t\tlet item = document.createElement(\"li\");\n\t\t\t\t\t\t\tlet link = document.createElement(\"a\");\n\t\t\t\t\t\t\tlink.href = \"#\" + data.cfi;\n\t\t\t\t\t\t\tlink.textContent = data.excerpt;\n\t\t\t\t\t\t\tlink.onclick = (e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tsearchPanel.reader.rendition.display(data.cfi);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\titem.appendChild(link);\n\t\t\t\t\t\t\tresultContainer.appendChild(item);\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsearchPopup.appendChild(searchContainer);\n\t\t\t\tsearchPopup.appendChild(resultContainer);\n\t\t\t\tsearchBox.dom.appendChild(searchPopup);\n\t\t\t}\n\n\t\t\tlet searchPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tsearchPopup.classList.toggle(\"active\");\n\t\t}\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\n\t}\n\n\tremoveBookmark(cfi) {\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tconst bookmarkPanel = new BookmarksPanel(reader);\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), bookmarkPanel);\n\t\t\treader.bookmarksPanel = bookmarkPanel;\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n toggleBookList();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n function toggleBookList() {\r\n const bookList = [\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 1 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 2 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 3 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 4 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 5 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 6 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 7 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 8 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 9 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 10 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 11 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 12 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 13 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 14 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 15 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 16 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 17 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 18 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 19 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 20 },\r\n ];\r\n\r\n let existingModal = document.getElementById('book-list-modal');\r\n if (!existingModal) {\r\n let modal = document.createElement('div');\r\n modal.setAttribute('id', 'book-list-modal');\r\n modal.setAttribute('class', 'book-modal');\r\n\r\n let modalContent = document.createElement('div');\r\n modalContent.setAttribute('class', 'book-modal-content');\r\n\r\n let bookGrid = document.createElement('div');\r\n bookGrid.setAttribute('class', 'book-grid');\r\n bookList.forEach((book) => {\r\n let bookItem = document.createElement('div');\r\n bookItem.setAttribute('class', 'book-item');\r\n bookItem.innerHTML = `\r\n

\r\n
${book.page}
\r\n `;\r\n bookGrid.appendChild(bookItem);\r\n });\r\n\r\n modalContent.appendChild(bookGrid);\r\n modal.appendChild(modalContent);\r\n\r\n container.dom.appendChild(modal);\r\n }\r\n\r\n let modal = document.getElementById('book-list-modal');\r\n modal.classList.toggle(\"active\");\r\n }\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;AClRA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB;AACO;AACP;AACA;AACA;AACA;;AC/wBkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEoF;AAClC;;AAE3C;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,KAAK;AAC3B,uBAAuB,MAAM;;AAE7B;AACA;;AAEA;AACA;AACA,eAAe,KAAK;AACpB,eAAe,OAAO;;AAEtB;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;;AAE5B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,2CAA2C,UAAU;;AAErD;AACA;;AAEA;AACA;AACA,MAAM;;AAEN;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,uBAAuB,KAAK;AAC5B,uBAAuB,OAAO;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA,8BAA8B,KAAK;;AAEnC,0BAA0B,OAAO;AACjC;;AAEA,yBAAyB,KAAK;AAC9B,2BAA2B,MAAM;AACjC,wBAAwB,MAAM;AAC9B,wBAAwB,MAAM;;AAE9B;AACA;AACA;;AAEA;AACA;;;;AAIA;AACA,oBAAoB,KAAK;AACzB;AACA;AACA;AACA;AACA,uBAAuB,KAAK;AAC5B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA,sBAAsB,OAAO;AAC7B,wBAAwB,KAAK;AAC7B,4BAA4B,OAAO;AACnC,4BAA4B,OAAO;AACnC,0BAA0B,OAAO;;AAEjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,mCAAmC,oBAAoB;AACvD,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,kBAAkB,KAAK;AACvB,kBAAkB,OAAO;AACzB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,0BAA0B,WAAW;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;;;;AAIA;AACA;;;AAGA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;ACvqBwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,wBAAwB,MAAM;AAC9B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,yBAAyB,MAAM;AAC/B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;AC9HyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;AC5FyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACtI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;;AAEA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC5IsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;;AAE/B;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChLyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,6BAA6B,cAAc;AAC3C;AACA;AACA;AACA;AACA,+BAA+B,gBAAgB;AAC/C;AACA;AACA;;AAEA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;ACnFkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEkD;AAClD;AACO;AACP;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,KAAK;AAClC,gCAAgC,KAAK;AACrC;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC,wBAAwB,OAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,WAAW;AAC/D,qDAAqD,YAAY;AACjE;AACA,kDAAkD,UAAU;AAC5D;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,KAAK;AAC3C,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;;ACzJyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;AACF;;AAE9B;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,qBAAqB,MAAM;AAC3B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (existingToc) {\n\t\t\t\texistingToc.remove();\n\t\t\t} else {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) {\n\t\t\t\tbookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tupdateBookmarksList();\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tupdateBookmarksList();\n\t\t})\n\n\t\tfunction updateBookmarksList() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tbookmarksList.innerHTML = \"\";\n\n\t\t\tlet title = document.createElement(\"h3\");\n\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\t\t\tbookmarksList.appendChild(title);\n\n\t\t\treader.settings.bookmarks.forEach((cfi, index) => {\n\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\tbookmarkLink.textContent = `Bookmark ${index + 1}`;\n\n\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t});\n\n\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t};\n\n\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t};\n\n\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t})\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t\treader.bookmarksPanel.removeBookmark(cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\n\t\tsearchBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowSearchPopup();\n\t\t}\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\t\tfunction showSearchPopup() {\n\t\t\tlet existingPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tif (!existingPopup) {\n\t\t\t\tlet searchPopup = document.createElement(\"div\");\n\t\t\t\tsearchPopup.setAttribute(\"id\", \"toolbar-search-list\");\n\t\t\t\tsearchPopup.classList.add(\"search-popup\");\n\n\t\t\t\tlet searchContainer = document.createElement(\"div\");\n\t\t\t\tsearchContainer.classList.add(\"search-container\");\n\n\t\t\t\tlet searchIcon = document.createElement(\"span\");\n\t\t\t\tsearchIcon.classList.add(\"search-icon\");\n\t\t\t\tsearchIcon.innerHTML = '';\n\n\t\t\t\tlet searchInput = document.createElement(\"input\");\n\t\t\t\tsearchInput.setAttribute(\"type\", \"search\");\n\t\t\t\tsearchInput.setAttribute(\"placeholder\", \"Search\");\n\t\t\t\tsearchInput.setAttribute(\"id\", \"nav-q\");\n\t\t\t\tsearchInput.setAttribute(\"class\", \"toolbar-search-input\");\n\n\t\t\t\tsearchContainer.appendChild(searchIcon);\n\t\t\t\tsearchContainer.appendChild(searchInput);\n\n\t\t\t\tlet resultContainer = document.createElement(\"ul\");\n\t\t\t\tresultContainer.setAttribute('id', 'toolbar-search-results');\n\n\t\t\t\tlet searchPanel = new SearchPanel(reader);\n\t\t\t\tsearchInput.oninput = async () => {\n\t\t\t\t\tlet query = searchInput.value.trim();\n\t\t\t\t\tif (query.length > 0) {\n\t\t\t\t\t\tlet results = await searchPanel.doSearch(query);\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\n\t\t\t\t\t\tif (results.length === 0) {\n\t\t\t\t\t\t\tlet noResultItem = document.createElement(\"li\");\n\t\t\t\t\t\t\tnoResultItem.innerText = \"Không tìm thấy kết quả trùng khớp\";\n\t\t\t\t\t\t\tnoResultItem.style.color = \"gray\";\n\t\t\t\t\t\t\tnoResultItem.style.padding = \"8px\";\n\t\t\t\t\t\t\tresultContainer.appendChild(noResultItem);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresults.forEach((data) => {\n\t\t\t\t\t\t\tlet item = document.createElement(\"li\");\n\t\t\t\t\t\t\tlet link = document.createElement(\"a\");\n\t\t\t\t\t\t\tlink.href = \"#\" + data.cfi;\n\t\t\t\t\t\t\tlink.textContent = data.excerpt;\n\t\t\t\t\t\t\tlink.onclick = (e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tsearchPanel.reader.rendition.display(data.cfi);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\titem.appendChild(link);\n\t\t\t\t\t\t\tresultContainer.appendChild(item);\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsearchPopup.appendChild(searchContainer);\n\t\t\t\tsearchPopup.appendChild(resultContainer);\n\t\t\t\tsearchBox.dom.appendChild(searchPopup);\n\t\t\t}\n\n\t\t\tlet searchPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tsearchPopup.classList.toggle(\"active\");\n\t\t}\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", () => {\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tcontainer.clear();\n\t\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\t\tthis.add(container);\n\t\t\t\tconsole.log(toc);\n\t\t\t\t\n\t\t\t})\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\n\t}\n\n\tremoveBookmark(cfi) {\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tconst bookmarkPanel = new BookmarksPanel(reader);\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), bookmarkPanel);\n\t\t\treader.bookmarksPanel = bookmarkPanel;\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n toggleBookList();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n function toggleBookList() {\r\n const bookList = [\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 1 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 2 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 3 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 4 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 5 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 6 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 7 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 8 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 9 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 10 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 11 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 12 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 13 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 14 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 15 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 16 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 17 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 18 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 19 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 20 },\r\n ];\r\n\r\n let existingModal = document.getElementById('book-list-modal');\r\n if (!existingModal) {\r\n let modal = document.createElement('div');\r\n modal.setAttribute('id', 'book-list-modal');\r\n modal.setAttribute('class', 'book-modal');\r\n\r\n let modalContent = document.createElement('div');\r\n modalContent.setAttribute('class', 'book-modal-content');\r\n\r\n let bookGrid = document.createElement('div');\r\n bookGrid.setAttribute('class', 'book-grid');\r\n bookList.forEach((book) => {\r\n let bookItem = document.createElement('div');\r\n bookItem.setAttribute('class', 'book-item');\r\n bookItem.innerHTML = `\r\n
\r\n

${book.title}

\r\n

${book.author}

\r\n
\r\n
${book.page}
\r\n `;\r\n bookGrid.appendChild(bookItem);\r\n });\r\n\r\n modalContent.appendChild(bookGrid);\r\n modal.appendChild(modalContent);\r\n\r\n container.dom.appendChild(modal);\r\n }\r\n\r\n let modal = document.getElementById('book-list-modal');\r\n modal.classList.toggle(\"active\");\r\n }\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"bookready\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/dist/js/epubreader.min.js b/dist/js/epubreader.min.js index 59f0ed3..8fb7df1 100644 --- a/dist/js/epubreader.min.js +++ b/dist/js/epubreader.min.js @@ -1,2 +1,2 @@ -var e={263:(e,t,s)=>{var a=s(175),o=s(873),n=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,o,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),o=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,o=!1),c={value:t,configurable:s,enumerable:o,writable:d},l?n(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?o(t)?a(s)?o(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?n(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),o=s(134),n=Math.max;e.exports=function(e,t){var s,i,r,d=n(arguments.length,2);for(e=Object(o(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),o=Object.keys;e.exports=function(e){return o(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),o=Array.prototype.forEach,n=Object.create;e.exports=function(e){var t=n(null);return o.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,o,n,i,r,d,l,c=s(263),h=s(499),m=Function.prototype.apply,u=Function.prototype.call,b=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,k={configurable:!0,enumerable:!1,writable:!0};o=function(e,t){var s,o;return h(t),o=this,a.call(this,e,s=function(){n.call(o,e,s),m.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=k.value=b(null),g(this,"__ee__",k),k.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:o,off:n=function(e,t){var s,a,o,n;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(n=0;o=a[n];++n)o!==t&&o.__eeOnceListener__!==t||(2===a.length?s[e]=a[n?0:1]:a.splice(n,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,o,n;if(f.call(this,"__ee__")&&(o=this.__ee__[e]))if("object"==typeof o){for(s=arguments.length,n=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),o={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(o,typeof e)}},873:(e,t,s)=>{var a=s(80),o=/^\s*class[\s{/}]/,n=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!o.test(n.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var o=t[a];if(void 0!==o)return o.exports;var n=t[a]={exports:{}};return e[a](n,n.exports,s),n.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>j});var o=s(68);const n=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let o;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":o=t[a]?e[a]:t[a];break;default:o=t[a]}else o="arrows"===a?t[a]:void 0===n(s,a)?e[a]:t[a];return o},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],n(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add","status/fullscreen":"Fullscreen","status/":""},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter","status/fullscreen":"","status/":""},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加","status/fullscreen":"","status/":""},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить","status/fullscreen":"","status/":""},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???","status/fullscreen":"Toàn màn hình","status/":""}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class m{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class x extends m{constructor(e,t,s,a,o){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=o||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends b{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new u).setClass("tab-selector"),this.menuDiv=(new b).setClass("menu"),this.tabsDiv=(new b).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new b).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new S(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const o=new b;o.setId(e),o.add(s),this.panels.push(o),this.panelsDiv.add(o),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class S extends b{constructor(e,t){super(),this.button=new y("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class I extends m{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends m{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new b).setId("item-box");for(let s=0;s{const e=o.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new I,t.add(this.items),this.add([new D(o),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new k("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class M{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("toolbar"),o=["toolbar/sidebar","toolbar/prev","toolbar/next","toolbar/openbook","toolbar/openbook/error","toolbar/bookmark","toolbar/fullscreen","toolbar/background","toolbar/search","toolbar/close"],n=(new b).setClass("menu-1"),i=(new b).setId("btn-m").setClass("box"),r=new y("button");let d,l,c,h;r.dom.title=t.get(o[0]),r.dom.onclick=t=>{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),n.add(i),"toolbar"===s.arrows&&(d=(new b).setId("btn-p").setClass("box"),l=new y("button"),l.setTitle(t.get(o[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),n.add(d),c=(new b).setId("btn-n").setClass("box"),h=new y("button"),h.dom.title=t.get(o[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),n.add(c));const m=(new b).setId("btn-logo").setClass("logo"),g=(new k).setId("logo-link").setHref("#").setTextContent("LOGO");let p,v,x,C,S,I;function T(){let t=document.getElementById("toolbar-bookmarks-list");if(!t)return;t.innerHTML="";let s=document.createElement("h3");s.textContent="Bookmarks của tui",t.appendChild(s),e.settings.bookmarks.forEach(((s,a)=>{let o=document.createElement("li"),n=document.createElement("a"),i=document.createElement("span");n.href="#",n.textContent=`Bookmark ${a+1}`,n.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(s)},i.innerHTML='',i.onclick=t=>{t.stopPropagation(),e.removeBookmarkFromToolbar(s)},o.appendChild(n),o.appendChild(i),t.appendChild(o)}))}m.add(g),n.add(m),p=(new b).setId("btn-t").setClass("box"),v=new y("button"),v.dom.onclick=t=>{t.stopPropagation(),e.book.loaded.navigation.then((t=>{!function(t){if(!document.getElementById("toolbar-toc-list")){let s=document.createElement("ul");s.setAttribute("id","toolbar-toc-list");let a=document.createElement("h3");a.textContent="Mục lục",s.appendChild(a),t.forEach((t=>{let a=document.createElement("li"),o=document.createElement("a");o.href="#",o.textContent=t.label,o.onclick=s=>{s.preventDefault(),document.querySelectorAll("#toolbar-toc-list li a").forEach((e=>{e.classList.remove("active")})),o.classList.add("active"),e.rendition.display(t.href)},a.appendChild(o),s.appendChild(a)})),p.dom.appendChild(s)}document.getElementById("toolbar-toc-list").classList.toggle("active")}(t)}))},p.add(v),n.add(p),x=(new b).setId("btn-d").setClass("box"),C=new y("button"),C.dom.onclick=e=>{e.stopPropagation(),function(){let e=document.getElementById("toolbar-bookmarks-list");e||(e=document.createElement("ul"),e.setAttribute("id","toolbar-bookmarks-list"),V.dom.appendChild(e)),T(),e.classList.toggle("active")}()},x.add(C),n.add(x),e.on("bookmarked",((e,t)=>{T()})),e.removeBookmarkFromToolbar=function(t){let s=document.getElementById("toolbar-bookmarks-list");if(!s)return;let a=s.querySelectorAll("li"),o=Array.from(a).find((e=>e.querySelector("a").textContent.includes(t)));o&&o.remove();const n=e.settings.bookmarks.indexOf(t);-1!==n&&e.settings.bookmarks.splice(n,1),e.emit("bookmarked",!1,t),e.bookmarksPanel.removeBookmark(t)},S=(new b).setId("btn-a").setClass("box"),I=new y("button"),I.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-annotations-list")){let t=document.createElement("ul");t.setAttribute("id","toolbar-annotations-list");let s=document.createElement("h3");s.textContent="Highlights & Ghi chú",t.appendChild(s),e.settings.annotations.forEach((s=>{let a=document.createElement("li"),o=document.createElement("a"),n=document.createElement("span");o.href="#",o.textContent=s.text,o.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-annotations-list li a").forEach((e=>{e.classList.remove("active")})),o.classList.add("active"),e.rendition.display(s.cfi)},n.innerHTML='',n.onclick=t=>{t.stopPropagation(),e.removeNoteFromToolbar(s)},a.appendChild(o),a.appendChild(n),t.appendChild(a)})),S.dom.appendChild(t)}document.getElementById("toolbar-annotations-list").classList.toggle("active")}()},S.add(I),n.add(S),e.removeNoteFromToolbar=function(t){let s=document.getElementById("toolbar-annotations-list");if(!s)return;let a=s.querySelectorAll("li"),o=Array.from(a).find((e=>{e.querySelector("a").textContent,t.text}));o&&o.remove();const n=e.annotationsPanel;n&&(n.removeNote(t),n.update());const i=e.settings.annotations.findIndex((e=>e.cfi===t.cfi));-1!==i&&e.settings.annotations.splice(i,1),e.rendition.annotations.remove(t.cfi,"highlight")};const D=(new b).setClass("menu-center"),M=(new f).setClass("toolbar-center-label");M.setTextContent("Determined");const A=(new b).setClass("page-map"),B=(new u).setClass("current-page-index").setTextContent("1"),L=(new w).setTextContent(" của "),z=(new u).setClass("total-pages").setTextContent("200");A.add(B),A.add(L),A.add(z),D.add(M),D.add(A);const O=(new b).setClass("menu-2");let _,R;s.background&&(_=(new b).setId("btn-bg").setClass("box"),R=new y("color").setClass("color-picker"),R.dom.title=t.get(o[7]),R.dom.oninput=t=>{const s=t.target.value;e.emit("colorchanged",s)},_.add(R),O.add(_));let F,P,j,V,N,H,q,$,U=(new f).setClass("font-size-px").setTextContent("Fontsize (px):"),G=(new b).setId("btn-fontsize").setClass("box"),K=new y("button").setClass("btn-font-decrease"),W=new y("button").setClass("btn-font-increase"),J=new y("text").setClass("input-font-size"),X=s.fontSize||16;if(J.dom.value=X,K.dom.textContent="-",K.dom.onclick=()=>{X=Math.max(8,X-1),J.dom.value=X,e.emit("styleschanged",{fontSize:X})},W.dom.textContent="+",W.dom.onclick=()=>{X=Math.min(72,X+1),J.dom.value=X,e.emit("styleschanged",{fontSize:X})},J.dom.onchange=()=>{let t=parseInt(J.dom.value,10);!isNaN(t)&&t>=8&&t<=72?(X=t,e.emit("styleschanged",{fontSize:X})):J.dom.value=X},G.add(U),G.add(K),G.add(J),G.add(W),O.add(G),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},n=(new b).setId("btn-o").setClass("box");F=new y("file"),F.dom.title=t.get(o[3]),F.dom.accept="application/epub+zip",F.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(o[4]))},F.dom.onclick=e=>{F.dom.blur()},n.add(F),O.add(n)}if(P=(new b).setId("btn-s").setClass("box"),j=new y("button"),j.setTitle(t.get(o[8])),j.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-search-list")){let t=document.createElement("div");t.setAttribute("id","toolbar-search-list"),t.classList.add("search-popup");let s=document.createElement("div");s.classList.add("search-container");let a=document.createElement("span");a.classList.add("search-icon"),a.innerHTML='';let o=document.createElement("input");o.setAttribute("type","search"),o.setAttribute("placeholder","Search"),o.setAttribute("id","nav-q"),o.setAttribute("class","toolbar-search-input"),s.appendChild(a),s.appendChild(o);let n=document.createElement("ul");n.setAttribute("id","toolbar-search-results");let i=new E(e);o.oninput=async()=>{let e=o.value.trim();if(e.length>0){let t=await i.doSearch(e);if(n.innerHTML="",0===t.length){let e=document.createElement("li");e.innerText="Không tìm thấy kết quả trùng khớp",e.style.color="gray",e.style.padding="8px",n.appendChild(e)}t.forEach((e=>{let t=document.createElement("li"),s=document.createElement("a");s.href="#"+e.cfi,s.textContent=e.excerpt,s.onclick=t=>{t.preventDefault(),i.reader.rendition.display(e.cfi)},t.appendChild(s),n.appendChild(t)}))}else n.innerHTML=""},t.appendChild(s),t.appendChild(n),P.dom.appendChild(t)}document.getElementById("toolbar-search-list").classList.toggle("active")}()},P.add(j),O.add(P),s.bookmarks&&(V=(new b).setId("btn-b").setClass("box"),N=new y("button"),N.setTitle(t.get(o[5])),N.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),N.dom.blur()},V.add(N),O.add(V)),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");H=new y("button"),H.setTitle(t.get(o[6])),H.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(H),O.add(e)}a.add([n,D,O]),document.body.appendChild(a.dom),q=(new b).setId("btn-close").setClass("box"),$=new y("button").setClass("active"),$.setTitle(t.get(o[9])),q.add($),O.add(q),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?V.removeClass("bookmarked"):V.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?V.addClass("bookmarked"):V.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(o[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(o[1])),h.setTitle(t.get(o[2]))),s.openbook&&F.setTitle(t.get(o[3])),s.bookmarks&&N.setTitle(t.get(o[5])),s.fullscreen&&H.setTitle(t.get(o[6])),s.background&&backgroundBtn.setTitle(t.get(o[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class A{constructor(e){const t=e.settings,s=(new b).setId("content");let a;if("content"===t.arrows){a=(new b).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()};const t=new u;t.dom.innerHTML='',a.add(t),s.add(a)}const o=(new b).setId("viewer");let n;if(s.add(o),e.on("colorchanged",(e=>{o.dom.style.backgroundColor=e})),"content"===t.arrows){n=(new b).setId("next").setClass("arrow"),n.dom.onclick=t=>{e.emit("next"),t.preventDefault()};const t=new u;t.dom.innerHTML='',n.add(t),s.add(n)}const i=(new b).setId("loader"),r=(new b).setId("divider"),d=(new b).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{o.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{o.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?n.addClass("disabled"):n.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(n.addClass("active"),setTimeout((()=>{n.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{o.clear()}))}}class B extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/contents"],o=new w(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new D(o).addClass("header")),e.on("navigation",(e=>{t.clear(),t.add(this.generateToc(e)),this.add(t)})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new I(t);return e.forEach((e=>{const t=new k(e.href,e.label),a=new T(s).setId(e.id),o=new u;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([o,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);o.setClass("toggle-collapsed"),o.dom.onclick=()=>(t.expanded?(t.collaps(),o.setClass("toggle-collapsed")):(t.expand(),o.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class L extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],o=new w(s.get(a[0])).setClass("label"),n=new y("button",s.get(a[1]));n.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.bookmarks=new I,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{n.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new k,s=new T,a=(new u).setClass("btn-remove"),o=this.reader.navItemFromCfi(e);let n,i;if(void 0===o){const t=this.reader.book.spine.get(e);n=t.idref,i=t.idref}else n=o.id,i=o.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(n),this.bookmarks.add(s)}}class z extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],o=new w(s.get(a[0])).setClass("label"),n=new y("button",s.get(a[1]));n.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.notes=new I,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{n.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}set(e){const t=new k("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new u).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update();const o=document.getElementById("toolbar-annotations-list");if(o){const t=document.createElement("li"),s=document.createElement("a");s.href="#",s.textContent=e.text,s.onclick=t=>{t.preventDefault(),this.reader.rendition.display(e.cfi)},t.appendChild(s);const a=document.createElement("span");a.innerHTML='',a.onclick=t=>{t.stopPropagation(),this.reader.removeNoteFromToolbar(e)},t.appendChild(a),o.appendChild(t)}}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);if(-1===t)return;this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update();const s=document.getElementById("toolbar-annotations-list");s&&s.querySelectorAll("li").forEach((t=>{t.querySelector("a").textContent===e.text&&t.remove()}))}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class O extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new w(t.get(s[0])).setClass("label");this.add(new D(a).addClass("header"));const o=new f(t.get(s[1]),"language-ui"),n=new g,i=(new v).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),n.add(o),n.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new x(16,1);l.dom.onchange=t=>{const s=parseInt(t.target.value);s>=8&&s<=72&&e.emit("styleschanged",{fontSize:s})},l.setId("fontsize"),d.add(r),d.add(l),l.dom.disabled=!0;const c=new f(t.get(s[3]),"flow"),h=new g,m=(new v).setOptions({paginated:"Paginated",scrolled:"Scrolled"});m.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},m.setId("flow"),h.add(c),h.add(m);const u=new x(800,1),b=new f(t.get(s[4]),"spread"),p=new g,k=(new v).setOptions({none:"None",auto:"Auto"});k.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),u.dom.disabled="none"===t.target.value},k.setId("spread"),p.add(b),p.add(k);const C=new f(t.get(s[5]),"min-spread-width"),S=new g;u.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},u.setId("min-spread-width"),S.add(C),S.add(u);const I=t.get("sidebar/settings/pagination"),T=new g,E=new y("checkbox",!1,I[1]);E.setId("pagination"),E.dom.onclick=e=>{},T.add(new f(I[0],"pagination")),T.add(E),this.add(new D([n,d,h,p,S])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),m.setValue(e.flow),k.setValue(e.spread.mod),u.setValue(e.spread.min),u.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(k.setValue("none"),k.dom.disabled=!0,u.dom.disabled=!0):k.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),o.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),b.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class _ extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a={},o="sidebar/metadata",n=new w(s.get(o)).setClass("label");this.add(new D(n).addClass("header")),a[o]=n,this.items=new I,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const n=new T,i=(new w).setClass("label"),r=(new w).setClass("value");i.setValue(s.get(o+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[o+"/"+e]=i,n.add([i,r]),this.items.add(n)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===o?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class R{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],o=new C("vertical").setId("sidebar"),n=(new b).setId("btn-p").addClass("box"),i=new y("button");if(i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},n.add(i),o.addMenu(n),o.addTab("btn-t",t.get(a[1]),new B(e)),s.bookmarks){const s=new L(e);o.addTab("btn-d",t.get(a[2]),s),e.bookmarksPanel=s}if(s.annotations){const s=new z(e);o.addTab("btn-a",t.get(a[3]),s),e.annotationsPanel=s}o.addTab("btn-s",t.get(a[4]),new E(e)),o.addTab("btn-c",t.get(a[5]),new O(e)),o.addTab("btn-i",t.get(a[6]),new _(e)),o.select("btn-t"),document.body.appendChild(o.dom),e.on("sidebaropener",(e=>{e?o.setClass("open"):o.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),o.setLabel("btn-t",t.get(a[1])),s.bookmarks&&o.setLabel("btn-d",t.get(a[2])),s.annotations&&o.setLabel("btn-a",t.get(a[3])),o.setLabel("btn-s",t.get(a[4])),o.setLabel("btn-c",t.get(a[5])),o.setLabel("btn-i",t.get(a[6]))}))}}class F{constructor(e){const t=(new b).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],o=new f(s.get(a[0]),"note-input"),n=new y("text","").setId("note-input");n.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new y("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:n.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&n.getValue().length>0)},t.add(new D([o,n,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),n.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{o.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class P{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("status-bar"),o=["status/fullscreen","status/apprec"],n=(new b).setClass("status-title"),i=(new b).setClass("status-action");let r,d=(new f).setClass("status-text").setTextContent("Trang cuối của chương");n.add(d);const l=(new b).setId("btn-ar").setClass("box");let c;if(r=new y("button"),r.setTitle(t.get(o[1])),r.dom.onclick=e=>{e.preventDefault(),function(){const e=[{title:"Determined",author:"Robert M. Sapolsky",page:1},{title:"Determined",author:"Robert M. Sapolsky",page:2},{title:"Determined",author:"Robert M. Sapolsky",page:3},{title:"Determined",author:"Robert M. Sapolsky",page:4},{title:"Determined",author:"Robert M. Sapolsky",page:5},{title:"Determined",author:"Robert M. Sapolsky",page:6},{title:"Determined",author:"Robert M. Sapolsky",page:7},{title:"Determined",author:"Robert M. Sapolsky",page:8},{title:"Determined",author:"Robert M. Sapolsky",page:9},{title:"Determined",author:"Robert M. Sapolsky",page:10},{title:"Determined",author:"Robert M. Sapolsky",page:11},{title:"Determined",author:"Robert M. Sapolsky",page:12},{title:"Determined",author:"Robert M. Sapolsky",page:13},{title:"Determined",author:"Robert M. Sapolsky",page:14},{title:"Determined",author:"Robert M. Sapolsky",page:15},{title:"Determined",author:"Robert M. Sapolsky",page:16},{title:"Determined",author:"Robert M. Sapolsky",page:17},{title:"Determined",author:"Robert M. Sapolsky",page:18},{title:"Determined",author:"Robert M. Sapolsky",page:19},{title:"Determined",author:"Robert M. Sapolsky",page:20}];if(!document.getElementById("book-list-modal")){let t=document.createElement("div");t.setAttribute("id","book-list-modal"),t.setAttribute("class","book-modal");let s=document.createElement("div");s.setAttribute("class","book-modal-content");let o=document.createElement("div");o.setAttribute("class","book-grid"),e.forEach((e=>{let t=document.createElement("div");t.setAttribute("class","book-item"),t.innerHTML=`\n
\n

${e.title}

\n

${e.author}

\n
\n
${e.page}
\n `,o.appendChild(t)})),s.appendChild(o),t.appendChild(s),a.dom.appendChild(t)}document.getElementById("book-list-modal").classList.toggle("active")}()},l.add(r),i.add(l),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");c=new y("button"),c.setTitle(t.get(o[0])),c.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{document.fullscreenElement?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(c),i.add(e)}e.on("languagechanged",(e=>{s.fullscreen&&c.setTitle(t.get(o[0]))})),a.add([n,i]),document.body.appendChild(a.dom)}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class j{constructor(e,t){const s=s=>{const a=new URL(window.location);let o=e;t&&!t.openbook?(o=e,s&&this.storage.clear()):s&&0===a.search.length&&(o=s),this.cfgInit(o,t),this.strings=new c(this),this.toolbar=new M(this),this.content=new A(this),this.status=new P(this),this.sidebar=new R(this),this.settings.annotations&&(this.notedlg=new F(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("navigation",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"px")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:16},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=1,this.emit("styleschanged",{fontSize:t});break;case"-":t-=1,this.emit("styleschanged",{fontSize:t});break;case"0":t=16,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}o(j.prototype);var V=a.Reader;export{V as Reader}; +var e={263:(e,t,s)=>{var a=s(175),o=s(873),n=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,o,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),o=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,o=!1),c={value:t,configurable:s,enumerable:o,writable:d},l?n(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?o(t)?a(s)?o(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?n(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),o=s(134),n=Math.max;e.exports=function(e,t){var s,i,r,d=n(arguments.length,2);for(e=Object(o(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),o=Object.keys;e.exports=function(e){return o(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),o=Array.prototype.forEach,n=Object.create;e.exports=function(e){var t=n(null);return o.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,o,n,i,r,d,l,c=s(263),h=s(499),m=Function.prototype.apply,u=Function.prototype.call,b=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,k={configurable:!0,enumerable:!1,writable:!0};o=function(e,t){var s,o;return h(t),o=this,a.call(this,e,s=function(){n.call(o,e,s),m.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=k.value=b(null),g(this,"__ee__",k),k.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:o,off:n=function(e,t){var s,a,o,n;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(n=0;o=a[n];++n)o!==t&&o.__eeOnceListener__!==t||(2===a.length?s[e]=a[n?0:1]:a.splice(n,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,o,n;if(f.call(this,"__ee__")&&(o=this.__ee__[e]))if("object"==typeof o){for(s=arguments.length,n=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),o={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(o,typeof e)}},873:(e,t,s)=>{var a=s(80),o=/^\s*class[\s{/}]/,n=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!o.test(n.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var o=t[a];if(void 0!==o)return o.exports;var n=t[a]={exports:{}};return e[a](n,n.exports,s),n.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>j});var o=s(68);const n=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let o;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":o=t[a]?e[a]:t[a];break;default:o=t[a]}else o="arrows"===a?t[a]:void 0===n(s,a)?e[a]:t[a];return o},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],n(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add","status/fullscreen":"Fullscreen","status/":""},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter","status/fullscreen":"","status/":""},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加","status/fullscreen":"","status/":""},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить","status/fullscreen":"","status/":""},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???","status/fullscreen":"Toàn màn hình","status/":""}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class m{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class x extends m{constructor(e,t,s,a,o){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=o||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends b{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new u).setClass("tab-selector"),this.menuDiv=(new b).setClass("menu"),this.tabsDiv=(new b).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new b).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new S(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const o=new b;o.setId(e),o.add(s),this.panels.push(o),this.panelsDiv.add(o),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class S extends b{constructor(e,t){super(),this.button=new y("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class I extends m{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends m{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new b).setId("item-box");for(let s=0;s{const e=o.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new I,t.add(this.items),this.add([new D(o),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new k("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class M{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("toolbar"),o=["toolbar/sidebar","toolbar/prev","toolbar/next","toolbar/openbook","toolbar/openbook/error","toolbar/bookmark","toolbar/fullscreen","toolbar/background","toolbar/search","toolbar/close"],n=(new b).setClass("menu-1"),i=(new b).setId("btn-m").setClass("box"),r=new y("button");let d,l,c,h;r.dom.title=t.get(o[0]),r.dom.onclick=t=>{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),n.add(i),"toolbar"===s.arrows&&(d=(new b).setId("btn-p").setClass("box"),l=new y("button"),l.setTitle(t.get(o[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),n.add(d),c=(new b).setId("btn-n").setClass("box"),h=new y("button"),h.dom.title=t.get(o[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),n.add(c));const m=(new b).setId("btn-logo").setClass("logo"),g=(new k).setId("logo-link").setHref("#").setTextContent("LOGO");let p,v,x,C,S,I;function T(){let t=document.getElementById("toolbar-bookmarks-list");if(!t)return;t.innerHTML="";let s=document.createElement("h3");s.textContent="Bookmarks của tui",t.appendChild(s),e.settings.bookmarks.forEach(((s,a)=>{let o=document.createElement("li"),n=document.createElement("a"),i=document.createElement("span");n.href="#",n.textContent=`Bookmark ${a+1}`,n.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(s)},i.innerHTML='',i.onclick=t=>{t.stopPropagation(),e.removeBookmarkFromToolbar(s)},o.appendChild(n),o.appendChild(i),t.appendChild(o)}))}m.add(g),n.add(m),p=(new b).setId("btn-t").setClass("box"),v=new y("button"),v.dom.onclick=t=>{t.stopPropagation(),e.book.loaded.navigation.then((t=>{!function(t){let s=document.getElementById("toolbar-toc-list");if(s)s.remove();else{let s=document.createElement("ul");s.setAttribute("id","toolbar-toc-list");let a=document.createElement("h3");a.textContent="Mục lục",s.appendChild(a),t.forEach((t=>{let a=document.createElement("li"),o=document.createElement("a");o.href="#",o.textContent=t.label,o.onclick=s=>{s.preventDefault(),document.querySelectorAll("#toolbar-toc-list li a").forEach((e=>{e.classList.remove("active")})),o.classList.add("active"),e.rendition.display(t.href)},a.appendChild(o),s.appendChild(a)})),p.dom.appendChild(s)}document.getElementById("toolbar-toc-list").classList.toggle("active")}(t)}))},p.add(v),n.add(p),x=(new b).setId("btn-d").setClass("box"),C=new y("button"),C.dom.onclick=e=>{e.stopPropagation(),function(){let e=document.getElementById("toolbar-bookmarks-list");e||(e=document.createElement("ul"),e.setAttribute("id","toolbar-bookmarks-list"),V.dom.appendChild(e)),T(),e.classList.toggle("active")}()},x.add(C),n.add(x),e.on("bookmarked",((e,t)=>{T()})),e.removeBookmarkFromToolbar=function(t){let s=document.getElementById("toolbar-bookmarks-list");if(!s)return;let a=s.querySelectorAll("li"),o=Array.from(a).find((e=>e.querySelector("a").textContent.includes(t)));o&&o.remove();const n=e.settings.bookmarks.indexOf(t);-1!==n&&e.settings.bookmarks.splice(n,1),e.emit("bookmarked",!1,t),e.bookmarksPanel.removeBookmark(t)},S=(new b).setId("btn-a").setClass("box"),I=new y("button"),I.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-annotations-list")){let t=document.createElement("ul");t.setAttribute("id","toolbar-annotations-list");let s=document.createElement("h3");s.textContent="Highlights & Ghi chú",t.appendChild(s),e.settings.annotations.forEach((s=>{let a=document.createElement("li"),o=document.createElement("a"),n=document.createElement("span");o.href="#",o.textContent=s.text,o.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-annotations-list li a").forEach((e=>{e.classList.remove("active")})),o.classList.add("active"),e.rendition.display(s.cfi)},n.innerHTML='',n.onclick=t=>{t.stopPropagation(),e.removeNoteFromToolbar(s)},a.appendChild(o),a.appendChild(n),t.appendChild(a)})),S.dom.appendChild(t)}document.getElementById("toolbar-annotations-list").classList.toggle("active")}()},S.add(I),n.add(S),e.removeNoteFromToolbar=function(t){let s=document.getElementById("toolbar-annotations-list");if(!s)return;let a=s.querySelectorAll("li"),o=Array.from(a).find((e=>{e.querySelector("a").textContent,t.text}));o&&o.remove();const n=e.annotationsPanel;n&&(n.removeNote(t),n.update());const i=e.settings.annotations.findIndex((e=>e.cfi===t.cfi));-1!==i&&e.settings.annotations.splice(i,1),e.rendition.annotations.remove(t.cfi,"highlight")};const D=(new b).setClass("menu-center"),M=(new f).setClass("toolbar-center-label");M.setTextContent("Determined");const A=(new b).setClass("page-map"),B=(new u).setClass("current-page-index").setTextContent("1"),L=(new w).setTextContent(" của "),z=(new u).setClass("total-pages").setTextContent("200");A.add(B),A.add(L),A.add(z),D.add(M),D.add(A);const O=(new b).setClass("menu-2");let _,R;s.background&&(_=(new b).setId("btn-bg").setClass("box"),R=new y("color").setClass("color-picker"),R.dom.title=t.get(o[7]),R.dom.oninput=t=>{const s=t.target.value;e.emit("colorchanged",s)},_.add(R),O.add(_));let F,P,j,V,N,H,q,$,U=(new f).setClass("font-size-px").setTextContent("Fontsize (px):"),G=(new b).setId("btn-fontsize").setClass("box"),K=new y("button").setClass("btn-font-decrease"),W=new y("button").setClass("btn-font-increase"),J=new y("text").setClass("input-font-size"),X=s.fontSize||16;if(J.dom.value=X,K.dom.textContent="-",K.dom.onclick=()=>{X=Math.max(8,X-1),J.dom.value=X,e.emit("styleschanged",{fontSize:X})},W.dom.textContent="+",W.dom.onclick=()=>{X=Math.min(72,X+1),J.dom.value=X,e.emit("styleschanged",{fontSize:X})},J.dom.onchange=()=>{let t=parseInt(J.dom.value,10);!isNaN(t)&&t>=8&&t<=72?(X=t,e.emit("styleschanged",{fontSize:X})):J.dom.value=X},G.add(U),G.add(K),G.add(J),G.add(W),O.add(G),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},n=(new b).setId("btn-o").setClass("box");F=new y("file"),F.dom.title=t.get(o[3]),F.dom.accept="application/epub+zip",F.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(o[4]))},F.dom.onclick=e=>{F.dom.blur()},n.add(F),O.add(n)}if(P=(new b).setId("btn-s").setClass("box"),j=new y("button"),j.setTitle(t.get(o[8])),j.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-search-list")){let t=document.createElement("div");t.setAttribute("id","toolbar-search-list"),t.classList.add("search-popup");let s=document.createElement("div");s.classList.add("search-container");let a=document.createElement("span");a.classList.add("search-icon"),a.innerHTML='';let o=document.createElement("input");o.setAttribute("type","search"),o.setAttribute("placeholder","Search"),o.setAttribute("id","nav-q"),o.setAttribute("class","toolbar-search-input"),s.appendChild(a),s.appendChild(o);let n=document.createElement("ul");n.setAttribute("id","toolbar-search-results");let i=new E(e);o.oninput=async()=>{let e=o.value.trim();if(e.length>0){let t=await i.doSearch(e);if(n.innerHTML="",0===t.length){let e=document.createElement("li");e.innerText="Không tìm thấy kết quả trùng khớp",e.style.color="gray",e.style.padding="8px",n.appendChild(e)}t.forEach((e=>{let t=document.createElement("li"),s=document.createElement("a");s.href="#"+e.cfi,s.textContent=e.excerpt,s.onclick=t=>{t.preventDefault(),i.reader.rendition.display(e.cfi)},t.appendChild(s),n.appendChild(t)}))}else n.innerHTML=""},t.appendChild(s),t.appendChild(n),P.dom.appendChild(t)}document.getElementById("toolbar-search-list").classList.toggle("active")}()},P.add(j),O.add(P),s.bookmarks&&(V=(new b).setId("btn-b").setClass("box"),N=new y("button"),N.setTitle(t.get(o[5])),N.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),N.dom.blur()},V.add(N),O.add(V)),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");H=new y("button"),H.setTitle(t.get(o[6])),H.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(H),O.add(e)}a.add([n,D,O]),document.body.appendChild(a.dom),q=(new b).setId("btn-close").setClass("box"),$=new y("button").setClass("active"),$.setTitle(t.get(o[9])),q.add($),O.add(q),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?V.removeClass("bookmarked"):V.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?V.addClass("bookmarked"):V.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(o[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(o[1])),h.setTitle(t.get(o[2]))),s.openbook&&F.setTitle(t.get(o[3])),s.bookmarks&&N.setTitle(t.get(o[5])),s.fullscreen&&H.setTitle(t.get(o[6])),s.background&&backgroundBtn.setTitle(t.get(o[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class A{constructor(e){const t=e.settings,s=(new b).setId("content");let a;if("content"===t.arrows){a=(new b).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()};const t=new u;t.dom.innerHTML='',a.add(t),s.add(a)}const o=(new b).setId("viewer");let n;if(s.add(o),e.on("colorchanged",(e=>{o.dom.style.backgroundColor=e})),"content"===t.arrows){n=(new b).setId("next").setClass("arrow"),n.dom.onclick=t=>{e.emit("next"),t.preventDefault()};const t=new u;t.dom.innerHTML='',n.add(t),s.add(n)}const i=(new b).setId("loader"),r=(new b).setId("divider"),d=(new b).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{o.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{o.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?n.addClass("disabled"):n.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(n.addClass("active"),setTimeout((()=>{n.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{o.clear()}))}}class B extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/contents"],o=new w(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new D(o).addClass("header")),e.on("bookready",(()=>{e.book.loaded.navigation.then((e=>{t.clear(),t.add(this.generateToc(e)),this.add(t),console.log(e)}))})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new I(t);return e.forEach((e=>{const t=new k(e.href,e.label),a=new T(s).setId(e.id),o=new u;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([o,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);o.setClass("toggle-collapsed"),o.dom.onclick=()=>(t.expanded?(t.collaps(),o.setClass("toggle-collapsed")):(t.expand(),o.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class L extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],o=new w(s.get(a[0])).setClass("label"),n=new y("button",s.get(a[1]));n.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.bookmarks=new I,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{n.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new k,s=new T,a=(new u).setClass("btn-remove"),o=this.reader.navItemFromCfi(e);let n,i;if(void 0===o){const t=this.reader.book.spine.get(e);n=t.idref,i=t.idref}else n=o.id,i=o.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(n),this.bookmarks.add(s)}}class z extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],o=new w(s.get(a[0])).setClass("label"),n=new y("button",s.get(a[1]));n.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.notes=new I,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{n.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}set(e){const t=new k("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new u).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update();const o=document.getElementById("toolbar-annotations-list");if(o){const t=document.createElement("li"),s=document.createElement("a");s.href="#",s.textContent=e.text,s.onclick=t=>{t.preventDefault(),this.reader.rendition.display(e.cfi)},t.appendChild(s);const a=document.createElement("span");a.innerHTML='',a.onclick=t=>{t.stopPropagation(),this.reader.removeNoteFromToolbar(e)},t.appendChild(a),o.appendChild(t)}}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);if(-1===t)return;this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update();const s=document.getElementById("toolbar-annotations-list");s&&s.querySelectorAll("li").forEach((t=>{t.querySelector("a").textContent===e.text&&t.remove()}))}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class O extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new w(t.get(s[0])).setClass("label");this.add(new D(a).addClass("header"));const o=new f(t.get(s[1]),"language-ui"),n=new g,i=(new v).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),n.add(o),n.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new x(16,1);l.dom.onchange=t=>{const s=parseInt(t.target.value);s>=8&&s<=72&&e.emit("styleschanged",{fontSize:s})},l.setId("fontsize"),d.add(r),d.add(l),l.dom.disabled=!0;const c=new f(t.get(s[3]),"flow"),h=new g,m=(new v).setOptions({paginated:"Paginated",scrolled:"Scrolled"});m.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},m.setId("flow"),h.add(c),h.add(m);const u=new x(800,1),b=new f(t.get(s[4]),"spread"),p=new g,k=(new v).setOptions({none:"None",auto:"Auto"});k.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),u.dom.disabled="none"===t.target.value},k.setId("spread"),p.add(b),p.add(k);const C=new f(t.get(s[5]),"min-spread-width"),S=new g;u.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},u.setId("min-spread-width"),S.add(C),S.add(u);const I=t.get("sidebar/settings/pagination"),T=new g,E=new y("checkbox",!1,I[1]);E.setId("pagination"),E.dom.onclick=e=>{},T.add(new f(I[0],"pagination")),T.add(E),this.add(new D([n,d,h,p,S])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),m.setValue(e.flow),k.setValue(e.spread.mod),u.setValue(e.spread.min),u.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(k.setValue("none"),k.dom.disabled=!0,u.dom.disabled=!0):k.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),o.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),b.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class _ extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a={},o="sidebar/metadata",n=new w(s.get(o)).setClass("label");this.add(new D(n).addClass("header")),a[o]=n,this.items=new I,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const n=new T,i=(new w).setClass("label"),r=(new w).setClass("value");i.setValue(s.get(o+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[o+"/"+e]=i,n.add([i,r]),this.items.add(n)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===o?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class R{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],o=new C("vertical").setId("sidebar"),n=(new b).setId("btn-p").addClass("box"),i=new y("button");if(i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},n.add(i),o.addMenu(n),o.addTab("btn-t",t.get(a[1]),new B(e)),s.bookmarks){const s=new L(e);o.addTab("btn-d",t.get(a[2]),s),e.bookmarksPanel=s}if(s.annotations){const s=new z(e);o.addTab("btn-a",t.get(a[3]),s),e.annotationsPanel=s}o.addTab("btn-s",t.get(a[4]),new E(e)),o.addTab("btn-c",t.get(a[5]),new O(e)),o.addTab("btn-i",t.get(a[6]),new _(e)),o.select("btn-t"),document.body.appendChild(o.dom),e.on("sidebaropener",(e=>{e?o.setClass("open"):o.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),o.setLabel("btn-t",t.get(a[1])),s.bookmarks&&o.setLabel("btn-d",t.get(a[2])),s.annotations&&o.setLabel("btn-a",t.get(a[3])),o.setLabel("btn-s",t.get(a[4])),o.setLabel("btn-c",t.get(a[5])),o.setLabel("btn-i",t.get(a[6]))}))}}class F{constructor(e){const t=(new b).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],o=new f(s.get(a[0]),"note-input"),n=new y("text","").setId("note-input");n.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new y("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:n.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&n.getValue().length>0)},t.add(new D([o,n,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),n.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{o.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class P{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("status-bar"),o=["status/fullscreen","status/apprec"],n=(new b).setClass("status-title"),i=(new b).setClass("status-action");let r,d=(new f).setClass("status-text").setTextContent("Trang cuối của chương");n.add(d);const l=(new b).setId("btn-ar").setClass("box");let c;if(r=new y("button"),r.setTitle(t.get(o[1])),r.dom.onclick=e=>{e.preventDefault(),function(){const e=[{title:"Determined",author:"Robert M. Sapolsky",page:1},{title:"Determined",author:"Robert M. Sapolsky",page:2},{title:"Determined",author:"Robert M. Sapolsky",page:3},{title:"Determined",author:"Robert M. Sapolsky",page:4},{title:"Determined",author:"Robert M. Sapolsky",page:5},{title:"Determined",author:"Robert M. Sapolsky",page:6},{title:"Determined",author:"Robert M. Sapolsky",page:7},{title:"Determined",author:"Robert M. Sapolsky",page:8},{title:"Determined",author:"Robert M. Sapolsky",page:9},{title:"Determined",author:"Robert M. Sapolsky",page:10},{title:"Determined",author:"Robert M. Sapolsky",page:11},{title:"Determined",author:"Robert M. Sapolsky",page:12},{title:"Determined",author:"Robert M. Sapolsky",page:13},{title:"Determined",author:"Robert M. Sapolsky",page:14},{title:"Determined",author:"Robert M. Sapolsky",page:15},{title:"Determined",author:"Robert M. Sapolsky",page:16},{title:"Determined",author:"Robert M. Sapolsky",page:17},{title:"Determined",author:"Robert M. Sapolsky",page:18},{title:"Determined",author:"Robert M. Sapolsky",page:19},{title:"Determined",author:"Robert M. Sapolsky",page:20}];if(!document.getElementById("book-list-modal")){let t=document.createElement("div");t.setAttribute("id","book-list-modal"),t.setAttribute("class","book-modal");let s=document.createElement("div");s.setAttribute("class","book-modal-content");let o=document.createElement("div");o.setAttribute("class","book-grid"),e.forEach((e=>{let t=document.createElement("div");t.setAttribute("class","book-item"),t.innerHTML=`\n
\n

${e.title}

\n

${e.author}

\n
\n
${e.page}
\n `,o.appendChild(t)})),s.appendChild(o),t.appendChild(s),a.dom.appendChild(t)}document.getElementById("book-list-modal").classList.toggle("active")}()},l.add(r),i.add(l),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");c=new y("button"),c.setTitle(t.get(o[0])),c.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{document.fullscreenElement?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(c),i.add(e)}e.on("languagechanged",(e=>{s.fullscreen&&c.setTitle(t.get(o[0]))})),a.add([n,i]),document.body.appendChild(a.dom)}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class j{constructor(e,t){const s=s=>{const a=new URL(window.location);let o=e;t&&!t.openbook?(o=e,s&&this.storage.clear()):s&&0===a.search.length&&(o=s),this.cfgInit(o,t),this.strings=new c(this),this.toolbar=new M(this),this.content=new A(this),this.status=new P(this),this.sidebar=new R(this),this.settings.annotations&&(this.notedlg=new F(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("bookready",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"px")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:16},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=1,this.emit("styleschanged",{fontSize:t});break;case"-":t-=1,this.emit("styleschanged",{fontSize:t});break;case"0":t=16,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}o(j.prototype);var V=a.Reader;export{V as Reader}; //# sourceMappingURL=epubreader.min.js.map \ No newline at end of file diff --git a/dist/js/epubreader.min.js.map b/dist/js/epubreader.min.js.map index 4c4256c..fe1b3cd 100644 --- a/dist/js/epubreader.min.js.map +++ b/dist/js/epubreader.min.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.min.js","mappings":"qBAEA,IAAIA,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,MAErBC,EAAOC,QAAU,SAAUC,EAAMC,GACzC,IAAIC,EAAGC,EAAGC,EAAGC,EAASC,EAkBtB,OAjBIC,UAAUC,OAAS,GAAqB,iBAATR,GAClCK,EAAUJ,EACVA,EAAQD,EACRA,EAAO,MAEPK,EAAUE,UAAU,GAEjBd,EAAQO,IACXE,EAAIL,EAASY,KAAKT,EAAM,KACxBG,EAAIN,EAASY,KAAKT,EAAM,KACxBI,EAAIP,EAASY,KAAKT,EAAM,OAExBE,EAAIE,GAAI,EACRD,GAAI,GAGLG,EAAO,CAAEL,MAAOA,EAAOS,aAAcR,EAAGS,WAAYR,EAAGS,SAAUR,GACzDC,EAAiBV,EAAOC,EAAcS,GAAUC,GAAtCA,CACnB,GAEEO,GAAK,SAAUb,EAAMc,EAAKC,GAC3B,IAAIb,EAAGC,EAAGE,EAASC,EA6BnB,MA5BoB,iBAATN,GACVK,EAAUU,EACVA,EAAMD,EACNA,EAAMd,EACNA,EAAO,MAEPK,EAAUE,UAAU,GAEhBd,EAAQqB,GAEDpB,EAAgBoB,GAGhBrB,EAAQsB,GAERrB,EAAgBqB,KAC3BV,EAAUU,EACVA,OAAMC,GAHND,OAAMC,GAHNX,EAAUS,EACVA,EAAMC,OAAMC,GAHZF,OAAME,EAUHvB,EAAQO,IACXE,EAAIL,EAASY,KAAKT,EAAM,KACxBG,EAAIN,EAASY,KAAKT,EAAM,OAExBE,GAAI,EACJC,GAAI,GAGLG,EAAO,CAAEQ,IAAKA,EAAKC,IAAKA,EAAKL,aAAcR,EAAGS,WAAYR,GAClDE,EAAiBV,EAAOC,EAAcS,GAAUC,GAAtCA,CACnB,C,SC1DAR,EAAOC,QAAU,WAAa,C,gBCD9BD,EAAOC,QAAU,EAAQ,IAAR,GAAgCkB,OAAOtB,OAAS,EAAQ,I,UCAzEG,EAAOC,QAAU,WAChB,IAA4BmB,EAAxBvB,EAASsB,OAAOtB,OACpB,MAAsB,mBAAXA,IAEXA,EADAuB,EAAM,CAAEC,IAAK,OACD,CAAEC,IAAK,OAAS,CAAEC,KAAM,SAC7BH,EAAIC,IAAMD,EAAIE,IAAMF,EAAIG,OAAS,aACzC,C,gBCNA,IAAIC,EAAQ,EAAQ,IAChBrB,EAAQ,EAAQ,KAChBsB,EAAQC,KAAKD,IAEjBzB,EAAOC,QAAU,SAAU0B,EAAMC,GAChC,IAAIC,EAAOC,EAAsCjC,EAAnCa,EAASe,EAAIhB,UAAUC,OAAQ,GAS7C,IARAiB,EAAOR,OAAOhB,EAAMwB,IACpB9B,EAAS,SAAUkC,GAClB,IACCJ,EAAKI,GAAOH,EAAIG,EACjB,CAAE,MAAO1B,GACHwB,IAAOA,EAAQxB,EACrB,CACD,EACKyB,EAAI,EAAGA,EAAIpB,IAAUoB,EAEzBN,EADAI,EAAMnB,UAAUqB,IACNE,QAAQnC,GAEnB,QAAcqB,IAAVW,EAAqB,MAAMA,EAC/B,OAAOF,CACR,C,gBCpBA,IAAIM,EAAa,EAAQ,GAAR,GAEjBjC,EAAOC,QAAU,SAAUiC,GAAO,OAAOA,IAAQD,GAAsB,OAARC,CAAc,C,eCF7ElC,EAAOC,QAAU,EAAQ,IAAR,GAAgCkB,OAAOK,KAAO,EAAQ,I,UCAvExB,EAAOC,QAAU,WAChB,IAEC,OADAkB,OAAOK,KAAK,cACL,CACR,CAAE,MAAOnB,GACR,OAAO,CACR,CACD,C,gBCPA,IAAIV,EAAU,EAAQ,KAElB6B,EAAOL,OAAOK,KAElBxB,EAAOC,QAAU,SAAUkC,GAAU,OAAOX,EAAK7B,EAAQwC,GAAUhB,OAAOgB,GAAUA,EAAS,C,gBCJ7F,IAAIxC,EAAU,EAAQ,KAElBqC,EAAUI,MAAMC,UAAUL,QAASM,EAASnB,OAAOmB,OAQvDtC,EAAOC,QAAU,SAAUsC,GAC1B,IAAIC,EAASF,EAAO,MAKpB,OAJAN,EAAQrB,KAAKF,WAAW,SAAUF,GAC5BZ,EAAQY,IATD,SAAUqB,EAAKR,GAC5B,IAAIW,EACJ,IAAKA,KAAOH,EAAKR,EAAIW,GAAOH,EAAIG,EACjC,CAOEU,CAAQtB,OAAOZ,GAAUiC,EAC1B,IACOA,CACR,C,UCjBAxC,EAAOC,QAAU,SAAUyC,GAC1B,GAAkB,mBAAPA,EAAmB,MAAM,IAAIC,UAAUD,EAAK,sBACvD,OAAOA,CACR,C,gBCHA,IAAI/C,EAAU,EAAQ,KAEtBK,EAAOC,QAAU,SAAUE,GAC1B,IAAKR,EAAQQ,GAAQ,MAAM,IAAIwC,UAAU,gCACzC,OAAOxC,CACR,C,gBCLAH,EAAOC,QAAU,EAAQ,IAAR,GAAgC2C,OAAOP,UAAUtC,SAAW,EAAQ,I,UCArF,IAAI8C,EAAM,aAEV7C,EAAOC,QAAU,WAChB,MAA4B,mBAAjB4C,EAAI9C,WACgB,IAAxB8C,EAAI9C,SAAS,SAA2C,IAAxB8C,EAAI9C,SAAS,MACrD,C,UCLA,IAAI+C,EAAUF,OAAOP,UAAUS,QAE/B9C,EAAOC,QAAU,SAAU8C,GAC1B,OAAOD,EAAQnC,KAAKqC,KAAMD,EAActC,UAAU,KAAO,CAC1D,C,eCJA,IASIwC,EAAIC,EAAMC,EAAKC,EAAMC,EAASC,EAAaC,EAT3CC,EAAW,EAAQ,KACnBC,EAAW,EAAQ,KAEnBC,EAAQC,SAAStB,UAAUqB,MAAO/C,EAAOgD,SAAStB,UAAU1B,KAC5D2B,EAASnB,OAAOmB,OAAQsB,EAAiBzC,OAAOyC,eAChDC,EAAmB1C,OAAO0C,iBAC1BC,EAAiB3C,OAAOkB,UAAUyB,eAClCC,EAAa,CAAEnD,cAAc,EAAMC,YAAY,EAAOC,UAAU,GAuBpEoC,EAAO,SAAUc,EAAMC,GACtB,IAAIf,EAAMgB,EAUV,OARAT,EAASQ,GACTC,EAAOlB,KACPC,EAAGtC,KAAKqC,KAAMgB,EAAMd,EAAO,WAC1BC,EAAIxC,KAAKuD,EAAMF,EAAMd,GACrBQ,EAAM/C,KAAKsD,EAAUjB,KAAMvC,UAC5B,GAEAyC,EAAKiB,mBAAqBF,EACnBjB,IACR,EAoEAK,EAAU,CACTJ,GApGDA,EAAK,SAAUe,EAAMC,GACpB,IAAIG,EAeJ,OAbAX,EAASQ,GAEJH,EAAenD,KAAKqC,KAAM,UAK9BoB,EAAOpB,KAAKqB,QAJZD,EAAOL,EAAW5D,MAAQmC,EAAO,MACjCsB,EAAeZ,KAAM,SAAUe,GAC/BA,EAAW5D,MAAQ,MAIfiE,EAAKJ,GACqB,iBAAfI,EAAKJ,GAAoBI,EAAKJ,GAAMM,KAAKL,GACpDG,EAAKJ,GAAQ,CAACI,EAAKJ,GAAOC,GAFdG,EAAKJ,GAAQC,EAIvBjB,IACR,EAoFCE,KAAMA,EACNC,IArEDA,EAAM,SAAUa,EAAMC,GACrB,IAAIG,EAAMG,EAAWC,EAAW1C,EAIhC,GAFA2B,EAASQ,IAEJH,EAAenD,KAAKqC,KAAM,UAAW,OAAOA,KAEjD,KADAoB,EAAOpB,KAAKqB,QACFL,GAAO,OAAOhB,KAGxB,GAAyB,iBAFzBuB,EAAYH,EAAKJ,IAGhB,IAAKlC,EAAI,EAAI0C,EAAYD,EAAUzC,KAAOA,EACpC0C,IAAcP,GAChBO,EAAUL,qBAAuBF,IACV,IAArBM,EAAU7D,OAAc0D,EAAKJ,GAAQO,EAAUzC,EAAI,EAAI,GACtDyC,EAAUE,OAAO3C,EAAG,SAItByC,IAAcN,GAChBM,EAAUJ,qBAAuBF,UAC5BG,EAAKJ,GAId,OAAOhB,IACR,EA4CCI,KA1CDA,EAAO,SAAUY,GAChB,IAAIlC,EAAG4C,EAAGT,EAAUM,EAAWI,EAE/B,GAAKb,EAAenD,KAAKqC,KAAM,YAC/BuB,EAAYvB,KAAKqB,OAAOL,IAGxB,GAAyB,iBAAdO,EAAwB,CAGlC,IAFAG,EAAIjE,UAAUC,OACdiE,EAAO,IAAIvC,MAAMsC,EAAI,GAChB5C,EAAI,EAAGA,EAAI4C,IAAK5C,EAAG6C,EAAK7C,EAAI,GAAKrB,UAAUqB,GAGhD,IADAyC,EAAYA,EAAUK,QACjB9C,EAAI,EAAImC,EAAWM,EAAUzC,KAAOA,EACxC4B,EAAM/C,KAAKsD,EAAUjB,KAAM2B,EAE7B,MACC,OAAQlE,UAAUC,QAClB,KAAK,EACJC,EAAKA,KAAK4D,EAAWvB,MACrB,MACD,KAAK,EACJrC,EAAKA,KAAK4D,EAAWvB,KAAMvC,UAAU,IACrC,MACD,KAAK,EACJE,EAAKA,KAAK4D,EAAWvB,KAAMvC,UAAU,GAAIA,UAAU,IACnD,MACD,QAGC,IAFAiE,EAAIjE,UAAUC,OACdiE,EAAO,IAAIvC,MAAMsC,EAAI,GAChB5C,EAAI,EAAGA,EAAI4C,IAAK5C,EACpB6C,EAAK7C,EAAI,GAAKrB,UAAUqB,GAEzB4B,EAAM/C,KAAK4D,EAAWvB,KAAM2B,GAG/B,GASArB,EAAc,CACbL,GAAIO,EAAEP,GACNC,KAAMM,EAAEN,GACRC,IAAKK,EAAEL,GACPC,KAAMI,EAAEJ,IAGTG,EAAOM,EAAiB,CAAC,EAAGP,GAE5BtD,EAAOC,QAAUA,EAAU,SAAU4E,GACpC,OAAa,MAALA,EAAavC,EAAOiB,GAAQM,EAAiB1C,OAAO0D,GAAIvB,EACjE,EACArD,EAAQoD,QAAUA,C,eCjIlB,IAAIyB,EAAc,EAAQ,KAE1B9E,EAAOC,QAAU,SAAUE,GAC1B,GAAqB,mBAAVA,EAAsB,OAAO,EAExC,IAAK2D,eAAenD,KAAKR,EAAO,UAAW,OAAO,EAElD,IACC,GAA4B,iBAAjBA,EAAMO,OAAqB,OAAO,EAC7C,GAA0B,mBAAfP,EAAMQ,KAAqB,OAAO,EAC7C,GAA2B,mBAAhBR,EAAMuD,MAAsB,OAAO,CAC/C,CAAE,MAAO7B,GACR,OAAO,CACR,CAEA,OAAQiD,EAAY3E,EACrB,C,gBChBA,IAAIR,EAAU,EAAQ,KAGlBoF,EAAgB,CAAE,QAAU,EAAM,UAAY,EAAM,WAAa,GAErE/E,EAAOC,QAAU,SAAUE,GAC1B,QAAKR,EAAQQ,IACN2D,eAAenD,KAAKoE,SAAsB5E,EAClD,C,gBCRA,IAAI6E,EAAa,EAAQ,IAErBC,EAAU,mBAAoBC,EAAmBvB,SAAStB,UAAU8C,SAExEnF,EAAOC,QAAU,SAAUE,GAC1B,QAAK6E,EAAW7E,KACZ8E,EAAQG,KAAKF,EAAiBvE,KAAKR,GAExC,C,gBCRA,IAAIkF,EAAW,EAAQ,KAEvBrF,EAAOC,QAAU,SAAUE,GAC1B,IAAKkF,EAASlF,GAAQ,OAAO,EAC7B,IACC,QAAKA,EAAMmF,aACJnF,EAAMmF,YAAYjD,YAAclC,CACxC,CAAE,MAAO0B,GACR,OAAO,CACR,CACD,C,UCPA7B,EAAOC,QAAU,SAAUE,GAAS,OAAOA,OAAwC,C,GCJ/EoF,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBvE,IAAjBwE,EACH,OAAOA,EAAazF,QAGrB,IAAID,EAASuF,EAAyBE,GAAY,CAGjDxF,QAAS,CAAC,GAOX,OAHA0F,EAAoBF,GAAUzF,EAAQA,EAAOC,QAASuF,GAG/CxF,EAAOC,OACf,CCrBAuF,EAAoBhC,EAAI,CAACvD,EAAS2F,KACjC,IAAI,IAAI7D,KAAO6D,EACXJ,EAAoBX,EAAEe,EAAY7D,KAASyD,EAAoBX,EAAE5E,EAAS8B,IAC5EZ,OAAOyC,eAAe3D,EAAS8B,EAAK,CAAElB,YAAY,EAAMG,IAAK4E,EAAW7D,IAE1E,ECNDyD,EAAoBX,EAAI,CAACzD,EAAKyE,IAAU1E,OAAOkB,UAAUyB,eAAenD,KAAKS,EAAKyE,GCClFL,EAAoBM,EAAK7F,IACH,oBAAX8F,QAA0BA,OAAOC,aAC1C7E,OAAOyC,eAAe3D,EAAS8F,OAAOC,YAAa,CAAE7F,MAAO,WAE7DgB,OAAOyC,eAAe3D,EAAS,aAAc,CAAEE,OAAO,GAAO,E,kDCL9D,MAAMqD,EAAI,CAACpC,EAAKyE,IAASzE,EAAMA,EAAIyE,QAAQ3E,EAErC+E,EAAI,CAACrE,EAAKsE,EAAKC,EAAKN,KACtB,IAAI3D,EACJ,GAAyB,kBAAdgE,EAAIL,GACX,OAAQA,GACJ,IAAK,cACL,IAAK,YACD3D,EAAMgE,EAAIL,GAAQjE,EAAIiE,GAAQK,EAAIL,GAClC,MACJ,QACI3D,EAAMgE,EAAIL,QAIlB3D,EADgB,WAAT2D,EACDK,EAAIL,QAEa3E,IAAjBsC,EAAE2C,EAAKN,GAAsBjE,EAAIiE,GAAQK,EAAIL,GAEvD,OAAO3D,GAGEkE,EAAS,CAACxE,EAAKsE,EAAKC,KAC7B,IAAK,IAAIN,KAAQjE,EACA,aAATiE,IAEOK,EAAIL,aAAiBzD,MAC5B8D,EAAIL,GAAQM,EAAOvE,EAAIiE,GAAQjE,EAAIiE,GAAQK,EAAIL,GAASjE,EAAIiE,GACrDK,EAAIL,aAAiB1E,OAC5BiF,EAAOxE,EAAIiE,GAAOK,EAAIL,GAAOrC,EAAE2C,EAAKN,IAEpCK,EAAIL,GAAQM,EAAMF,EAAErE,EAAKsE,EAAKC,EAAKN,GAAQjE,EAAIiE,GAEvD,EAGSQ,EAAO,KAChB,IAAI7C,GAAI,IAAI8C,MAAOC,UAMnB,MALa,uCAAuCC,QAAQ,SAAUpG,IAClE,IAAI0F,GAAKtC,EAAoB,GAAhB9B,KAAK+E,UAAiB,GAAK,EAExC,OADAjD,EAAI9B,KAAKgF,MAAMlD,EAAI,KACL,MAANpD,EAAY0F,EAAS,EAAJA,EAAU,GAAMX,SAAS,GAAE,GAEjDkB,EC3CJ,MAAMM,EAEZ,WAAArB,GAECtC,KAAK4D,KAAO,gBACZ5D,KAAK6D,QAAU,EACf7D,KAAK8D,GACL9D,KAAK+D,UAAYC,OAAOD,WACvBC,OAAOC,iBACPD,OAAOE,cACPF,OAAOG,YACPH,OAAOI,iBAEelG,IAAnB8B,KAAK+D,WAERM,QAAQxF,MAAM,mDAEhB,CAEA,IAAAyF,CAAKC,GAEJ,QAAuBrG,IAAnB8B,KAAK+D,UAER,YADAQ,IAID,MAAMC,EAAOlB,KAAKmB,MACZC,EAAWrH,GAAMgH,QAAQxF,MAAM,YAAaxB,GAC5CsH,EAAUZ,UAAUa,KAAK5E,KAAK4D,KAAM5D,KAAK6D,SAC/Cc,EAAQE,gBAAmBxH,IAE1B,MAAMyG,EAAKzG,EAAEyH,OAAOtF,QAC4B,IAA5CsE,EAAGiB,iBAAiBhI,SAAS,YAChC+G,EAAGkB,kBAAkB,UACtB,EAGDL,EAAQM,UAAa5H,IAEpB2C,KAAK8D,GAAKzG,EAAEyH,OAAOtF,OACnBQ,KAAK8D,GAAGY,QAAUA,EAClBH,IACAF,QAAQa,IAAI,iBAAiB5B,KAAKmB,MAAQD,OAAU,EAGrDG,EAAQD,QAAUA,CACnB,CAEA,GAAA1G,CAAIuG,GAEH,QAAgBrG,IAAZ8B,KAAK8D,GAER,YADAS,IAID,MAAMC,EAAOlB,KAAKmB,MACEzE,KAAK8D,GAAGqB,YAAY,CAAC,WAAY,aACrBC,YAAY,WAChBpH,IAAI,GACxBiH,UAAa5H,IAEpBkH,EAASlH,EAAEyH,OAAOtF,QAClB6E,QAAQa,IAAI,gBAAgB5B,KAAKmB,MAAQD,OAAU,CAErD,CAEA,GAAAvG,CAAImD,EAAMmD,GAET,QAAgBrG,IAAZ8B,KAAK8D,GAER,YADAS,IAID,MAAMC,EAAOlB,KAAKmB,MACEzE,KAAK8D,GAAGqB,YAAY,CAAC,WAAY,aACrBC,YAAY,WAChBC,IAAIjE,EAAM,GAC9B6D,UAAY,KAEnBV,IACAF,QAAQa,IAAI,gBAAgB5B,KAAKmB,MAAQD,OAAU,CAErD,CAEA,KAAAc,GAEC,QAAgBpH,IAAZ8B,KAAK8D,GACR,OAGD,MAAMU,EAAOlB,KAAKmB,MACEzE,KAAK8D,GAAGqB,YAAY,CAAC,WAAY,aACrBC,YAAY,WAChBE,QACpBL,UAAY,KAEnBZ,QAAQa,IAAI,kBAAkB5B,KAAKmB,MAAQD,OAAU,CAEvD,EClGM,MAAMe,EAEZ,WAAAjD,CAAYkD,GAEXxF,KAAKyF,SAAWD,EAAOE,SAASD,UAAY,KAC5CzF,KAAK2F,OAAS,CACbC,GAAI,CACH,kBAAmB,UACnB,eAAgB,gBAChB,eAAgB,YAChB,mBAAoB,YACpB,yBAA0B,+HAC1B,mBAAoB,6BACpB,qBAAsB,aACtB,qBAAsB,oBAEtB,gBAAiB,gBACjB,mBAAoB,WACpB,oBAAqB,YACrB,wBAAyB,MACzB,2BAA4B,SAC5B,0BAA2B,QAC3B,sBAAuB,cACvB,0BAA2B,MAC3B,6BAA8B,SAC9B,4BAA6B,QAC7B,6BAA8B,SAC9B,6BAA8B,SAC9B,iBAAkB,SAClB,6BAA8B,SAC9B,mBAAoB,WACpB,4BAA6B,WAC7B,4BAA6B,gBAC7B,wBAAyB,OACzB,8BAA+B,CAAC,aAAc,uBAC9C,0BAA2B,SAC3B,mCAAoC,uBACpC,mBAAoB,WACpB,yBAA0B,QAC1B,2BAA4B,UAC5B,+BAAgC,cAChC,2BAA4B,UAC5B,6BAA8B,YAC9B,8BAA+B,aAC/B,4BAA6B,WAC7B,0BAA2B,SAC3B,iCAAkC,gBAClC,0BAA2B,SAC3B,wBAAyB,OACzB,0BAA2B,SAC3B,6BAA8B,YAE9B,gBAAiB,OACjB,cAAe,MAEf,oBAAqB,aACrB,UAAW,IAEZC,GAAI,CACH,kBAAmB,iBACnB,eAAgB,MAChB,eAAgB,MAChB,mBAAoB,wBACpB,yBAA0B,wJAC1B,mBAAoB,6BACpB,qBAAsB,cACtB,qBAAsB,yBAEtB,gBAAiB,MACjB,mBAAoB,WACpB,oBAAqB,eACrB,wBAAyB,UACzB,2BAA4B,UAC5B,0BAA2B,eAC3B,sBAAuB,cACvB,0BAA2B,UAC3B,6BAA8B,UAC9B,4BAA6B,eAC7B,6BAA8B,QAC9B,6BAA8B,UAC9B,iBAAkB,aAClB,6BAA8B,aAC9B,mBAAoB,WACpB,4BAA6B,SAC7B,4BAA6B,MAC7B,wBAAyB,MACzB,8BAA+B,CAAC,aAAc,0BAC9C,0BAA2B,MAC3B,mCAAoC,MACpC,mBAAoB,MACpB,yBAA0B,MAC1B,2BAA4B,MAC5B,+BAAgC,MAChC,2BAA4B,MAC5B,6BAA8B,MAC9B,8BAA+B,MAC/B,4BAA6B,SAC7B,0BAA2B,MAC3B,iCAAkC,MAClC,0BAA2B,MAC3B,wBAAyB,MACzB,0BAA2B,MAC3B,6BAA8B,MAE9B,gBAAiB,MACjB,cAAe,UAEf,oBAAqB,GACrB,UAAW,IAEZC,GAAI,CACH,kBAAmB,QACnB,eAAgB,MAChB,eAAgB,MAChB,mBAAoB,OACpB,yBAA0B,kFAC1B,mBAAoB,eACpB,qBAAsB,UACtB,qBAAsB,UAEtB,gBAAiB,MACjB,mBAAoB,KACpB,oBAAqB,IACrB,wBAAyB,KACzB,2BAA4B,KAC5B,0BAA2B,MAC3B,sBAAuB,KACvB,0BAA2B,KAC3B,2BAA4B,KAC5B,4BAA6B,MAC7B,6BAA8B,OAC9B,6BAA8B,QAC9B,iBAAkB,KAClB,6BAA8B,KAC9B,mBAAoB,KACpB,4BAA6B,OAC7B,4BAA6B,MAC7B,wBAAyB,MACzB,8BAA+B,CAAC,WAAY,mBAC5C,0BAA2B,MAC3B,mCAAoC,MACpC,mBAAoB,MACpB,yBAA0B,MAC1B,2BAA4B,MAC5B,+BAAgC,MAChC,2BAA4B,MAC5B,6BAA8B,MAC9B,8BAA+B,MAC/B,4BAA6B,OAC7B,0BAA2B,MAC3B,iCAAkC,MAClC,0BAA2B,MAC3B,wBAAyB,MACzB,0BAA2B,MAC3B,6BAA8B,MAE9B,gBAAiB,MACjB,cAAe,KAEf,oBAAqB,GACrB,UAAW,IAEZC,GAAI,CACH,kBAAmB,iBACnB,eAAgB,sBAChB,eAAgB,oBAChB,mBAAoB,gBACpB,yBAA0B,8IAC1B,mBAAoB,mCACpB,qBAAsB,sBACtB,qBAAsB,eAEtB,gBAAiB,yBACjB,mBAAoB,aACpB,oBAAqB,WACrB,wBAAyB,WACzB,2BAA4B,UAC5B,0BAA2B,WAC3B,sBAAuB,YACvB,0BAA2B,WAC3B,6BAA8B,UAC9B,4BAA6B,WAC7B,6BAA8B,QAC9B,6BAA8B,SAC9B,iBAAkB,QAClB,6BAA8B,QAC9B,mBAAoB,YACpB,4BAA6B,OAC7B,4BAA6B,gBAC7B,wBAAyB,QACzB,8BAA+B,CAAC,oBAAqB,kCACrD,0BAA2B,WAC3B,mCAAoC,sBACpC,mBAAoB,aACpB,yBAA0B,YAC1B,2BAA4B,QAC5B,+BAAgC,WAChC,2BAA4B,kBAC5B,6BAA8B,WAC9B,8BAA+B,gBAC/B,4BAA6B,OAC7B,0BAA2B,WAC3B,iCAAkC,iBAClC,0BAA2B,QAC3B,wBAAyB,QACzB,0BAA2B,WAC3B,6BAA8B,cAE9B,gBAAiB,UACjB,cAAe,WAEf,oBAAqB,GACrB,UAAW,IAEZC,GAAI,CACH,kBAAmB,YACnB,eAAgB,cAChB,eAAgB,gBAChB,mBAAoB,UACpB,yBAA0B,0IAC1B,mBAAoB,+BACpB,qBAAsB,gBACtB,qBAAsB,cAEtB,gBAAiB,iBACjB,mBAAoB,WACpB,oBAAqB,YACrB,wBAAyB,iBACzB,2BAA4B,gBAC5B,0BAA2B,MAC3B,sBAAuB,YACvB,0BAA2B,iBAC3B,6BAA8B,gBAC9B,4BAA6B,MAC7B,6BAA8B,MAC9B,6BAA8B,MAC9B,iBAAkB,WAClB,6BAA8B,MAC9B,mBAAoB,UACpB,4BAA6B,WAC7B,4BAA6B,aAC7B,wBAAyB,MACzB,8BAA+B,CAAC,MAAO,OACvC,0BAA2B,MAC3B,mCAAoC,OACpC,mBAAoB,WACpB,yBAA0B,SAC1B,2BAA4B,iBAC5B,+BAAgC,QAChC,2BAA4B,WAC5B,6BAA8B,eAC9B,8BAA+B,YAC/B,4BAA6B,WAC7B,0BAA2B,QAC3B,iCAAkC,eAClC,0BAA2B,MAC3B,wBAAyB,MACzB,0BAA2B,MAC3B,6BAA8B,MAE9B,gBAAiB,MACjB,cAAe,MAEf,oBAAqB,gBACrB,UAAW,KAIbR,EAAOvF,GAAG,mBAAoB9C,IAC7B6C,KAAKyF,SAAWtI,CAAK,GAEvB,CAEA,GAAAa,CAAIe,GAAO,OAAOiB,KAAK2F,OAAO3F,KAAKyF,UAAU1G,IAAQ,KAAO,EC7Q7D,MAAMkH,EAAY,mCAMX,MAAMC,EAEZ,WAAA5D,CAAY6D,GAEXnG,KAAKoG,IAAMC,SAASC,cAAcH,EACnC,CAEA,GAAAI,GAEC,IAAK,IAAIzH,EAAI,EAAGA,EAAIrB,UAAUC,OAAQoB,IAAK,CAE1C,MAAM0H,EAAW/I,UAAUqB,GAE3B,GAAI0H,aAAoBN,EAEvBlG,KAAKoG,IAAIK,YAAYD,EAASJ,UAExB,GAAIhH,MAAMsH,QAAQF,GAExB,IAAK,IAAIG,EAAI,EAAGA,EAAIH,EAAS9I,OAAQiJ,IAAK,CAEzC,MAAMC,EAAUJ,EAASG,GAErBC,aAAmBV,EAEtBlG,KAAKoG,IAAIK,YAAYG,EAAQR,KAG7B/B,QAAQxF,MAAM,aAAc+H,EAASX,EAEvC,MAGA5B,QAAQxF,MAAM,aAAc2H,EAAUP,EAExC,CACA,OAAOjG,IACR,CAEA,MAAA6G,GAEC,IAAK,IAAI/H,EAAI,EAAGA,EAAIrB,UAAUC,OAAQoB,IAAK,CAE1C,MAAM0H,EAAW/I,UAAUqB,GAEvB0H,aAAoBN,EAEvBlG,KAAKoG,IAAIU,YAAYN,EAASJ,KAEpBW,OAAOC,UAAUR,GAE3BxG,KAAKoG,IAAIU,YAAY9G,KAAKoG,IAAIa,WAAWT,IAGzCnC,QAAQxF,MAAM,aAAc2H,EAAUP,EAExC,CACA,OAAOjG,IACR,CAEA,KAAAsF,GAEC,KAAOtF,KAAKoG,IAAIc,SAASxJ,QAExBsC,KAAKoG,IAAIU,YAAY9G,KAAKoG,IAAIe,WAE/B,OAAOnH,IACR,CAEA,KAAAoH,CAAMC,GAGL,OADArH,KAAKoG,IAAIiB,GAAKA,EACPrH,IACR,CAEA,KAAAsH,GAEC,OAAOtH,KAAKoG,IAAIiB,EACjB,CAEA,eAAAE,CAAgB3D,GAGf,OADA5D,KAAKoG,IAAImB,gBAAgB3D,GAClB5D,IACR,CAEA,QAAAwH,CAAS5D,GAGR,OADA5D,KAAKoG,IAAIqB,UAAY7D,EACd5D,IACR,CAEA,QAAA0H,CAAS9D,GAGR,OADA5D,KAAKoG,IAAIuB,UAAUpB,IAAI3C,GAChB5D,IACR,CAEA,WAAA4H,CAAYhE,GAGX,OADA5D,KAAKoG,IAAIuB,UAAUd,OAAOjD,GACnB5D,IACR,CAEA,QAAA6H,CAAS9I,EAAK5B,GAGb,OADA6C,KAAKoG,IAAI0B,MAAM/I,GAAO5B,EACf6C,IACR,CAEA,QAAA+H,GAEC,OAAO/H,KAAKoG,IAAI4B,KACjB,CAEA,QAAAC,CAASD,GAIR,OAFIhI,KAAKoG,IAAI4B,QAAUA,GAASA,IAC/BhI,KAAKoG,IAAI4B,MAAQA,GACXhI,IACR,CAEA,cAAAkI,GAEC,OAAOlI,KAAKoG,IAAI+B,WACjB,CAEA,cAAAC,CAAeC,GAId,OAFIrI,KAAKoG,IAAI+B,cAAgBE,GAAQA,IACpCrI,KAAKoG,IAAI+B,YAAcE,GACjBrI,IACR,CAEA,qBAAAsI,GAEC,OAAOtI,KAAKoG,IAAIkC,uBACjB,EAOM,MAAMC,UAAerC,EAE3B,WAAA5D,CAAY+F,GAEXG,MAAM,QACNxI,KAAKoI,eAAeC,EACrB,EAMM,MAAMI,UAAcvC,EAE1B,WAAA5D,GAECkG,MAAM,MACP,CAEA,QAAAhB,CAASC,GAER,OADAzH,KAAKoG,IAAIqB,UAAYA,EACdzH,IACR,CAEA,QAAA0H,CAASD,GAER,OADAzH,KAAKoG,IAAIuB,UAAUpB,IAAIkB,GAChBzH,IACR,EAMM,MAAM0I,UAAcD,EAE1B,WAAAnG,GAECkG,QAEAxI,KAAKoG,IAAIqB,UAAY,KACtB,EAMM,MAAMkB,UAAgBF,EAE5B,WAAAnG,GAECkG,QAEAxI,KAAKoG,IAAIqB,UAAY,OACtB,EAQM,MAAMmB,UAAgB1C,EAE5B,WAAA5D,CAAY+F,EAAMhB,GAEjBmB,MAAM,SAENxI,KAAKoG,IAAI+B,YAAcE,EACnBhB,IAAIrH,KAAKoG,IAAIyC,QAAUxB,EAC5B,EAQM,MAAMyB,UAAe5C,EAE3B,WAAA5D,CAAYyG,EAAMV,GAEjBG,MAAM,KAENxI,KAAKoG,IAAI2C,KAAOA,GAAQ,IACxB/I,KAAKoG,IAAI+B,YAAcE,GAAQ,EAChC,CAEA,OAAAW,CAAQC,GAGP,OADAjJ,KAAKoG,IAAI2C,KAAOE,EACTjJ,IACR,EAOM,MAAMkJ,UAAeX,EAE3B,WAAAjG,CAAY+F,GAEXG,QAEAxI,KAAKoG,IAAI+B,YAAcE,CACxB,CAEA,QAAAc,GAEC,OAAOnJ,KAAKoG,IAAI+B,WACjB,CAEA,QAAAiB,CAASf,GAGR,OADArI,KAAKoG,IAAI+B,YAAcE,EAChBrI,IACR,EAkCM,MAAMqJ,UAAiBnD,EAE7B,WAAA5D,GAECkG,MAAM,SACP,CAEA,WAAAc,CAAYC,GAGX,OADAvJ,KAAKoG,IAAIoD,SAAWD,IAAW,EACxBvJ,IACR,CAEA,UAAAyJ,CAAWlM,GAEV,MAAMmM,EAAW1J,KAAKoG,IAAIjJ,MAC1B6C,KAAKsF,QAEL,IAAK,MAAMvG,KAAOxB,EAAS,CAE1B,MAAMoM,EAAStD,SAASC,cAAc,UACtCqD,EAAOxM,MAAQ4B,EACf4K,EAAOtB,KAAO9K,EAAQwB,GACtBiB,KAAKoG,IAAIK,YAAYkD,EACtB,CAEA,OADA3J,KAAKoG,IAAIjJ,MAAQuM,EACV1J,IACR,CAEA,QAAAmJ,GAEC,OAAOnJ,KAAKoG,IAAIjJ,KACjB,CAEA,QAAAiM,CAASjM,GAMR,OAJAA,EAAQyC,OAAOzC,GAEX6C,KAAKoG,IAAIjJ,QAAUA,IACtB6C,KAAKoG,IAAIjJ,MAAQA,GACX6C,IACR,EASM,MAAM4J,UAAgB1D,EAE5B,WAAA5D,CAAYtB,EAAM7D,EAAO6K,GAExBQ,MAAM,SAENxI,KAAKoG,IAAIpF,KAAOA,EAChBhB,KAAKoG,IAAIyD,UAAaxM,IAErBA,EAAEyM,iBAAiB,EAEpB9J,KAAKoJ,SAASjM,GACd6C,KAAKiI,SAASD,EACf,CAEA,OAAA+B,GAEC,OAAO/J,KAAKoG,IAAIxC,IACjB,CAEA,OAAAoG,CAAQpG,GAGP,OADA5D,KAAKoG,IAAIxC,KAAOA,EACT5D,IACR,CAEA,OAAAiK,GAEC,OAAOjK,KAAKoG,IAAIpF,IACjB,CAEA,OAAAkJ,CAAQlJ,GAGP,OADAhB,KAAKoG,IAAIpF,KAAOA,EACThB,IACR,CAEA,QAAAmJ,GAEC,OAAOnJ,KAAKoG,IAAIjJ,KACjB,CAEA,QAAAiM,CAASjM,GAIR,OAFI6C,KAAKoG,IAAIjJ,QAAUA,QAAmBe,IAAVf,IAC/B6C,KAAKoG,IAAIjJ,MAAQA,GACX6C,IACR,EAsDM,MAAMmK,UAAiBjE,EAE7B,WAAA5D,CAAYnF,EAAOiN,EAAMC,EAAK5L,EAAK6L,GAElC9B,MAAM,SAENxI,KAAKoG,IAAIpF,KAAO,SAChBhB,KAAKoG,IAAIgE,KAAOA,GAAQ,EACxBpK,KAAKoG,IAAIyD,UAAaxM,IAErBA,EAAEyM,iBAAiB,EAEpB9J,KAAK7C,MAAQA,GAAS,EACtB6C,KAAKqK,IAAMA,IAAO,IAClBrK,KAAKvB,IAAMA,GAAO,IAClBuB,KAAKsK,UAAYA,GAAa,EAC9BtK,KAAKoJ,SAASjM,GACd6C,KAAKoG,IAAImE,SAAYlN,IAEpB2C,KAAKoJ,SAASpJ,KAAK7C,MAAM,CAE3B,CAEA,OAAA4M,GAEC,OAAO/J,KAAKoG,IAAIxC,IACjB,CAEA,OAAAoG,CAAQpG,GAGP,OADA5D,KAAKoG,IAAIxC,KAAOA,EACT5D,IACR,CAEA,YAAAwK,CAAaF,GAIZ,OAFAtK,KAAKsK,UAAYA,EACjBtK,KAAKoJ,SAASpJ,KAAK7C,OACZ6C,IACR,CAEA,QAAAyK,CAASJ,EAAK5L,GAMb,OAJAuB,KAAKqK,IAAMA,EACXrK,KAAKvB,IAAMA,EACXuB,KAAKoG,IAAIiE,IAAMA,EACfrK,KAAKoG,IAAI3H,IAAMA,EACRuB,IACR,CAEA,OAAA0K,CAAQN,GAGP,OADApK,KAAKoG,IAAIgE,KAAOA,EACTpK,IACR,CAEA,QAAAmJ,GAEC,OAAOwB,WAAW3K,KAAKoG,IAAIjJ,MAC5B,CAEA,QAAAiM,CAASjM,GAaR,YAXce,IAAVf,KACHA,EAAQwN,WAAWxN,IAEP6C,KAAKqK,MAChBlN,EAAQ6C,KAAKqK,KACVlN,EAAQ6C,KAAKvB,MAChBtB,EAAQ6C,KAAKvB,KAEduB,KAAK7C,MAAQA,EACb6C,KAAKoG,IAAIjJ,MAAQA,EAAMyN,QAAQ5K,KAAKsK,YAE9BtK,IACR,EAiDM,MAAM6K,UAAsBpC,EAElC,WAAAnG,CAAYwI,GAEXtC,QAEAxI,KAAK8K,MAAQA,GAAS,aACtB9K,KAAK+K,KAAO,GACZ/K,KAAKgL,OAAS,GACdhL,KAAKiL,UAAW,IAAI1C,GAASf,SAAS,gBACtCxH,KAAKkL,SAAU,IAAIzC,GAAQjB,SAAS,QACpCxH,KAAKmL,SAAU,IAAI1C,GAAQjB,SAAS,QACpCxH,KAAKmL,QAAQ5E,IAAIvG,KAAKiL,UACtBjL,KAAKoL,WAAY,IAAI3C,GAAQjB,SAAS,UACtCxH,KAAK0J,SAAW,GAChB1J,KAAKuG,IAAIvG,KAAKkL,SACdlL,KAAKuG,IAAIvG,KAAKmL,SACdnL,KAAKuG,IAAIvG,KAAKoL,UACf,CAEA,OAAAC,CAAQC,GACPtL,KAAKkL,QAAQ3E,IAAI+E,EAClB,CAEA,MAAAC,CAAOlE,EAAImE,EAAOF,GAEjB,MAAMG,EAAM,IAAIC,EAAMF,EAAOxL,MAC7ByL,EAAIrE,MAAMC,GACVoE,EAAIjE,SAAS,OACbxH,KAAK+K,KAAKzJ,KAAKmK,GACfzL,KAAKmL,QAAQ5E,IAAIkF,GAEjB,MAAME,EAAQ,IAAIlD,EAClBkD,EAAMvE,MAAMC,GACZsE,EAAMpF,IAAI+E,GACVtL,KAAKgL,OAAO1J,KAAKqK,GACjB3L,KAAKoL,UAAU7E,IAAIoF,GACnB3L,KAAK4L,OAAOvE,EACb,CAEA,MAAAuE,CAAOvE,GAEN,IAAK,IAAIoE,KAAOzL,KAAK+K,KAChBU,EAAIrF,IAAIiB,KAAOA,GAClBoE,EAAI/D,SAAS,YACb1H,KAAK6L,kBAAkBJ,IACbA,EAAIrF,IAAIiB,KAAOrH,KAAK0J,UAC9B+B,EAAI7D,YAAY,YAIlB,IAAK,IAAI+D,KAAS3L,KAAKgL,OAClBW,EAAMvF,IAAIiB,KAAOA,EACpBsE,EAAMvF,IAAI0B,MAAMgE,QAAU,QAChBH,EAAMvF,IAAIiB,KAAOrH,KAAK0J,WAChCiC,EAAMvF,IAAI0B,MAAMgE,QAAU,QAK5B,OADA9L,KAAK0J,SAAWrC,EACTrH,IACR,CAEA,QAAA+L,CAAS1E,EAAIgB,GAEZ,IAAK,IAAIoD,KAAOzL,KAAK+K,KACpB,GAAIU,EAAIrF,IAAIiB,KAAOA,EAAI,CACtBoE,EAAIxD,SAASI,GACb,KACD,CAEF,CAEA,iBAAAwD,CAAkBJ,GAEjB,IAAIO,EACJ,MAAMC,EAAOR,EAAInD,wBACE,eAAftI,KAAK8K,OACRkB,EAAOC,EAAKC,MAAQlM,KAAK+K,KAAKjL,QAAQ2L,GACtCzL,KAAKiL,SAAS7E,IAAI0B,MAAMqE,UAAY,cAAcH,SAElDA,EAAOC,EAAKG,OAASpM,KAAK+K,KAAKjL,QAAQ2L,GACvCzL,KAAKiL,SAAS7E,IAAI0B,MAAMqE,UAAY,cAAcH,OAEpD,EAQM,MAAMN,UAAcjD,EAE1B,WAAAnG,CAAY+F,EAAMgE,GAEjB7D,QACAxI,KAAKsM,OAAS,IAAI1C,EAAQ,UAC1B5J,KAAKsM,OAAOlG,IAAI4B,MAAQK,EACxBrI,KAAKoG,IAAImG,QAAWlP,IAEnBgP,EAAOT,OAAO5L,KAAKoG,IAAIiB,IACvBhK,EAAEmP,gBAAgB,EAEnBxM,KAAKuG,IAAIvG,KAAKsM,OACf,EAOM,MAAMG,UAAevG,EAE3B,WAAA5D,CAAY+J,GAEX7D,MAAM,MACNxI,KAAKqM,OAASA,GAAUA,EAAOA,OAC/BrM,KAAK0M,UAAW,CACjB,CAEA,MAAAC,GAMC,OAJA3M,KAAK0M,UAAW,EAChB1M,KAAKoG,IAAI0B,MAAMgE,QAAU,QACrB9L,KAAKqM,QACRrM,KAAKqM,OAAOM,SACN3M,IACR,CAEA,OAAA4M,GAIC,OAFA5M,KAAK0M,UAAW,EAChB1M,KAAKoG,IAAI0B,MAAMgE,QAAU,OAClB9L,IACR,EAOM,MAAM6M,UAAe3G,EAE3B,WAAA5D,CAAY+J,GAEX7D,MAAM,MACNxI,KAAKqM,OAASA,EACdrM,KAAK0J,UAAW,CACjB,CAEA,GAAAnD,GACC,IAAIuG,EAAM,EACV,MAAMC,GAAM,IAAItE,GAAQrB,MAAM,YAC9B,IAAK,IAAItI,EAAI,EAAGA,EAAIrB,UAAUC,OAAQoB,IAAK,CAC1C,MAAM0H,EAAW/I,UAAUqB,GACvB0H,aAAoBiG,EACvBjE,MAAMjC,IAAIC,IAEVuG,EAAIxG,IAAIC,GACRsG,IAEF,CAEA,OADIA,GAAKtE,MAAMjC,IAAIwG,GACZ/M,IACR,CAEA,MAAA4L,GAIC,OAFA5L,KAAK0J,UAAW,EAChB1J,KAAKwH,SAAS,YACPxH,IACR,CAEA,QAAAgN,GAIC,OAFAhN,KAAK0J,UAAW,EAChB1J,KAAKuH,gBAAgB,SACdvH,IACR,EAOM,MAAMiN,UAAc/G,EAE1B,WAAA5D,CAAYgJ,GAEX9C,MAAM,OACNxI,KAAKwH,SAAS,OACdxH,KAAKuG,IAAI+E,EACV,EClwBM,MAAM4B,UAAoBvE,EAEhC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM2E,GAAY,IAAI1E,GAAQjB,SAAS,kBACjC4F,EAAU5H,EAAO4H,QAEvB,IAAIC,EACJ,MAAMC,EAAS,IAAI1D,EAAQ,UAAUxC,MAAM,SAC3CkG,EAAOlH,IAAImH,YAAcH,EAAQpP,IAAI,8BACrCsP,EAAOlH,IAAIoH,SAAW,KAErB,MAAMrQ,EAAQmQ,EAAOnE,WAEA,IAAjBhM,EAAMO,OACTsC,KAAKsL,MAAMhG,QACD+H,IAAgBlQ,IAC1B6C,KAAKsL,MAAMhG,QACXtF,KAAKyN,SAAStQ,GAAOuQ,MAAKC,IAEzBA,EAAQ3O,SAAQoC,IACfpB,KAAK/B,IAAImD,EAAK,GACb,KAGJiM,EAAclQ,CAAK,EAGpB6C,KAAKoH,MAAM,UACXpH,KAAKsL,MAAQ,IAAImB,EACjBU,EAAU5G,IAAIvG,KAAKsL,OACnBtL,KAAKuG,IAAI,CAAC,IAAI0G,EAAMK,GAASH,IAC7BnN,KAAKwF,OAASA,EACdxF,KAAKiL,cAAW/M,CAIjB,CAOA,cAAMuP,CAASxK,GAEd,MAAM2K,EAAO5N,KAAKwF,OAAOoI,KACnBD,QAAgBE,QAAQC,IAC7BF,EAAKG,MAAMC,WAAWC,KAAIC,GAAQA,EAAKC,KAAKP,EAAKO,KAAKC,KAAKR,IACzDF,KAAKQ,EAAKG,KAAKD,KAAKF,EAAMjL,IAAIqL,QAAQJ,EAAKK,OAAOH,KAAKF,OAC1D,aAAaL,QAAQW,QAAQ,GAAGC,OAAO/N,MAAM,GAAIiN,GAClD,CAEA,GAAA1P,CAAImD,GAEH,MAAMsN,EAAO,IAAI5F,EAAO,IAAM1H,EAAKuN,IAAKvN,EAAKwN,SACvCV,EAAO,IAAIrB,EACjB6B,EAAKtI,IAAImG,QAAU,KAEdvM,KAAKiL,UAAYjL,KAAKiL,WAAaiD,GACtClO,KAAKiL,SAAS+B,WAEfkB,EAAKtC,SACL5L,KAAKiL,SAAWiD,EAChBlO,KAAKwF,OAAOqJ,UAAU/C,QAAQ1K,EAAKuN,MAC5B,GAERT,EAAK3H,IAAImI,GACT1O,KAAKsL,MAAM/E,IAAI2H,EAChB,ECrEM,MAAMY,EAEZ,WAAAxM,CAAYkD,GAEX,MAAM4H,EAAU5H,EAAO4H,QACjB1H,EAAWF,EAAOE,SAElByH,GAAY,IAAI1E,GAAQrB,MAAM,WAC9B5I,EAAO,CACZ,kBACA,eACA,eACA,mBACA,yBACA,mBACA,qBACA,qBACA,iBACA,iBAIKuQ,GAAQ,IAAItG,GAAQjB,SAAS,UAC7BwH,GAAY,IAAIvG,GAAQrB,MAAM,SAASI,SAAS,OAChDyH,EAAY,IAAIrF,EAAQ,UAW9B,IAAIsF,EAASC,EACTC,EAASC,EAXbJ,EAAU7I,IAAI4B,MAAQoF,EAAQpP,IAAIQ,EAAK,IACvCyQ,EAAU7I,IAAImG,QAAWlP,IAExBmI,EAAOpF,KAAK,iBAAiB,GAC7B6O,EAAU7I,IAAIkJ,OACdjS,EAAEmP,gBAAgB,EAEnBwC,EAAUzI,IAAI0I,GACdF,EAAMxI,IAAIyI,GAIc,YAApBtJ,EAAS6J,SACZL,GAAU,IAAIzG,GAAQrB,MAAM,SAASI,SAAS,OAC9C2H,EAAU,IAAIvF,EAAQ,UACtBuF,EAAQlH,SAASmF,EAAQpP,IAAIQ,EAAK,KAClC2Q,EAAQ/I,IAAImG,QAAWlP,IAEtBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,iBACF2C,EAAQ/I,IAAIkJ,MAAM,EAEnBJ,EAAQ3I,IAAI4I,GACZJ,EAAMxI,IAAI2I,GAEVE,GAAU,IAAI3G,GAAQrB,MAAM,SAASI,SAAS,OAC9C6H,EAAU,IAAIzF,EAAQ,UACtByF,EAAQjJ,IAAI4B,MAAQoF,EAAQpP,IAAIQ,EAAK,IACrC6Q,EAAQjJ,IAAImG,QAAWlP,IAEtBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,iBACF6C,EAAQjJ,IAAIkJ,MAAM,EAEnBF,EAAQ7I,IAAI8I,GACZN,EAAMxI,IAAI6I,IAIX,MAAMI,GAAU,IAAI/G,GAAQrB,MAAM,YAAYI,SAAS,QACjDiI,GAAW,IAAI3G,GAAS1B,MAAM,aAAa4B,QAAQ,KAAKZ,eAAe,QAM7E,IAAIsH,EAAQC,EA8DRC,EAAcC,EAmGdC,EAAgBC,EAtEpB,SAASC,IACR,IAAIC,EAAgB5J,SAAS6J,eAAe,0BAE5C,IAAKD,EAAe,OAEpBA,EAAcE,UAAY,GAE1B,IAAInI,EAAQ3B,SAASC,cAAc,MACnC0B,EAAMG,YAAc,oBACpB8H,EAAcxJ,YAAYuB,GAE1BxC,EAAOE,SAAS0K,UAAUpR,SAAQ,CAAC2P,EAAK0B,KACvC,IAAIC,EAAejK,SAASC,cAAc,MACtCiK,EAAelK,SAASC,cAAc,KACtCkK,EAAYnK,SAASC,cAAc,QAEvCiK,EAAaxH,KAAO,IACpBwH,EAAapI,YAAc,YAAYkI,EAAQ,IAE/CE,EAAahE,QAAWlP,IACvBA,EAAEmP,iBAEFnG,SAASoK,iBAAiB,gCAAgCzR,SAAS0P,IAClEA,EAAK/G,UAAUd,OAAO,SAAS,IAGhC0J,EAAa5I,UAAUpB,IAAI,UAE3Bf,EAAOqJ,UAAU/C,QAAQ6C,EAAI,EAG9B6B,EAAUL,UAAY,mCACtBK,EAAUjE,QAAWlP,IACpBA,EAAEyM,kBACFtE,EAAOkL,0BAA0B/B,EAAI,EAGtC2B,EAAa7J,YAAY8J,GACzBD,EAAa7J,YAAY+J,GACzBP,EAAcxJ,YAAY6J,EAAa,GAEzC,CAxIAd,EAAQjJ,IAAIkJ,GACZV,EAAMxI,IAAIiJ,GAIVE,GAAS,IAAIjH,GAAQrB,MAAM,SAASI,SAAS,OAC7CmI,EAAS,IAAI/F,EAAQ,UAGrB+F,EAAOvJ,IAAImG,QAAWlP,IACrBA,EAAEyM,kBACFtE,EAAOoI,KAAK+C,OAAOC,WAAWlD,MAAMmD,KASrC,SAAiBA,GAGhB,IAFkBxK,SAAS6J,eAAe,oBAExB,CACjB,IAAIY,EAAUzK,SAASC,cAAc,MACrCwK,EAAQC,aAAa,KAAM,oBAE3B,IAAIC,EAAW3K,SAASC,cAAc,MACtC0K,EAAS7I,YAAc,UAEvB2I,EAAQrK,YAAYuK,GAEpBH,EAAI7R,SAASiS,IACZ,IAAIC,EAAU7K,SAASC,cAAc,MACjC6K,EAAU9K,SAASC,cAAc,KAErC6K,EAAQpI,KAAO,IACfoI,EAAQhJ,YAAc8I,EAAQzF,MAE9B2F,EAAQ5E,QAAWlP,IAClBA,EAAEmP,iBAEFnG,SAASoK,iBAAiB,0BAA0BzR,SAAS0P,IAC5DA,EAAK/G,UAAUd,OAAO,SAAS,IAGhCsK,EAAQxJ,UAAUpB,IAAI,UAGtBf,EAAOqJ,UAAU/C,QAAQmF,EAAQlI,KAAK,EAGvCmI,EAAQzK,YAAY0K,GACpBL,EAAQrK,YAAYyK,EAAQ,IAG7BxB,EAAOtJ,IAAIK,YAAYqK,EACxB,CAEczK,SAAS6J,eAAe,oBAC9BvI,UAAUyJ,OAAO,SAC1B,CAjDEC,CAAQR,EAAI,GACZ,EAGFnB,EAAOnJ,IAAIoJ,GACXZ,EAAMxI,IAAImJ,GAkDVE,GAAe,IAAInH,GAAQrB,MAAM,SAASI,SAAS,OACnDqI,EAAe,IAAIjG,EAAQ,UAE3BiG,EAAazJ,IAAImG,QAAWlP,IAC3BA,EAAEyM,kBAOH,WACC,IAAImG,EAAgB5J,SAAS6J,eAAe,0BAEvCD,IACJA,EAAgB5J,SAASC,cAAc,MACvC2J,EAAcc,aAAa,KAAM,0BACjCO,EAAYlL,IAAIK,YAAYwJ,IAG7BD,IACAC,EAActI,UAAUyJ,OAAO,SAChC,CAjBCG,EAAe,EAGhB3B,EAAarJ,IAAIsJ,GACjBd,EAAMxI,IAAIqJ,GAeVpK,EAAOvF,GAAG,cAAc,CAACsJ,EAASoF,KACjCqB,GAAqB,IA+CtBxK,EAAOkL,0BAA4B,SAAU/B,GAE5C,IAAIsB,EAAgB5J,SAAS6J,eAAe,0BAC5C,IAAKD,EAAe,OAEpB,IAAIuB,EAAgBvB,EAAcQ,iBAAiB,MAC/CgB,EAAarS,MAAMsS,KAAKF,GAAenD,MAAKH,GACxCA,EAAKyD,cAAc,KAAKxJ,YAAYyJ,SAASjD,KAGjD8C,GACHA,EAAW5K,SAGZ,MAAMwJ,EAAQ7K,EAAOE,SAAS0K,UAAUtQ,QAAQ6O,IACjC,IAAX0B,GACH7K,EAAOE,SAAS0K,UAAU3O,OAAO4O,EAAO,GAGzC7K,EAAOpF,KAAK,cAAc,EAAOuO,GACjCnJ,EAAOqM,eAAeC,eAAenD,EACtC,EAMAmB,GAAiB,IAAIrH,GAAQrB,MAAM,SAASI,SAAS,OACrDuI,EAAiB,IAAInG,EAAQ,UAG7BmG,EAAe3J,IAAImG,QAAWlP,IAC7BA,EAAEyM,kBAQH,WAGC,IAFmBzD,SAAS6J,eAAe,4BAExB,CAClB,IAAI6B,EAAkB1L,SAASC,cAAc,MAC7CyL,EAAgBhB,aAAa,KAAM,4BAEnC,IAAI/I,EAAQ3B,SAASC,cAAc,MACnC0B,EAAMG,YAAc,uBAEpB4J,EAAgBtL,YAAYuB,GAE5BxC,EAAOE,SAASsM,YAAYhT,SAASiT,IACpC,IAAIC,EAAW7L,SAASC,cAAc,MAClC6L,EAAW9L,SAASC,cAAc,KAClCkK,EAAYnK,SAASC,cAAc,QAEvC6L,EAASpJ,KAAO,IAChBoJ,EAAShK,YAAc8J,EAAK5J,KAE5B8J,EAAS5F,QAAWlP,IACnBA,EAAEmP,iBAEFnG,SAASoK,iBAAiB,kCAAkCzR,SAAS0P,IACpEA,EAAK/G,UAAUd,OAAO,SAAS,IAGhCsL,EAASxK,UAAUpB,IAAI,UAEvBf,EAAOqJ,UAAU/C,QAAQmG,EAAKtD,IAAI,EAGnC6B,EAAUL,UAAY,mCAEtBK,EAAUjE,QAAWlP,IACpBA,EAAEyM,kBACFtE,EAAO4M,sBAAsBH,EAAK,EAGnCC,EAASzL,YAAY0L,GACrBD,EAASzL,YAAY+J,GACrBuB,EAAgBtL,YAAYyL,EAAS,IAGtCpC,EAAe1J,IAAIK,YAAYsL,EAChC,CAEsB1L,SAAS6J,eAAe,4BAC9BvI,UAAUyJ,OAAO,SAClC,CAxDCiB,EAAiB,EAGlBvC,EAAevJ,IAAIwJ,GACnBhB,EAAMxI,IAAIuJ,GAsDVtK,EAAO4M,sBAAwB,SAAUH,GACxC,IAAIF,EAAkB1L,SAAS6J,eAAe,4BAC9C,IAAK6B,EAAiB,OAEtB,IAAIO,EAAYP,EAAgBtB,iBAAiB,MAC7CgB,EAAarS,MAAMsS,KAAKY,GAAWjE,MAAKH,IAC3CA,EAAKyD,cAAc,KAAKxJ,YAAgB8J,EAAK5J,IAAI,IAG9CoJ,GACHA,EAAW5K,SAGZ,MAAM0L,EAAmB/M,EAAO+M,iBAC5BA,IACHA,EAAiBC,WAAWP,GAC5BM,EAAiBE,UAGlB,MAAMpC,EAAQ7K,EAAOE,SAASsM,YAAYU,WAAWC,GAAMA,EAAEhE,MAAQsD,EAAKtD,OAC3D,IAAX0B,GACH7K,EAAOE,SAASsM,YAAYvQ,OAAO4O,EAAO,GAG3C7K,EAAOqJ,UAAUmD,YAAYnL,OAAOoL,EAAKtD,IAAK,YAC/C,EAMA,MAAMiE,GAAkB,IAAInK,GAAQjB,SAAS,eAEvCqL,GAAc,IAAIjK,GAAUpB,SAAS,wBAC3CqL,EAAYzK,eAAe,cAE3B,MAAM0K,GAAa,IAAIrK,GAAQjB,SAAS,YAClCuL,GAAe,IAAIxK,GAASf,SAAS,sBAAsBY,eAAe,KAC1E4K,GAAY,IAAI9J,GAASd,eAAe,SACxC6K,GAAY,IAAI1K,GAASf,SAAS,eAAeY,eAAe,OAEtE0K,EAAWvM,IAAIwM,GACfD,EAAWvM,IAAIyM,GACfF,EAAWvM,IAAI0M,GAEfL,EAAgBrM,IAAIsM,GACpBD,EAAgBrM,IAAIuM,GAKpB,MAAMI,GAAQ,IAAIzK,GAAQjB,SAAS,UAEnC,IAAI2L,EAAeC,EACf1N,EAAS2N,aAEZF,GAAgB,IAAI1K,GAAQrB,MAAM,UAAUI,SAAS,OACrD4L,EAAc,IAAIxJ,EAAQ,SAASpC,SAAS,gBAC5C4L,EAAYhN,IAAI4B,MAAQoF,EAAQpP,IAAIQ,EAAK,IAGzC4U,EAAYhN,IAAIkN,QAAWjW,IAC1B,MAAMkW,EAAgBlW,EAAEyH,OAAO3H,MAG/BqI,EAAOpF,KAAK,eAAgBmT,EAAc,EAG3CJ,EAAc5M,IAAI6M,GAClBF,EAAM3M,IAAI4M,IAKX,IA4CIK,EA6CAC,EAAWC,EAmFXpC,EAAaqC,EAkBbC,EAuCAC,EAAUC,EArOVC,GAAY,IAAInL,GAAUpB,SAAS,gBAAgBY,eAAe,kBAClE4L,GAAc,IAAIvL,GAAQrB,MAAM,gBAAgBI,SAAS,OACzDyM,EAAkB,IAAIrK,EAAQ,UAAUpC,SAAS,qBACjD0M,EAAkB,IAAItK,EAAQ,UAAUpC,SAAS,qBACjD2M,EAAgB,IAAIvK,EAAQ,QAAQpC,SAAS,mBAE7C4M,EAAW1O,EAAS0O,UAAY,GAuCpC,GAtCAD,EAAc/N,IAAIjJ,MAAQiX,EAE1BH,EAAgB7N,IAAI+B,YAAc,IAClC8L,EAAgB7N,IAAImG,QAAU,KAC7B6H,EAAW1V,KAAKD,IAAI,EAAG2V,EAAW,GAClCD,EAAc/N,IAAIjJ,MAAQiX,EAE1B5O,EAAOpF,KAAK,gBAAiB,CAAEgU,SAAUA,GAAW,EAGrDF,EAAgB9N,IAAI+B,YAAc,IAClC+L,EAAgB9N,IAAImG,QAAU,KAC7B6H,EAAW1V,KAAK2L,IAAI,GAAI+J,EAAW,GACnCD,EAAc/N,IAAIjJ,MAAQiX,EAE1B5O,EAAOpF,KAAK,gBAAiB,CAAEgU,SAAUA,GAAW,EAGrDD,EAAc/N,IAAImE,SAAW,KAC5B,IAAI8J,EAAUC,SAASH,EAAc/N,IAAIjJ,MAAO,KAC3CoX,MAAMF,IAAYA,GAAW,GAAKA,GAAW,IACjDD,EAAWC,EAEX7O,EAAOpF,KAAK,gBAAiB,CAAEgU,SAAUA,KAEzCD,EAAc/N,IAAIjJ,MAAQiX,CAC3B,EAGDJ,EAAYzN,IAAIwN,GAChBC,EAAYzN,IAAI0N,GAChBD,EAAYzN,IAAI4N,GAChBH,EAAYzN,IAAI2N,GAChBhB,EAAM3M,IAAIyN,GAKNtO,EAAS8O,SAAU,CACtB,MAAMC,EAAUpX,IAEfmI,EAAOkP,QAAQpP,QACfE,EAAOkP,QAAQzW,IAAIZ,EAAEyH,OAAOtF,QAAQ,KACnCgG,EAAO+I,SACP/I,EAAOlB,KAAKjH,EAAEyH,OAAOtF,QACrB,MAAMyJ,EAAM,IAAI0L,IAAI3Q,OAAO4Q,SAASC,QACpC7Q,OAAO8Q,QAAQC,UAAU,CAAC,EAAG,GAAI9L,EAAI,GACpC,EAEGvE,EAAWrH,IAChBgH,QAAQxF,MAAMxB,EAAE,EAEX2X,GAAc,IAAIvM,GAAQrB,MAAM,SAASI,SAAS,OACxDgM,EAAc,IAAI5J,EAAQ,QAC1B4J,EAAYpN,IAAI4B,MAAQoF,EAAQpP,IAAIQ,EAAK,IACzCgV,EAAYpN,IAAI6O,OAAS,uBACzBzB,EAAYpN,IAAImE,SAAYlN,IAE3B,GAA8B,IAA1BA,EAAEyH,OAAOoQ,MAAMxX,OAGnB,GAAIsG,OAAOmR,WAAY,CAEtB,MAAMtP,EAAK,IAAIsP,WACftP,EAAG4O,OAASA,EACZ5O,EAAGuP,kBAAkB/X,EAAEyH,OAAOoQ,MAAM,IACpCrP,EAAGnB,QAAUA,CACd,MACC2Q,MAAMjI,EAAQpP,IAAIQ,EAAK,IACxB,EAGDgV,EAAYpN,IAAImG,QAAWlP,IAE1BmW,EAAYpN,IAAIkJ,MAAM,EAEvB0F,EAAYzO,IAAIiN,GAChBN,EAAM3M,IAAIyO,EACX,CA0GA,GApGAvB,GAAY,IAAIhL,GAAQrB,MAAM,SAASI,SAAS,OAChDkM,EAAY,IAAI9J,EAAQ,UACxB8J,EAAUzL,SAASmF,EAAQpP,IAAIQ,EAAK,KAEpCkV,EAAUtN,IAAImG,QAAWlP,IACxBA,EAAEyM,kBAOH,WAEC,IADoBzD,SAAS6J,eAAe,uBACxB,CACnB,IAAIoF,EAAcjP,SAASC,cAAc,OACzCgP,EAAYvE,aAAa,KAAM,uBAC/BuE,EAAY3N,UAAUpB,IAAI,gBAE1B,IAAIgP,EAAkBlP,SAASC,cAAc,OAC7CiP,EAAgB5N,UAAUpB,IAAI,oBAE9B,IAAIiP,EAAanP,SAASC,cAAc,QACxCkP,EAAW7N,UAAUpB,IAAI,eACzBiP,EAAWrF,UAAY,+BAEvB,IAAIsF,EAAcpP,SAASC,cAAc,SACzCmP,EAAY1E,aAAa,OAAQ,UACjC0E,EAAY1E,aAAa,cAAe,UACxC0E,EAAY1E,aAAa,KAAM,SAC/B0E,EAAY1E,aAAa,QAAS,wBAElCwE,EAAgB9O,YAAY+O,GAC5BD,EAAgB9O,YAAYgP,GAE5B,IAAIC,EAAkBrP,SAASC,cAAc,MAC7CoP,EAAgB3E,aAAa,KAAM,0BAEnC,IAAI4E,EAAc,IAAIzI,EAAY1H,GAClCiQ,EAAYnC,QAAUsC,UACrB,IAAIC,EAAQJ,EAAYtY,MAAM2Y,OAC9B,GAAID,EAAMnY,OAAS,EAAG,CACrB,IAAIiQ,QAAgBgI,EAAYlI,SAASoI,GAGzC,GAFAH,EAAgBvF,UAAY,GAEL,IAAnBxC,EAAQjQ,OAAc,CACzB,IAAIqY,EAAe1P,SAASC,cAAc,MAC1CyP,EAAaC,UAAY,oCACzBD,EAAajO,MAAMmO,MAAQ,OAC3BF,EAAajO,MAAMoO,QAAU,MAC7BR,EAAgBjP,YAAYsP,EAC7B,CAEApI,EAAQ3O,SAASoC,IAChB,IAAI8M,EAAO7H,SAASC,cAAc,MAC9BoI,EAAOrI,SAASC,cAAc,KAClCoI,EAAK3F,KAAO,IAAM3H,EAAKuN,IACvBD,EAAKvG,YAAc/G,EAAKwN,QACxBF,EAAKnC,QAAWlP,IACfA,EAAEmP,iBACFmJ,EAAYnQ,OAAOqJ,UAAU/C,QAAQ1K,EAAKuN,IAAI,EAE/CT,EAAKzH,YAAYiI,GACjBgH,EAAgBjP,YAAYyH,EAAK,GAEnC,MACCwH,EAAgBvF,UAAY,EAC7B,EAGDmF,EAAY7O,YAAY8O,GACxBD,EAAY7O,YAAYiP,GACxBjC,EAAUrN,IAAIK,YAAY6O,EAC3B,CAEkBjP,SAAS6J,eAAe,uBAC9BvI,UAAUyJ,OAAO,SAC9B,CAvEC+E,EAAiB,EAGlB1C,EAAUlN,IAAImN,GACdR,EAAM3M,IAAIkN,GAwEN/N,EAAS0K,YACZkB,GAAc,IAAI7I,GAAQrB,MAAM,SAASI,SAAS,OAClDmM,EAAc,IAAI/J,EAAQ,UAC1B+J,EAAY1L,SAASmF,EAAQpP,IAAIQ,EAAK,KACtCmV,EAAYvN,IAAImG,QAAWlP,IAE1B,MAAMsR,EAAM3O,KAAKoW,YACXlX,GAAoC,IAA9BsG,EAAO6Q,aAAa1H,GAChCnJ,EAAOpF,KAAK,aAAclB,GAC1B7B,EAAEmP,iBACFmH,EAAYvN,IAAIkJ,MAAM,EAEvBgC,EAAY/K,IAAIoN,GAChBT,EAAM3M,IAAI+K,IAKP5L,EAAS4Q,WAAY,CAExB,MAAMC,GAAgB,IAAI9N,GAAQrB,MAAM,SAASI,SAAS,OAC1DoM,EAAgB,IAAIhK,EAAQ,UAC5BgK,EAAc3L,SAASmF,EAAQpP,IAAIQ,EAAK,KACxCoV,EAAcxN,IAAImG,QAAWlP,IAE5B2C,KAAKwW,mBACLnZ,EAAEmP,gBAAgB,EAGnBnG,SAASwD,UAAaxM,IAEP,QAAVA,EAAE0B,MACL1B,EAAEmP,iBACFxM,KAAKwW,mBACN,EAGDnQ,SAASoQ,mBAAsBpZ,IAE9B,MAAMC,EAAI0G,OAAO0S,OAAOxK,QAAU7O,EAAEyH,OAAO6R,YACrCC,EAAI5S,OAAO0S,OAAOtK,SAAW/O,EAAEyH,OAAO+R,aAExCvZ,GAAKsZ,EACRL,EAAc7O,SAAS,gBAEvB6O,EAAc3O,YAAY,eAC3B,EAED2O,EAAchQ,IAAIqN,GAClBV,EAAM3M,IAAIgQ,EACX,CAEApJ,EAAU5G,IAAI,CAACwI,EAAO6D,EAAiBM,IACvC7M,SAASyQ,KAAKrQ,YAAY0G,EAAU/G,KAIpCyN,GAAW,IAAIpL,GAAQrB,MAAM,aAAaI,SAAS,OACnDsM,EAAW,IAAIlK,EAAQ,UAAUpC,SAAS,UAC1CsM,EAAS7L,SAASmF,EAAQpP,IAAIQ,EAAK,KAInCqV,EAAStN,IAAIuN,GACbZ,EAAM3M,IAAIsN,GAKVrO,EAAOvF,GAAG,aAAc2U,IAEvB,GAAIlP,EAAS0K,UAAW,CACvB,MAAMzB,EAAMiG,EAASmC,MAAMpI,KACe,IAA9BnJ,EAAO6Q,aAAa1H,GAE/B2C,EAAY1J,YAAY,cAExB0J,EAAY5J,SAAS,cAEtB1H,KAAKoW,YAAczH,CACpB,CACwB,YAApBjJ,EAAS6J,SACZL,EAAQ9I,IAAI0B,MAAMgE,QAAU8I,EAASoC,QAAU,OAAS,QACxD5H,EAAQhJ,IAAI0B,MAAMgE,QAAU8I,EAASqC,MAAQ,OAAS,QACvD,IAGDzR,EAAOvF,GAAG,cAAesJ,IAEpBA,EACH+H,EAAY5J,SAAS,cAErB4J,EAAY1J,YAAY,aACzB,IAGDpC,EAAOvF,GAAG,mBAAoB9C,IAE7B8R,EAAUhH,SAASmF,EAAQpP,IAAIQ,EAAK,KAEZ,YAApBkH,EAAS6J,SACZJ,EAAQlH,SAASmF,EAAQpP,IAAIQ,EAAK,KAClC6Q,EAAQpH,SAASmF,EAAQpP,IAAIQ,EAAK,MAE/BkH,EAAS8O,UACZhB,EAAYvL,SAASmF,EAAQpP,IAAIQ,EAAK,KAEnCkH,EAAS0K,WACZuD,EAAY1L,SAASmF,EAAQpP,IAAIQ,EAAK,KAEnCkH,EAAS4Q,YACZ1C,EAAc3L,SAASmF,EAAQpP,IAAIQ,EAAK,KAErCkH,EAAS2N,YACZ6D,cAAcjP,SAASmF,EAAQpP,IAAIQ,EAAK,IACzC,GAGF,CAEA,gBAAAgY,GAECnQ,SAAS8Q,cAAc7H,OAEY,OAA/BjJ,SAAS+Q,kBACZ/Q,SAASgR,gBAAgBC,oBACfjR,SAASkR,gBACnBlR,SAASkR,gBAEX,EClqBM,MAAMC,EAEZ,WAAAlV,CAAYkD,GAEX,MAAME,EAAWF,EAAOE,SAClByH,GAAY,IAAI1E,GAAQrB,MAAM,WAEpC,IAAIqQ,EACJ,GAAwB,YAApB/R,EAAS6J,OAAsB,CAElCkI,GAAO,IAAIhP,GAAQrB,MAAM,QAAQI,SAAS,SAC1CiQ,EAAKrR,IAAImG,QAAWlP,IAEnBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,gBAAgB,EAEnB,MAAMkL,EAAW,IAAInP,EACrBmP,EAAStR,IAAI+J,UAAY,yCACzBsH,EAAKlR,IAAImR,GACTvK,EAAU5G,IAAIkR,EACf,CAEA,MAAME,GAAS,IAAIlP,GAAQrB,MAAM,UAQjC,IAAIwQ,EACJ,GARAzK,EAAU5G,IAAIoR,GAGdnS,EAAOvF,GAAG,gBAAiBgW,IAC1B0B,EAAOvR,IAAI0B,MAAM+P,gBAAkB5B,CAAK,IAIjB,YAApBvQ,EAAS6J,OAAsB,CAClCqI,GAAO,IAAInP,GAAQrB,MAAM,QAAQI,SAAS,SAC1CoQ,EAAKxR,IAAImG,QAAWlP,IAEnBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,gBAAgB,EAEnB,MAAMsL,EAAY,IAAIvP,EACtBuP,EAAU1R,IAAI+J,UAAY,0CAC1ByH,EAAKrR,IAAIuR,GACT3K,EAAU5G,IAAIqR,EACf,CAEA,MAAMG,GAAS,IAAItP,GAAQrB,MAAM,UAC3B4Q,GAAU,IAAIvP,GAAQrB,MAAM,WAC5B6Q,GAAU,IAAIxP,GAAQrB,MAAM,WAClC6Q,EAAQ7R,IAAImG,QAAWlP,IACtBmI,EAAOpF,KAAK,iBAAiB,GAC7B/C,EAAEmP,gBAAgB,EAGnBW,EAAU5G,IAAI,CAACwR,EAAQC,EAASC,IAChC5R,SAASyQ,KAAKrQ,YAAY0G,EAAU/G,KAIpCZ,EAAOvF,GAAG,aAAciY,IAEvBP,EAAOnQ,SAAS0Q,EAAIC,MACpBJ,EAAO3R,IAAI0B,MAAMgE,QAAU,OAAO,IAGnCtG,EAAOvF,GAAG,cAAc,KAEvB8X,EAAO3R,IAAI0B,MAAMgE,QAAU,MAAM,IAGlCtG,EAAOvF,GAAG,UAAWmY,IAEhBA,EAAMC,QAAUD,EAAMlM,MAAQkM,EAAME,YACvCN,EAAQ5R,IAAI0B,MAAMgE,QAAU,QAE5BkM,EAAQ5R,IAAI0B,MAAMgE,QAAU,MAC7B,IAGDtG,EAAOvF,GAAG,eAAgB9C,IAEzBwa,EAAOnQ,SAASrK,EAAM,IAGvBqI,EAAOvF,GAAG,aAAc2U,IAEC,YAApBlP,EAAS6J,SACRqF,EAASoC,QACZS,EAAK/P,SAAS,YAEd+P,EAAK7P,YAAY,YAEdgN,EAASqC,MACZW,EAAKlQ,SAAS,YAEdkQ,EAAKhQ,YAAY,YAEnB,IAGDpC,EAAOvF,GAAG,QAAQ,KAEO,YAApByF,EAAS6J,SACZkI,EAAK/P,SAAS,UACd6Q,YAAW,KAAQd,EAAK7P,YAAY,SAAS,GAAK,KACnD,IAGDpC,EAAOvF,GAAG,QAAQ,KAEO,YAApByF,EAAS6J,SACZqI,EAAKlQ,SAAS,UACd6Q,YAAW,KAAQX,EAAKhQ,YAAY,SAAS,GAAK,KACnD,IAGDpC,EAAOvF,GAAG,iBAAkB9C,IAE3B8a,EAAQ7R,IAAI0B,MAAMgE,QAAU3O,EAAQ,QAAU,MAAM,IAGrDqI,EAAOvF,GAAG,iBAAiB,KAE1B0X,EAAOrS,OAAO,GAEhB,EC3HM,MAAMkT,UAAiB7P,EAE7B,WAAArG,CAAYkD,GAEXgD,QACA,MAAM2E,GAAY,IAAI1E,GAAQjB,SAAS,kBACjC4F,EAAU5H,EAAO4H,QACjB5O,EAAO,CACZ,oBAEKgN,EAAQ,IAAItC,EAAOkE,EAAQpP,IAAIQ,EAAK,KAAKgJ,SAAS,SACxDxH,KAAKwF,OAASA,EACdxF,KAAKiL,cAAW/M,EAChB8B,KAAKoH,MAAM,YACXpH,KAAKuG,IAAI,IAAI0G,EAAMzB,GAAO9D,SAAS,WAInClC,EAAOvF,GAAG,cAAe4Q,IAExB1D,EAAU7H,QACV6H,EAAU5G,IAAIvG,KAAKyY,YAAY5H,IAC/B7Q,KAAKuG,IAAI4G,EAAU,IAGpB3H,EAAOvF,GAAG,mBAAoB9C,IAE7BqO,EAAMpC,SAASgE,EAAQpP,IAAIQ,EAAK,IAAI,GAEtC,CAEA,WAAAia,CAAY5H,EAAKxE,GAEhB,MAAMqM,EAAO,IAAIjM,EAAOJ,GAoDxB,OAlDAwE,EAAI7R,SAASiS,IAEZ,MAAMvC,EAAO,IAAI5F,EAAOmI,EAAQlI,KAAMkI,EAAQzF,OACxC0C,EAAO,IAAIrB,EAAO6L,GAAMtR,MAAM6J,EAAQ5J,IACtCsR,EAAO,IAAIpQ,EAyBjB,GAvBAmG,EAAKtI,IAAImG,QAAWlP,IAEf2C,KAAKiL,UAAYjL,KAAKiL,WAAaiD,GACtClO,KAAKiL,SAAS+B,WAEfkB,EAAKtC,SACL5L,KAAKiL,SAAWiD,EAChBlO,KAAKwF,OAAOE,SAASkT,UAAY3H,EAAQ5J,GACzCrH,KAAKwF,OAAOqJ,UAAU/C,QAAQmF,EAAQlI,MACtC1L,EAAEmP,gBAAgB,EAEnB0B,EAAK3H,IAAI,CAACoS,EAAMjK,IAChB1O,KAAKwF,OAAOqT,SAAS5H,EAAQlI,MAAQ,CACpC1B,GAAI4J,EAAQ5J,GACZmE,MAAOyF,EAAQzF,OAGZxL,KAAKwF,OAAOE,SAASkT,YAAc3H,EAAQ5J,KAC9CqR,EAAK/L,SACLuB,EAAKtC,SACL5L,KAAKiL,SAAWiD,GAGb+C,EAAQ6H,UAAY7H,EAAQ6H,SAASpb,OAAS,EAAG,CAEpD,MAAMqb,EAAW/Y,KAAKyY,YAAYxH,EAAQ6H,SAAU5K,GACpDyK,EAAKnR,SAAS,oBACdmR,EAAKvS,IAAImG,QAAU,KAEdwM,EAASrM,UACZqM,EAASnM,UACT+L,EAAKnR,SAAS,sBAEduR,EAASpM,SACTgM,EAAKnR,SAAS,qBAER,GAER0G,EAAK3H,IAAIwS,EACV,CAEAL,EAAKnS,IAAI2H,EAAK,IAGRwK,CACR,ECtFM,MAAMM,UAAuBrQ,EAEnC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM2E,GAAY,IAAI1E,GAAQjB,SAAS,kBACjC4F,EAAU5H,EAAO4H,QACjB5O,EAAO,CACZ,oBACA,2BAEKya,EAAc,IAAI/P,EAAOkE,EAAQpP,IAAIQ,EAAK,KAAKgJ,SAAS,SACxD0R,EAAW,IAAItP,EAAQ,SAAUwD,EAAQpP,IAAIQ,EAAK,KACxD0a,EAAS9S,IAAImG,QAAWlP,IAEvB2C,KAAKmZ,iBACL3T,EAAOpF,KAAK,cAAc,GAC1B/C,EAAEmP,gBAAgB,EAEnBxM,KAAKuG,IAAI,IAAI0G,EAAM,CAACgM,EAAaC,IAAWxR,SAAS,WACrD1H,KAAKiL,cAAW/M,EAChB8B,KAAKoQ,UAAY,IAAI3D,EACrBU,EAAU5G,IAAIvG,KAAKoQ,WACnBpQ,KAAKoH,MAAM,aACXpH,KAAKuG,IAAI4G,GACTnN,KAAKwF,OAASA,EAEd,MAAMiN,EAAS,KAEdyG,EAAS9S,IAAIgT,SAAgD,IAArC5T,EAAOE,SAAS0K,UAAU1S,MAAY,EAK/D8H,EAAOvF,GAAG,aAAa,CAACoZ,EAAUnB,KAEjCA,EAAI9H,UAAUpR,SAAS2P,IAEtB3O,KAAKsZ,YAAY3K,EAAI,IAEtB8D,GAAQ,IAGTjN,EAAOvF,GAAG,aAAc2U,IAEvB5U,KAAKoW,YAAcxB,EAASmC,MAAMpI,GAAG,IAGtCnJ,EAAOvF,GAAG,cAAc,CAACsJ,EAASoF,KAC7BpF,EACHvJ,KAAKuZ,iBAELvZ,KAAK8R,eAAenD,GAErB8D,GAAQ,IAGTjN,EAAOvF,GAAG,mBAAoB9C,IAE7B8b,EAAY7P,SAASgE,EAAQpP,IAAIQ,EAAK,KACtC0a,EAAS9P,SAASgE,EAAQpP,IAAIQ,EAAK,IAAI,GAEzC,CAEA,cAAA+a,GAEC,MAAM5K,EAAM3O,KAAKoW,YAEbpW,KAAKwF,OAAO6Q,aAAa1H,IAAQ,IAGrC3O,KAAKsZ,YAAY3K,GACjB3O,KAAKwF,OAAOE,SAAS0K,UAAU9O,KAAKqN,GAErC,CAEA,cAAAmD,CAAenD,GACd,MAAM6K,EAAO7K,GAAO3O,KAAKoW,YACnB/F,EAAQrQ,KAAKwF,OAAO6Q,aAAamD,IACxB,IAAXnJ,IAGJrQ,KAAKoQ,UAAUvJ,OAAOwJ,GACtBrQ,KAAKwF,OAAOE,SAAS0K,UAAU3O,OAAO4O,EAAO,GAC9C,CAEA,cAAA8I,GAECnZ,KAAKoQ,UAAU9K,QACftF,KAAKwF,OAAOE,SAAS0K,UAAY,EAClC,CAEA,WAAAkJ,CAAY3K,GACX,MAAMD,EAAO,IAAI5F,EACXoF,EAAO,IAAIrB,EACX4M,GAAO,IAAIlR,GAASf,SAAS,cAC7BkS,EAAU1Z,KAAKwF,OAAOmU,eAAehL,GAC3C,IAAIiL,EACApO,EAEJ,QAAgBtN,IAAZwb,EAAuB,CAC1B,MAAMG,EAAY7Z,KAAKwF,OAAOoI,KAAKG,MAAM/P,IAAI2Q,GAC7CiL,EAAQC,EAAUD,MAClBpO,EAAQqO,EAAUD,KACnB,MACCA,EAAQF,EAAQrS,GAChBmE,EAAQkO,EAAQlO,MAGjBkD,EAAK1F,QAAQ,IAAM2F,GACnBD,EAAKtI,IAAImG,QAAWlP,IAEf2C,KAAKiL,UAAYjL,KAAKiL,WAAaiD,GACtClO,KAAKiL,SAAS+B,WAEfkB,EAAKtC,SACL5L,KAAKiL,SAAWiD,EAChBlO,KAAKwF,OAAOqJ,UAAU/C,QAAQ6C,GAC9BtR,EAAEmP,gBAAgB,EAEnBkC,EAAKtG,eAAeoD,GAEpBiO,EAAKrT,IAAImG,QAAWlP,IAEnB2C,KAAKwF,OAAOpF,KAAK,cAAc,EAAOuO,GACtCtR,EAAEmP,gBAAgB,EAGnB0B,EAAK3H,IAAI,CAACmI,EAAM+K,IAChBvL,EAAK9G,MAAMwS,GACX5Z,KAAKoQ,UAAU7J,IAAI2H,EACpB,ECnIM,MAAM4L,UAAyBnR,EAErC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM2E,GAAY,IAAI1E,GAAQjB,SAAS,kBACjC4F,EAAU5H,EAAO4H,QACjB5O,EAAO,CACZ,sBACA,6BAEKya,EAAc,IAAI/P,EAAOkE,EAAQpP,IAAIQ,EAAK,KAAKgJ,SAAS,SACxD0R,EAAW,IAAItP,EAAQ,SAAUwD,EAAQpP,IAAIQ,EAAK,KACxD0a,EAAS9S,IAAImG,QAAWlP,IAEvB2C,KAAK+Z,aACL1c,EAAEmP,gBAAgB,EAEnBxM,KAAKuG,IAAI,IAAI0G,EAAM,CAACgM,EAAaC,IAAWxR,SAAS,WACrD1H,KAAKiL,cAAW/M,EAChB8B,KAAKga,MAAQ,IAAIvN,EACjBU,EAAU5G,IAAIvG,KAAKga,OACnBha,KAAKoH,MAAM,eACXpH,KAAKuG,IAAI4G,GACTnN,KAAKwF,OAASA,EACdxF,KAAKyS,OAAS,KAEbyG,EAAS9S,IAAIgT,SAAkD,IAAvC5T,EAAOE,SAASsM,YAAYtU,MAAY,EAKjE8H,EAAOvF,GAAG,aAAciY,IAEvBA,EAAIlG,YAAYhT,SAASiT,IAExBjS,KAAK/B,IAAIgU,EAAK,IAEfjS,KAAKyS,QAAQ,IAGdjN,EAAOvF,GAAG,aAAcgS,IACvBjS,KAAK/B,IAAIgU,GACTjS,KAAKyS,QAAQ,IAGdjN,EAAOvF,GAAG,mBAAoB9C,IAE7B8b,EAAY7P,SAASgE,EAAQpP,IAAIQ,EAAK,KACtC0a,EAAS9P,SAASgE,EAAQpP,IAAIQ,EAAK,IAAI,GAEzC,CAEA,GAAAP,CAAIgU,GAEH,MAAMvD,EAAO,IAAI5F,EAAO,IAAMmJ,EAAKtD,IAAKsD,EAAK5J,MACvC6F,GAAO,IAAIrB,GAASzF,MAAM,QAAU6K,EAAK5O,MACzCoW,GAAO,IAAIlR,GAASf,SAAS,cAGnCkH,EAAKtI,IAAImG,QAAWlP,IAEf2C,KAAKiL,UAAYjL,KAAKiL,WAAaiD,GACtClO,KAAKiL,SAAS+B,WAEfkB,EAAKtC,SACL5L,KAAKiL,SAAWiD,EAChBlO,KAAKwF,OAAOqJ,UAAU/C,QAAQmG,EAAKtD,KACnCtR,EAAEmP,gBAAgB,EAGnBiN,EAAKrT,IAAImG,QAAWlP,IAEnB2C,KAAKwS,WAAWP,GAChB5U,EAAEmP,gBAAgB,EAGnB0B,EAAK3H,IAAI,CAACmI,EAAM+K,IAChBzZ,KAAKga,MAAMzT,IAAI2H,GACflO,KAAKwF,OAAOqJ,UAAUmD,YAAYzL,IACjC,YAAa0L,EAAKtD,IAAK,CAAC,GAtBZ,QAsBqB,iBAAkB,CAAC,GACrD3O,KAAKyS,SAEL,MAAMwH,EAAc5T,SAAS6J,eAAe,4BAC5C,GAAI+J,EAAa,CAChB,MAAMC,EAAkB7T,SAASC,cAAc,MACzC6T,EAAkB9T,SAASC,cAAc,KAC/C6T,EAAgBpR,KAAO,IACvBoR,EAAgBhS,YAAc8J,EAAK5J,KACnC8R,EAAgB5N,QAAWlP,IAC1BA,EAAEmP,iBACFxM,KAAKwF,OAAOqJ,UAAU/C,QAAQmG,EAAKtD,IAAI,EAExCuL,EAAgBzT,YAAY0T,GAE5B,MAAM3J,EAAYnK,SAASC,cAAc,QACzCkK,EAAUL,UAAY,mCAEtBK,EAAUjE,QAAWlP,IACpBA,EAAEyM,kBACF9J,KAAKwF,OAAO4M,sBAAsBH,EAAK,EAExCiI,EAAgBzT,YAAY+J,GAC5ByJ,EAAYxT,YAAYyT,EACzB,CACD,CAEA,UAAA1H,CAAWP,GAEV,MAAM5B,EAAQrQ,KAAKwF,OAAOE,SAASsM,YAAYlS,QAAQmS,GACvD,IAAe,IAAX5B,EACH,OAEDrQ,KAAKga,MAAMnT,OAAOwJ,GAClBrQ,KAAKwF,OAAOE,SAASsM,YAAYvQ,OAAO4O,EAAO,GAC/CrQ,KAAKwF,OAAOqJ,UAAUmD,YAAYnL,OAAOoL,EAAKtD,IAAK,aACnD3O,KAAKyS,SAEL,MAAMwH,EAAc5T,SAAS6J,eAAe,4BACxC+J,GACkBA,EAAYxJ,iBAAiB,MACrCzR,SAAQkP,IAChBA,EAAKyD,cAAc,KAAKxJ,cAAgB8J,EAAK5J,MAChD6F,EAAKrH,QACN,GAGH,CAEA,UAAAkT,GAEC/Z,KAAKwF,OAAOE,SAASsM,YAAYhT,SAAQiT,IACxCjS,KAAKwF,OAAOqJ,UAAUmD,YAAYnL,OAAOoL,EAAKtD,IAAK,YAAY,IAEhE3O,KAAKga,MAAM1U,QACXtF,KAAKwF,OAAOE,SAASsM,YAAc,GACnChS,KAAKyS,QACN,ECzIM,MAAM2H,UAAsBzR,EAElC,WAAArG,CAAYkD,GAEXgD,QACAA,MAAMpB,MAAM,YAEZ,MAAMgG,EAAU5H,EAAO4H,QACjB5O,EAAO,CACZ,mBACA,4BACA,4BACA,wBACA,0BACA,oCAEKya,EAAc,IAAI/P,EAAOkE,EAAQpP,IAAIQ,EAAK,KAAKgJ,SAAS,SAC9DxH,KAAKuG,IAAI,IAAI0G,EAAMgM,GAAavR,SAAS,WAEzC,MAAM2S,EAAgB,IAAIzR,EAAQwE,EAAQpP,IAAIQ,EAAK,IAAK,eAClD8b,EAAc,IAAI5R,EAClBjD,GAAW,IAAI4D,GAAWI,WAAW,CAC1C7D,GAAI,UACJC,GAAI,SACJC,GAAI,WACJC,GAAI,UACJC,GAAI,eAELP,EAASW,IAAImE,SAAYlN,IAExBmI,EAAOpF,KAAK,kBAAmB/C,EAAEyH,OAAO3H,MAAM,EAE/CsI,EAAS2B,MAAM,eACfkT,EAAY/T,IAAI8T,GAChBC,EAAY/T,IAAId,GAEhB,MAAM8U,EAAgB,IAAI3R,EAAQwE,EAAQpP,IAAIQ,EAAK,IAAK,YAClDgc,EAAc,IAAI9R,EAClB0L,EAAW,IAAIjK,EAAS,GAAI,GAElCiK,EAAShO,IAAImE,SAAYlN,IACxB,MAAMgX,EAAUC,SAASjX,EAAEyH,OAAO3H,OAE9BkX,GAAW,GAAKA,GAAW,IAC9B7O,EAAOpF,KAAK,gBAAiB,CAC5BgU,SAAUC,GAEZ,EAGDD,EAAShN,MAAM,YACfoT,EAAYjU,IAAIgU,GAChBC,EAAYjU,IAAI6N,GAChBA,EAAShO,IAAIgT,UAAW,EAIxB,MAAMqB,EAAY,IAAI7R,EAAQwE,EAAQpP,IAAIQ,EAAK,IAAK,QAC9Ckc,EAAU,IAAIhS,EACdyP,GAAO,IAAI9O,GAAWI,WAAW,CACtCkR,UAAW,YACXC,SAAU,aAEXzC,EAAK/R,IAAImE,SAAYlN,IAEpBmI,EAAOpF,KAAK,cAAe/C,EAAEyH,OAAO3H,OAEb,aAAnBE,EAAEyH,OAAO3H,MACZqI,EAAOpF,KAAK,gBAAiB,CAC5Bya,IAAK,OACLxQ,SAAKnM,IAGNsH,EAAOpF,KAAK,gBAAiB,CAC5Bya,SAAK3c,EACLmM,SAAKnM,GAEP,EAEDia,EAAK/Q,MAAM,QACXsT,EAAQnU,IAAIkU,GACZC,EAAQnU,IAAI4R,GAIZ,MAAM2C,EAAiB,IAAI3Q,EAAS,IAAK,GACnC4Q,EAAc,IAAInS,EAAQwE,EAAQpP,IAAIQ,EAAK,IAAK,UAChDwc,EAAY,IAAItS,EAChB2P,GAAS,IAAIhP,GAAWI,WAAW,CACxCwR,KAAM,OACNC,KAAM,SAEP7C,EAAOjS,IAAImE,SAAYlN,IAEtBmI,EAAOpF,KAAK,gBAAiB,CAC5Bya,IAAKxd,EAAEyH,OAAO3H,MACdkN,SAAKnM,IAEN4c,EAAe1U,IAAIgT,SAA8B,SAAnB/b,EAAEyH,OAAO3H,KAAgB,EAExDkb,EAAOjR,MAAM,UAEb4T,EAAUzU,IAAIwU,GACdC,EAAUzU,IAAI8R,GAEd,MAAM8C,EAAsB,IAAIvS,EAAQwE,EAAQpP,IAAIQ,EAAK,IAAK,oBACxD4c,EAAoB,IAAI1S,EAC9BoS,EAAe1U,IAAImE,SAAYlN,IAE9BmI,EAAOpF,KAAK,gBAAiB,CAC5Bya,SAAK3c,EACLmM,IAAKiK,SAASjX,EAAEyH,OAAO3H,QACtB,EAEH2d,EAAe1T,MAAM,oBACrBgU,EAAkB7U,IAAI4U,GACtBC,EAAkB7U,IAAIuU,GAItB,MAAMO,EAAgBjO,EAAQpP,IAAI,+BAC5Bsd,EAAgB,IAAI5S,EACpB6S,EAAa,IAAI3R,EAAQ,YAAY,EAAOyR,EAAc,IAChEE,EAAWnU,MAAM,cACjBmU,EAAWnV,IAAImG,QAAWlP,IAAD,EAKzBie,EAAc/U,IAAI,IAAIqC,EAAQyS,EAAc,GAAI,eAChDC,EAAc/U,IAAIgV,GAElBvb,KAAKuG,IAAI,IAAI0G,EAAM,CAClBqN,EACAE,EACAE,EACAM,EACAI,KAMD5V,EAAOvF,GAAG,aAAciY,IAEvBzS,EAAS2D,SAAS8O,EAAIzS,UACtB2O,EAAShL,SAAS8O,EAAIsD,OAAOpH,UAC7B+D,EAAK/O,SAAS8O,EAAIC,MAClBE,EAAOjP,SAAS8O,EAAIG,OAAOwC,KAC3BC,EAAe1R,SAAS8O,EAAIG,OAAOhO,KACnCyQ,EAAe1U,IAAIgT,SAA8B,SAAnBlB,EAAIG,OAAOwC,GAAc,IAGxDrV,EAAOvF,GAAG,UAAWmY,IAED,aAAfA,EAAMD,MACTE,EAAOjP,SAAS,QAChBiP,EAAOjS,IAAIgT,UAAW,EACtB0B,EAAe1U,IAAIgT,UAAW,GAE9Bf,EAAOjS,IAAIgT,UAAW,CACvB,IAGD5T,EAAOvF,GAAG,mBAAoB9C,IAE7B8b,EAAY7Q,eAAegF,EAAQpP,IAAIQ,EAAK,KAC5C6b,EAAcjS,eAAegF,EAAQpP,IAAIQ,EAAK,KAC9C+b,EAAcnS,eAAegF,EAAQpP,IAAIQ,EAAK,KAC9Cic,EAAUrS,eAAegF,EAAQpP,IAAIQ,EAAK,KAC1Cuc,EAAY3S,eAAegF,EAAQpP,IAAIQ,EAAK,KAC5C2c,EAAoB/S,eAAegF,EAAQpP,IAAIQ,EAAK,IAAI,GAE1D,EC7KM,MAAMid,UAAsB9S,EAElC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM2E,GAAY,IAAI1E,GAAQjB,SAAS,kBACjC4F,EAAU5H,EAAO4H,QACjBsO,EAAS,CAAC,EACV3c,EAAM,mBACNyM,EAAQ,IAAItC,EAAOkE,EAAQpP,IAAIe,IAAMyI,SAAS,SACpDxH,KAAKuG,IAAI,IAAI0G,EAAMzB,GAAO9D,SAAS,WACnCgU,EAAO3c,GAAOyM,EAEdxL,KAAKsL,MAAQ,IAAImB,EACjBzM,KAAKoH,MAAM,YACXpH,KAAKuG,IAAI4G,GAET,MAAM7I,EAAO,CAACzB,EAAM8Y,KACnB,QAAmBzd,IAAfyd,EAAK9Y,IACO,OAAf8Y,EAAK9Y,IAAyC,iBAAf8Y,EAAK9Y,IAA4C,IAAtB8Y,EAAK9Y,GAAMnF,OACrE,OAED,MAAMwQ,EAAO,IAAIrB,EACXrB,GAAQ,IAAItC,GAAS1B,SAAS,SAC9BrK,GAAQ,IAAI+L,GAAS1B,SAAS,SACpCgE,EAAMpC,SAASgE,EAAQpP,IAAIe,EAAM,IAAM8D,GAAM+Y,eAChC,gBAAT/Y,EACH1F,EAAMiJ,IAAI+J,UAAYwL,EAAK9Y,GAE3B1F,EAAMiM,SAASuS,EAAK9Y,IAErB6Y,EAAO3c,EAAM,IAAM8D,GAAQ2I,EAC3B0C,EAAK3H,IAAI,CAACiF,EAAOrO,IACjB6C,KAAKsL,MAAM/E,IAAI2H,EAAK,EAKrB1I,EAAOvF,GAAG,YAAa0b,IAEtB3b,KAAKsL,MAAMhG,QACX6H,EAAU7H,QACV6H,EAAU5G,IAAIvG,KAAKsL,OACnBjF,SAAS2B,MAAQ2T,EAAK3T,MACtB,IAAK,MAAMnF,KAAQ8Y,EAClBrX,EAAKzB,EAAM8Y,EACZ,IAGDnW,EAAOvF,GAAG,mBAAoB9C,IAE7B,IAAK,MAAM0F,KAAQ6Y,EAAQ,CAC1B,IAAIrT,EAEHA,EADGxF,IAAS9D,EACLqO,EAAQpP,IAAI6E,GAEZuK,EAAQpP,IAAI6E,GAAM+Y,cAE1BF,EAAO7Y,GAAMuG,SAASf,EACvB,IAEF,ECvDM,MAAMwT,EAEZ,WAAAvZ,CAAYkD,GAEX,MAAM4H,EAAU5H,EAAO4H,QACjB0O,EAAWtW,EAAOE,SAClBlH,EAAO,CACZ,gBACA,mBACA,oBACA,sBACA,iBACA,mBACA,oBAGK2O,EAAY,IAAItC,EAAc,YAAYzD,MAAM,WAEhD4H,GAAY,IAAIvG,GAAQrB,MAAM,SAASM,SAAS,OAChDuH,EAAY,IAAIrF,EAAQ,UAY9B,GAXAqF,EAAUhH,SAASmF,EAAQpP,IAAIQ,EAAK,KACpCyQ,EAAU7I,IAAImG,QAAWlP,IAExBmI,EAAOpF,KAAK,iBAAiB,GAC7B/C,EAAEmP,iBACFyC,EAAU7I,IAAIkJ,MAAM,EAErBN,EAAUzI,IAAI0I,GACd9B,EAAU9B,QAAQ2D,GAElB7B,EAAU5B,OAAO,QAAS6B,EAAQpP,IAAIQ,EAAK,IAAK,IAAIga,EAAShT,IACzDsW,EAAS1L,UAAW,CACvB,MAAM2L,EAAgB,IAAI/C,EAAexT,GACzC2H,EAAU5B,OAAO,QAAS6B,EAAQpP,IAAIQ,EAAK,IAAKud,GAChDvW,EAAOqM,eAAiBkK,CACzB,CACA,GAAID,EAAS9J,YAAa,CACzB,MAAMgK,EAAkB,IAAIlC,EAAiBtU,GAC7C2H,EAAU5B,OAAO,QAAS6B,EAAQpP,IAAIQ,EAAK,IAAKwd,GAChDxW,EAAO+M,iBAAmByJ,CAC3B,CAEA7O,EAAU5B,OAAO,QAAS6B,EAAQpP,IAAIQ,EAAK,IAAK,IAAI0O,EAAY1H,IAChE2H,EAAU5B,OAAO,QAAS6B,EAAQpP,IAAIQ,EAAK,IAAK,IAAI4b,EAAc5U,IAClE2H,EAAU5B,OAAO,QAAS6B,EAAQpP,IAAIQ,EAAK,IAAK,IAAIid,EAAcjW,IAClE2H,EAAUvB,OAAO,SAEjBvF,SAASyQ,KAAKrQ,YAAY0G,EAAU/G,KAIpCZ,EAAOvF,GAAG,iBAAkB9C,IAEvBA,EACHgQ,EAAU3F,SAAS,QAEnB2F,EAAU5F,gBAAgB,QAC3B,IAGD/B,EAAOvF,GAAG,mBAAoB9C,IAE7B8R,EAAUhH,SAASmF,EAAQpP,IAAIQ,EAAK,KACpC2O,EAAUpB,SAAS,QAASqB,EAAQpP,IAAIQ,EAAK,KACzCsd,EAAS1L,WACZjD,EAAUpB,SAAS,QAASqB,EAAQpP,IAAIQ,EAAK,KAE1Csd,EAAS9J,aACZ7E,EAAUpB,SAAS,QAASqB,EAAQpP,IAAIQ,EAAK,KAE9C2O,EAAUpB,SAAS,QAASqB,EAAQpP,IAAIQ,EAAK,KAC7C2O,EAAUpB,SAAS,QAASqB,EAAQpP,IAAIQ,EAAK,KAC7C2O,EAAUpB,SAAS,QAASqB,EAAQpP,IAAIQ,EAAK,IAAI,GAEnD,EC/EM,MAAMyd,EAET,WAAA3Z,CAAYkD,GAER,MAAM2H,GAAY,IAAI1E,GAAQrB,MAAM,WAC9BgG,EAAU5H,EAAO4H,QACjB5O,EAAO,CACT,gBACA,eAEEgN,EAAQ,IAAI5C,EAAQwE,EAAQpP,IAAIQ,EAAK,IAAK,cAC1C0d,EAAU,IAAItS,EAAQ,OAAQ,IAAIxC,MAAM,cAC9C8U,EAAQ9V,IAAIkN,QAAWjW,IAEnB2C,KAAKyS,SACLpV,EAAEmP,gBAAgB,EAGtB,MAAM2P,EAAS,IAAIvS,EAAQ,SAAUwD,EAAQpP,IAAIQ,EAAK,KACtD2d,EAAO/V,IAAIgT,UAAW,EACtB+C,EAAO/V,IAAImG,QAAWlP,IAElB,MAAM4U,EAAO,CACTtD,IAAK3O,KAAK2O,IACVyN,KAAM,IAAI9Y,KACV+E,KAAM6T,EAAQ/S,WACd9F,KAAMA,KAEVrD,KAAKqc,WAAQne,EACbsH,EAAOE,SAASsM,YAAY1Q,KAAK2Q,GACjCzM,EAAOpF,KAAK,YAAa6R,GACzB9E,EAAU5F,gBAAgB,SAC1BlK,EAAEmP,iBACF2P,EAAO/V,IAAIkJ,MAAM,EAGrBtP,KAAKyS,OAAS,KAEV0J,EAAO/V,IAAIgT,WAAapZ,KAAKqc,OAASH,EAAQ/S,WAAWzL,OAAS,EAAE,EAGxEyP,EAAU5G,IAAI,IAAI0G,EAAM,CAACzB,EAAO0Q,EAASC,IAASzU,SAAS,YAC3DrB,SAASyQ,KAAKrQ,YAAY0G,EAAU/G,KAIpCZ,EAAOvF,GAAG,YAAY,CAAC0O,EAAK2N,KAExBtc,KAAK2O,IAAMA,EACX3O,KAAKqc,MAAQC,EAASD,MAAM1N,GAC5B3O,KAAKyS,SACLtF,EAAU3F,SAAS,QACnB0U,EAAQ9S,SAAS,GAAG,IAGxB5D,EAAOvF,GAAG,cAAc,KAEpBD,KAAKqc,WAAQne,EACb8B,KAAKyS,SACLtF,EAAU5F,gBAAgB,QAAQ,IAGtC/B,EAAOvF,GAAG,mBAAoB9C,IAE1BqO,EAAMpD,eAAegF,EAAQpP,IAAIQ,EAAK,KACtC2d,EAAO/S,SAASgE,EAAQpP,IAAIQ,EAAK,IAAI,GAE7C,ECpEG,MAAM+d,EACT,WAAAja,CAAYkD,GACR,MAAM4H,EAAU5H,EAAO4H,QACjB1H,EAAWF,EAAOE,SAElByH,GAAY,IAAI1E,GAAQrB,MAAM,cAC9B5I,EAAO,CACT,oBACA,iBAIEge,GAAW,IAAI/T,GAAQjB,SAAS,gBAChCiV,GAAc,IAAIhU,GAAQjB,SAAS,iBAEzC,IAKIkV,EALArU,GAAO,IAAIO,GAAUpB,SAAS,eAAeY,eAAe,yBAChEoU,EAASjW,IAAI8B,GAKb,MAAMsU,GAAY,IAAIlU,GAAQrB,MAAM,UAAUI,SAAS,OAwEvD,IAAIoM,EACJ,GAxEA8I,EAAY,IAAI9S,EAAQ,UACxB8S,EAAUzU,SAASmF,EAAQpP,IAAIQ,EAAK,KAEpCke,EAAUtW,IAAImG,QAAWlP,IACrBA,EAAEmP,iBAON,WACI,MAAMoQ,EAAW,CACb,CAAE5U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE9U,MAAO,aAAc6U,OAAQ,qBAAsBC,KAAM,KAI/D,IADoBzW,SAAS6J,eAAe,mBACxB,CAChB,IAAI6M,EAAQ1W,SAASC,cAAc,OACnCyW,EAAMhM,aAAa,KAAM,mBACzBgM,EAAMhM,aAAa,QAAS,cAE5B,IAAIiM,EAAe3W,SAASC,cAAc,OAC1C0W,EAAajM,aAAa,QAAS,sBAEnC,IAAIkM,EAAW5W,SAASC,cAAc,OACtC2W,EAASlM,aAAa,QAAS,aAC/B6L,EAAS5d,SAAS4O,IACd,IAAIsP,EAAW7W,SAASC,cAAc,OACtC4W,EAASnM,aAAa,QAAS,aAC/BmM,EAAS/M,UAAY,wGAEWvC,EAAK5F,iEACJ4F,EAAKiP,+FAERjP,EAAKkP,mCAEnCG,EAASxW,YAAYyW,EAAS,IAGlCF,EAAavW,YAAYwW,GACzBF,EAAMtW,YAAYuW,GAElB7P,EAAU/G,IAAIK,YAAYsW,EAC9B,CAEY1W,SAAS6J,eAAe,mBAC9BvI,UAAUyJ,OAAO,SAC3B,CA9DI+L,EAAgB,EAGpBR,EAAUpW,IAAImW,GACdD,EAAYlW,IAAIoW,GA+DZjX,EAAS4Q,WAAY,CAErB,MAAMC,GAAgB,IAAI9N,GAAQrB,MAAM,SAASI,SAAS,OAC1DoM,EAAgB,IAAIhK,EAAQ,UAC5BgK,EAAc3L,SAASmF,EAAQpP,IAAIQ,EAAK,KACxCoV,EAAcxN,IAAImG,QAAWlP,IAEzB2C,KAAKwW,mBACLnZ,EAAEmP,gBAAgB,EAGtBnG,SAASwD,UAAaxM,IAEJ,QAAVA,EAAE0B,MACF1B,EAAEmP,iBACFxM,KAAKwW,mBACT,EAGJnQ,SAASoQ,mBAAsBpZ,IAKvBgJ,SAAS+Q,kBACTb,EAAc7O,SAAS,gBAEvB6O,EAAc3O,YAAY,eAC9B,EAIJ2O,EAAchQ,IAAIqN,GAClB6I,EAAYlW,IAAIgQ,EACpB,CAEA/Q,EAAOvF,GAAG,mBAAoB9C,IACtBuI,EAAS4Q,YACT1C,EAAc3L,SAASmF,EAAQpP,IAAIQ,EAAK,IAC5C,IAIJ2O,EAAU5G,IAAI,CAACiW,EAAUC,IACzBpW,SAASyQ,KAAKrQ,YAAY0G,EAAU/G,IACxC,CAEA,gBAAAoQ,GAEInQ,SAAS8Q,cAAc7H,OAEY,OAA/BjJ,SAAS+Q,kBACT/Q,SAASgR,gBAAgBC,oBAClBjR,SAASkR,gBAChBlR,SAASkR,gBAEjB,EC7IG,MAAM6F,EAEZ,WAAA9a,CAAY+a,EAAU3X,GAErB,MAAM4X,EAAWlc,IAChB,MAAM6H,EAAM,IAAI0L,IAAI3Q,OAAO4Q,UAC3B,IAAI2I,EAAOF,EACP3X,IAAaA,EAAS8O,UACzB+I,EAAOF,EACHjc,GAAMpB,KAAK0U,QAAQpP,SACblE,GAA8B,IAAtB6H,EAAIqE,OAAO5P,SAC7B6f,EAAOnc,GAERpB,KAAKwd,QAAQD,EAAM7X,GACnB1F,KAAKoN,QAAU,IAAI7H,EAAQvF,MAC3BA,KAAKyd,QAAU,IAAI3O,EAAQ9O,MAC3BA,KAAK0d,QAAU,IAAIlG,EAAQxX,MAC3BA,KAAK2d,OAAS,IAAIpB,EAAOvc,MACzBA,KAAK4d,QAAU,IAAI/B,EAAQ7b,MACvBA,KAAK0F,SAASsM,cACjBhS,KAAK6d,QAAU,IAAI5B,EAAQjc,OAE5BA,KAAKsE,MAAM,EAGZtE,KAAK0F,cAAWxH,EAChB8B,KAAK8d,SfUa,CACZ,WACA,cACA,UACA,QACA,QACA,iBACA,UAEWC,MAAMjf,GAAMkf,UAAUC,UAAUC,MAAMpf,KelBvDkB,KAAK0U,QAAU,IAAI/Q,EACnB,MAAM6Q,EAAW9O,GAAYA,EAAS8O,UAElCxU,KAAK0U,QAAQ3Q,WAAe2B,IAAY8O,EAG3C8I,IAFAtd,KAAK0U,QAAQpQ,MAAK,IAAMtE,KAAK0U,QAAQ1W,KAAKoD,GAASkc,EAAQlc,OAK5D4C,OAAOma,eAAiBne,KAAKuO,OAAOH,KAAKpO,MACzCgE,OAAOoa,aAAepe,KAAKqe,YAAYjQ,KAAKpO,MAC5CgE,OAAO6F,UAAY7J,KAAKse,gBAAgBlQ,KAAKpO,MAC7CgE,OAAOua,QAAWlhB,IACbA,EAAEmhB,SACLnhB,EAAEmP,gBACH,CAEF,CAOA,IAAAlI,CAAK+Y,EAAU3X,GAEd1F,KAAKI,KAAK,iBACVJ,KAAK6Y,SAAW,CAAC,EAEbpb,UAAUC,OAAS,GAEtBsC,KAAKwd,QAAQH,EAAU3X,GAGxB1F,KAAK4N,KAAO6Q,KAAKze,KAAK0F,SAAS2X,UAC/Brd,KAAK6O,UAAY7O,KAAK4N,KAAK8Q,SAAS,SAAU,CAC7CC,QAAS3e,KAAK0F,SAASiZ,QACvBxG,KAAMnY,KAAK0F,SAASyS,KACpBE,OAAQrY,KAAK0F,SAAS2S,OAAOwC,IAC7BC,eAAgB9a,KAAK0F,SAAS2S,OAAOhO,IACrC6B,MAAO,OACPE,OAAQ,OACRwS,MAAM,IAGP,MAAMjQ,EAAM3O,KAAK0F,SAASmZ,oBAEzB7e,KAAK8e,UADFnQ,EACc3O,KAAK6O,UAAU/C,QAAQ6C,GAEvB3O,KAAK6O,UAAU/C,UAGjC9L,KAAK8e,UAAUpR,MAAM2L,IACpBrZ,KAAKI,KAAK,YAAaiZ,EAAUrZ,KAAK0F,SAAS,IAGhD1F,KAAK4N,KAAKmR,MAAMrR,MAAK,KACpB1N,KAAKI,KAAK,YAAaJ,KAAK0F,SAAS,IACnCgI,MAAK,KACP1N,KAAKI,KAAK,aAAa,IAGxBJ,KAAK4N,KAAK+C,OAAOqO,SAAStR,MAAMiO,IAC/B3b,KAAKI,KAAK,WAAYub,EAAK,IAG5B3b,KAAK4N,KAAK+C,OAAOC,WAAWlD,MAAMmD,IACjC7Q,KAAKI,KAAK,aAAcyQ,EAAI,IAG7B7Q,KAAK6O,UAAU5O,GAAG,SAAU5C,IAEJ,UADLA,EAAE4hB,KAAK5Y,SAAS6Y,eACpBle,MACbhB,KAAKI,KAAK,aACX,IAGDJ,KAAK6O,UAAU5O,GAAG,UAAWmY,IAC5BpY,KAAKI,KAAK,SAAUgY,EAAM,IAG3BpY,KAAK6O,UAAU5O,GAAG,YAAY,CAACkf,EAAU7C,KACxCtc,KAAKof,YAAYD,GACjBnf,KAAKI,KAAK,WAAY+e,EAAU7C,EAAS,IAG1Ctc,KAAK6O,UAAU5O,GAAG,aAAc2U,IAC/B5U,KAAKof,YAAYxK,EAASmC,MAAMpI,KAChC3O,KAAKI,KAAK,YAAawU,EAAS,IAGjC5U,KAAK6O,UAAU5O,GAAG,UAAWD,KAAKse,gBAAgBlQ,KAAKpO,OAEvDA,KAAKC,GAAG,QAAQ,KAC8B,QAAzCD,KAAK4N,KAAKyR,QAAQL,SAASM,UAC9Btf,KAAK6O,UAAU+I,OAEf5X,KAAK6O,UAAU4I,MAChB,IAGDzX,KAAKC,GAAG,QAAQ,KAC8B,QAAzCD,KAAK4N,KAAKyR,QAAQL,SAASM,UAC9Btf,KAAK6O,UAAU4I,OAEfzX,KAAK6O,UAAU+I,MAChB,IAGD5X,KAAKC,GAAG,mBAAoB9C,IAC3B6C,KAAK0F,SAASD,SAAWtI,CAAK,IAG/B6C,KAAKC,GAAG,eAAgB9C,IACvB6C,KAAK0F,SAASyS,KAAOhb,EACrB6C,KAAK6O,UAAUsJ,KAAKhb,EAAM,IAG3B6C,KAAKC,GAAG,iBAAkB9C,IACzB,MAAM0d,EAAM1d,EAAM0d,KAAO7a,KAAK0F,SAAS2S,OAAOwC,IACxCxQ,EAAMlN,EAAMkN,KAAOrK,KAAK0F,SAAS2S,OAAOhO,IAC9CrK,KAAK0F,SAAS2S,OAAOwC,IAAMA,EAC3B7a,KAAK0F,SAAS2S,OAAOhO,IAAMA,EAC3BrK,KAAK6O,UAAUwJ,OAAOwC,EAAKxQ,EAAI,IAGhCrK,KAAKC,GAAG,iBAAkB9C,IACzB,MAAMiX,EAAWjX,EAAMiX,SACvBpU,KAAK0F,SAAS8V,OAAOpH,SAAWA,EAChCpU,KAAK6O,UAAU0Q,OAAOnL,SAASA,EAAW,KAAK,GAEjD,CAIA,cAAAuF,CAAehL,GAKd,MAAM0N,EAAQrc,KAAK6O,UAAU2Q,SAAS7Q,GAChCiL,EAAQyC,EAAQA,EAAMoD,eAAeC,WAAWrY,QAAKnJ,EAErD6K,EADW/I,KAAK6O,UAAU8Q,kBACV5I,MAAMhO,KAC5B,OAAO/I,KAAK6Y,SAAS9P,EAAO,IAAM6Q,IAAU5Z,KAAK6Y,SAAS9P,EAC3D,CASA,YAAAsN,CAAa1H,GACZ,OAAO3O,KAAK0F,SAAS0K,UAAUtQ,QAAQ6O,EACxC,CAIA,WAAAiR,CAAY3N,GAEX,OAAOjS,KAAK0F,SAASsM,YAAYlS,QAAQmS,EAC1C,CASA,OAAAuL,CAAQH,EAAU3X,GAEjB1F,KAAK6f,SAAWC,IAAIzC,GAAUlb,WAC9BnC,KAAK0F,SAAW,CACf2X,SAAUA,EACV9N,OAAQvP,KAAK8d,SAAW,OAAS,UACjCa,QAAS3e,KAAK8d,SAAW,aAAe,UACxCiC,SAAS,EACTjL,SAAS,EACTN,WAAUxU,KAAK0U,QAAQ3Q,UACvB0B,SAAU,KACVmT,eAAW1a,EACXkS,UAAW,GACX4B,YAAa,GACbmG,KAAM,YACNE,OAAQ,CACPwC,IAAK,OACLxQ,IAAK,KAENmR,OAAQ,CACPpH,SAAU,IAEXmH,gBAAYrd,EACZoY,WAAYjQ,SAAS2Z,kBACrB3M,WAAY,IAGbjQ,EAAOsC,GAAY,CAAC,EAAG1F,KAAK0F,UAExB1F,KAAK0F,SAASqa,QACjB/f,KAAKigB,mBAAmBva,GAAY,CAAC,GAErC1F,KAAKkgB,qBAEP,CAMA,OAAAC,GAEC,OAAOC,cAAwD,OAAxCA,aAAaC,QAAQrgB,KAAK6f,SAClD,CAOA,mBAAAK,GAEC,QAAKlgB,KAAKmgB,YAGVC,aAAaE,WAAWtgB,KAAK6f,WACtB,EACR,CAOA,kBAAAI,CAAmBM,GAElB,IAAKvgB,KAAKmgB,UACT,OAAO,EAER,IAAIK,EACJ,IACCA,EAASC,KAAKC,MAAMN,aAAaC,QAAQrgB,KAAK6f,UAC/C,CAAE,MAAOxiB,GACRgH,QAAQsc,UAAUtjB,EACnB,CAEA,QAAImjB,IACHpd,EAAOod,EAAQxgB,KAAK0F,SAAU6a,IACvB,EAIT,CAKA,YAAAK,GAEC5gB,KAAK0F,SAASmZ,oBAAsB7e,KAAK6O,UAAU+F,SAASmC,MAAMpI,IAClE,MAAMuJ,EAAM/Z,OAAOtB,OAAO,CAAC,EAAGmD,KAAK0F,iBAC5BwS,EAAI3I,cACJ2I,EAAIyG,eACJzG,EAAIpD,eACJoD,EAAI6H,eACJ7H,EAAI1D,gBACJ0D,EAAIqD,kBACJrD,EAAI5B,kBACJ4B,EAAI7E,WACX+M,aAAaS,QAAQ7gB,KAAK6f,SAAUY,KAAKK,UAAU5I,GACpD,CAEA,WAAAkH,CAAYzQ,GAEX,MAAMoS,EAAU/gB,KAAK4N,KAAKoT,cAAW9iB,EAAY8B,KAAK4N,KAAK3E,IACrDA,EAAM,IAAI0L,IAAI3Q,OAAO4Q,SAAUmM,GACrC9X,EAAIgY,KAAO,IAAMtS,EAGb3O,KAAK0F,SAASoP,SAAW9Q,OAAO4Q,SAASqM,OAAShY,EAAIgY,OAEzDjd,OAAO8Q,QAAQC,UAAU,CAAC,EAAG,GAAI9L,GACjCjJ,KAAKkhB,mBAAqBvS,EAE5B,CAIA,MAAAJ,GAEKvO,KAAK0F,SAASqa,SAAWK,cAC5BpgB,KAAK4gB,cAEP,CAEA,WAAAvC,GAEC,MAAM4C,EAAOjd,OAAO4Q,SAASqM,KAAKrf,MAAM,GACxC5B,KAAK6O,UAAU/C,QAAQmV,EACxB,CAEA,eAAA3C,CAAgBjhB,GAGf,IAAIF,EAAQ6C,KAAK0F,SAAS8V,OAAOpH,SAEjC,OAAQ/W,EAAE0B,KAET,IAAK,IACL,IAAK,IACJ5B,GAPW,EAQX6C,KAAKI,KAAK,gBAAiB,CAAEgU,SAAUjX,IACvC,MACD,IAAK,IACJA,GAXW,EAYX6C,KAAKI,KAAK,gBAAiB,CAAEgU,SAAUjX,IACvC,MACD,IAAK,IACJA,EAAQ,GACR6C,KAAKI,KAAK,gBAAiB,CAAEgU,SAAUjX,IACvC,MACD,IAAK,YACJ6C,KAAKI,KAAK,QACV,MACD,IAAK,aACJJ,KAAKI,KAAK,QAGb,EAGD,EAAagd,EAAO/d,W","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (!existingToc) {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) {\n\t\t\t\tbookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tupdateBookmarksList();\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tupdateBookmarksList();\n\t\t})\n\n\t\tfunction updateBookmarksList() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tbookmarksList.innerHTML = \"\";\n\n\t\t\tlet title = document.createElement(\"h3\");\n\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\t\t\tbookmarksList.appendChild(title);\n\n\t\t\treader.settings.bookmarks.forEach((cfi, index) => {\n\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\tbookmarkLink.textContent = `Bookmark ${index + 1}`;\n\n\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t});\n\n\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t};\n\n\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t};\n\n\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t})\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t\treader.bookmarksPanel.removeBookmark(cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\n\t\tsearchBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowSearchPopup();\n\t\t}\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\t\tfunction showSearchPopup() {\n\t\t\tlet existingPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tif (!existingPopup) {\n\t\t\t\tlet searchPopup = document.createElement(\"div\");\n\t\t\t\tsearchPopup.setAttribute(\"id\", \"toolbar-search-list\");\n\t\t\t\tsearchPopup.classList.add(\"search-popup\");\n\n\t\t\t\tlet searchContainer = document.createElement(\"div\");\n\t\t\t\tsearchContainer.classList.add(\"search-container\");\n\n\t\t\t\tlet searchIcon = document.createElement(\"span\");\n\t\t\t\tsearchIcon.classList.add(\"search-icon\");\n\t\t\t\tsearchIcon.innerHTML = '';\n\n\t\t\t\tlet searchInput = document.createElement(\"input\");\n\t\t\t\tsearchInput.setAttribute(\"type\", \"search\");\n\t\t\t\tsearchInput.setAttribute(\"placeholder\", \"Search\");\n\t\t\t\tsearchInput.setAttribute(\"id\", \"nav-q\");\n\t\t\t\tsearchInput.setAttribute(\"class\", \"toolbar-search-input\");\n\n\t\t\t\tsearchContainer.appendChild(searchIcon);\n\t\t\t\tsearchContainer.appendChild(searchInput);\n\n\t\t\t\tlet resultContainer = document.createElement(\"ul\");\n\t\t\t\tresultContainer.setAttribute('id', 'toolbar-search-results');\n\n\t\t\t\tlet searchPanel = new SearchPanel(reader);\n\t\t\t\tsearchInput.oninput = async () => {\n\t\t\t\t\tlet query = searchInput.value.trim();\n\t\t\t\t\tif (query.length > 0) {\n\t\t\t\t\t\tlet results = await searchPanel.doSearch(query);\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\n\t\t\t\t\t\tif (results.length === 0) {\n\t\t\t\t\t\t\tlet noResultItem = document.createElement(\"li\");\n\t\t\t\t\t\t\tnoResultItem.innerText = \"Không tìm thấy kết quả trùng khớp\";\n\t\t\t\t\t\t\tnoResultItem.style.color = \"gray\";\n\t\t\t\t\t\t\tnoResultItem.style.padding = \"8px\";\n\t\t\t\t\t\t\tresultContainer.appendChild(noResultItem);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresults.forEach((data) => {\n\t\t\t\t\t\t\tlet item = document.createElement(\"li\");\n\t\t\t\t\t\t\tlet link = document.createElement(\"a\");\n\t\t\t\t\t\t\tlink.href = \"#\" + data.cfi;\n\t\t\t\t\t\t\tlink.textContent = data.excerpt;\n\t\t\t\t\t\t\tlink.onclick = (e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tsearchPanel.reader.rendition.display(data.cfi);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\titem.appendChild(link);\n\t\t\t\t\t\t\tresultContainer.appendChild(item);\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsearchPopup.appendChild(searchContainer);\n\t\t\t\tsearchPopup.appendChild(resultContainer);\n\t\t\t\tsearchBox.dom.appendChild(searchPopup);\n\t\t\t}\n\n\t\t\tlet searchPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tsearchPopup.classList.toggle(\"active\");\n\t\t}\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (toc) => {\n\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\tthis.add(container);\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\n\t}\n\n\tremoveBookmark(cfi) {\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tconst bookmarkPanel = new BookmarksPanel(reader);\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), bookmarkPanel);\n\t\t\treader.bookmarksPanel = bookmarkPanel;\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n toggleBookList();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n function toggleBookList() {\r\n const bookList = [\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 1 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 2 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 3 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 4 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 5 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 6 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 7 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 8 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 9 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 10 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 11 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 12 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 13 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 14 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 15 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 16 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 17 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 18 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 19 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 20 },\r\n ];\r\n\r\n let existingModal = document.getElementById('book-list-modal');\r\n if (!existingModal) {\r\n let modal = document.createElement('div');\r\n modal.setAttribute('id', 'book-list-modal');\r\n modal.setAttribute('class', 'book-modal');\r\n\r\n let modalContent = document.createElement('div');\r\n modalContent.setAttribute('class', 'book-modal-content');\r\n\r\n let bookGrid = document.createElement('div');\r\n bookGrid.setAttribute('class', 'book-grid');\r\n bookList.forEach((book) => {\r\n let bookItem = document.createElement('div');\r\n bookItem.setAttribute('class', 'book-item');\r\n bookItem.innerHTML = `\r\n
\r\n

${book.title}

\r\n

${book.author}

\r\n
\r\n
${book.page}
\r\n `;\r\n bookGrid.appendChild(bookItem);\r\n });\r\n\r\n modalContent.appendChild(bookGrid);\r\n modal.appendChild(modalContent);\r\n\r\n container.dom.appendChild(modal);\r\n }\r\n\r\n let modal = document.getElementById('book-list-modal');\r\n modal.classList.toggle(\"active\");\r\n }\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"navigation\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","SearchPanel","container","strings","searchQuery","search","placeholder","onsearch","doSearch","then","results","book","Promise","all","spine","spineItems","map","item","load","bind","find","finally","unload","resolve","concat","link","cfi","excerpt","rendition","Toolbar","menu1","openerBox","openerBtn","prevBox","prevBtn","nextBox","nextBtn","blur","arrows","logoBox","logoLink","tocBox","tocBtn","bookmarksBox","bookmarksBtn","annotationsBox","annotationsBtn","updateBookmarksList","bookmarksList","getElementById","innerHTML","bookmarks","index","bookmarkItem","bookmarkLink","deleteBtn","querySelectorAll","removeBookmarkFromToolbar","loaded","navigation","toc","tocList","setAttribute","tocTitle","chapter","tocItem","tocLink","toggle","showToc","bookmarkBox","showBookmarks","bookmarkItems","targetItem","from","querySelector","includes","bookmarksPanel","removeBookmark","annotationsList","annotations","note","noteItem","noteLink","removeNoteFromToolbar","showAnnotations","noteItems","annotationsPanel","removeNote","update","findIndex","n","centerPageCount","centerLabel","curOfTotal","curPageIndex","separator","totalPage","menu2","backgroundBox","colorPicker","background","oninput","selectedColor","openbookBtn","searchBox","searchBtn","bookmarkBtn","fullscreenBtn","closeBox","closeBtn","fontLabel","fontSizeBox","decreaseFontBtn","increaseFontBtn","fontSizeInput","fontSize","newSize","parseInt","isNaN","openbook","onload","storage","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","searchPopup","searchContainer","searchIcon","searchInput","resultContainer","searchPanel","async","query","trim","noResultItem","innerText","color","padding","showSearchPopup","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","body","start","atStart","atEnd","backgroundBtn","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","iconLeft","viewer","next","backgroundColor","iconRight","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","generateToc","list","ibtn","sectionId","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","disabled","renderer","setBookmark","appendBookmark","_cfi","btnr","navItem","navItemFromCfi","idref","spineItem","AnnotationsPanel","clearNotes","notes","toolbarList","toolbarNoteItem","toolbarNoteLink","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","Sidebar","controls","bookmarkPanel","annotationPanel","NoteDlg","textBox","addBtn","date","range","contents","Status","leftText","rightAction","appRecBtn","appRecBox","bookList","author","page","modal","modalContent","bookGrid","bookItem","toggleBookList","Reader","bookPath","preinit","path","cfgInit","toolbar","content","status","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","metadata","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.min.js","mappings":"qBAEA,IAAIA,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,KAC1BC,EAAkB,EAAQ,MAErBC,EAAOC,QAAU,SAAUC,EAAMC,GACzC,IAAIC,EAAGC,EAAGC,EAAGC,EAASC,EAkBtB,OAjBIC,UAAUC,OAAS,GAAqB,iBAATR,GAClCK,EAAUJ,EACVA,EAAQD,EACRA,EAAO,MAEPK,EAAUE,UAAU,GAEjBd,EAAQO,IACXE,EAAIL,EAASY,KAAKT,EAAM,KACxBG,EAAIN,EAASY,KAAKT,EAAM,KACxBI,EAAIP,EAASY,KAAKT,EAAM,OAExBE,EAAIE,GAAI,EACRD,GAAI,GAGLG,EAAO,CAAEL,MAAOA,EAAOS,aAAcR,EAAGS,WAAYR,EAAGS,SAAUR,GACzDC,EAAiBV,EAAOC,EAAcS,GAAUC,GAAtCA,CACnB,GAEEO,GAAK,SAAUb,EAAMc,EAAKC,GAC3B,IAAIb,EAAGC,EAAGE,EAASC,EA6BnB,MA5BoB,iBAATN,GACVK,EAAUU,EACVA,EAAMD,EACNA,EAAMd,EACNA,EAAO,MAEPK,EAAUE,UAAU,GAEhBd,EAAQqB,GAEDpB,EAAgBoB,GAGhBrB,EAAQsB,GAERrB,EAAgBqB,KAC3BV,EAAUU,EACVA,OAAMC,GAHND,OAAMC,GAHNX,EAAUS,EACVA,EAAMC,OAAMC,GAHZF,OAAME,EAUHvB,EAAQO,IACXE,EAAIL,EAASY,KAAKT,EAAM,KACxBG,EAAIN,EAASY,KAAKT,EAAM,OAExBE,GAAI,EACJC,GAAI,GAGLG,EAAO,CAAEQ,IAAKA,EAAKC,IAAKA,EAAKL,aAAcR,EAAGS,WAAYR,GAClDE,EAAiBV,EAAOC,EAAcS,GAAUC,GAAtCA,CACnB,C,SC1DAR,EAAOC,QAAU,WAAa,C,gBCD9BD,EAAOC,QAAU,EAAQ,IAAR,GAAgCkB,OAAOtB,OAAS,EAAQ,I,UCAzEG,EAAOC,QAAU,WAChB,IAA4BmB,EAAxBvB,EAASsB,OAAOtB,OACpB,MAAsB,mBAAXA,IAEXA,EADAuB,EAAM,CAAEC,IAAK,OACD,CAAEC,IAAK,OAAS,CAAEC,KAAM,SAC7BH,EAAIC,IAAMD,EAAIE,IAAMF,EAAIG,OAAS,aACzC,C,gBCNA,IAAIC,EAAQ,EAAQ,IAChBrB,EAAQ,EAAQ,KAChBsB,EAAQC,KAAKD,IAEjBzB,EAAOC,QAAU,SAAU0B,EAAMC,GAChC,IAAIC,EAAOC,EAAsCjC,EAAnCa,EAASe,EAAIhB,UAAUC,OAAQ,GAS7C,IARAiB,EAAOR,OAAOhB,EAAMwB,IACpB9B,EAAS,SAAUkC,GAClB,IACCJ,EAAKI,GAAOH,EAAIG,EACjB,CAAE,MAAO1B,GACHwB,IAAOA,EAAQxB,EACrB,CACD,EACKyB,EAAI,EAAGA,EAAIpB,IAAUoB,EAEzBN,EADAI,EAAMnB,UAAUqB,IACNE,QAAQnC,GAEnB,QAAcqB,IAAVW,EAAqB,MAAMA,EAC/B,OAAOF,CACR,C,gBCpBA,IAAIM,EAAa,EAAQ,GAAR,GAEjBjC,EAAOC,QAAU,SAAUiC,GAAO,OAAOA,IAAQD,GAAsB,OAARC,CAAc,C,eCF7ElC,EAAOC,QAAU,EAAQ,IAAR,GAAgCkB,OAAOK,KAAO,EAAQ,I,UCAvExB,EAAOC,QAAU,WAChB,IAEC,OADAkB,OAAOK,KAAK,cACL,CACR,CAAE,MAAOnB,GACR,OAAO,CACR,CACD,C,gBCPA,IAAIV,EAAU,EAAQ,KAElB6B,EAAOL,OAAOK,KAElBxB,EAAOC,QAAU,SAAUkC,GAAU,OAAOX,EAAK7B,EAAQwC,GAAUhB,OAAOgB,GAAUA,EAAS,C,gBCJ7F,IAAIxC,EAAU,EAAQ,KAElBqC,EAAUI,MAAMC,UAAUL,QAASM,EAASnB,OAAOmB,OAQvDtC,EAAOC,QAAU,SAAUsC,GAC1B,IAAIC,EAASF,EAAO,MAKpB,OAJAN,EAAQrB,KAAKF,WAAW,SAAUF,GAC5BZ,EAAQY,IATD,SAAUqB,EAAKR,GAC5B,IAAIW,EACJ,IAAKA,KAAOH,EAAKR,EAAIW,GAAOH,EAAIG,EACjC,CAOEU,CAAQtB,OAAOZ,GAAUiC,EAC1B,IACOA,CACR,C,UCjBAxC,EAAOC,QAAU,SAAUyC,GAC1B,GAAkB,mBAAPA,EAAmB,MAAM,IAAIC,UAAUD,EAAK,sBACvD,OAAOA,CACR,C,gBCHA,IAAI/C,EAAU,EAAQ,KAEtBK,EAAOC,QAAU,SAAUE,GAC1B,IAAKR,EAAQQ,GAAQ,MAAM,IAAIwC,UAAU,gCACzC,OAAOxC,CACR,C,gBCLAH,EAAOC,QAAU,EAAQ,IAAR,GAAgC2C,OAAOP,UAAUtC,SAAW,EAAQ,I,UCArF,IAAI8C,EAAM,aAEV7C,EAAOC,QAAU,WAChB,MAA4B,mBAAjB4C,EAAI9C,WACgB,IAAxB8C,EAAI9C,SAAS,SAA2C,IAAxB8C,EAAI9C,SAAS,MACrD,C,UCLA,IAAI+C,EAAUF,OAAOP,UAAUS,QAE/B9C,EAAOC,QAAU,SAAU8C,GAC1B,OAAOD,EAAQnC,KAAKqC,KAAMD,EAActC,UAAU,KAAO,CAC1D,C,eCJA,IASIwC,EAAIC,EAAMC,EAAKC,EAAMC,EAASC,EAAaC,EAT3CC,EAAW,EAAQ,KACnBC,EAAW,EAAQ,KAEnBC,EAAQC,SAAStB,UAAUqB,MAAO/C,EAAOgD,SAAStB,UAAU1B,KAC5D2B,EAASnB,OAAOmB,OAAQsB,EAAiBzC,OAAOyC,eAChDC,EAAmB1C,OAAO0C,iBAC1BC,EAAiB3C,OAAOkB,UAAUyB,eAClCC,EAAa,CAAEnD,cAAc,EAAMC,YAAY,EAAOC,UAAU,GAuBpEoC,EAAO,SAAUc,EAAMC,GACtB,IAAIf,EAAMgB,EAUV,OARAT,EAASQ,GACTC,EAAOlB,KACPC,EAAGtC,KAAKqC,KAAMgB,EAAMd,EAAO,WAC1BC,EAAIxC,KAAKuD,EAAMF,EAAMd,GACrBQ,EAAM/C,KAAKsD,EAAUjB,KAAMvC,UAC5B,GAEAyC,EAAKiB,mBAAqBF,EACnBjB,IACR,EAoEAK,EAAU,CACTJ,GApGDA,EAAK,SAAUe,EAAMC,GACpB,IAAIG,EAeJ,OAbAX,EAASQ,GAEJH,EAAenD,KAAKqC,KAAM,UAK9BoB,EAAOpB,KAAKqB,QAJZD,EAAOL,EAAW5D,MAAQmC,EAAO,MACjCsB,EAAeZ,KAAM,SAAUe,GAC/BA,EAAW5D,MAAQ,MAIfiE,EAAKJ,GACqB,iBAAfI,EAAKJ,GAAoBI,EAAKJ,GAAMM,KAAKL,GACpDG,EAAKJ,GAAQ,CAACI,EAAKJ,GAAOC,GAFdG,EAAKJ,GAAQC,EAIvBjB,IACR,EAoFCE,KAAMA,EACNC,IArEDA,EAAM,SAAUa,EAAMC,GACrB,IAAIG,EAAMG,EAAWC,EAAW1C,EAIhC,GAFA2B,EAASQ,IAEJH,EAAenD,KAAKqC,KAAM,UAAW,OAAOA,KAEjD,KADAoB,EAAOpB,KAAKqB,QACFL,GAAO,OAAOhB,KAGxB,GAAyB,iBAFzBuB,EAAYH,EAAKJ,IAGhB,IAAKlC,EAAI,EAAI0C,EAAYD,EAAUzC,KAAOA,EACpC0C,IAAcP,GAChBO,EAAUL,qBAAuBF,IACV,IAArBM,EAAU7D,OAAc0D,EAAKJ,GAAQO,EAAUzC,EAAI,EAAI,GACtDyC,EAAUE,OAAO3C,EAAG,SAItByC,IAAcN,GAChBM,EAAUJ,qBAAuBF,UAC5BG,EAAKJ,GAId,OAAOhB,IACR,EA4CCI,KA1CDA,EAAO,SAAUY,GAChB,IAAIlC,EAAG4C,EAAGT,EAAUM,EAAWI,EAE/B,GAAKb,EAAenD,KAAKqC,KAAM,YAC/BuB,EAAYvB,KAAKqB,OAAOL,IAGxB,GAAyB,iBAAdO,EAAwB,CAGlC,IAFAG,EAAIjE,UAAUC,OACdiE,EAAO,IAAIvC,MAAMsC,EAAI,GAChB5C,EAAI,EAAGA,EAAI4C,IAAK5C,EAAG6C,EAAK7C,EAAI,GAAKrB,UAAUqB,GAGhD,IADAyC,EAAYA,EAAUK,QACjB9C,EAAI,EAAImC,EAAWM,EAAUzC,KAAOA,EACxC4B,EAAM/C,KAAKsD,EAAUjB,KAAM2B,EAE7B,MACC,OAAQlE,UAAUC,QAClB,KAAK,EACJC,EAAKA,KAAK4D,EAAWvB,MACrB,MACD,KAAK,EACJrC,EAAKA,KAAK4D,EAAWvB,KAAMvC,UAAU,IACrC,MACD,KAAK,EACJE,EAAKA,KAAK4D,EAAWvB,KAAMvC,UAAU,GAAIA,UAAU,IACnD,MACD,QAGC,IAFAiE,EAAIjE,UAAUC,OACdiE,EAAO,IAAIvC,MAAMsC,EAAI,GAChB5C,EAAI,EAAGA,EAAI4C,IAAK5C,EACpB6C,EAAK7C,EAAI,GAAKrB,UAAUqB,GAEzB4B,EAAM/C,KAAK4D,EAAWvB,KAAM2B,GAG/B,GASArB,EAAc,CACbL,GAAIO,EAAEP,GACNC,KAAMM,EAAEN,GACRC,IAAKK,EAAEL,GACPC,KAAMI,EAAEJ,IAGTG,EAAOM,EAAiB,CAAC,EAAGP,GAE5BtD,EAAOC,QAAUA,EAAU,SAAU4E,GACpC,OAAa,MAALA,EAAavC,EAAOiB,GAAQM,EAAiB1C,OAAO0D,GAAIvB,EACjE,EACArD,EAAQoD,QAAUA,C,eCjIlB,IAAIyB,EAAc,EAAQ,KAE1B9E,EAAOC,QAAU,SAAUE,GAC1B,GAAqB,mBAAVA,EAAsB,OAAO,EAExC,IAAK2D,eAAenD,KAAKR,EAAO,UAAW,OAAO,EAElD,IACC,GAA4B,iBAAjBA,EAAMO,OAAqB,OAAO,EAC7C,GAA0B,mBAAfP,EAAMQ,KAAqB,OAAO,EAC7C,GAA2B,mBAAhBR,EAAMuD,MAAsB,OAAO,CAC/C,CAAE,MAAO7B,GACR,OAAO,CACR,CAEA,OAAQiD,EAAY3E,EACrB,C,gBChBA,IAAIR,EAAU,EAAQ,KAGlBoF,EAAgB,CAAE,QAAU,EAAM,UAAY,EAAM,WAAa,GAErE/E,EAAOC,QAAU,SAAUE,GAC1B,QAAKR,EAAQQ,IACN2D,eAAenD,KAAKoE,SAAsB5E,EAClD,C,gBCRA,IAAI6E,EAAa,EAAQ,IAErBC,EAAU,mBAAoBC,EAAmBvB,SAAStB,UAAU8C,SAExEnF,EAAOC,QAAU,SAAUE,GAC1B,QAAK6E,EAAW7E,KACZ8E,EAAQG,KAAKF,EAAiBvE,KAAKR,GAExC,C,gBCRA,IAAIkF,EAAW,EAAQ,KAEvBrF,EAAOC,QAAU,SAAUE,GAC1B,IAAKkF,EAASlF,GAAQ,OAAO,EAC7B,IACC,QAAKA,EAAMmF,aACJnF,EAAMmF,YAAYjD,YAAclC,CACxC,CAAE,MAAO0B,GACR,OAAO,CACR,CACD,C,UCPA7B,EAAOC,QAAU,SAAUE,GAAS,OAAOA,OAAwC,C,GCJ/EoF,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBvE,IAAjBwE,EACH,OAAOA,EAAazF,QAGrB,IAAID,EAASuF,EAAyBE,GAAY,CAGjDxF,QAAS,CAAC,GAOX,OAHA0F,EAAoBF,GAAUzF,EAAQA,EAAOC,QAASuF,GAG/CxF,EAAOC,OACf,CCrBAuF,EAAoBhC,EAAI,CAACvD,EAAS2F,KACjC,IAAI,IAAI7D,KAAO6D,EACXJ,EAAoBX,EAAEe,EAAY7D,KAASyD,EAAoBX,EAAE5E,EAAS8B,IAC5EZ,OAAOyC,eAAe3D,EAAS8B,EAAK,CAAElB,YAAY,EAAMG,IAAK4E,EAAW7D,IAE1E,ECNDyD,EAAoBX,EAAI,CAACzD,EAAKyE,IAAU1E,OAAOkB,UAAUyB,eAAenD,KAAKS,EAAKyE,GCClFL,EAAoBM,EAAK7F,IACH,oBAAX8F,QAA0BA,OAAOC,aAC1C7E,OAAOyC,eAAe3D,EAAS8F,OAAOC,YAAa,CAAE7F,MAAO,WAE7DgB,OAAOyC,eAAe3D,EAAS,aAAc,CAAEE,OAAO,GAAO,E,kDCL9D,MAAMqD,EAAI,CAACpC,EAAKyE,IAASzE,EAAMA,EAAIyE,QAAQ3E,EAErC+E,EAAI,CAACrE,EAAKsE,EAAKC,EAAKN,KACtB,IAAI3D,EACJ,GAAyB,kBAAdgE,EAAIL,GACX,OAAQA,GACJ,IAAK,cACL,IAAK,YACD3D,EAAMgE,EAAIL,GAAQjE,EAAIiE,GAAQK,EAAIL,GAClC,MACJ,QACI3D,EAAMgE,EAAIL,QAIlB3D,EADgB,WAAT2D,EACDK,EAAIL,QAEa3E,IAAjBsC,EAAE2C,EAAKN,GAAsBjE,EAAIiE,GAAQK,EAAIL,GAEvD,OAAO3D,GAGEkE,EAAS,CAACxE,EAAKsE,EAAKC,KAC7B,IAAK,IAAIN,KAAQjE,EACA,aAATiE,IAEOK,EAAIL,aAAiBzD,MAC5B8D,EAAIL,GAAQM,EAAOvE,EAAIiE,GAAQjE,EAAIiE,GAAQK,EAAIL,GAASjE,EAAIiE,GACrDK,EAAIL,aAAiB1E,OAC5BiF,EAAOxE,EAAIiE,GAAOK,EAAIL,GAAOrC,EAAE2C,EAAKN,IAEpCK,EAAIL,GAAQM,EAAMF,EAAErE,EAAKsE,EAAKC,EAAKN,GAAQjE,EAAIiE,GAEvD,EAGSQ,EAAO,KAChB,IAAI7C,GAAI,IAAI8C,MAAOC,UAMnB,MALa,uCAAuCC,QAAQ,SAAUpG,IAClE,IAAI0F,GAAKtC,EAAoB,GAAhB9B,KAAK+E,UAAiB,GAAK,EAExC,OADAjD,EAAI9B,KAAKgF,MAAMlD,EAAI,KACL,MAANpD,EAAY0F,EAAS,EAAJA,EAAU,GAAMX,SAAS,GAAE,GAEjDkB,EC3CJ,MAAMM,EAEZ,WAAArB,GAECtC,KAAK4D,KAAO,gBACZ5D,KAAK6D,QAAU,EACf7D,KAAK8D,GACL9D,KAAK+D,UAAYC,OAAOD,WACvBC,OAAOC,iBACPD,OAAOE,cACPF,OAAOG,YACPH,OAAOI,iBAEelG,IAAnB8B,KAAK+D,WAERM,QAAQxF,MAAM,mDAEhB,CAEA,IAAAyF,CAAKC,GAEJ,QAAuBrG,IAAnB8B,KAAK+D,UAER,YADAQ,IAID,MAAMC,EAAOlB,KAAKmB,MACZC,EAAWrH,GAAMgH,QAAQxF,MAAM,YAAaxB,GAC5CsH,EAAUZ,UAAUa,KAAK5E,KAAK4D,KAAM5D,KAAK6D,SAC/Cc,EAAQE,gBAAmBxH,IAE1B,MAAMyG,EAAKzG,EAAEyH,OAAOtF,QAC4B,IAA5CsE,EAAGiB,iBAAiBhI,SAAS,YAChC+G,EAAGkB,kBAAkB,UACtB,EAGDL,EAAQM,UAAa5H,IAEpB2C,KAAK8D,GAAKzG,EAAEyH,OAAOtF,OACnBQ,KAAK8D,GAAGY,QAAUA,EAClBH,IACAF,QAAQa,IAAI,iBAAiB5B,KAAKmB,MAAQD,OAAU,EAGrDG,EAAQD,QAAUA,CACnB,CAEA,GAAA1G,CAAIuG,GAEH,QAAgBrG,IAAZ8B,KAAK8D,GAER,YADAS,IAID,MAAMC,EAAOlB,KAAKmB,MACEzE,KAAK8D,GAAGqB,YAAY,CAAC,WAAY,aACrBC,YAAY,WAChBpH,IAAI,GACxBiH,UAAa5H,IAEpBkH,EAASlH,EAAEyH,OAAOtF,QAClB6E,QAAQa,IAAI,gBAAgB5B,KAAKmB,MAAQD,OAAU,CAErD,CAEA,GAAAvG,CAAImD,EAAMmD,GAET,QAAgBrG,IAAZ8B,KAAK8D,GAER,YADAS,IAID,MAAMC,EAAOlB,KAAKmB,MACEzE,KAAK8D,GAAGqB,YAAY,CAAC,WAAY,aACrBC,YAAY,WAChBC,IAAIjE,EAAM,GAC9B6D,UAAY,KAEnBV,IACAF,QAAQa,IAAI,gBAAgB5B,KAAKmB,MAAQD,OAAU,CAErD,CAEA,KAAAc,GAEC,QAAgBpH,IAAZ8B,KAAK8D,GACR,OAGD,MAAMU,EAAOlB,KAAKmB,MACEzE,KAAK8D,GAAGqB,YAAY,CAAC,WAAY,aACrBC,YAAY,WAChBE,QACpBL,UAAY,KAEnBZ,QAAQa,IAAI,kBAAkB5B,KAAKmB,MAAQD,OAAU,CAEvD,EClGM,MAAMe,EAEZ,WAAAjD,CAAYkD,GAEXxF,KAAKyF,SAAWD,EAAOE,SAASD,UAAY,KAC5CzF,KAAK2F,OAAS,CACbC,GAAI,CACH,kBAAmB,UACnB,eAAgB,gBAChB,eAAgB,YAChB,mBAAoB,YACpB,yBAA0B,+HAC1B,mBAAoB,6BACpB,qBAAsB,aACtB,qBAAsB,oBAEtB,gBAAiB,gBACjB,mBAAoB,WACpB,oBAAqB,YACrB,wBAAyB,MACzB,2BAA4B,SAC5B,0BAA2B,QAC3B,sBAAuB,cACvB,0BAA2B,MAC3B,6BAA8B,SAC9B,4BAA6B,QAC7B,6BAA8B,SAC9B,6BAA8B,SAC9B,iBAAkB,SAClB,6BAA8B,SAC9B,mBAAoB,WACpB,4BAA6B,WAC7B,4BAA6B,gBAC7B,wBAAyB,OACzB,8BAA+B,CAAC,aAAc,uBAC9C,0BAA2B,SAC3B,mCAAoC,uBACpC,mBAAoB,WACpB,yBAA0B,QAC1B,2BAA4B,UAC5B,+BAAgC,cAChC,2BAA4B,UAC5B,6BAA8B,YAC9B,8BAA+B,aAC/B,4BAA6B,WAC7B,0BAA2B,SAC3B,iCAAkC,gBAClC,0BAA2B,SAC3B,wBAAyB,OACzB,0BAA2B,SAC3B,6BAA8B,YAE9B,gBAAiB,OACjB,cAAe,MAEf,oBAAqB,aACrB,UAAW,IAEZC,GAAI,CACH,kBAAmB,iBACnB,eAAgB,MAChB,eAAgB,MAChB,mBAAoB,wBACpB,yBAA0B,wJAC1B,mBAAoB,6BACpB,qBAAsB,cACtB,qBAAsB,yBAEtB,gBAAiB,MACjB,mBAAoB,WACpB,oBAAqB,eACrB,wBAAyB,UACzB,2BAA4B,UAC5B,0BAA2B,eAC3B,sBAAuB,cACvB,0BAA2B,UAC3B,6BAA8B,UAC9B,4BAA6B,eAC7B,6BAA8B,QAC9B,6BAA8B,UAC9B,iBAAkB,aAClB,6BAA8B,aAC9B,mBAAoB,WACpB,4BAA6B,SAC7B,4BAA6B,MAC7B,wBAAyB,MACzB,8BAA+B,CAAC,aAAc,0BAC9C,0BAA2B,MAC3B,mCAAoC,MACpC,mBAAoB,MACpB,yBAA0B,MAC1B,2BAA4B,MAC5B,+BAAgC,MAChC,2BAA4B,MAC5B,6BAA8B,MAC9B,8BAA+B,MAC/B,4BAA6B,SAC7B,0BAA2B,MAC3B,iCAAkC,MAClC,0BAA2B,MAC3B,wBAAyB,MACzB,0BAA2B,MAC3B,6BAA8B,MAE9B,gBAAiB,MACjB,cAAe,UAEf,oBAAqB,GACrB,UAAW,IAEZC,GAAI,CACH,kBAAmB,QACnB,eAAgB,MAChB,eAAgB,MAChB,mBAAoB,OACpB,yBAA0B,kFAC1B,mBAAoB,eACpB,qBAAsB,UACtB,qBAAsB,UAEtB,gBAAiB,MACjB,mBAAoB,KACpB,oBAAqB,IACrB,wBAAyB,KACzB,2BAA4B,KAC5B,0BAA2B,MAC3B,sBAAuB,KACvB,0BAA2B,KAC3B,2BAA4B,KAC5B,4BAA6B,MAC7B,6BAA8B,OAC9B,6BAA8B,QAC9B,iBAAkB,KAClB,6BAA8B,KAC9B,mBAAoB,KACpB,4BAA6B,OAC7B,4BAA6B,MAC7B,wBAAyB,MACzB,8BAA+B,CAAC,WAAY,mBAC5C,0BAA2B,MAC3B,mCAAoC,MACpC,mBAAoB,MACpB,yBAA0B,MAC1B,2BAA4B,MAC5B,+BAAgC,MAChC,2BAA4B,MAC5B,6BAA8B,MAC9B,8BAA+B,MAC/B,4BAA6B,OAC7B,0BAA2B,MAC3B,iCAAkC,MAClC,0BAA2B,MAC3B,wBAAyB,MACzB,0BAA2B,MAC3B,6BAA8B,MAE9B,gBAAiB,MACjB,cAAe,KAEf,oBAAqB,GACrB,UAAW,IAEZC,GAAI,CACH,kBAAmB,iBACnB,eAAgB,sBAChB,eAAgB,oBAChB,mBAAoB,gBACpB,yBAA0B,8IAC1B,mBAAoB,mCACpB,qBAAsB,sBACtB,qBAAsB,eAEtB,gBAAiB,yBACjB,mBAAoB,aACpB,oBAAqB,WACrB,wBAAyB,WACzB,2BAA4B,UAC5B,0BAA2B,WAC3B,sBAAuB,YACvB,0BAA2B,WAC3B,6BAA8B,UAC9B,4BAA6B,WAC7B,6BAA8B,QAC9B,6BAA8B,SAC9B,iBAAkB,QAClB,6BAA8B,QAC9B,mBAAoB,YACpB,4BAA6B,OAC7B,4BAA6B,gBAC7B,wBAAyB,QACzB,8BAA+B,CAAC,oBAAqB,kCACrD,0BAA2B,WAC3B,mCAAoC,sBACpC,mBAAoB,aACpB,yBAA0B,YAC1B,2BAA4B,QAC5B,+BAAgC,WAChC,2BAA4B,kBAC5B,6BAA8B,WAC9B,8BAA+B,gBAC/B,4BAA6B,OAC7B,0BAA2B,WAC3B,iCAAkC,iBAClC,0BAA2B,QAC3B,wBAAyB,QACzB,0BAA2B,WAC3B,6BAA8B,cAE9B,gBAAiB,UACjB,cAAe,WAEf,oBAAqB,GACrB,UAAW,IAEZC,GAAI,CACH,kBAAmB,YACnB,eAAgB,cAChB,eAAgB,gBAChB,mBAAoB,UACpB,yBAA0B,0IAC1B,mBAAoB,+BACpB,qBAAsB,gBACtB,qBAAsB,cAEtB,gBAAiB,iBACjB,mBAAoB,WACpB,oBAAqB,YACrB,wBAAyB,iBACzB,2BAA4B,gBAC5B,0BAA2B,MAC3B,sBAAuB,YACvB,0BAA2B,iBAC3B,6BAA8B,gBAC9B,4BAA6B,MAC7B,6BAA8B,MAC9B,6BAA8B,MAC9B,iBAAkB,WAClB,6BAA8B,MAC9B,mBAAoB,UACpB,4BAA6B,WAC7B,4BAA6B,aAC7B,wBAAyB,MACzB,8BAA+B,CAAC,MAAO,OACvC,0BAA2B,MAC3B,mCAAoC,OACpC,mBAAoB,WACpB,yBAA0B,SAC1B,2BAA4B,iBAC5B,+BAAgC,QAChC,2BAA4B,WAC5B,6BAA8B,eAC9B,8BAA+B,YAC/B,4BAA6B,WAC7B,0BAA2B,QAC3B,iCAAkC,eAClC,0BAA2B,MAC3B,wBAAyB,MACzB,0BAA2B,MAC3B,6BAA8B,MAE9B,gBAAiB,MACjB,cAAe,MAEf,oBAAqB,gBACrB,UAAW,KAIbR,EAAOvF,GAAG,mBAAoB9C,IAC7B6C,KAAKyF,SAAWtI,CAAK,GAEvB,CAEA,GAAAa,CAAIe,GAAO,OAAOiB,KAAK2F,OAAO3F,KAAKyF,UAAU1G,IAAQ,KAAO,EC7Q7D,MAAMkH,EAAY,mCAMX,MAAMC,EAEZ,WAAA5D,CAAY6D,GAEXnG,KAAKoG,IAAMC,SAASC,cAAcH,EACnC,CAEA,GAAAI,GAEC,IAAK,IAAIzH,EAAI,EAAGA,EAAIrB,UAAUC,OAAQoB,IAAK,CAE1C,MAAM0H,EAAW/I,UAAUqB,GAE3B,GAAI0H,aAAoBN,EAEvBlG,KAAKoG,IAAIK,YAAYD,EAASJ,UAExB,GAAIhH,MAAMsH,QAAQF,GAExB,IAAK,IAAIG,EAAI,EAAGA,EAAIH,EAAS9I,OAAQiJ,IAAK,CAEzC,MAAMC,EAAUJ,EAASG,GAErBC,aAAmBV,EAEtBlG,KAAKoG,IAAIK,YAAYG,EAAQR,KAG7B/B,QAAQxF,MAAM,aAAc+H,EAASX,EAEvC,MAGA5B,QAAQxF,MAAM,aAAc2H,EAAUP,EAExC,CACA,OAAOjG,IACR,CAEA,MAAA6G,GAEC,IAAK,IAAI/H,EAAI,EAAGA,EAAIrB,UAAUC,OAAQoB,IAAK,CAE1C,MAAM0H,EAAW/I,UAAUqB,GAEvB0H,aAAoBN,EAEvBlG,KAAKoG,IAAIU,YAAYN,EAASJ,KAEpBW,OAAOC,UAAUR,GAE3BxG,KAAKoG,IAAIU,YAAY9G,KAAKoG,IAAIa,WAAWT,IAGzCnC,QAAQxF,MAAM,aAAc2H,EAAUP,EAExC,CACA,OAAOjG,IACR,CAEA,KAAAsF,GAEC,KAAOtF,KAAKoG,IAAIc,SAASxJ,QAExBsC,KAAKoG,IAAIU,YAAY9G,KAAKoG,IAAIe,WAE/B,OAAOnH,IACR,CAEA,KAAAoH,CAAMC,GAGL,OADArH,KAAKoG,IAAIiB,GAAKA,EACPrH,IACR,CAEA,KAAAsH,GAEC,OAAOtH,KAAKoG,IAAIiB,EACjB,CAEA,eAAAE,CAAgB3D,GAGf,OADA5D,KAAKoG,IAAImB,gBAAgB3D,GAClB5D,IACR,CAEA,QAAAwH,CAAS5D,GAGR,OADA5D,KAAKoG,IAAIqB,UAAY7D,EACd5D,IACR,CAEA,QAAA0H,CAAS9D,GAGR,OADA5D,KAAKoG,IAAIuB,UAAUpB,IAAI3C,GAChB5D,IACR,CAEA,WAAA4H,CAAYhE,GAGX,OADA5D,KAAKoG,IAAIuB,UAAUd,OAAOjD,GACnB5D,IACR,CAEA,QAAA6H,CAAS9I,EAAK5B,GAGb,OADA6C,KAAKoG,IAAI0B,MAAM/I,GAAO5B,EACf6C,IACR,CAEA,QAAA+H,GAEC,OAAO/H,KAAKoG,IAAI4B,KACjB,CAEA,QAAAC,CAASD,GAIR,OAFIhI,KAAKoG,IAAI4B,QAAUA,GAASA,IAC/BhI,KAAKoG,IAAI4B,MAAQA,GACXhI,IACR,CAEA,cAAAkI,GAEC,OAAOlI,KAAKoG,IAAI+B,WACjB,CAEA,cAAAC,CAAeC,GAId,OAFIrI,KAAKoG,IAAI+B,cAAgBE,GAAQA,IACpCrI,KAAKoG,IAAI+B,YAAcE,GACjBrI,IACR,CAEA,qBAAAsI,GAEC,OAAOtI,KAAKoG,IAAIkC,uBACjB,EAOM,MAAMC,UAAerC,EAE3B,WAAA5D,CAAY+F,GAEXG,MAAM,QACNxI,KAAKoI,eAAeC,EACrB,EAMM,MAAMI,UAAcvC,EAE1B,WAAA5D,GAECkG,MAAM,MACP,CAEA,QAAAhB,CAASC,GAER,OADAzH,KAAKoG,IAAIqB,UAAYA,EACdzH,IACR,CAEA,QAAA0H,CAASD,GAER,OADAzH,KAAKoG,IAAIuB,UAAUpB,IAAIkB,GAChBzH,IACR,EAMM,MAAM0I,UAAcD,EAE1B,WAAAnG,GAECkG,QAEAxI,KAAKoG,IAAIqB,UAAY,KACtB,EAMM,MAAMkB,UAAgBF,EAE5B,WAAAnG,GAECkG,QAEAxI,KAAKoG,IAAIqB,UAAY,OACtB,EAQM,MAAMmB,UAAgB1C,EAE5B,WAAA5D,CAAY+F,EAAMhB,GAEjBmB,MAAM,SAENxI,KAAKoG,IAAI+B,YAAcE,EACnBhB,IAAIrH,KAAKoG,IAAIyC,QAAUxB,EAC5B,EAQM,MAAMyB,UAAe5C,EAE3B,WAAA5D,CAAYyG,EAAMV,GAEjBG,MAAM,KAENxI,KAAKoG,IAAI2C,KAAOA,GAAQ,IACxB/I,KAAKoG,IAAI+B,YAAcE,GAAQ,EAChC,CAEA,OAAAW,CAAQC,GAGP,OADAjJ,KAAKoG,IAAI2C,KAAOE,EACTjJ,IACR,EAOM,MAAMkJ,UAAeX,EAE3B,WAAAjG,CAAY+F,GAEXG,QAEAxI,KAAKoG,IAAI+B,YAAcE,CACxB,CAEA,QAAAc,GAEC,OAAOnJ,KAAKoG,IAAI+B,WACjB,CAEA,QAAAiB,CAASf,GAGR,OADArI,KAAKoG,IAAI+B,YAAcE,EAChBrI,IACR,EAkCM,MAAMqJ,UAAiBnD,EAE7B,WAAA5D,GAECkG,MAAM,SACP,CAEA,WAAAc,CAAYC,GAGX,OADAvJ,KAAKoG,IAAIoD,SAAWD,IAAW,EACxBvJ,IACR,CAEA,UAAAyJ,CAAWlM,GAEV,MAAMmM,EAAW1J,KAAKoG,IAAIjJ,MAC1B6C,KAAKsF,QAEL,IAAK,MAAMvG,KAAOxB,EAAS,CAE1B,MAAMoM,EAAStD,SAASC,cAAc,UACtCqD,EAAOxM,MAAQ4B,EACf4K,EAAOtB,KAAO9K,EAAQwB,GACtBiB,KAAKoG,IAAIK,YAAYkD,EACtB,CAEA,OADA3J,KAAKoG,IAAIjJ,MAAQuM,EACV1J,IACR,CAEA,QAAAmJ,GAEC,OAAOnJ,KAAKoG,IAAIjJ,KACjB,CAEA,QAAAiM,CAASjM,GAMR,OAJAA,EAAQyC,OAAOzC,GAEX6C,KAAKoG,IAAIjJ,QAAUA,IACtB6C,KAAKoG,IAAIjJ,MAAQA,GACX6C,IACR,EASM,MAAM4J,UAAgB1D,EAE5B,WAAA5D,CAAYtB,EAAM7D,EAAO6K,GAExBQ,MAAM,SAENxI,KAAKoG,IAAIpF,KAAOA,EAChBhB,KAAKoG,IAAIyD,UAAaxM,IAErBA,EAAEyM,iBAAiB,EAEpB9J,KAAKoJ,SAASjM,GACd6C,KAAKiI,SAASD,EACf,CAEA,OAAA+B,GAEC,OAAO/J,KAAKoG,IAAIxC,IACjB,CAEA,OAAAoG,CAAQpG,GAGP,OADA5D,KAAKoG,IAAIxC,KAAOA,EACT5D,IACR,CAEA,OAAAiK,GAEC,OAAOjK,KAAKoG,IAAIpF,IACjB,CAEA,OAAAkJ,CAAQlJ,GAGP,OADAhB,KAAKoG,IAAIpF,KAAOA,EACThB,IACR,CAEA,QAAAmJ,GAEC,OAAOnJ,KAAKoG,IAAIjJ,KACjB,CAEA,QAAAiM,CAASjM,GAIR,OAFI6C,KAAKoG,IAAIjJ,QAAUA,QAAmBe,IAAVf,IAC/B6C,KAAKoG,IAAIjJ,MAAQA,GACX6C,IACR,EAsDM,MAAMmK,UAAiBjE,EAE7B,WAAA5D,CAAYnF,EAAOiN,EAAMC,EAAK5L,EAAK6L,GAElC9B,MAAM,SAENxI,KAAKoG,IAAIpF,KAAO,SAChBhB,KAAKoG,IAAIgE,KAAOA,GAAQ,EACxBpK,KAAKoG,IAAIyD,UAAaxM,IAErBA,EAAEyM,iBAAiB,EAEpB9J,KAAK7C,MAAQA,GAAS,EACtB6C,KAAKqK,IAAMA,IAAO,IAClBrK,KAAKvB,IAAMA,GAAO,IAClBuB,KAAKsK,UAAYA,GAAa,EAC9BtK,KAAKoJ,SAASjM,GACd6C,KAAKoG,IAAImE,SAAYlN,IAEpB2C,KAAKoJ,SAASpJ,KAAK7C,MAAM,CAE3B,CAEA,OAAA4M,GAEC,OAAO/J,KAAKoG,IAAIxC,IACjB,CAEA,OAAAoG,CAAQpG,GAGP,OADA5D,KAAKoG,IAAIxC,KAAOA,EACT5D,IACR,CAEA,YAAAwK,CAAaF,GAIZ,OAFAtK,KAAKsK,UAAYA,EACjBtK,KAAKoJ,SAASpJ,KAAK7C,OACZ6C,IACR,CAEA,QAAAyK,CAASJ,EAAK5L,GAMb,OAJAuB,KAAKqK,IAAMA,EACXrK,KAAKvB,IAAMA,EACXuB,KAAKoG,IAAIiE,IAAMA,EACfrK,KAAKoG,IAAI3H,IAAMA,EACRuB,IACR,CAEA,OAAA0K,CAAQN,GAGP,OADApK,KAAKoG,IAAIgE,KAAOA,EACTpK,IACR,CAEA,QAAAmJ,GAEC,OAAOwB,WAAW3K,KAAKoG,IAAIjJ,MAC5B,CAEA,QAAAiM,CAASjM,GAaR,YAXce,IAAVf,KACHA,EAAQwN,WAAWxN,IAEP6C,KAAKqK,MAChBlN,EAAQ6C,KAAKqK,KACVlN,EAAQ6C,KAAKvB,MAChBtB,EAAQ6C,KAAKvB,KAEduB,KAAK7C,MAAQA,EACb6C,KAAKoG,IAAIjJ,MAAQA,EAAMyN,QAAQ5K,KAAKsK,YAE9BtK,IACR,EAiDM,MAAM6K,UAAsBpC,EAElC,WAAAnG,CAAYwI,GAEXtC,QAEAxI,KAAK8K,MAAQA,GAAS,aACtB9K,KAAK+K,KAAO,GACZ/K,KAAKgL,OAAS,GACdhL,KAAKiL,UAAW,IAAI1C,GAASf,SAAS,gBACtCxH,KAAKkL,SAAU,IAAIzC,GAAQjB,SAAS,QACpCxH,KAAKmL,SAAU,IAAI1C,GAAQjB,SAAS,QACpCxH,KAAKmL,QAAQ5E,IAAIvG,KAAKiL,UACtBjL,KAAKoL,WAAY,IAAI3C,GAAQjB,SAAS,UACtCxH,KAAK0J,SAAW,GAChB1J,KAAKuG,IAAIvG,KAAKkL,SACdlL,KAAKuG,IAAIvG,KAAKmL,SACdnL,KAAKuG,IAAIvG,KAAKoL,UACf,CAEA,OAAAC,CAAQC,GACPtL,KAAKkL,QAAQ3E,IAAI+E,EAClB,CAEA,MAAAC,CAAOlE,EAAImE,EAAOF,GAEjB,MAAMG,EAAM,IAAIC,EAAMF,EAAOxL,MAC7ByL,EAAIrE,MAAMC,GACVoE,EAAIjE,SAAS,OACbxH,KAAK+K,KAAKzJ,KAAKmK,GACfzL,KAAKmL,QAAQ5E,IAAIkF,GAEjB,MAAME,EAAQ,IAAIlD,EAClBkD,EAAMvE,MAAMC,GACZsE,EAAMpF,IAAI+E,GACVtL,KAAKgL,OAAO1J,KAAKqK,GACjB3L,KAAKoL,UAAU7E,IAAIoF,GACnB3L,KAAK4L,OAAOvE,EACb,CAEA,MAAAuE,CAAOvE,GAEN,IAAK,IAAIoE,KAAOzL,KAAK+K,KAChBU,EAAIrF,IAAIiB,KAAOA,GAClBoE,EAAI/D,SAAS,YACb1H,KAAK6L,kBAAkBJ,IACbA,EAAIrF,IAAIiB,KAAOrH,KAAK0J,UAC9B+B,EAAI7D,YAAY,YAIlB,IAAK,IAAI+D,KAAS3L,KAAKgL,OAClBW,EAAMvF,IAAIiB,KAAOA,EACpBsE,EAAMvF,IAAI0B,MAAMgE,QAAU,QAChBH,EAAMvF,IAAIiB,KAAOrH,KAAK0J,WAChCiC,EAAMvF,IAAI0B,MAAMgE,QAAU,QAK5B,OADA9L,KAAK0J,SAAWrC,EACTrH,IACR,CAEA,QAAA+L,CAAS1E,EAAIgB,GAEZ,IAAK,IAAIoD,KAAOzL,KAAK+K,KACpB,GAAIU,EAAIrF,IAAIiB,KAAOA,EAAI,CACtBoE,EAAIxD,SAASI,GACb,KACD,CAEF,CAEA,iBAAAwD,CAAkBJ,GAEjB,IAAIO,EACJ,MAAMC,EAAOR,EAAInD,wBACE,eAAftI,KAAK8K,OACRkB,EAAOC,EAAKC,MAAQlM,KAAK+K,KAAKjL,QAAQ2L,GACtCzL,KAAKiL,SAAS7E,IAAI0B,MAAMqE,UAAY,cAAcH,SAElDA,EAAOC,EAAKG,OAASpM,KAAK+K,KAAKjL,QAAQ2L,GACvCzL,KAAKiL,SAAS7E,IAAI0B,MAAMqE,UAAY,cAAcH,OAEpD,EAQM,MAAMN,UAAcjD,EAE1B,WAAAnG,CAAY+F,EAAMgE,GAEjB7D,QACAxI,KAAKsM,OAAS,IAAI1C,EAAQ,UAC1B5J,KAAKsM,OAAOlG,IAAI4B,MAAQK,EACxBrI,KAAKoG,IAAImG,QAAWlP,IAEnBgP,EAAOT,OAAO5L,KAAKoG,IAAIiB,IACvBhK,EAAEmP,gBAAgB,EAEnBxM,KAAKuG,IAAIvG,KAAKsM,OACf,EAOM,MAAMG,UAAevG,EAE3B,WAAA5D,CAAY+J,GAEX7D,MAAM,MACNxI,KAAKqM,OAASA,GAAUA,EAAOA,OAC/BrM,KAAK0M,UAAW,CACjB,CAEA,MAAAC,GAMC,OAJA3M,KAAK0M,UAAW,EAChB1M,KAAKoG,IAAI0B,MAAMgE,QAAU,QACrB9L,KAAKqM,QACRrM,KAAKqM,OAAOM,SACN3M,IACR,CAEA,OAAA4M,GAIC,OAFA5M,KAAK0M,UAAW,EAChB1M,KAAKoG,IAAI0B,MAAMgE,QAAU,OAClB9L,IACR,EAOM,MAAM6M,UAAe3G,EAE3B,WAAA5D,CAAY+J,GAEX7D,MAAM,MACNxI,KAAKqM,OAASA,EACdrM,KAAK0J,UAAW,CACjB,CAEA,GAAAnD,GACC,IAAIuG,EAAM,EACV,MAAMC,GAAM,IAAItE,GAAQrB,MAAM,YAC9B,IAAK,IAAItI,EAAI,EAAGA,EAAIrB,UAAUC,OAAQoB,IAAK,CAC1C,MAAM0H,EAAW/I,UAAUqB,GACvB0H,aAAoBiG,EACvBjE,MAAMjC,IAAIC,IAEVuG,EAAIxG,IAAIC,GACRsG,IAEF,CAEA,OADIA,GAAKtE,MAAMjC,IAAIwG,GACZ/M,IACR,CAEA,MAAA4L,GAIC,OAFA5L,KAAK0J,UAAW,EAChB1J,KAAKwH,SAAS,YACPxH,IACR,CAEA,QAAAgN,GAIC,OAFAhN,KAAK0J,UAAW,EAChB1J,KAAKuH,gBAAgB,SACdvH,IACR,EAOM,MAAMiN,UAAc/G,EAE1B,WAAA5D,CAAYgJ,GAEX9C,MAAM,OACNxI,KAAKwH,SAAS,OACdxH,KAAKuG,IAAI+E,EACV,EClwBM,MAAM4B,UAAoBvE,EAEhC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM2E,GAAY,IAAI1E,GAAQjB,SAAS,kBACjC4F,EAAU5H,EAAO4H,QAEvB,IAAIC,EACJ,MAAMC,EAAS,IAAI1D,EAAQ,UAAUxC,MAAM,SAC3CkG,EAAOlH,IAAImH,YAAcH,EAAQpP,IAAI,8BACrCsP,EAAOlH,IAAIoH,SAAW,KAErB,MAAMrQ,EAAQmQ,EAAOnE,WAEA,IAAjBhM,EAAMO,OACTsC,KAAKsL,MAAMhG,QACD+H,IAAgBlQ,IAC1B6C,KAAKsL,MAAMhG,QACXtF,KAAKyN,SAAStQ,GAAOuQ,MAAKC,IAEzBA,EAAQ3O,SAAQoC,IACfpB,KAAK/B,IAAImD,EAAK,GACb,KAGJiM,EAAclQ,CAAK,EAGpB6C,KAAKoH,MAAM,UACXpH,KAAKsL,MAAQ,IAAImB,EACjBU,EAAU5G,IAAIvG,KAAKsL,OACnBtL,KAAKuG,IAAI,CAAC,IAAI0G,EAAMK,GAASH,IAC7BnN,KAAKwF,OAASA,EACdxF,KAAKiL,cAAW/M,CAIjB,CAOA,cAAMuP,CAASxK,GAEd,MAAM2K,EAAO5N,KAAKwF,OAAOoI,KACnBD,QAAgBE,QAAQC,IAC7BF,EAAKG,MAAMC,WAAWC,KAAIC,GAAQA,EAAKC,KAAKP,EAAKO,KAAKC,KAAKR,IACzDF,KAAKQ,EAAKG,KAAKD,KAAKF,EAAMjL,IAAIqL,QAAQJ,EAAKK,OAAOH,KAAKF,OAC1D,aAAaL,QAAQW,QAAQ,GAAGC,OAAO/N,MAAM,GAAIiN,GAClD,CAEA,GAAA1P,CAAImD,GAEH,MAAMsN,EAAO,IAAI5F,EAAO,IAAM1H,EAAKuN,IAAKvN,EAAKwN,SACvCV,EAAO,IAAIrB,EACjB6B,EAAKtI,IAAImG,QAAU,KAEdvM,KAAKiL,UAAYjL,KAAKiL,WAAaiD,GACtClO,KAAKiL,SAAS+B,WAEfkB,EAAKtC,SACL5L,KAAKiL,SAAWiD,EAChBlO,KAAKwF,OAAOqJ,UAAU/C,QAAQ1K,EAAKuN,MAC5B,GAERT,EAAK3H,IAAImI,GACT1O,KAAKsL,MAAM/E,IAAI2H,EAChB,ECrEM,MAAMY,EAEZ,WAAAxM,CAAYkD,GAEX,MAAM4H,EAAU5H,EAAO4H,QACjB1H,EAAWF,EAAOE,SAElByH,GAAY,IAAI1E,GAAQrB,MAAM,WAC9B5I,EAAO,CACZ,kBACA,eACA,eACA,mBACA,yBACA,mBACA,qBACA,qBACA,iBACA,iBAIKuQ,GAAQ,IAAItG,GAAQjB,SAAS,UAC7BwH,GAAY,IAAIvG,GAAQrB,MAAM,SAASI,SAAS,OAChDyH,EAAY,IAAIrF,EAAQ,UAW9B,IAAIsF,EAASC,EACTC,EAASC,EAXbJ,EAAU7I,IAAI4B,MAAQoF,EAAQpP,IAAIQ,EAAK,IACvCyQ,EAAU7I,IAAImG,QAAWlP,IAExBmI,EAAOpF,KAAK,iBAAiB,GAC7B6O,EAAU7I,IAAIkJ,OACdjS,EAAEmP,gBAAgB,EAEnBwC,EAAUzI,IAAI0I,GACdF,EAAMxI,IAAIyI,GAIc,YAApBtJ,EAAS6J,SACZL,GAAU,IAAIzG,GAAQrB,MAAM,SAASI,SAAS,OAC9C2H,EAAU,IAAIvF,EAAQ,UACtBuF,EAAQlH,SAASmF,EAAQpP,IAAIQ,EAAK,KAClC2Q,EAAQ/I,IAAImG,QAAWlP,IAEtBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,iBACF2C,EAAQ/I,IAAIkJ,MAAM,EAEnBJ,EAAQ3I,IAAI4I,GACZJ,EAAMxI,IAAI2I,GAEVE,GAAU,IAAI3G,GAAQrB,MAAM,SAASI,SAAS,OAC9C6H,EAAU,IAAIzF,EAAQ,UACtByF,EAAQjJ,IAAI4B,MAAQoF,EAAQpP,IAAIQ,EAAK,IACrC6Q,EAAQjJ,IAAImG,QAAWlP,IAEtBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,iBACF6C,EAAQjJ,IAAIkJ,MAAM,EAEnBF,EAAQ7I,IAAI8I,GACZN,EAAMxI,IAAI6I,IAIX,MAAMI,GAAU,IAAI/G,GAAQrB,MAAM,YAAYI,SAAS,QACjDiI,GAAW,IAAI3G,GAAS1B,MAAM,aAAa4B,QAAQ,KAAKZ,eAAe,QAM7E,IAAIsH,EAAQC,EAgERC,EAAcC,EAmGdC,EAAgBC,EAtEpB,SAASC,IACR,IAAIC,EAAgB5J,SAAS6J,eAAe,0BAE5C,IAAKD,EAAe,OAEpBA,EAAcE,UAAY,GAE1B,IAAInI,EAAQ3B,SAASC,cAAc,MACnC0B,EAAMG,YAAc,oBACpB8H,EAAcxJ,YAAYuB,GAE1BxC,EAAOE,SAAS0K,UAAUpR,SAAQ,CAAC2P,EAAK0B,KACvC,IAAIC,EAAejK,SAASC,cAAc,MACtCiK,EAAelK,SAASC,cAAc,KACtCkK,EAAYnK,SAASC,cAAc,QAEvCiK,EAAaxH,KAAO,IACpBwH,EAAapI,YAAc,YAAYkI,EAAQ,IAE/CE,EAAahE,QAAWlP,IACvBA,EAAEmP,iBAEFnG,SAASoK,iBAAiB,gCAAgCzR,SAAS0P,IAClEA,EAAK/G,UAAUd,OAAO,SAAS,IAGhC0J,EAAa5I,UAAUpB,IAAI,UAE3Bf,EAAOqJ,UAAU/C,QAAQ6C,EAAI,EAG9B6B,EAAUL,UAAY,mCACtBK,EAAUjE,QAAWlP,IACpBA,EAAEyM,kBACFtE,EAAOkL,0BAA0B/B,EAAI,EAGtC2B,EAAa7J,YAAY8J,GACzBD,EAAa7J,YAAY+J,GACzBP,EAAcxJ,YAAY6J,EAAa,GAEzC,CA1IAd,EAAQjJ,IAAIkJ,GACZV,EAAMxI,IAAIiJ,GAIVE,GAAS,IAAIjH,GAAQrB,MAAM,SAASI,SAAS,OAC7CmI,EAAS,IAAI/F,EAAQ,UAGrB+F,EAAOvJ,IAAImG,QAAWlP,IACrBA,EAAEyM,kBACFtE,EAAOoI,KAAK+C,OAAOC,WAAWlD,MAAMmD,KASrC,SAAiBA,GAChB,IAAIC,EAAczK,SAAS6J,eAAe,oBAE1C,GAAIY,EACHA,EAAYjK,aACN,CACN,IAAIkK,EAAU1K,SAASC,cAAc,MACrCyK,EAAQC,aAAa,KAAM,oBAE3B,IAAIC,EAAW5K,SAASC,cAAc,MACtC2K,EAAS9I,YAAc,UAEvB4I,EAAQtK,YAAYwK,GAEpBJ,EAAI7R,SAASkS,IACZ,IAAIC,EAAU9K,SAASC,cAAc,MACjC8K,EAAU/K,SAASC,cAAc,KAErC8K,EAAQrI,KAAO,IACfqI,EAAQjJ,YAAc+I,EAAQ1F,MAE9B4F,EAAQ7E,QAAWlP,IAClBA,EAAEmP,iBAEFnG,SAASoK,iBAAiB,0BAA0BzR,SAAS0P,IAC5DA,EAAK/G,UAAUd,OAAO,SAAS,IAGhCuK,EAAQzJ,UAAUpB,IAAI,UAGtBf,EAAOqJ,UAAU/C,QAAQoF,EAAQnI,KAAK,EAGvCoI,EAAQ1K,YAAY2K,GACpBL,EAAQtK,YAAY0K,EAAQ,IAG7BzB,EAAOtJ,IAAIK,YAAYsK,EACxB,CAEc1K,SAAS6J,eAAe,oBAC9BvI,UAAU0J,OAAO,SAC1B,CAnDEC,CAAQT,EAAI,GACZ,EAGFnB,EAAOnJ,IAAIoJ,GACXZ,EAAMxI,IAAImJ,GAoDVE,GAAe,IAAInH,GAAQrB,MAAM,SAASI,SAAS,OACnDqI,EAAe,IAAIjG,EAAQ,UAE3BiG,EAAazJ,IAAImG,QAAWlP,IAC3BA,EAAEyM,kBAOH,WACC,IAAImG,EAAgB5J,SAAS6J,eAAe,0BAEvCD,IACJA,EAAgB5J,SAASC,cAAc,MACvC2J,EAAce,aAAa,KAAM,0BACjCO,EAAYnL,IAAIK,YAAYwJ,IAG7BD,IACAC,EAActI,UAAU0J,OAAO,SAChC,CAjBCG,EAAe,EAGhB5B,EAAarJ,IAAIsJ,GACjBd,EAAMxI,IAAIqJ,GAeVpK,EAAOvF,GAAG,cAAc,CAACsJ,EAASoF,KACjCqB,GAAqB,IA+CtBxK,EAAOkL,0BAA4B,SAAU/B,GAE5C,IAAIsB,EAAgB5J,SAAS6J,eAAe,0BAC5C,IAAKD,EAAe,OAEpB,IAAIwB,EAAgBxB,EAAcQ,iBAAiB,MAC/CiB,EAAatS,MAAMuS,KAAKF,GAAepD,MAAKH,GACxCA,EAAK0D,cAAc,KAAKzJ,YAAY0J,SAASlD,KAGjD+C,GACHA,EAAW7K,SAGZ,MAAMwJ,EAAQ7K,EAAOE,SAAS0K,UAAUtQ,QAAQ6O,IACjC,IAAX0B,GACH7K,EAAOE,SAAS0K,UAAU3O,OAAO4O,EAAO,GAGzC7K,EAAOpF,KAAK,cAAc,EAAOuO,GACjCnJ,EAAOsM,eAAeC,eAAepD,EACtC,EAMAmB,GAAiB,IAAIrH,GAAQrB,MAAM,SAASI,SAAS,OACrDuI,EAAiB,IAAInG,EAAQ,UAG7BmG,EAAe3J,IAAImG,QAAWlP,IAC7BA,EAAEyM,kBAQH,WAGC,IAFmBzD,SAAS6J,eAAe,4BAExB,CAClB,IAAI8B,EAAkB3L,SAASC,cAAc,MAC7C0L,EAAgBhB,aAAa,KAAM,4BAEnC,IAAIhJ,EAAQ3B,SAASC,cAAc,MACnC0B,EAAMG,YAAc,uBAEpB6J,EAAgBvL,YAAYuB,GAE5BxC,EAAOE,SAASuM,YAAYjT,SAASkT,IACpC,IAAIC,EAAW9L,SAASC,cAAc,MAClC8L,EAAW/L,SAASC,cAAc,KAClCkK,EAAYnK,SAASC,cAAc,QAEvC8L,EAASrJ,KAAO,IAChBqJ,EAASjK,YAAc+J,EAAK7J,KAE5B+J,EAAS7F,QAAWlP,IACnBA,EAAEmP,iBAEFnG,SAASoK,iBAAiB,kCAAkCzR,SAAS0P,IACpEA,EAAK/G,UAAUd,OAAO,SAAS,IAGhCuL,EAASzK,UAAUpB,IAAI,UAEvBf,EAAOqJ,UAAU/C,QAAQoG,EAAKvD,IAAI,EAGnC6B,EAAUL,UAAY,mCAEtBK,EAAUjE,QAAWlP,IACpBA,EAAEyM,kBACFtE,EAAO6M,sBAAsBH,EAAK,EAGnCC,EAAS1L,YAAY2L,GACrBD,EAAS1L,YAAY+J,GACrBwB,EAAgBvL,YAAY0L,EAAS,IAGtCrC,EAAe1J,IAAIK,YAAYuL,EAChC,CAEsB3L,SAAS6J,eAAe,4BAC9BvI,UAAU0J,OAAO,SAClC,CAxDCiB,EAAiB,EAGlBxC,EAAevJ,IAAIwJ,GACnBhB,EAAMxI,IAAIuJ,GAsDVtK,EAAO6M,sBAAwB,SAAUH,GACxC,IAAIF,EAAkB3L,SAAS6J,eAAe,4BAC9C,IAAK8B,EAAiB,OAEtB,IAAIO,EAAYP,EAAgBvB,iBAAiB,MAC7CiB,EAAatS,MAAMuS,KAAKY,GAAWlE,MAAKH,IAC3CA,EAAK0D,cAAc,KAAKzJ,YAAgB+J,EAAK7J,IAAI,IAG9CqJ,GACHA,EAAW7K,SAGZ,MAAM2L,EAAmBhN,EAAOgN,iBAC5BA,IACHA,EAAiBC,WAAWP,GAC5BM,EAAiBE,UAGlB,MAAMrC,EAAQ7K,EAAOE,SAASuM,YAAYU,WAAWC,GAAMA,EAAEjE,MAAQuD,EAAKvD,OAC3D,IAAX0B,GACH7K,EAAOE,SAASuM,YAAYxQ,OAAO4O,EAAO,GAG3C7K,EAAOqJ,UAAUoD,YAAYpL,OAAOqL,EAAKvD,IAAK,YAC/C,EAMA,MAAMkE,GAAkB,IAAIpK,GAAQjB,SAAS,eAEvCsL,GAAc,IAAIlK,GAAUpB,SAAS,wBAC3CsL,EAAY1K,eAAe,cAE3B,MAAM2K,GAAa,IAAItK,GAAQjB,SAAS,YAClCwL,GAAe,IAAIzK,GAASf,SAAS,sBAAsBY,eAAe,KAC1E6K,GAAY,IAAI/J,GAASd,eAAe,SACxC8K,GAAY,IAAI3K,GAASf,SAAS,eAAeY,eAAe,OAEtE2K,EAAWxM,IAAIyM,GACfD,EAAWxM,IAAI0M,GACfF,EAAWxM,IAAI2M,GAEfL,EAAgBtM,IAAIuM,GACpBD,EAAgBtM,IAAIwM,GAKpB,MAAMI,GAAQ,IAAI1K,GAAQjB,SAAS,UAEnC,IAAI4L,EAAeC,EACf3N,EAAS4N,aAEZF,GAAgB,IAAI3K,GAAQrB,MAAM,UAAUI,SAAS,OACrD6L,EAAc,IAAIzJ,EAAQ,SAASpC,SAAS,gBAC5C6L,EAAYjN,IAAI4B,MAAQoF,EAAQpP,IAAIQ,EAAK,IAGzC6U,EAAYjN,IAAImN,QAAWlW,IAC1B,MAAMmW,EAAgBnW,EAAEyH,OAAO3H,MAG/BqI,EAAOpF,KAAK,eAAgBoT,EAAc,EAG3CJ,EAAc7M,IAAI8M,GAClBF,EAAM5M,IAAI6M,IAKX,IA4CIK,EA6CAC,EAAWC,EAmFXpC,EAAaqC,EAkBbC,EAuCAC,EAAUC,EArOVC,GAAY,IAAIpL,GAAUpB,SAAS,gBAAgBY,eAAe,kBAClE6L,GAAc,IAAIxL,GAAQrB,MAAM,gBAAgBI,SAAS,OACzD0M,EAAkB,IAAItK,EAAQ,UAAUpC,SAAS,qBACjD2M,EAAkB,IAAIvK,EAAQ,UAAUpC,SAAS,qBACjD4M,EAAgB,IAAIxK,EAAQ,QAAQpC,SAAS,mBAE7C6M,EAAW3O,EAAS2O,UAAY,GAuCpC,GAtCAD,EAAchO,IAAIjJ,MAAQkX,EAE1BH,EAAgB9N,IAAI+B,YAAc,IAClC+L,EAAgB9N,IAAImG,QAAU,KAC7B8H,EAAW3V,KAAKD,IAAI,EAAG4V,EAAW,GAClCD,EAAchO,IAAIjJ,MAAQkX,EAE1B7O,EAAOpF,KAAK,gBAAiB,CAAEiU,SAAUA,GAAW,EAGrDF,EAAgB/N,IAAI+B,YAAc,IAClCgM,EAAgB/N,IAAImG,QAAU,KAC7B8H,EAAW3V,KAAK2L,IAAI,GAAIgK,EAAW,GACnCD,EAAchO,IAAIjJ,MAAQkX,EAE1B7O,EAAOpF,KAAK,gBAAiB,CAAEiU,SAAUA,GAAW,EAGrDD,EAAchO,IAAImE,SAAW,KAC5B,IAAI+J,EAAUC,SAASH,EAAchO,IAAIjJ,MAAO,KAC3CqX,MAAMF,IAAYA,GAAW,GAAKA,GAAW,IACjDD,EAAWC,EAEX9O,EAAOpF,KAAK,gBAAiB,CAAEiU,SAAUA,KAEzCD,EAAchO,IAAIjJ,MAAQkX,CAC3B,EAGDJ,EAAY1N,IAAIyN,GAChBC,EAAY1N,IAAI2N,GAChBD,EAAY1N,IAAI6N,GAChBH,EAAY1N,IAAI4N,GAChBhB,EAAM5M,IAAI0N,GAKNvO,EAAS+O,SAAU,CACtB,MAAMC,EAAUrX,IAEfmI,EAAOmP,QAAQrP,QACfE,EAAOmP,QAAQ1W,IAAIZ,EAAEyH,OAAOtF,QAAQ,KACnCgG,EAAO+I,SACP/I,EAAOlB,KAAKjH,EAAEyH,OAAOtF,QACrB,MAAMyJ,EAAM,IAAI2L,IAAI5Q,OAAO6Q,SAASC,QACpC9Q,OAAO+Q,QAAQC,UAAU,CAAC,EAAG,GAAI/L,EAAI,GACpC,EAEGvE,EAAWrH,IAChBgH,QAAQxF,MAAMxB,EAAE,EAEX4X,GAAc,IAAIxM,GAAQrB,MAAM,SAASI,SAAS,OACxDiM,EAAc,IAAI7J,EAAQ,QAC1B6J,EAAYrN,IAAI4B,MAAQoF,EAAQpP,IAAIQ,EAAK,IACzCiV,EAAYrN,IAAI8O,OAAS,uBACzBzB,EAAYrN,IAAImE,SAAYlN,IAE3B,GAA8B,IAA1BA,EAAEyH,OAAOqQ,MAAMzX,OAGnB,GAAIsG,OAAOoR,WAAY,CAEtB,MAAMvP,EAAK,IAAIuP,WACfvP,EAAG6O,OAASA,EACZ7O,EAAGwP,kBAAkBhY,EAAEyH,OAAOqQ,MAAM,IACpCtP,EAAGnB,QAAUA,CACd,MACC4Q,MAAMlI,EAAQpP,IAAIQ,EAAK,IACxB,EAGDiV,EAAYrN,IAAImG,QAAWlP,IAE1BoW,EAAYrN,IAAIkJ,MAAM,EAEvB2F,EAAY1O,IAAIkN,GAChBN,EAAM5M,IAAI0O,EACX,CA0GA,GApGAvB,GAAY,IAAIjL,GAAQrB,MAAM,SAASI,SAAS,OAChDmM,EAAY,IAAI/J,EAAQ,UACxB+J,EAAU1L,SAASmF,EAAQpP,IAAIQ,EAAK,KAEpCmV,EAAUvN,IAAImG,QAAWlP,IACxBA,EAAEyM,kBAOH,WAEC,IADoBzD,SAAS6J,eAAe,uBACxB,CACnB,IAAIqF,EAAclP,SAASC,cAAc,OACzCiP,EAAYvE,aAAa,KAAM,uBAC/BuE,EAAY5N,UAAUpB,IAAI,gBAE1B,IAAIiP,EAAkBnP,SAASC,cAAc,OAC7CkP,EAAgB7N,UAAUpB,IAAI,oBAE9B,IAAIkP,EAAapP,SAASC,cAAc,QACxCmP,EAAW9N,UAAUpB,IAAI,eACzBkP,EAAWtF,UAAY,+BAEvB,IAAIuF,EAAcrP,SAASC,cAAc,SACzCoP,EAAY1E,aAAa,OAAQ,UACjC0E,EAAY1E,aAAa,cAAe,UACxC0E,EAAY1E,aAAa,KAAM,SAC/B0E,EAAY1E,aAAa,QAAS,wBAElCwE,EAAgB/O,YAAYgP,GAC5BD,EAAgB/O,YAAYiP,GAE5B,IAAIC,EAAkBtP,SAASC,cAAc,MAC7CqP,EAAgB3E,aAAa,KAAM,0BAEnC,IAAI4E,EAAc,IAAI1I,EAAY1H,GAClCkQ,EAAYnC,QAAUsC,UACrB,IAAIC,EAAQJ,EAAYvY,MAAM4Y,OAC9B,GAAID,EAAMpY,OAAS,EAAG,CACrB,IAAIiQ,QAAgBiI,EAAYnI,SAASqI,GAGzC,GAFAH,EAAgBxF,UAAY,GAEL,IAAnBxC,EAAQjQ,OAAc,CACzB,IAAIsY,EAAe3P,SAASC,cAAc,MAC1C0P,EAAaC,UAAY,oCACzBD,EAAalO,MAAMoO,MAAQ,OAC3BF,EAAalO,MAAMqO,QAAU,MAC7BR,EAAgBlP,YAAYuP,EAC7B,CAEArI,EAAQ3O,SAASoC,IAChB,IAAI8M,EAAO7H,SAASC,cAAc,MAC9BoI,EAAOrI,SAASC,cAAc,KAClCoI,EAAK3F,KAAO,IAAM3H,EAAKuN,IACvBD,EAAKvG,YAAc/G,EAAKwN,QACxBF,EAAKnC,QAAWlP,IACfA,EAAEmP,iBACFoJ,EAAYpQ,OAAOqJ,UAAU/C,QAAQ1K,EAAKuN,IAAI,EAE/CT,EAAKzH,YAAYiI,GACjBiH,EAAgBlP,YAAYyH,EAAK,GAEnC,MACCyH,EAAgBxF,UAAY,EAC7B,EAGDoF,EAAY9O,YAAY+O,GACxBD,EAAY9O,YAAYkP,GACxBjC,EAAUtN,IAAIK,YAAY8O,EAC3B,CAEkBlP,SAAS6J,eAAe,uBAC9BvI,UAAU0J,OAAO,SAC9B,CAvEC+E,EAAiB,EAGlB1C,EAAUnN,IAAIoN,GACdR,EAAM5M,IAAImN,GAwENhO,EAAS0K,YACZmB,GAAc,IAAI9I,GAAQrB,MAAM,SAASI,SAAS,OAClDoM,EAAc,IAAIhK,EAAQ,UAC1BgK,EAAY3L,SAASmF,EAAQpP,IAAIQ,EAAK,KACtCoV,EAAYxN,IAAImG,QAAWlP,IAE1B,MAAMsR,EAAM3O,KAAKqW,YACXnX,GAAoC,IAA9BsG,EAAO8Q,aAAa3H,GAChCnJ,EAAOpF,KAAK,aAAclB,GAC1B7B,EAAEmP,iBACFoH,EAAYxN,IAAIkJ,MAAM,EAEvBiC,EAAYhL,IAAIqN,GAChBT,EAAM5M,IAAIgL,IAKP7L,EAAS6Q,WAAY,CAExB,MAAMC,GAAgB,IAAI/N,GAAQrB,MAAM,SAASI,SAAS,OAC1DqM,EAAgB,IAAIjK,EAAQ,UAC5BiK,EAAc5L,SAASmF,EAAQpP,IAAIQ,EAAK,KACxCqV,EAAczN,IAAImG,QAAWlP,IAE5B2C,KAAKyW,mBACLpZ,EAAEmP,gBAAgB,EAGnBnG,SAASwD,UAAaxM,IAEP,QAAVA,EAAE0B,MACL1B,EAAEmP,iBACFxM,KAAKyW,mBACN,EAGDpQ,SAASqQ,mBAAsBrZ,IAE9B,MAAMC,EAAI0G,OAAO2S,OAAOzK,QAAU7O,EAAEyH,OAAO8R,YACrCC,EAAI7S,OAAO2S,OAAOvK,SAAW/O,EAAEyH,OAAOgS,aAExCxZ,GAAKuZ,EACRL,EAAc9O,SAAS,gBAEvB8O,EAAc5O,YAAY,eAC3B,EAED4O,EAAcjQ,IAAIsN,GAClBV,EAAM5M,IAAIiQ,EACX,CAEArJ,EAAU5G,IAAI,CAACwI,EAAO8D,EAAiBM,IACvC9M,SAAS0Q,KAAKtQ,YAAY0G,EAAU/G,KAIpC0N,GAAW,IAAIrL,GAAQrB,MAAM,aAAaI,SAAS,OACnDuM,EAAW,IAAInK,EAAQ,UAAUpC,SAAS,UAC1CuM,EAAS9L,SAASmF,EAAQpP,IAAIQ,EAAK,KAInCsV,EAASvN,IAAIwN,GACbZ,EAAM5M,IAAIuN,GAKVtO,EAAOvF,GAAG,aAAc4U,IAEvB,GAAInP,EAAS0K,UAAW,CACvB,MAAMzB,EAAMkG,EAASmC,MAAMrI,KACe,IAA9BnJ,EAAO8Q,aAAa3H,GAE/B4C,EAAY3J,YAAY,cAExB2J,EAAY7J,SAAS,cAEtB1H,KAAKqW,YAAc1H,CACpB,CACwB,YAApBjJ,EAAS6J,SACZL,EAAQ9I,IAAI0B,MAAMgE,QAAU+I,EAASoC,QAAU,OAAS,QACxD7H,EAAQhJ,IAAI0B,MAAMgE,QAAU+I,EAASqC,MAAQ,OAAS,QACvD,IAGD1R,EAAOvF,GAAG,cAAesJ,IAEpBA,EACHgI,EAAY7J,SAAS,cAErB6J,EAAY3J,YAAY,aACzB,IAGDpC,EAAOvF,GAAG,mBAAoB9C,IAE7B8R,EAAUhH,SAASmF,EAAQpP,IAAIQ,EAAK,KAEZ,YAApBkH,EAAS6J,SACZJ,EAAQlH,SAASmF,EAAQpP,IAAIQ,EAAK,KAClC6Q,EAAQpH,SAASmF,EAAQpP,IAAIQ,EAAK,MAE/BkH,EAAS+O,UACZhB,EAAYxL,SAASmF,EAAQpP,IAAIQ,EAAK,KAEnCkH,EAAS0K,WACZwD,EAAY3L,SAASmF,EAAQpP,IAAIQ,EAAK,KAEnCkH,EAAS6Q,YACZ1C,EAAc5L,SAASmF,EAAQpP,IAAIQ,EAAK,KAErCkH,EAAS4N,YACZ6D,cAAclP,SAASmF,EAAQpP,IAAIQ,EAAK,IACzC,GAGF,CAEA,gBAAAiY,GAECpQ,SAAS+Q,cAAc9H,OAEY,OAA/BjJ,SAASgR,kBACZhR,SAASiR,gBAAgBC,oBACflR,SAASmR,gBACnBnR,SAASmR,gBAEX,ECpqBM,MAAMC,EAEZ,WAAAnV,CAAYkD,GAEX,MAAME,EAAWF,EAAOE,SAClByH,GAAY,IAAI1E,GAAQrB,MAAM,WAEpC,IAAIsQ,EACJ,GAAwB,YAApBhS,EAAS6J,OAAsB,CAElCmI,GAAO,IAAIjP,GAAQrB,MAAM,QAAQI,SAAS,SAC1CkQ,EAAKtR,IAAImG,QAAWlP,IAEnBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,gBAAgB,EAEnB,MAAMmL,EAAW,IAAIpP,EACrBoP,EAASvR,IAAI+J,UAAY,yCACzBuH,EAAKnR,IAAIoR,GACTxK,EAAU5G,IAAImR,EACf,CAEA,MAAME,GAAS,IAAInP,GAAQrB,MAAM,UAQjC,IAAIyQ,EACJ,GARA1K,EAAU5G,IAAIqR,GAGdpS,EAAOvF,GAAG,gBAAiBiW,IAC1B0B,EAAOxR,IAAI0B,MAAMgQ,gBAAkB5B,CAAK,IAIjB,YAApBxQ,EAAS6J,OAAsB,CAClCsI,GAAO,IAAIpP,GAAQrB,MAAM,QAAQI,SAAS,SAC1CqQ,EAAKzR,IAAImG,QAAWlP,IAEnBmI,EAAOpF,KAAK,QACZ/C,EAAEmP,gBAAgB,EAEnB,MAAMuL,EAAY,IAAIxP,EACtBwP,EAAU3R,IAAI+J,UAAY,0CAC1B0H,EAAKtR,IAAIwR,GACT5K,EAAU5G,IAAIsR,EACf,CAEA,MAAMG,GAAS,IAAIvP,GAAQrB,MAAM,UAC3B6Q,GAAU,IAAIxP,GAAQrB,MAAM,WAC5B8Q,GAAU,IAAIzP,GAAQrB,MAAM,WAClC8Q,EAAQ9R,IAAImG,QAAWlP,IACtBmI,EAAOpF,KAAK,iBAAiB,GAC7B/C,EAAEmP,gBAAgB,EAGnBW,EAAU5G,IAAI,CAACyR,EAAQC,EAASC,IAChC7R,SAAS0Q,KAAKtQ,YAAY0G,EAAU/G,KAIpCZ,EAAOvF,GAAG,aAAckY,IAEvBP,EAAOpQ,SAAS2Q,EAAIC,MACpBJ,EAAO5R,IAAI0B,MAAMgE,QAAU,OAAO,IAGnCtG,EAAOvF,GAAG,cAAc,KAEvB+X,EAAO5R,IAAI0B,MAAMgE,QAAU,MAAM,IAGlCtG,EAAOvF,GAAG,UAAWoY,IAEhBA,EAAMC,QAAUD,EAAMnM,MAAQmM,EAAME,YACvCN,EAAQ7R,IAAI0B,MAAMgE,QAAU,QAE5BmM,EAAQ7R,IAAI0B,MAAMgE,QAAU,MAC7B,IAGDtG,EAAOvF,GAAG,eAAgB9C,IAEzBya,EAAOpQ,SAASrK,EAAM,IAGvBqI,EAAOvF,GAAG,aAAc4U,IAEC,YAApBnP,EAAS6J,SACRsF,EAASoC,QACZS,EAAKhQ,SAAS,YAEdgQ,EAAK9P,YAAY,YAEdiN,EAASqC,MACZW,EAAKnQ,SAAS,YAEdmQ,EAAKjQ,YAAY,YAEnB,IAGDpC,EAAOvF,GAAG,QAAQ,KAEO,YAApByF,EAAS6J,SACZmI,EAAKhQ,SAAS,UACd8Q,YAAW,KAAQd,EAAK9P,YAAY,SAAS,GAAK,KACnD,IAGDpC,EAAOvF,GAAG,QAAQ,KAEO,YAApByF,EAAS6J,SACZsI,EAAKnQ,SAAS,UACd8Q,YAAW,KAAQX,EAAKjQ,YAAY,SAAS,GAAK,KACnD,IAGDpC,EAAOvF,GAAG,iBAAkB9C,IAE3B+a,EAAQ9R,IAAI0B,MAAMgE,QAAU3O,EAAQ,QAAU,MAAM,IAGrDqI,EAAOvF,GAAG,iBAAiB,KAE1B2X,EAAOtS,OAAO,GAEhB,EC3HM,MAAMmT,UAAiB9P,EAE7B,WAAArG,CAAYkD,GAEXgD,QACA,MAAM2E,GAAY,IAAI1E,GAAQjB,SAAS,kBACjC4F,EAAU5H,EAAO4H,QACjB5O,EAAO,CACZ,oBAEKgN,EAAQ,IAAItC,EAAOkE,EAAQpP,IAAIQ,EAAK,KAAKgJ,SAAS,SACxDxH,KAAKwF,OAASA,EACdxF,KAAKiL,cAAW/M,EAChB8B,KAAKoH,MAAM,YACXpH,KAAKuG,IAAI,IAAI0G,EAAMzB,GAAO9D,SAAS,WAInClC,EAAOvF,GAAG,aAAa,KACtBuF,EAAOoI,KAAK+C,OAAOC,WAAWlD,MAAMmD,IACnC1D,EAAU7H,QACV6H,EAAU5G,IAAIvG,KAAK0Y,YAAY7H,IAC/B7Q,KAAKuG,IAAI4G,GACT9I,QAAQa,IAAI2L,EAAI,GAEhB,IAGFrL,EAAOvF,GAAG,mBAAoB9C,IAE7BqO,EAAMpC,SAASgE,EAAQpP,IAAIQ,EAAK,IAAI,GAEtC,CAEA,WAAAka,CAAY7H,EAAKxE,GAEhB,MAAMsM,EAAO,IAAIlM,EAAOJ,GAoDxB,OAlDAwE,EAAI7R,SAASkS,IAEZ,MAAMxC,EAAO,IAAI5F,EAAOoI,EAAQnI,KAAMmI,EAAQ1F,OACxC0C,EAAO,IAAIrB,EAAO8L,GAAMvR,MAAM8J,EAAQ7J,IACtCuR,EAAO,IAAIrQ,EAyBjB,GAvBAmG,EAAKtI,IAAImG,QAAWlP,IAEf2C,KAAKiL,UAAYjL,KAAKiL,WAAaiD,GACtClO,KAAKiL,SAAS+B,WAEfkB,EAAKtC,SACL5L,KAAKiL,SAAWiD,EAChBlO,KAAKwF,OAAOE,SAASmT,UAAY3H,EAAQ7J,GACzCrH,KAAKwF,OAAOqJ,UAAU/C,QAAQoF,EAAQnI,MACtC1L,EAAEmP,gBAAgB,EAEnB0B,EAAK3H,IAAI,CAACqS,EAAMlK,IAChB1O,KAAKwF,OAAOsT,SAAS5H,EAAQnI,MAAQ,CACpC1B,GAAI6J,EAAQ7J,GACZmE,MAAO0F,EAAQ1F,OAGZxL,KAAKwF,OAAOE,SAASmT,YAAc3H,EAAQ7J,KAC9CsR,EAAKhM,SACLuB,EAAKtC,SACL5L,KAAKiL,SAAWiD,GAGbgD,EAAQ6H,UAAY7H,EAAQ6H,SAASrb,OAAS,EAAG,CAEpD,MAAMsb,EAAWhZ,KAAK0Y,YAAYxH,EAAQ6H,SAAU7K,GACpD0K,EAAKpR,SAAS,oBACdoR,EAAKxS,IAAImG,QAAU,KAEdyM,EAAStM,UACZsM,EAASpM,UACTgM,EAAKpR,SAAS,sBAEdwR,EAASrM,SACTiM,EAAKpR,SAAS,qBAER,GAER0G,EAAK3H,IAAIyS,EACV,CAEAL,EAAKpS,IAAI2H,EAAK,IAGRyK,CACR,ECzFM,MAAMM,UAAuBtQ,EAEnC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM2E,GAAY,IAAI1E,GAAQjB,SAAS,kBACjC4F,EAAU5H,EAAO4H,QACjB5O,EAAO,CACZ,oBACA,2BAEK0a,EAAc,IAAIhQ,EAAOkE,EAAQpP,IAAIQ,EAAK,KAAKgJ,SAAS,SACxD2R,EAAW,IAAIvP,EAAQ,SAAUwD,EAAQpP,IAAIQ,EAAK,KACxD2a,EAAS/S,IAAImG,QAAWlP,IAEvB2C,KAAKoZ,iBACL5T,EAAOpF,KAAK,cAAc,GAC1B/C,EAAEmP,gBAAgB,EAEnBxM,KAAKuG,IAAI,IAAI0G,EAAM,CAACiM,EAAaC,IAAWzR,SAAS,WACrD1H,KAAKiL,cAAW/M,EAChB8B,KAAKoQ,UAAY,IAAI3D,EACrBU,EAAU5G,IAAIvG,KAAKoQ,WACnBpQ,KAAKoH,MAAM,aACXpH,KAAKuG,IAAI4G,GACTnN,KAAKwF,OAASA,EAEd,MAAMkN,EAAS,KAEdyG,EAAS/S,IAAIiT,SAAgD,IAArC7T,EAAOE,SAAS0K,UAAU1S,MAAY,EAK/D8H,EAAOvF,GAAG,aAAa,CAACqZ,EAAUnB,KAEjCA,EAAI/H,UAAUpR,SAAS2P,IAEtB3O,KAAKuZ,YAAY5K,EAAI,IAEtB+D,GAAQ,IAGTlN,EAAOvF,GAAG,aAAc4U,IAEvB7U,KAAKqW,YAAcxB,EAASmC,MAAMrI,GAAG,IAGtCnJ,EAAOvF,GAAG,cAAc,CAACsJ,EAASoF,KAC7BpF,EACHvJ,KAAKwZ,iBAELxZ,KAAK+R,eAAepD,GAErB+D,GAAQ,IAGTlN,EAAOvF,GAAG,mBAAoB9C,IAE7B+b,EAAY9P,SAASgE,EAAQpP,IAAIQ,EAAK,KACtC2a,EAAS/P,SAASgE,EAAQpP,IAAIQ,EAAK,IAAI,GAEzC,CAEA,cAAAgb,GAEC,MAAM7K,EAAM3O,KAAKqW,YAEbrW,KAAKwF,OAAO8Q,aAAa3H,IAAQ,IAGrC3O,KAAKuZ,YAAY5K,GACjB3O,KAAKwF,OAAOE,SAAS0K,UAAU9O,KAAKqN,GAErC,CAEA,cAAAoD,CAAepD,GACd,MAAM8K,EAAO9K,GAAO3O,KAAKqW,YACnBhG,EAAQrQ,KAAKwF,OAAO8Q,aAAamD,IACxB,IAAXpJ,IAGJrQ,KAAKoQ,UAAUvJ,OAAOwJ,GACtBrQ,KAAKwF,OAAOE,SAAS0K,UAAU3O,OAAO4O,EAAO,GAC9C,CAEA,cAAA+I,GAECpZ,KAAKoQ,UAAU9K,QACftF,KAAKwF,OAAOE,SAAS0K,UAAY,EAClC,CAEA,WAAAmJ,CAAY5K,GACX,MAAMD,EAAO,IAAI5F,EACXoF,EAAO,IAAIrB,EACX6M,GAAO,IAAInR,GAASf,SAAS,cAC7BmS,EAAU3Z,KAAKwF,OAAOoU,eAAejL,GAC3C,IAAIkL,EACArO,EAEJ,QAAgBtN,IAAZyb,EAAuB,CAC1B,MAAMG,EAAY9Z,KAAKwF,OAAOoI,KAAKG,MAAM/P,IAAI2Q,GAC7CkL,EAAQC,EAAUD,MAClBrO,EAAQsO,EAAUD,KACnB,MACCA,EAAQF,EAAQtS,GAChBmE,EAAQmO,EAAQnO,MAGjBkD,EAAK1F,QAAQ,IAAM2F,GACnBD,EAAKtI,IAAImG,QAAWlP,IAEf2C,KAAKiL,UAAYjL,KAAKiL,WAAaiD,GACtClO,KAAKiL,SAAS+B,WAEfkB,EAAKtC,SACL5L,KAAKiL,SAAWiD,EAChBlO,KAAKwF,OAAOqJ,UAAU/C,QAAQ6C,GAC9BtR,EAAEmP,gBAAgB,EAEnBkC,EAAKtG,eAAeoD,GAEpBkO,EAAKtT,IAAImG,QAAWlP,IAEnB2C,KAAKwF,OAAOpF,KAAK,cAAc,EAAOuO,GACtCtR,EAAEmP,gBAAgB,EAGnB0B,EAAK3H,IAAI,CAACmI,EAAMgL,IAChBxL,EAAK9G,MAAMyS,GACX7Z,KAAKoQ,UAAU7J,IAAI2H,EACpB,ECnIM,MAAM6L,UAAyBpR,EAErC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM2E,GAAY,IAAI1E,GAAQjB,SAAS,kBACjC4F,EAAU5H,EAAO4H,QACjB5O,EAAO,CACZ,sBACA,6BAEK0a,EAAc,IAAIhQ,EAAOkE,EAAQpP,IAAIQ,EAAK,KAAKgJ,SAAS,SACxD2R,EAAW,IAAIvP,EAAQ,SAAUwD,EAAQpP,IAAIQ,EAAK,KACxD2a,EAAS/S,IAAImG,QAAWlP,IAEvB2C,KAAKga,aACL3c,EAAEmP,gBAAgB,EAEnBxM,KAAKuG,IAAI,IAAI0G,EAAM,CAACiM,EAAaC,IAAWzR,SAAS,WACrD1H,KAAKiL,cAAW/M,EAChB8B,KAAKia,MAAQ,IAAIxN,EACjBU,EAAU5G,IAAIvG,KAAKia,OACnBja,KAAKoH,MAAM,eACXpH,KAAKuG,IAAI4G,GACTnN,KAAKwF,OAASA,EACdxF,KAAK0S,OAAS,KAEbyG,EAAS/S,IAAIiT,SAAkD,IAAvC7T,EAAOE,SAASuM,YAAYvU,MAAY,EAKjE8H,EAAOvF,GAAG,aAAckY,IAEvBA,EAAIlG,YAAYjT,SAASkT,IAExBlS,KAAK/B,IAAIiU,EAAK,IAEflS,KAAK0S,QAAQ,IAGdlN,EAAOvF,GAAG,aAAciS,IACvBlS,KAAK/B,IAAIiU,GACTlS,KAAK0S,QAAQ,IAGdlN,EAAOvF,GAAG,mBAAoB9C,IAE7B+b,EAAY9P,SAASgE,EAAQpP,IAAIQ,EAAK,KACtC2a,EAAS/P,SAASgE,EAAQpP,IAAIQ,EAAK,IAAI,GAEzC,CAEA,GAAAP,CAAIiU,GAEH,MAAMxD,EAAO,IAAI5F,EAAO,IAAMoJ,EAAKvD,IAAKuD,EAAK7J,MACvC6F,GAAO,IAAIrB,GAASzF,MAAM,QAAU8K,EAAK7O,MACzCqW,GAAO,IAAInR,GAASf,SAAS,cAGnCkH,EAAKtI,IAAImG,QAAWlP,IAEf2C,KAAKiL,UAAYjL,KAAKiL,WAAaiD,GACtClO,KAAKiL,SAAS+B,WAEfkB,EAAKtC,SACL5L,KAAKiL,SAAWiD,EAChBlO,KAAKwF,OAAOqJ,UAAU/C,QAAQoG,EAAKvD,KACnCtR,EAAEmP,gBAAgB,EAGnBkN,EAAKtT,IAAImG,QAAWlP,IAEnB2C,KAAKyS,WAAWP,GAChB7U,EAAEmP,gBAAgB,EAGnB0B,EAAK3H,IAAI,CAACmI,EAAMgL,IAChB1Z,KAAKia,MAAM1T,IAAI2H,GACflO,KAAKwF,OAAOqJ,UAAUoD,YAAY1L,IACjC,YAAa2L,EAAKvD,IAAK,CAAC,GAtBZ,QAsBqB,iBAAkB,CAAC,GACrD3O,KAAK0S,SAEL,MAAMwH,EAAc7T,SAAS6J,eAAe,4BAC5C,GAAIgK,EAAa,CAChB,MAAMC,EAAkB9T,SAASC,cAAc,MACzC8T,EAAkB/T,SAASC,cAAc,KAC/C8T,EAAgBrR,KAAO,IACvBqR,EAAgBjS,YAAc+J,EAAK7J,KACnC+R,EAAgB7N,QAAWlP,IAC1BA,EAAEmP,iBACFxM,KAAKwF,OAAOqJ,UAAU/C,QAAQoG,EAAKvD,IAAI,EAExCwL,EAAgB1T,YAAY2T,GAE5B,MAAM5J,EAAYnK,SAASC,cAAc,QACzCkK,EAAUL,UAAY,mCAEtBK,EAAUjE,QAAWlP,IACpBA,EAAEyM,kBACF9J,KAAKwF,OAAO6M,sBAAsBH,EAAK,EAExCiI,EAAgB1T,YAAY+J,GAC5B0J,EAAYzT,YAAY0T,EACzB,CACD,CAEA,UAAA1H,CAAWP,GAEV,MAAM7B,EAAQrQ,KAAKwF,OAAOE,SAASuM,YAAYnS,QAAQoS,GACvD,IAAe,IAAX7B,EACH,OAEDrQ,KAAKia,MAAMpT,OAAOwJ,GAClBrQ,KAAKwF,OAAOE,SAASuM,YAAYxQ,OAAO4O,EAAO,GAC/CrQ,KAAKwF,OAAOqJ,UAAUoD,YAAYpL,OAAOqL,EAAKvD,IAAK,aACnD3O,KAAK0S,SAEL,MAAMwH,EAAc7T,SAAS6J,eAAe,4BACxCgK,GACkBA,EAAYzJ,iBAAiB,MACrCzR,SAAQkP,IAChBA,EAAK0D,cAAc,KAAKzJ,cAAgB+J,EAAK7J,MAChD6F,EAAKrH,QACN,GAGH,CAEA,UAAAmT,GAECha,KAAKwF,OAAOE,SAASuM,YAAYjT,SAAQkT,IACxClS,KAAKwF,OAAOqJ,UAAUoD,YAAYpL,OAAOqL,EAAKvD,IAAK,YAAY,IAEhE3O,KAAKia,MAAM3U,QACXtF,KAAKwF,OAAOE,SAASuM,YAAc,GACnCjS,KAAK0S,QACN,ECzIM,MAAM2H,UAAsB1R,EAElC,WAAArG,CAAYkD,GAEXgD,QACAA,MAAMpB,MAAM,YAEZ,MAAMgG,EAAU5H,EAAO4H,QACjB5O,EAAO,CACZ,mBACA,4BACA,4BACA,wBACA,0BACA,oCAEK0a,EAAc,IAAIhQ,EAAOkE,EAAQpP,IAAIQ,EAAK,KAAKgJ,SAAS,SAC9DxH,KAAKuG,IAAI,IAAI0G,EAAMiM,GAAaxR,SAAS,WAEzC,MAAM4S,EAAgB,IAAI1R,EAAQwE,EAAQpP,IAAIQ,EAAK,IAAK,eAClD+b,EAAc,IAAI7R,EAClBjD,GAAW,IAAI4D,GAAWI,WAAW,CAC1C7D,GAAI,UACJC,GAAI,SACJC,GAAI,WACJC,GAAI,UACJC,GAAI,eAELP,EAASW,IAAImE,SAAYlN,IAExBmI,EAAOpF,KAAK,kBAAmB/C,EAAEyH,OAAO3H,MAAM,EAE/CsI,EAAS2B,MAAM,eACfmT,EAAYhU,IAAI+T,GAChBC,EAAYhU,IAAId,GAEhB,MAAM+U,EAAgB,IAAI5R,EAAQwE,EAAQpP,IAAIQ,EAAK,IAAK,YAClDic,EAAc,IAAI/R,EAClB2L,EAAW,IAAIlK,EAAS,GAAI,GAElCkK,EAASjO,IAAImE,SAAYlN,IACxB,MAAMiX,EAAUC,SAASlX,EAAEyH,OAAO3H,OAE9BmX,GAAW,GAAKA,GAAW,IAC9B9O,EAAOpF,KAAK,gBAAiB,CAC5BiU,SAAUC,GAEZ,EAGDD,EAASjN,MAAM,YACfqT,EAAYlU,IAAIiU,GAChBC,EAAYlU,IAAI8N,GAChBA,EAASjO,IAAIiT,UAAW,EAIxB,MAAMqB,EAAY,IAAI9R,EAAQwE,EAAQpP,IAAIQ,EAAK,IAAK,QAC9Cmc,EAAU,IAAIjS,EACd0P,GAAO,IAAI/O,GAAWI,WAAW,CACtCmR,UAAW,YACXC,SAAU,aAEXzC,EAAKhS,IAAImE,SAAYlN,IAEpBmI,EAAOpF,KAAK,cAAe/C,EAAEyH,OAAO3H,OAEb,aAAnBE,EAAEyH,OAAO3H,MACZqI,EAAOpF,KAAK,gBAAiB,CAC5B0a,IAAK,OACLzQ,SAAKnM,IAGNsH,EAAOpF,KAAK,gBAAiB,CAC5B0a,SAAK5c,EACLmM,SAAKnM,GAEP,EAEDka,EAAKhR,MAAM,QACXuT,EAAQpU,IAAImU,GACZC,EAAQpU,IAAI6R,GAIZ,MAAM2C,EAAiB,IAAI5Q,EAAS,IAAK,GACnC6Q,EAAc,IAAIpS,EAAQwE,EAAQpP,IAAIQ,EAAK,IAAK,UAChDyc,EAAY,IAAIvS,EAChB4P,GAAS,IAAIjP,GAAWI,WAAW,CACxCyR,KAAM,OACNC,KAAM,SAEP7C,EAAOlS,IAAImE,SAAYlN,IAEtBmI,EAAOpF,KAAK,gBAAiB,CAC5B0a,IAAKzd,EAAEyH,OAAO3H,MACdkN,SAAKnM,IAEN6c,EAAe3U,IAAIiT,SAA8B,SAAnBhc,EAAEyH,OAAO3H,KAAgB,EAExDmb,EAAOlR,MAAM,UAEb6T,EAAU1U,IAAIyU,GACdC,EAAU1U,IAAI+R,GAEd,MAAM8C,EAAsB,IAAIxS,EAAQwE,EAAQpP,IAAIQ,EAAK,IAAK,oBACxD6c,EAAoB,IAAI3S,EAC9BqS,EAAe3U,IAAImE,SAAYlN,IAE9BmI,EAAOpF,KAAK,gBAAiB,CAC5B0a,SAAK5c,EACLmM,IAAKkK,SAASlX,EAAEyH,OAAO3H,QACtB,EAEH4d,EAAe3T,MAAM,oBACrBiU,EAAkB9U,IAAI6U,GACtBC,EAAkB9U,IAAIwU,GAItB,MAAMO,EAAgBlO,EAAQpP,IAAI,+BAC5Bud,EAAgB,IAAI7S,EACpB8S,EAAa,IAAI5R,EAAQ,YAAY,EAAO0R,EAAc,IAChEE,EAAWpU,MAAM,cACjBoU,EAAWpV,IAAImG,QAAWlP,IAAD,EAKzBke,EAAchV,IAAI,IAAIqC,EAAQ0S,EAAc,GAAI,eAChDC,EAAchV,IAAIiV,GAElBxb,KAAKuG,IAAI,IAAI0G,EAAM,CAClBsN,EACAE,EACAE,EACAM,EACAI,KAMD7V,EAAOvF,GAAG,aAAckY,IAEvB1S,EAAS2D,SAAS+O,EAAI1S,UACtB4O,EAASjL,SAAS+O,EAAIsD,OAAOpH,UAC7B+D,EAAKhP,SAAS+O,EAAIC,MAClBE,EAAOlP,SAAS+O,EAAIG,OAAOwC,KAC3BC,EAAe3R,SAAS+O,EAAIG,OAAOjO,KACnC0Q,EAAe3U,IAAIiT,SAA8B,SAAnBlB,EAAIG,OAAOwC,GAAc,IAGxDtV,EAAOvF,GAAG,UAAWoY,IAED,aAAfA,EAAMD,MACTE,EAAOlP,SAAS,QAChBkP,EAAOlS,IAAIiT,UAAW,EACtB0B,EAAe3U,IAAIiT,UAAW,GAE9Bf,EAAOlS,IAAIiT,UAAW,CACvB,IAGD7T,EAAOvF,GAAG,mBAAoB9C,IAE7B+b,EAAY9Q,eAAegF,EAAQpP,IAAIQ,EAAK,KAC5C8b,EAAclS,eAAegF,EAAQpP,IAAIQ,EAAK,KAC9Cgc,EAAcpS,eAAegF,EAAQpP,IAAIQ,EAAK,KAC9Ckc,EAAUtS,eAAegF,EAAQpP,IAAIQ,EAAK,KAC1Cwc,EAAY5S,eAAegF,EAAQpP,IAAIQ,EAAK,KAC5C4c,EAAoBhT,eAAegF,EAAQpP,IAAIQ,EAAK,IAAI,GAE1D,EC7KM,MAAMkd,UAAsB/S,EAElC,WAAArG,CAAYkD,GAEXgD,QACA,MAAM2E,GAAY,IAAI1E,GAAQjB,SAAS,kBACjC4F,EAAU5H,EAAO4H,QACjBuO,EAAS,CAAC,EACV5c,EAAM,mBACNyM,EAAQ,IAAItC,EAAOkE,EAAQpP,IAAIe,IAAMyI,SAAS,SACpDxH,KAAKuG,IAAI,IAAI0G,EAAMzB,GAAO9D,SAAS,WACnCiU,EAAO5c,GAAOyM,EAEdxL,KAAKsL,MAAQ,IAAImB,EACjBzM,KAAKoH,MAAM,YACXpH,KAAKuG,IAAI4G,GAET,MAAM7I,EAAO,CAACzB,EAAM+Y,KACnB,QAAmB1d,IAAf0d,EAAK/Y,IACO,OAAf+Y,EAAK/Y,IAAyC,iBAAf+Y,EAAK/Y,IAA4C,IAAtB+Y,EAAK/Y,GAAMnF,OACrE,OAED,MAAMwQ,EAAO,IAAIrB,EACXrB,GAAQ,IAAItC,GAAS1B,SAAS,SAC9BrK,GAAQ,IAAI+L,GAAS1B,SAAS,SACpCgE,EAAMpC,SAASgE,EAAQpP,IAAIe,EAAM,IAAM8D,GAAMgZ,eAChC,gBAAThZ,EACH1F,EAAMiJ,IAAI+J,UAAYyL,EAAK/Y,GAE3B1F,EAAMiM,SAASwS,EAAK/Y,IAErB8Y,EAAO5c,EAAM,IAAM8D,GAAQ2I,EAC3B0C,EAAK3H,IAAI,CAACiF,EAAOrO,IACjB6C,KAAKsL,MAAM/E,IAAI2H,EAAK,EAKrB1I,EAAOvF,GAAG,YAAa2b,IAEtB5b,KAAKsL,MAAMhG,QACX6H,EAAU7H,QACV6H,EAAU5G,IAAIvG,KAAKsL,OACnBjF,SAAS2B,MAAQ4T,EAAK5T,MACtB,IAAK,MAAMnF,KAAQ+Y,EAClBtX,EAAKzB,EAAM+Y,EACZ,IAGDpW,EAAOvF,GAAG,mBAAoB9C,IAE7B,IAAK,MAAM0F,KAAQ8Y,EAAQ,CAC1B,IAAItT,EAEHA,EADGxF,IAAS9D,EACLqO,EAAQpP,IAAI6E,GAEZuK,EAAQpP,IAAI6E,GAAMgZ,cAE1BF,EAAO9Y,GAAMuG,SAASf,EACvB,IAEF,ECvDM,MAAMyT,EAEZ,WAAAxZ,CAAYkD,GAEX,MAAM4H,EAAU5H,EAAO4H,QACjB2O,EAAWvW,EAAOE,SAClBlH,EAAO,CACZ,gBACA,mBACA,oBACA,sBACA,iBACA,mBACA,oBAGK2O,EAAY,IAAItC,EAAc,YAAYzD,MAAM,WAEhD4H,GAAY,IAAIvG,GAAQrB,MAAM,SAASM,SAAS,OAChDuH,EAAY,IAAIrF,EAAQ,UAY9B,GAXAqF,EAAUhH,SAASmF,EAAQpP,IAAIQ,EAAK,KACpCyQ,EAAU7I,IAAImG,QAAWlP,IAExBmI,EAAOpF,KAAK,iBAAiB,GAC7B/C,EAAEmP,iBACFyC,EAAU7I,IAAIkJ,MAAM,EAErBN,EAAUzI,IAAI0I,GACd9B,EAAU9B,QAAQ2D,GAElB7B,EAAU5B,OAAO,QAAS6B,EAAQpP,IAAIQ,EAAK,IAAK,IAAIia,EAASjT,IACzDuW,EAAS3L,UAAW,CACvB,MAAM4L,EAAgB,IAAI/C,EAAezT,GACzC2H,EAAU5B,OAAO,QAAS6B,EAAQpP,IAAIQ,EAAK,IAAKwd,GAChDxW,EAAOsM,eAAiBkK,CACzB,CACA,GAAID,EAAS9J,YAAa,CACzB,MAAMgK,EAAkB,IAAIlC,EAAiBvU,GAC7C2H,EAAU5B,OAAO,QAAS6B,EAAQpP,IAAIQ,EAAK,IAAKyd,GAChDzW,EAAOgN,iBAAmByJ,CAC3B,CAEA9O,EAAU5B,OAAO,QAAS6B,EAAQpP,IAAIQ,EAAK,IAAK,IAAI0O,EAAY1H,IAChE2H,EAAU5B,OAAO,QAAS6B,EAAQpP,IAAIQ,EAAK,IAAK,IAAI6b,EAAc7U,IAClE2H,EAAU5B,OAAO,QAAS6B,EAAQpP,IAAIQ,EAAK,IAAK,IAAIkd,EAAclW,IAClE2H,EAAUvB,OAAO,SAEjBvF,SAAS0Q,KAAKtQ,YAAY0G,EAAU/G,KAIpCZ,EAAOvF,GAAG,iBAAkB9C,IAEvBA,EACHgQ,EAAU3F,SAAS,QAEnB2F,EAAU5F,gBAAgB,QAC3B,IAGD/B,EAAOvF,GAAG,mBAAoB9C,IAE7B8R,EAAUhH,SAASmF,EAAQpP,IAAIQ,EAAK,KACpC2O,EAAUpB,SAAS,QAASqB,EAAQpP,IAAIQ,EAAK,KACzCud,EAAS3L,WACZjD,EAAUpB,SAAS,QAASqB,EAAQpP,IAAIQ,EAAK,KAE1Cud,EAAS9J,aACZ9E,EAAUpB,SAAS,QAASqB,EAAQpP,IAAIQ,EAAK,KAE9C2O,EAAUpB,SAAS,QAASqB,EAAQpP,IAAIQ,EAAK,KAC7C2O,EAAUpB,SAAS,QAASqB,EAAQpP,IAAIQ,EAAK,KAC7C2O,EAAUpB,SAAS,QAASqB,EAAQpP,IAAIQ,EAAK,IAAI,GAEnD,EC/EM,MAAM0d,EAET,WAAA5Z,CAAYkD,GAER,MAAM2H,GAAY,IAAI1E,GAAQrB,MAAM,WAC9BgG,EAAU5H,EAAO4H,QACjB5O,EAAO,CACT,gBACA,eAEEgN,EAAQ,IAAI5C,EAAQwE,EAAQpP,IAAIQ,EAAK,IAAK,cAC1C2d,EAAU,IAAIvS,EAAQ,OAAQ,IAAIxC,MAAM,cAC9C+U,EAAQ/V,IAAImN,QAAWlW,IAEnB2C,KAAK0S,SACLrV,EAAEmP,gBAAgB,EAGtB,MAAM4P,EAAS,IAAIxS,EAAQ,SAAUwD,EAAQpP,IAAIQ,EAAK,KACtD4d,EAAOhW,IAAIiT,UAAW,EACtB+C,EAAOhW,IAAImG,QAAWlP,IAElB,MAAM6U,EAAO,CACTvD,IAAK3O,KAAK2O,IACV0N,KAAM,IAAI/Y,KACV+E,KAAM8T,EAAQhT,WACd9F,KAAMA,KAEVrD,KAAKsc,WAAQpe,EACbsH,EAAOE,SAASuM,YAAY3Q,KAAK4Q,GACjC1M,EAAOpF,KAAK,YAAa8R,GACzB/E,EAAU5F,gBAAgB,SAC1BlK,EAAEmP,iBACF4P,EAAOhW,IAAIkJ,MAAM,EAGrBtP,KAAK0S,OAAS,KAEV0J,EAAOhW,IAAIiT,WAAarZ,KAAKsc,OAASH,EAAQhT,WAAWzL,OAAS,EAAE,EAGxEyP,EAAU5G,IAAI,IAAI0G,EAAM,CAACzB,EAAO2Q,EAASC,IAAS1U,SAAS,YAC3DrB,SAAS0Q,KAAKtQ,YAAY0G,EAAU/G,KAIpCZ,EAAOvF,GAAG,YAAY,CAAC0O,EAAK4N,KAExBvc,KAAK2O,IAAMA,EACX3O,KAAKsc,MAAQC,EAASD,MAAM3N,GAC5B3O,KAAK0S,SACLvF,EAAU3F,SAAS,QACnB2U,EAAQ/S,SAAS,GAAG,IAGxB5D,EAAOvF,GAAG,cAAc,KAEpBD,KAAKsc,WAAQpe,EACb8B,KAAK0S,SACLvF,EAAU5F,gBAAgB,QAAQ,IAGtC/B,EAAOvF,GAAG,mBAAoB9C,IAE1BqO,EAAMpD,eAAegF,EAAQpP,IAAIQ,EAAK,KACtC4d,EAAOhT,SAASgE,EAAQpP,IAAIQ,EAAK,IAAI,GAE7C,ECpEG,MAAMge,EACT,WAAAla,CAAYkD,GACR,MAAM4H,EAAU5H,EAAO4H,QACjB1H,EAAWF,EAAOE,SAElByH,GAAY,IAAI1E,GAAQrB,MAAM,cAC9B5I,EAAO,CACT,oBACA,iBAIEie,GAAW,IAAIhU,GAAQjB,SAAS,gBAChCkV,GAAc,IAAIjU,GAAQjB,SAAS,iBAEzC,IAKImV,EALAtU,GAAO,IAAIO,GAAUpB,SAAS,eAAeY,eAAe,yBAChEqU,EAASlW,IAAI8B,GAKb,MAAMuU,GAAY,IAAInU,GAAQrB,MAAM,UAAUI,SAAS,OAwEvD,IAAIqM,EACJ,GAxEA8I,EAAY,IAAI/S,EAAQ,UACxB+S,EAAU1U,SAASmF,EAAQpP,IAAIQ,EAAK,KAEpCme,EAAUvW,IAAImG,QAAWlP,IACrBA,EAAEmP,iBAON,WACI,MAAMqQ,EAAW,CACb,CAAE7U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,GAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,IAC3D,CAAE/U,MAAO,aAAc8U,OAAQ,qBAAsBC,KAAM,KAI/D,IADoB1W,SAAS6J,eAAe,mBACxB,CAChB,IAAI8M,EAAQ3W,SAASC,cAAc,OACnC0W,EAAMhM,aAAa,KAAM,mBACzBgM,EAAMhM,aAAa,QAAS,cAE5B,IAAIiM,EAAe5W,SAASC,cAAc,OAC1C2W,EAAajM,aAAa,QAAS,sBAEnC,IAAIkM,EAAW7W,SAASC,cAAc,OACtC4W,EAASlM,aAAa,QAAS,aAC/B6L,EAAS7d,SAAS4O,IACd,IAAIuP,EAAW9W,SAASC,cAAc,OACtC6W,EAASnM,aAAa,QAAS,aAC/BmM,EAAShN,UAAY,wGAEWvC,EAAK5F,iEACJ4F,EAAKkP,+FAERlP,EAAKmP,mCAEnCG,EAASzW,YAAY0W,EAAS,IAGlCF,EAAaxW,YAAYyW,GACzBF,EAAMvW,YAAYwW,GAElB9P,EAAU/G,IAAIK,YAAYuW,EAC9B,CAEY3W,SAAS6J,eAAe,mBAC9BvI,UAAU0J,OAAO,SAC3B,CA9DI+L,EAAgB,EAGpBR,EAAUrW,IAAIoW,GACdD,EAAYnW,IAAIqW,GA+DZlX,EAAS6Q,WAAY,CAErB,MAAMC,GAAgB,IAAI/N,GAAQrB,MAAM,SAASI,SAAS,OAC1DqM,EAAgB,IAAIjK,EAAQ,UAC5BiK,EAAc5L,SAASmF,EAAQpP,IAAIQ,EAAK,KACxCqV,EAAczN,IAAImG,QAAWlP,IAEzB2C,KAAKyW,mBACLpZ,EAAEmP,gBAAgB,EAGtBnG,SAASwD,UAAaxM,IAEJ,QAAVA,EAAE0B,MACF1B,EAAEmP,iBACFxM,KAAKyW,mBACT,EAGJpQ,SAASqQ,mBAAsBrZ,IAKvBgJ,SAASgR,kBACTb,EAAc9O,SAAS,gBAEvB8O,EAAc5O,YAAY,eAC9B,EAIJ4O,EAAcjQ,IAAIsN,GAClB6I,EAAYnW,IAAIiQ,EACpB,CAEAhR,EAAOvF,GAAG,mBAAoB9C,IACtBuI,EAAS6Q,YACT1C,EAAc5L,SAASmF,EAAQpP,IAAIQ,EAAK,IAC5C,IAIJ2O,EAAU5G,IAAI,CAACkW,EAAUC,IACzBrW,SAAS0Q,KAAKtQ,YAAY0G,EAAU/G,IACxC,CAEA,gBAAAqQ,GAEIpQ,SAAS+Q,cAAc9H,OAEY,OAA/BjJ,SAASgR,kBACThR,SAASiR,gBAAgBC,oBAClBlR,SAASmR,gBAChBnR,SAASmR,gBAEjB,EC7IG,MAAM6F,EAEZ,WAAA/a,CAAYgb,EAAU5X,GAErB,MAAM6X,EAAWnc,IAChB,MAAM6H,EAAM,IAAI2L,IAAI5Q,OAAO6Q,UAC3B,IAAI2I,EAAOF,EACP5X,IAAaA,EAAS+O,UACzB+I,EAAOF,EACHlc,GAAMpB,KAAK2U,QAAQrP,SACblE,GAA8B,IAAtB6H,EAAIqE,OAAO5P,SAC7B8f,EAAOpc,GAERpB,KAAKyd,QAAQD,EAAM9X,GACnB1F,KAAKoN,QAAU,IAAI7H,EAAQvF,MAC3BA,KAAK0d,QAAU,IAAI5O,EAAQ9O,MAC3BA,KAAK2d,QAAU,IAAIlG,EAAQzX,MAC3BA,KAAK4d,OAAS,IAAIpB,EAAOxc,MACzBA,KAAK6d,QAAU,IAAI/B,EAAQ9b,MACvBA,KAAK0F,SAASuM,cACjBjS,KAAK8d,QAAU,IAAI5B,EAAQlc,OAE5BA,KAAKsE,MAAM,EAGZtE,KAAK0F,cAAWxH,EAChB8B,KAAK+d,SfUa,CACZ,WACA,cACA,UACA,QACA,QACA,iBACA,UAEWC,MAAMlf,GAAMmf,UAAUC,UAAUC,MAAMrf,KelBvDkB,KAAK2U,QAAU,IAAIhR,EACnB,MAAM8Q,EAAW/O,GAAYA,EAAS+O,UAElCzU,KAAK2U,QAAQ5Q,WAAe2B,IAAY+O,EAG3C8I,IAFAvd,KAAK2U,QAAQrQ,MAAK,IAAMtE,KAAK2U,QAAQ3W,KAAKoD,GAASmc,EAAQnc,OAK5D4C,OAAOoa,eAAiBpe,KAAKuO,OAAOH,KAAKpO,MACzCgE,OAAOqa,aAAere,KAAKse,YAAYlQ,KAAKpO,MAC5CgE,OAAO6F,UAAY7J,KAAKue,gBAAgBnQ,KAAKpO,MAC7CgE,OAAOwa,QAAWnhB,IACbA,EAAEohB,SACLphB,EAAEmP,gBACH,CAEF,CAOA,IAAAlI,CAAKgZ,EAAU5X,GAEd1F,KAAKI,KAAK,iBACVJ,KAAK8Y,SAAW,CAAC,EAEbrb,UAAUC,OAAS,GAEtBsC,KAAKyd,QAAQH,EAAU5X,GAGxB1F,KAAK4N,KAAO8Q,KAAK1e,KAAK0F,SAAS4X,UAC/Btd,KAAK6O,UAAY7O,KAAK4N,KAAK+Q,SAAS,SAAU,CAC7CC,QAAS5e,KAAK0F,SAASkZ,QACvBxG,KAAMpY,KAAK0F,SAAS0S,KACpBE,OAAQtY,KAAK0F,SAAS4S,OAAOwC,IAC7BC,eAAgB/a,KAAK0F,SAAS4S,OAAOjO,IACrC6B,MAAO,OACPE,OAAQ,OACRyS,MAAM,IAGP,MAAMlQ,EAAM3O,KAAK0F,SAASoZ,oBAEzB9e,KAAK+e,UADFpQ,EACc3O,KAAK6O,UAAU/C,QAAQ6C,GAEvB3O,KAAK6O,UAAU/C,UAGjC9L,KAAK+e,UAAUrR,MAAM4L,IACpBtZ,KAAKI,KAAK,YAAakZ,EAAUtZ,KAAK0F,SAAS,IAGhD1F,KAAK4N,KAAKoR,MAAMtR,MAAK,KACpB1N,KAAKI,KAAK,YAAaJ,KAAK0F,SAAS,IACnCgI,MAAK,KACP1N,KAAKI,KAAK,aAAa,IAGxBJ,KAAK4N,KAAK+C,OAAOsO,SAASvR,MAAMkO,IAC/B5b,KAAKI,KAAK,WAAYwb,EAAK,IAG5B5b,KAAK4N,KAAK+C,OAAOC,WAAWlD,MAAMmD,IACjC7Q,KAAKI,KAAK,YAAayQ,EAAI,IAG5B7Q,KAAK6O,UAAU5O,GAAG,SAAU5C,IAEJ,UADLA,EAAE6hB,KAAK7Y,SAAS8Y,eACpBne,MACbhB,KAAKI,KAAK,aACX,IAGDJ,KAAK6O,UAAU5O,GAAG,UAAWoY,IAC5BrY,KAAKI,KAAK,SAAUiY,EAAM,IAG3BrY,KAAK6O,UAAU5O,GAAG,YAAY,CAACmf,EAAU7C,KACxCvc,KAAKqf,YAAYD,GACjBpf,KAAKI,KAAK,WAAYgf,EAAU7C,EAAS,IAG1Cvc,KAAK6O,UAAU5O,GAAG,aAAc4U,IAC/B7U,KAAKqf,YAAYxK,EAASmC,MAAMrI,KAChC3O,KAAKI,KAAK,YAAayU,EAAS,IAGjC7U,KAAK6O,UAAU5O,GAAG,UAAWD,KAAKue,gBAAgBnQ,KAAKpO,OAEvDA,KAAKC,GAAG,QAAQ,KAC8B,QAAzCD,KAAK4N,KAAK0R,QAAQL,SAASM,UAC9Bvf,KAAK6O,UAAUgJ,OAEf7X,KAAK6O,UAAU6I,MAChB,IAGD1X,KAAKC,GAAG,QAAQ,KAC8B,QAAzCD,KAAK4N,KAAK0R,QAAQL,SAASM,UAC9Bvf,KAAK6O,UAAU6I,OAEf1X,KAAK6O,UAAUgJ,MAChB,IAGD7X,KAAKC,GAAG,mBAAoB9C,IAC3B6C,KAAK0F,SAASD,SAAWtI,CAAK,IAG/B6C,KAAKC,GAAG,eAAgB9C,IACvB6C,KAAK0F,SAAS0S,KAAOjb,EACrB6C,KAAK6O,UAAUuJ,KAAKjb,EAAM,IAG3B6C,KAAKC,GAAG,iBAAkB9C,IACzB,MAAM2d,EAAM3d,EAAM2d,KAAO9a,KAAK0F,SAAS4S,OAAOwC,IACxCzQ,EAAMlN,EAAMkN,KAAOrK,KAAK0F,SAAS4S,OAAOjO,IAC9CrK,KAAK0F,SAAS4S,OAAOwC,IAAMA,EAC3B9a,KAAK0F,SAAS4S,OAAOjO,IAAMA,EAC3BrK,KAAK6O,UAAUyJ,OAAOwC,EAAKzQ,EAAI,IAGhCrK,KAAKC,GAAG,iBAAkB9C,IACzB,MAAMkX,EAAWlX,EAAMkX,SACvBrU,KAAK0F,SAAS+V,OAAOpH,SAAWA,EAChCrU,KAAK6O,UAAU2Q,OAAOnL,SAASA,EAAW,KAAK,GAEjD,CAIA,cAAAuF,CAAejL,GAKd,MAAM2N,EAAQtc,KAAK6O,UAAU4Q,SAAS9Q,GAChCkL,EAAQyC,EAAQA,EAAMoD,eAAeC,WAAWtY,QAAKnJ,EAErD6K,EADW/I,KAAK6O,UAAU+Q,kBACV5I,MAAMjO,KAC5B,OAAO/I,KAAK8Y,SAAS/P,EAAO,IAAM8Q,IAAU7Z,KAAK8Y,SAAS/P,EAC3D,CASA,YAAAuN,CAAa3H,GACZ,OAAO3O,KAAK0F,SAAS0K,UAAUtQ,QAAQ6O,EACxC,CAIA,WAAAkR,CAAY3N,GAEX,OAAOlS,KAAK0F,SAASuM,YAAYnS,QAAQoS,EAC1C,CASA,OAAAuL,CAAQH,EAAU5X,GAEjB1F,KAAK8f,SAAWC,IAAIzC,GAAUnb,WAC9BnC,KAAK0F,SAAW,CACf4X,SAAUA,EACV/N,OAAQvP,KAAK+d,SAAW,OAAS,UACjCa,QAAS5e,KAAK+d,SAAW,aAAe,UACxCiC,SAAS,EACTjL,SAAS,EACTN,WAAUzU,KAAK2U,QAAQ5Q,UACvB0B,SAAU,KACVoT,eAAW3a,EACXkS,UAAW,GACX6B,YAAa,GACbmG,KAAM,YACNE,OAAQ,CACPwC,IAAK,OACLzQ,IAAK,KAENoR,OAAQ,CACPpH,SAAU,IAEXmH,gBAAYtd,EACZqY,WAAYlQ,SAAS4Z,kBACrB3M,WAAY,IAGblQ,EAAOsC,GAAY,CAAC,EAAG1F,KAAK0F,UAExB1F,KAAK0F,SAASsa,QACjBhgB,KAAKkgB,mBAAmBxa,GAAY,CAAC,GAErC1F,KAAKmgB,qBAEP,CAMA,OAAAC,GAEC,OAAOC,cAAwD,OAAxCA,aAAaC,QAAQtgB,KAAK8f,SAClD,CAOA,mBAAAK,GAEC,QAAKngB,KAAKogB,YAGVC,aAAaE,WAAWvgB,KAAK8f,WACtB,EACR,CAOA,kBAAAI,CAAmBM,GAElB,IAAKxgB,KAAKogB,UACT,OAAO,EAER,IAAIK,EACJ,IACCA,EAASC,KAAKC,MAAMN,aAAaC,QAAQtgB,KAAK8f,UAC/C,CAAE,MAAOziB,GACRgH,QAAQuc,UAAUvjB,EACnB,CAEA,QAAIojB,IACHrd,EAAOqd,EAAQzgB,KAAK0F,SAAU8a,IACvB,EAIT,CAKA,YAAAK,GAEC7gB,KAAK0F,SAASoZ,oBAAsB9e,KAAK6O,UAAUgG,SAASmC,MAAMrI,IAClE,MAAMwJ,EAAMha,OAAOtB,OAAO,CAAC,EAAGmD,KAAK0F,iBAC5ByS,EAAI5I,cACJ4I,EAAIyG,eACJzG,EAAIpD,eACJoD,EAAI6H,eACJ7H,EAAI1D,gBACJ0D,EAAIqD,kBACJrD,EAAI5B,kBACJ4B,EAAI7E,WACX+M,aAAaS,QAAQ9gB,KAAK8f,SAAUY,KAAKK,UAAU5I,GACpD,CAEA,WAAAkH,CAAY1Q,GAEX,MAAMqS,EAAUhhB,KAAK4N,KAAKqT,cAAW/iB,EAAY8B,KAAK4N,KAAK3E,IACrDA,EAAM,IAAI2L,IAAI5Q,OAAO6Q,SAAUmM,GACrC/X,EAAIiY,KAAO,IAAMvS,EAGb3O,KAAK0F,SAASqP,SAAW/Q,OAAO6Q,SAASqM,OAASjY,EAAIiY,OAEzDld,OAAO+Q,QAAQC,UAAU,CAAC,EAAG,GAAI/L,GACjCjJ,KAAKmhB,mBAAqBxS,EAE5B,CAIA,MAAAJ,GAEKvO,KAAK0F,SAASsa,SAAWK,cAC5BrgB,KAAK6gB,cAEP,CAEA,WAAAvC,GAEC,MAAM4C,EAAOld,OAAO6Q,SAASqM,KAAKtf,MAAM,GACxC5B,KAAK6O,UAAU/C,QAAQoV,EACxB,CAEA,eAAA3C,CAAgBlhB,GAGf,IAAIF,EAAQ6C,KAAK0F,SAAS+V,OAAOpH,SAEjC,OAAQhX,EAAE0B,KAET,IAAK,IACL,IAAK,IACJ5B,GAPW,EAQX6C,KAAKI,KAAK,gBAAiB,CAAEiU,SAAUlX,IACvC,MACD,IAAK,IACJA,GAXW,EAYX6C,KAAKI,KAAK,gBAAiB,CAAEiU,SAAUlX,IACvC,MACD,IAAK,IACJA,EAAQ,GACR6C,KAAKI,KAAK,gBAAiB,CAAEiU,SAAUlX,IACvC,MACD,IAAK,YACJ6C,KAAKI,KAAK,QACV,MACD,IAAK,aACJJ,KAAKI,KAAK,QAGb,EAGD,EAAaid,EAAOhe,W","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (existingToc) {\n\t\t\t\texistingToc.remove();\n\t\t\t} else {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) {\n\t\t\t\tbookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tupdateBookmarksList();\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tupdateBookmarksList();\n\t\t})\n\n\t\tfunction updateBookmarksList() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tbookmarksList.innerHTML = \"\";\n\n\t\t\tlet title = document.createElement(\"h3\");\n\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\t\t\tbookmarksList.appendChild(title);\n\n\t\t\treader.settings.bookmarks.forEach((cfi, index) => {\n\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\tbookmarkLink.textContent = `Bookmark ${index + 1}`;\n\n\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t});\n\n\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t};\n\n\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t};\n\n\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t})\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t\treader.bookmarksPanel.removeBookmark(cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\n\t\tsearchBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowSearchPopup();\n\t\t}\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\t\tfunction showSearchPopup() {\n\t\t\tlet existingPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tif (!existingPopup) {\n\t\t\t\tlet searchPopup = document.createElement(\"div\");\n\t\t\t\tsearchPopup.setAttribute(\"id\", \"toolbar-search-list\");\n\t\t\t\tsearchPopup.classList.add(\"search-popup\");\n\n\t\t\t\tlet searchContainer = document.createElement(\"div\");\n\t\t\t\tsearchContainer.classList.add(\"search-container\");\n\n\t\t\t\tlet searchIcon = document.createElement(\"span\");\n\t\t\t\tsearchIcon.classList.add(\"search-icon\");\n\t\t\t\tsearchIcon.innerHTML = '';\n\n\t\t\t\tlet searchInput = document.createElement(\"input\");\n\t\t\t\tsearchInput.setAttribute(\"type\", \"search\");\n\t\t\t\tsearchInput.setAttribute(\"placeholder\", \"Search\");\n\t\t\t\tsearchInput.setAttribute(\"id\", \"nav-q\");\n\t\t\t\tsearchInput.setAttribute(\"class\", \"toolbar-search-input\");\n\n\t\t\t\tsearchContainer.appendChild(searchIcon);\n\t\t\t\tsearchContainer.appendChild(searchInput);\n\n\t\t\t\tlet resultContainer = document.createElement(\"ul\");\n\t\t\t\tresultContainer.setAttribute('id', 'toolbar-search-results');\n\n\t\t\t\tlet searchPanel = new SearchPanel(reader);\n\t\t\t\tsearchInput.oninput = async () => {\n\t\t\t\t\tlet query = searchInput.value.trim();\n\t\t\t\t\tif (query.length > 0) {\n\t\t\t\t\t\tlet results = await searchPanel.doSearch(query);\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\n\t\t\t\t\t\tif (results.length === 0) {\n\t\t\t\t\t\t\tlet noResultItem = document.createElement(\"li\");\n\t\t\t\t\t\t\tnoResultItem.innerText = \"Không tìm thấy kết quả trùng khớp\";\n\t\t\t\t\t\t\tnoResultItem.style.color = \"gray\";\n\t\t\t\t\t\t\tnoResultItem.style.padding = \"8px\";\n\t\t\t\t\t\t\tresultContainer.appendChild(noResultItem);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresults.forEach((data) => {\n\t\t\t\t\t\t\tlet item = document.createElement(\"li\");\n\t\t\t\t\t\t\tlet link = document.createElement(\"a\");\n\t\t\t\t\t\t\tlink.href = \"#\" + data.cfi;\n\t\t\t\t\t\t\tlink.textContent = data.excerpt;\n\t\t\t\t\t\t\tlink.onclick = (e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tsearchPanel.reader.rendition.display(data.cfi);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\titem.appendChild(link);\n\t\t\t\t\t\t\tresultContainer.appendChild(item);\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsearchPopup.appendChild(searchContainer);\n\t\t\t\tsearchPopup.appendChild(resultContainer);\n\t\t\t\tsearchBox.dom.appendChild(searchPopup);\n\t\t\t}\n\n\t\t\tlet searchPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tsearchPopup.classList.toggle(\"active\");\n\t\t}\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", () => {\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tcontainer.clear();\n\t\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\t\tthis.add(container);\n\t\t\t\tconsole.log(toc);\n\t\t\t\t\n\t\t\t})\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\n\t}\n\n\tremoveBookmark(cfi) {\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tconst bookmarkPanel = new BookmarksPanel(reader);\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), bookmarkPanel);\n\t\t\treader.bookmarksPanel = bookmarkPanel;\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n toggleBookList();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n function toggleBookList() {\r\n const bookList = [\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 1 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 2 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 3 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 4 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 5 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 6 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 7 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 8 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 9 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 10 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 11 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 12 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 13 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 14 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 15 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 16 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 17 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 18 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 19 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 20 },\r\n ];\r\n\r\n let existingModal = document.getElementById('book-list-modal');\r\n if (!existingModal) {\r\n let modal = document.createElement('div');\r\n modal.setAttribute('id', 'book-list-modal');\r\n modal.setAttribute('class', 'book-modal');\r\n\r\n let modalContent = document.createElement('div');\r\n modalContent.setAttribute('class', 'book-modal-content');\r\n\r\n let bookGrid = document.createElement('div');\r\n bookGrid.setAttribute('class', 'book-grid');\r\n bookList.forEach((book) => {\r\n let bookItem = document.createElement('div');\r\n bookItem.setAttribute('class', 'book-item');\r\n bookItem.innerHTML = `\r\n
\r\n

${book.title}

\r\n

${book.author}

\r\n
\r\n
${book.page}
\r\n `;\r\n bookGrid.appendChild(bookItem);\r\n });\r\n\r\n modalContent.appendChild(bookGrid);\r\n modal.appendChild(modalContent);\r\n\r\n container.dom.appendChild(modal);\r\n }\r\n\r\n let modal = document.getElementById('book-list-modal');\r\n modal.classList.toggle(\"active\");\r\n }\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"bookready\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","SearchPanel","container","strings","searchQuery","search","placeholder","onsearch","doSearch","then","results","book","Promise","all","spine","spineItems","map","item","load","bind","find","finally","unload","resolve","concat","link","cfi","excerpt","rendition","Toolbar","menu1","openerBox","openerBtn","prevBox","prevBtn","nextBox","nextBtn","blur","arrows","logoBox","logoLink","tocBox","tocBtn","bookmarksBox","bookmarksBtn","annotationsBox","annotationsBtn","updateBookmarksList","bookmarksList","getElementById","innerHTML","bookmarks","index","bookmarkItem","bookmarkLink","deleteBtn","querySelectorAll","removeBookmarkFromToolbar","loaded","navigation","toc","existingToc","tocList","setAttribute","tocTitle","chapter","tocItem","tocLink","toggle","showToc","bookmarkBox","showBookmarks","bookmarkItems","targetItem","from","querySelector","includes","bookmarksPanel","removeBookmark","annotationsList","annotations","note","noteItem","noteLink","removeNoteFromToolbar","showAnnotations","noteItems","annotationsPanel","removeNote","update","findIndex","n","centerPageCount","centerLabel","curOfTotal","curPageIndex","separator","totalPage","menu2","backgroundBox","colorPicker","background","oninput","selectedColor","openbookBtn","searchBox","searchBtn","bookmarkBtn","fullscreenBtn","closeBox","closeBtn","fontLabel","fontSizeBox","decreaseFontBtn","increaseFontBtn","fontSizeInput","fontSize","newSize","parseInt","isNaN","openbook","onload","storage","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","searchPopup","searchContainer","searchIcon","searchInput","resultContainer","searchPanel","async","query","trim","noResultItem","innerText","color","padding","showSearchPopup","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","body","start","atStart","atEnd","backgroundBtn","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","iconLeft","viewer","next","backgroundColor","iconRight","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","generateToc","list","ibtn","sectionId","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","disabled","renderer","setBookmark","appendBookmark","_cfi","btnr","navItem","navItemFromCfi","idref","spineItem","AnnotationsPanel","clearNotes","notes","toolbarList","toolbarNoteItem","toolbarNoteLink","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","Sidebar","controls","bookmarkPanel","annotationPanel","NoteDlg","textBox","addBtn","date","range","contents","Status","leftText","rightAction","appRecBtn","appRecBox","bookList","author","page","modal","modalContent","bookGrid","bookItem","toggleBookList","Reader","bookPath","preinit","path","cfgInit","toolbar","content","status","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","metadata","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file diff --git a/src/reader.js b/src/reader.js index c618e70..2a2c205 100644 --- a/src/reader.js +++ b/src/reader.js @@ -103,7 +103,7 @@ export class Reader { }); this.book.loaded.navigation.then((toc) => { - this.emit("navigation", toc); + this.emit("bookready", toc); }); this.rendition.on("click", (e) => { diff --git a/src/sidebar/toc.js b/src/sidebar/toc.js index 26dedbe..82ac89f 100644 --- a/src/sidebar/toc.js +++ b/src/sidebar/toc.js @@ -18,11 +18,14 @@ export class TocPanel extends UIPanel { //-- events --// - reader.on("navigation", (toc) => { - - container.clear(); - container.add(this.generateToc(toc)); - this.add(container); + reader.on("bookready", () => { + reader.book.loaded.navigation.then((toc) => { + container.clear(); + container.add(this.generateToc(toc)); + this.add(container); + console.log(toc); + + }) }); reader.on("languagechanged", (value) => { diff --git a/src/toolbar.js b/src/toolbar.js index 57bcbaa..9bfa7f2 100644 --- a/src/toolbar.js +++ b/src/toolbar.js @@ -91,7 +91,9 @@ export class Toolbar { function showToc(toc) { let existingToc = document.getElementById("toolbar-toc-list"); - if (!existingToc) { + if (existingToc) { + existingToc.remove(); + } else { let tocList = document.createElement("ul"); tocList.setAttribute("id", "toolbar-toc-list"); From 84b716beb629c72b90ce6ebf63ef6ff37f62974d Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Wed, 26 Feb 2025 20:18:19 +0700 Subject: [PATCH 19/21] add epub book file --- ...2n Ng\341\273\215c (d\341\273\213ch).epub" | Bin 0 -> 1267902 bytes ...14\200nh Ma\314\243ch - Rolf Dobelli.epub" | Bin 0 -> 1991813 bytes .../Thuat doc tam - Don Richard riso.epub | Bin 0 -> 4344824 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 "epub-book/L\306\260\341\273\243c S\341\273\255 V\341\272\241n V\341\272\255t - Bill Bryson & Kh\306\260\306\241ng Duy (d\341\273\213ch) & H\303\242n Ng\341\273\215c (d\341\273\213ch).epub" create mode 100644 "epub-book/Nghe\314\243\314\202 Thua\314\243\314\202t Tu\314\233 Duy Ra\314\200nh Ma\314\243ch - Rolf Dobelli.epub" create mode 100644 epub-book/Thuat doc tam - Don Richard riso.epub diff --git "a/epub-book/L\306\260\341\273\243c S\341\273\255 V\341\272\241n V\341\272\255t - Bill Bryson & Kh\306\260\306\241ng Duy (d\341\273\213ch) & H\303\242n Ng\341\273\215c (d\341\273\213ch).epub" "b/epub-book/L\306\260\341\273\243c S\341\273\255 V\341\272\241n V\341\272\255t - Bill Bryson & Kh\306\260\306\241ng Duy (d\341\273\213ch) & H\303\242n Ng\341\273\215c (d\341\273\213ch).epub" new file mode 100644 index 0000000000000000000000000000000000000000..a794827fde3a98d849feb1bde285cad6064a5636 GIT binary patch literal 1267902 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 z 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%0D$QcvcYO#0jq{z5IMn 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

Z=F2w))jw@Of=eFcS1xNyiB3#YecZQX1qE^tl$ zaW+osH4A6xB&RQh-tL99 zsTHdLXL)Et$d~crn4qSTn!8YNP1Fh$i!McU>;o`fT5&5Z?;UimV%_9Rk(tBOSOV30 zfy{)z>7<9HrneDeKofJ5m58bcf)9HZyOFolZ=K+FlPQdW^<^d8+rN+cKSo~qh4azk zcwd20f9VWIjmH8rzb7Cv7dR+goi$2j(P-`xLyIB$Eay5p-lm6~pHUyFB-zOoZbO1_ zrC%$CqFIAEYnddcGos8o88H*%9aEw%1yx)KO(Xp?W6HW&J$uu0IdWslPC`l2(kt;Y z-xi4I&_4C=cOn^Z&-`cAg;+7sp-DhbJ zGk}ikz-Qv@6J%G$CRr9r^XDN@q27)t#y8Inz22vQ41u#s6J$mb>?1=@QQI}AEi!X) z&PhA}x?D9UGwjC(y0^%XSI!ArKJoS_r)K*C-&lM{(cVXTd(g9qv|Z2YC<3YU0!{v& zu*bOgBCCC8$*3HoTZL@D>3RBn(y`DMZP$8+s$p=|*|0@A>VOp)*sPBLVb z=`aVqw^U1*>n*W%Q!igVd(>E58xPlEf6mZA%<@erVttx{5k(+3ak{ z-aLtJU1OyiR6))p?GT)_qEZ>-Se8C4xb<}Y;3$Ow*@j- z*litkY`|d$8HO%FN7V0d>8s(QHs9uide@+rQV92Z3iIKUrIP1+#8qM^e!;E67oD`9 z4edM=dnLKWIHd24;5&$`FE003Fhhf{UDznf=c1cYxQ?1mrcZQxH^JQ*sk&c~{i9@de01`9D$V+NY+X>AgdudKRSC#T{Vgv)38JrKj&`2+G@Q8qR;n#Zh z_~uc0n+aY@+>#KT6)R+hge>t(De5Ee4?Nbf+`Chx17!mICcwTybfslTeC46fE#ty0 z`dHMFbj`z5Be}7h1Ks#Q2>bjSZ2`}1IZ>HH0A7bi*2Ay#&H`&WGGGY8yG8oEy}NpM z-^73GUB2+!^djjf7!SvWwb!j*JX9&XJCy19#qeo?vR-ZWbE%(Iy1{pIN3O~@Ogjlem*J{e{;_9l$k6?Py$~?sAaXs6tj?fEvA~~HF z?e0|nuXBf#I##j&LA^PS!eyhPhz5v0^P2u38Cbp!HM$1inbrRkYfyYdyV_`|iBI`o zEW>sF)R>&E7c_s!DIy{Yues-{|Hug{C`F^K$fa9ia%6cG zxat3feC+csj~NTB7m`H}9qHv&oDBH5P__o{U=-KY1Zwh-@C$p9m_-&lZB6VZ*pO90 zJB$CDufZte)XEJE>{rTyl4SW(*hL%*;O*P$H z1h*tyE~5GQv+YIwymnaniH%hjk2CiIP~t<3X}m3O(0pHEF~r&|mb%(9P7qa|gucSU zS`Gdmd0Fraw{!@kMzBJG%{F=fRQmtlvw* zwM{G|TUjueM44;JzaRk3X)`L;LwM?&71OI;D~4^2miE!Y9dUDJPE|8!q{z4eio2HU zb@y$y94|?V#X@CD&*sxCJxpWV#QGW9yqwIaW~IUgQzY%6{1OqM0OQXuO0 z7E(KL4HISuG3^x#mV(X@3cxZTyw?qobw( z&fca_7~O2{9k=2oes#3v-3ICbWQCBdFCI>NFTsie)x5U7bRat+r6o=2It0T23k^95 zre`Aew|$*(DZ|NpO5y)I;bM2O{|@_Zrz|6gp#zQ8az+li-Da>_J}%-`7Lu%W@k`WZ zrHwXRY#RBasPg%BJz-n*i}_%Jo;b9*8##A5=Rahdqiu}9_@NJvwOzEW?7MV1I)$kR z^~v+696q-OVa`i$_de}**STyuN)t|M&aU}BbY}HDM~by6?LwRjH|{XKjr#@@%Lrmb zV_Iq&ZrT_I=grhTL})^4`;>`sVE1g;sbf7?i==n zoVQy?-F}{MqA+CMKjC|MxD^=Zc~Mfqk>E$GZ zj+1&Gq@>u^qno40?@E1@l!>&%V%=iz@pxRgsR>anIyys5sv1&=sle7w>I_t% zA_$dFXjpzvJO{noDyj&%$IsZGa=9z%G(KSz6b*Apqnp~rW0;(gu?-yhECS@%zOQrN zkdL)9`$(^_@@%4>DZ|;53+I*?L{gj1LT9?Nay6LmcNXVxo_VIjdF4h3t7{$7l%|X{ z(OUBIZBp}Wb|*I}$Bx?^xX9~=xBqg74@l@;0|MTw*?f}RZkvo$L?xVRx*J%Ej^bdb z?}`J8<`i35agRKiPAR%W>!pB>c(#Leazm~ux_prDq*R-&ft$purLrk^(dhJO`3maG zbOkl%l_jSYUt5O~1m#NcA%tf9y_C}qqcNgsAyJmN2}k!f-6|Iz5)Erh`+qWbVwdmk z7>X=n5kt;-i24u6cG{)GSa3`qO z#g3jmx0#5a7|-O5lu`dLb+bWD5AJoi zfN&~xjePy@nMC@Nu(=(|WeF5lBC(j$+#+|!lyHHXh$%QJLfVR9wC*~A9pbNow~bgY zpTEQm{Zc!3ybpR@88O7e6({jBx9GZr`XOm}B$IKrMVgC8r^IN<{@yI4A_hl#7bbkw zE`9Lw`KK9t?23Z6b?ziM#rEY#dQ*w@wxq$fJ@OiD7DAJwsGEEC`HE5F=dWG5yegN{ zdIg}ylqvr+2ol4I6>9b<*8}qix0gd0=bUg6lX^jDwaNE{gwQE^?kse3ifEWu|?95kyb2bE**OXzY)h$Hu*22}V><|U&i+ggX z(QPwQsAeEnElZk(Y9W~euXkXLML%9HZ@qGMP>;6h&%7-sSAX_@0Z>Z=1QY-k2nYZn zjFVP%Wf#ZgMgRa%+yDR|0000_MM6+hFJo_RbY*UIb1ze6V{~b6ZZI%0FfMp#bZuEX=j7(R}r(w~E zok56Zd(ntxyii!I$AHHTMK7XCD?X&hpZZT!|B}7uJm=hdZe(QIGo$HI54Ni^Bks$& z=jA!iIro_#?~g~xBA?F6x_b79+r6zHCV4fecgt${><{P7uOE5phd+Mq2hS9Z`Z$)L!l zv%Gnh2X^K>zid=id&x8(J$q)>9E|c=k>|~sq;b!XuMTFjGf6ScfBo#4Uhlm7U-(>) ze&-(ZZ+OTg8|ME7AKvzlIj=K+reE(KB!f{la|<@eMrD7RKX!%|a=Z1@$Im?X%xscX z{>Mc&Y4T}V?dJPuo_po;>GA)$mb~=ROV6CAPj!Bl7j^s0b5~AJ{%>;aC%^pj<=i6C*6#S`N8S&_f4{!RmC&s%jftB|Jp^|dg>t-@3nuqoix+alh0)IFP7D; z$;&EUwT`hr)q3~tw4MyI$(iSVB40f{zU6*7KRtQBbc^JslkAA&C8KAxW3bzkc*?=c7^KPa)3N^b-uq5&^f$@EO=xicQ2s@8dEfnRZ}~Yr z*1g6J!ws3f^X440asP2sao?-yuSdP)vY+UrSROV>!NW?LGE3aL(I0LqUkzvsvW)pC zA2idt;PPCmM1rbFC2Ua-C8-q6D< zlAjghz3Sdu?t>%x_D%N}mNK4#m$hDU_TtWK=Ypy@?>1!Zxn&s}{L5{A zyAzS7bjPBiQ|E-l9wU~P#vK4sfi%o95B;rV%-T{;kUzG&S*-`ci7F4;ou>EQG2wOm z+j%moonSig8Wi_`N8_g*aFWL_bC0+=A({TPqFL)i>BKmp&iEkqlAq6)hi;#jU%H_- z%P+@9sNHh8ACBf26(9J8*KP}^!QDrW4@>^TO}9Ed`3I+&GMdI06;ET|O`KNwBYJs> zB`B81q)4EK2BcRKCoN8E(X8(OF1aR}p6tcF--sMWIwV=X>Bco%9@4Tnn`DRi3wKbQ zHimJb-#KM@|95|Q(|v1)w53yTZ?Amm3hf9cc*%JN&J?eHBrIvN!<*AA?+l8S&;3O{ ztsD1a_ei%g754ZtEjKOOJ8AMVKDR?lyz3Uy4eUz6!;Iu{vHT{PxgWQ;!EM^1lg>-D zi;?y%Xq(+CvY5MntHvHL4-edbjs{lDX#?Fp)3a~jqc=zfobh$${J7?FN z9!R#Idh!XfBBdOfrf@dhtu#Hu5ANP?=xKw*sV_J0?`VO3mH)-@=T8pUfh)mv?ChMfuy?~WU z!@q7>PZ=cXA7>N`QKi@XrnAr--yG8czFF%?jXTn?^v&`=yv3`nd*pvFvgQ5@L42PV zwW!_1-N!Ie(q?~nQ|B*EBfc1{Z!g)IACMw+%adBMG~%%Qhf%&{N?U!%~guE3u3k5upEX#JO~XSl%9E>*0a8u){fV2juMpB};RrFaKVrq&87q zpAnWG{?O>&ZF(C2h!0LB=a83(j@I#a6}xK#k{!1dQ#Udh&O)l=C$Csq=Hn(I}hl zCO;|r{aM=Hbv{{cIKM4}lKKyI(_V!5ggNzLLe<`qwQOKt2jaGo8|3En50!WZvTlAc z-j2NVUh+aVbwG=si7b3GSx%3tYM z9ABJ#k%h&e$$mf&Vdub&;=_pq8*UJv(wT6x_-&=Dg&(@nrQ)eI_kZUUD0@_2VJ+9J zk}L|HDgHbxyT+sB3pk(G&8p7}P6GR373M+jAxlKc5TBp{ed|Ih=O3|_h#zcsuje!k z#mLSpC3Wl6oM;q&8e(J^A=>?sx<~6D$T1NsTvdSfBnQXSg*!J7Xl*O^>p5xt{pDe; zb92xAd`w1x)#)@#)smkc-(|yaw^7|gzqkcw%qznI2eNdM-UImgC7$4_Xu^!=FWmi}{&%(=Yufxk<=Ygv@Ykn~!4eM8ukY?~e4Mq~|uvuQSYv7R{N_`|hm>?%?G#bf`Y0 z9hC$*RAs&X-PIhZ?@^Xi-p;Pw_~5t)w$@kIN1GNBcZ zQ{Hk)D@1wFy7qj$6UGZ(fVOJQKxt~x;>1v6)Cg?6PNuMWaBBa8t{Oivxt zii!BT55jJZ^^%B-oe#HEM}XFLo#&B?h2~Y95$YzPh*5z7ZMg$G zJx``ImSGByv}y+g1NJ{;PXu?uA$O7C2OL81aiG-g$Ao{b$Ia>LQ6j9s8c0KhXIm@h6 zXJovrS~HNTSTE>*UP^lYU#ax5iFV^2Ba$ZV^IoT_QsDLY?%-iOR@U5q{F{GN&3-49 zAt)Y!VfAVFW3q()N6u{BtptQ4fQYObY$`!dZ12lnuZMu3(y%@#as~yzr_Blo7X6l` z{jM00cf~+DN#Y2e4Fzcy=eo0-I{)L}+(?tNBvkIV2oT6IES(p9*+t&Yh)we8IkC-b zmt_K}7v~kvkyZ`MK46zKc)T0dQqK~;GGeQZ53>c2K`c^KZ_Fvw|3;KOeTY3ES`Xbg zj89+2co*sT3SMMN;f_S}6g9YAz+>1$V^{NIIbYvbaEJ+VnuzBa;rK=p*KJs@OStV} z;R9h;&mX@1d<;pWWg%&U%lgW+tOn(z%r?h3e0Dahyc2;qyzGlv=gHz=Ad+qf9T58@ zIu((+cmj|QA8wj((Z=I_apEg7^xrm-mWP?{TB)6BR?RYJSLi2u+yx#kb zC~lgzGfEOp$~Ou=KCOrb%hYhX0yc+Z_!Xn-EZUenk?KzYmwTalnok*}7!DFQC7er< zyh}Dq#rtez}G~4OG~j9e9w%(giL69YkO*jq*kACbOF+ zKP$>Qg;Og*m>vKZNe;y67_&!T;-xKP&t8a!p|1qL|McXa$m50+bt#+W$zSq+Uv-jO zkN5;mCZjU<2k@_YG=J70f}!)IB-AX}sb{=w`>Ch4(smwo#GW7Nn?dsYsGm=po&FXyz&-hR`81{p(wh*NhWMgyGHZML_q3y%h`Y8KW<3DH^&<8i{F%d07OHJ8|Z|>skJ%#=Nw8w_0!-uM==4! zEsNrp!-+V(qM)>!42O1%4wt+R80Mg^bXi!B;d}WQejmQCE=NHNG^2Ee(^Q8DAl_5x z&wT}okVi|>C7CdeRUxmsNEzeogx%0u@VdLfrC1f7o(bIuUgsfKoDT&=dg1ZMk%#cv z1UHDMp5RF21Gho_dMq0Z?1?f(1Y=y~)bV|e=LIIv6^Acc(&#D4R$A#N5c9JG(pAnq zwH6YiWoJmib;8SO8x_EXEBi0E4?@D6aymOK9NuY_HDH-ynC8yh%UiO`-Vod%i5lPc z@rH!qZl8euK{CmlFLMunDS)#JM1np6!@=!Vs;{JgmDBVNDqfv zOI^hK9b?fA>p`EyCmnd}KvNI=UxJ|C9CIdXL}1D;$9*g~%g>vf0(EB%-y|F{WFRrk zF&&*?8wd{7++E6VFOU*apWdCFy*Tfeh699kq8+SE=7qEa`{8+!LSr-3@tTAwjQB9!y}CEG_?NWvl9)5r_tK9j_s9KsJ<^V%7&53rS)@9V=5DpV&5`APooP~+zf^^g?Vli$pk=g7trmD zStp)`aeDHFi=v$}WG4x80Zxj;AHF{VQfQb1UR`Zn=<*{7aoo+UzyCam=}&v~zn!8U zyVI0v>WO`_F%7YJnxd}d-@6Tq({wZx1r&}C+ks~rFOBnO0-LgzRao@0Dd0ID0FGX@ zvQe@+0*?uS&`hm&INi@UmO1&DBR$IJ9Z2khgwP=?-S;bF7+SKzvZ}eocZ}xQC-=&Y z>I1iY%cC(4Um6``0eUqN5R^_!yg5A(f#dYn%_(wTAwcXxDp>;E17(Sp-D3|(KeVW1 z0tFE9?>h)q$!CH_OK_6dY=bj_H1lDZioeM|IAA({gY1;pQhc-Rwf2%%*}ejRd*V@! zwEFBMiL)pv{YNfl$;(+4nHYj8+*WY3tS(B$3H29hC&S3s6w80AJ&>H&(U=hOhS}FA%=C2R%W*rGJ$*ah_btyD*d(*)RP3BGEv^XG}t(tG~wzf;|_Th;wtgn zf0fOOvKo^5exY|M1rtbgCUPtb{4r$7x<o=;T0x#o}AT^*5;;oIfbBNLkj!P`Zz2)Jq7Epio*=I--qWyEEPF4 zeRjn74Tv8|Es*kaK0zy7@}SIw!r(#Jw$?;2dQC_%2SiY1Lu;_U(M4{_R?7s_vWL7ObR2gkv-#Iak~B;;sq-xAt0MXtT?v74n)7d z6+WvlUxz{eIgN{rty`eLHyscxfFH*Y4SQlreIY`g;Gg0Qx19&Ljse4lkojC1>qt(y z5Pl2yXCA|k$PZG?R*1NbHGpF2VsenN9S^Rn|BpF*ke=is$(F0q!P$BH1Tx#x{vInZ&}g0v1Ty@%q^{gPzJLg842} zQ;11aMW)$J3MlU)$#J(bsq4UDY*U&8rn>pGJfvoLew6P!QFnoiQwju@U(81%W9LCv z0MCWPHKZR6eb~EqMGYT;KSoP?6FPqqd>3)C_+e8>q&T((eEcpj!$~*UcXw(j4hH0_ zt`vJMVcB?hx;F&zk4QN5>^|H5taeu0$BXzFC!{FfBl94sxjPVSU4k?T%UTPKbhXba zk}%ORGgP+QlTE{H$a5Rhe-MByzh-OqUf0lLKa22&qbTFlk#H9Gb{DQ2=gmZWF*v}7 zHIV1XNba>rYON&WQ%|N~;YTVm;#wI{%|>=da>6W-J~EsR;#M+f)N-~NO5ddoQc@`c zua=6n*|&^?hX%7++;g&crJRs)ck#ls%4MG;({_cOs{$m};Ob!Oky+)4V#lacv$>2} zx>G&k8F^O72PMoQ0?9x%W&*9#s$GYIKg)?F(l6})`$WYq<^MF>9V2xGJmt@TK|i{+ zC8}~gS6XaE93Fuf$>a$TqG-`9kl|0oBZA5bn#aDQMOnujCArC4^|qR*Op%Lq^HWNu zeF!PFTYmTzR+RPqP|+T!_z^5Ga|OHz@ZuRmWAO_1rlTbcuJAOgH4ML2_w$jZwZ_Xu zXX{a6iooWy@(;*Z@)6`zcvh(!W{@dz40Z{A8hACT-VTv6-ANTN_I(@Iu(#q#NrA>} zyn>C#g~{vSC2~MQp}Sim;8E<38!|x`j=sp?V|`fa;irjct}qVX{w{g_b*oZ^<3?+; z&wja~r8>QEG&Z?vb*%$`+e~*?y*~hq55wV3H8VyZa?-b8v*s3kLR-(?2lMSoNgBrS z^7Ao|kKi)*g*~_(gppEGhWVslkK11xfWE{)*ns^;b0!Q&tH1PEgh_XH>4$4sGoR+9 zAT|?7rb_?&ii5lFQ|GIKD=h0dV{9(kt`#=4S?DpR>pzBq2T7?#uwmVyN*~M`$xAa` z8tfU~l?9*--YRDZ4%br4@dryIYR$>xph2f)uPi8jn@-fC_9jX@nTq$)~uW!Q(}X?g@HyiC!3y) zBL;uar$t+ZlQC$u$IO0BY^A1%H{b(DP|X~V!ZySv;O0q9|?z(!lXsys9E8J zAwjL4VvTghZyvyw6E9jzKHOgg5H}TkU?Bno^SR29pLYf)nzMR%pB|WTN1!U`<>XWI zu*Js=zpt``p1>d<4L~zad6?qEydg{NXBcxAIAA88x?}}5dV5OaL;Z6U?HhMkNjFf9 zx^>WI4RgLAJG(-LwpoQ<@_NPyH|C%qG(&}BKHMQ&57>-<6=W2WD9Qq`VlR2c)^kXl z7YeOL1}h!0nyt9DYQ^U^Zg!+cVM{F!aHDND(8-ts3U-NjRMwFto(uFlFL217s+3rz z0V$!cV4W4hVvkDB`4hq#R(x38jIefH4#)FVm5uT$At>RM;$T+p8QPl`vc-na(o!uG zR>{Kn4%I2Tg?#niZ4?9HI;Xo}GI;DLBVFb0*)^WKm|8fDZN z5}rt<3VmxI3(6~JU+nzyuUAe8ZF$4MtxTN}cpj40bD7^_Fj7LrcvZwxq#eC`3ENNn&V`=Y%GJQKi+v6OEZ4}fcs^$VnK z?+Bo5xzT)lH@nx}(w=hl0S`i|UM>0RlG87}tYi%%#GaZCpH4{s{5fr8yafp<`jEkT;o6_JJ41T~y01~iN{@2z=#Kl2vJ zR0N}|0|VG0@i1tYjsK}C8C7ot7m0J4nXmhk5-#Lke#^V(9JxSQWyfT=Jepu3yFF%h z^_Vv&Bp-N@jJt3DNB}$K74oi##(Q*I%)7;7==WAUDW87_T|b<3ei_QoY*Y!lvPO%C zU=Rs?c<$U{dG?OJJ!04AFC)GmIxR#B5Q04c^ ztlv{lUWjY74WWUab#-33gD(|uOg2dE;dO_Kb-Ae{A#u^vsg!PdKG%48Gjs=GUm^4C zNYD%W%iAKCQ5Hn=6-OoQqu`u@5q-hM(}unw`M_ZFI8Rv;O>Vc=ER7*is2mD4$x~|! zjt)NKS}LaOV4?i{N4DFEajpS32>$`$FDR|%T>DB*lZFHmEYOMSftyX_RcnT|T`Jl0 zb^1Tj@>{~kiLnGm8sT9=B_N5^j20J=5{KjsxW5ftA`LSZnp6;p*I@aG7yFZ1Xe{6e zh)Wy}2xSvKpu_NuM+6Ovste8#CYyW0U(Ba0d49E7eZtP~a`z>Vfpy9ap zN57yc)Y*3)oux`qu{?dDx4yZ-Syf#iEA^<#zx(^+X;fz#6%2$&uj${V*9 zI}IG=)l&5ZzM*zBDUo_-y61fPO(_Dyc7KM-@))_5`NH?=u>IgE3g+Yo2%1Q%G{95z zc{xmNL74ZWX@{>XJ`K2#Zd*CAI5SX$u_b;TEW^O3g=B_L@}R`kmC6hbmj-$s>09KA zKFt`Ps7!RBp>?bfM|$)$bnLReEEpNI3xQ`w{ldC^-heJdwYxwM8+ghvRDOkGK1;y8 zHHM&Wk>M5vTjqu*6$Yh&yU)G-%cSm--0o`^#;29rmubrpe7&acwGttN_F zMW#@Fh!{EjyF0J6O&u9b=_J%=qSv*s!3C=480t9|nMf0dM7)B`i)6B%oh@gAtcPj+CZAxq0%~O+krw*$52JlZ*LmRx3!NTuU{|;zleC z#Al8Yu_>JQ5&)yN`$`(5Rc(rMEMd9?oi|7bd58@5QC@I)d=MZ`{D>J&PKg~)+P{G> zScU#0o?Xa0ZBb8Zgm_iZTRyj-*!tq;D7j`yK$g&iXdn6F!0ja+(sNR~>5#mlsaz4N z__PJ@Bki`3$+O9L&<&bAir^pcp3EYKvE>M@h?8W3Y)%>H1jNaaW|&s|GN-Y@J$J@S z+;vNe3IzbXJYo@F^qo*zD?w_F7FPV5hJ8Ne5ICRc#VVf;50bNSuIya*N}-mW)rb2H zQJbUUpL2ZNy1w|})s^NLox~}mH*{(n)#YWd1S}q75v80J zjvmO(tUh+*-nf^^S-Xkx&aLAXqi-Ni*EwExI8{^5l=AR7#1~vcb%bd`M<=a?>kpY? z@PJd{`x-`hV{E_8K?(sQUbqG|FZd}M@X9a)(P3mblctrNDus7TC5J~X%{BtKe}ZNK zFQeCi#PC4?6H8g51`&{#JxZt|y|Cs4!#4}kty`$An8oD1kS)sHh@-;oDC?NXlrM15CdmO0Ulq{PY8LGQ;Geg(84seU5W<4s381-L`4&l263c5`n4A> zG*%)n=@A>6wwurmVe!6;yh33grB9dyE0NCzWlZOv z_+KFbwkJ6rU+F1bm_W)moyH&(tp7& z$Q61AjK6WRD3fw;T9EnF>4o{2ZKI5as)o5b5_QnK((jb3JJmBMxJgp~qTY*zFJyNrOJ8NnZNqJDd8%QHl1bJz`zYbVL-Naaxov7PU?nXTzl%duXN z^qV|SJPO5Ky0s3tuTh$kq#p|+{=JYk-0D1SWCU7694vNXd0Why$!=1aAP7<|Hzuni zmettA2U#UFDqHp}ZdIQjbGAh;GK%Sga>WA^f^>TXY^xbV6m^S3C$~0Ojr8w`7tSH9 zjTadQWtP=?BLo%X;-5i3Qnza@8TbTv=C^Xv zB8}WJ(PIB`2<6v$A=wIN{uG4BN*{~Yo}pZtGZa;6FWUXnR(s61lrBnaNu@_IH9u%w ze}-Obr@Y3J*uuXIX()8O{5+Jk7s3V!Rp<{*Ju?k@ZwS==*@3;QBV@6sLRh9i!s(K@ zw+>)3;lta&2sO?^`m#JH3ogDfU;a~tRFfE$;7l{Qn1S~m7xoSCG4>s~>t|h}FW}1k zA2TkmBkt(fw*`rJZ#91gPqq&-6z`Bvd2u~3weXcwwqJ^E#c>;Ir_qRS7BwS7vY_?d zkfnkfgX0Drz&Kc&MkSakpaYb}3f}N}@%R(n4_$`ZC(-{ajYT~1;9 z4RGbtt$-!mramCcRq#1-a`j3!A0@A4qvh@Cff{lb@;M#rWYF)EWWYUg4_Aj;8u)fQ zqyUD@U!kfzl@3xyp8YKoWxHT=o+1_PR1P1`YRE0E)IFn6A8{quhEW5Zw`6OVU;a4R zAp;=YLQwmA6b*s8J~IA=Px>OL2&&U7i3+JxMCmG@B2>iEla1}yRf*=x>3`OYdf0KG z_n?Y_dU-$AlYT~A{a_CF>Y@cqc%@+o!}-S3U*)*Po?FjFhxK%pr^(g2`D<3Lzsj>k zK9z1P0?<-MoJB$f{~fK@;cPk0a^*!4RU~-cvTKZ0+G<_X;DaiZ=F!~~Ssg1BxzK>G zXOKGC)usxtbLcR$+70UyX{7uBD0C;(i?A6~!3XAEpsuD4ydR&1Fy26vPHK$==p_+8 zr2P}=9j~U`p3m3LSEtg2+sYc!wUWFbmCv|7cR)DKob4!6ls?0~dplwzg+`){ zw&lF7kTkYnwRVGSnAmV+&$!D)9b!w5Z2={Vtt}nlP_W(2QA0rlm+~N6Jp_xVP?45= zI6dGdnaiUbk>bj-=w$)CJZP9>L2?c=g2xjAC{EYc5p6$u)B}i**?~eIG)~)GgS|8F zJwj%s&PbZ9mZqc4x&#=LFVm!5wGt08(Q-pNa@G+f{U_9S>nwU4@044IQ^j_LgX(sP zRLuVJcDVNop2}_+qJ}OGYRF;x&fHXFF3I*&Zk?tH3=EcuaHNxc$N6xvi$>A_8`@nQ z=s30?FVf257_E*khGV1r>>x68J}LjTB5tEPqjq(q zZqS}5?r`xS^Y$8iSm_txOy_NGH-HPp(1%#l%MAaGm=FohIGyf>;K06%5B8Ve8H?w1 z_BV7~;L?nqcC+=f5ZN^R1@ zLRa`VwI>l5+v*AFwZZlX1s8WgI!rA1x&N-zDQGe5`kta`zcugh(h!nRZ^&-SQGPx7 z^Lo0M?380^Ge3}WKwJZL*-5MHc6s?03~5fSHiyLtH_>F;sDr^*4JtO!!{w+cV8ueXk7rLo>kylu-m)~e~8Hl zzB@qlu{id@YWRv_(lkyBgbPRtiRV;e0o1H^ylqJm`iz6_4=+}#>yM&0r>oOQgG(2_ zg1YK(;}NQ)$R^qqhfl^{rgfmY?GuZaS#W7e=Tz438NzIO(p;9=*yJ?_cst4{FlN*) zL|>;P+lVXU)zq_ZSE~O@WsG&USU|7nfz+4Ky4&L3HUTE?PR}40QZ(xY_=F-wV4qKsc%@!54*%z0Oh?x<5Nqu zu{9}Z$wHotxM8%x@Qk^ni*MU{CnMt^T2XGH01Q>U$_ z^tT?dfg>leT@n(vWm(q}i*}1$Ks=w%#SrZf&yteFI4R&f=Lss>=zbvg^l`w#<#Ef~ zbh}Sr%CZ9yFR9WV0tG4dbRPf!wp+a@PTuFMfnpHOP6n|+JM(=YT_eF%E2J{t1EiR* zvf5faNeVPa(lh}4Qd`PSX++ZV@=x$}^rD!=H}@Q~BSatOTLFki(t(z(jO(ebF}nO5a7T95MWH^xc8U?Ni@s^l{c3qz zOLtbU{Nrw*x-d59?z^oFi`-CmSm&_V@~JEAJJFk2{BnV7{5_~1BL9@z+A|-P+XJD2 zxAg0|BU7EE+QXQmpFU4d*N2EXOyCAFJZeD6&rm7?yZCV(aoa-;Yi0CNg}{%P+uC?V z-6@S8m6glIns^rADT6c0rb(#@A5p=+q#UTtbu+25Rc+Unt6(xV7rq-LY@>AYQt);K zaeTK79ZIoAqRyKHoV0@ercgnxznD9NYf ze}Lns-(IWMZcrZ=&P!%E z-IUpJ>MiujwGGk~Pv;x3-P4r5giYpp5|oa1358R% zOUnSCSp>C`5G@^+-XG6im8scAe-!o@tq*3{`S8h*EWxHr`3fgAWHs1PQ&PPUrKH;n zqfe*k(dzj$x5pg@VEac~d*kzLP0}FM?HjJq%55v%3jg=$aJoV;0sO;On3+orA&GJU zl$k&474~e`d95Vk)^A2fEDR5mVvK_^>wqifVV_*lRIH zu$_lcCZJq{z<4!M_a510PC9M9^s@&~Yt4KG22!-1$k)!nWnpFubsF8Lvl)uWO zAtA6TU=d%56O+02bE!`R?NEq>9x=f2l-ButE(0&2dtL&<01-q@K+x$e>W zp(k??2wYef%$?}p26v6(4agpF(N!8N^hO*tH&8;R&YB*fuQvIlaI?RhUEeFY4o3jP z@Gfq!f+36}YOdATtNB?x;t{hx55N@LACIyraaoB_A~_(!3BuxWp(sVu~tDyl#gWdEd1wJt^1~8=6 z9l&tW-;^g8?R9A7Ys8R-!efvRrKTe|Sx0K8pLGbn8L}@d3%X-K&tR@BnlQC{skNNF znHDM%wT9-|vD=JG0JNfwe~6H(qtZ#^CKbh&BNX5b_2bpo?9r__(z8F1HDAap=Vv89 zTjbOJL9RYMkwDZRBXN8`_ybmYcyE9e#Jr1j%{l}D)ZXbI%5e+?C2t*_Z!C)mON%0Q zApd-7YVz|U0~)DZ7P-iD*?#FQ8ZK2JmvwR_+naOW^v=n!r)4VK{!EP#N8>SO?ct)P zMEC6#?s^a;4&lXaO2f_-x1bHhQvz}GHRqw+B@I_Wfi1PNgDcIxK|JMFfb_XroRa}f zNPg9BmAA+kTl(6QRLoB7bW_ZH46wbWdYMTCC$-HO*Fg9 z9ueXeW6ay@8hab@&`osWhbU65SQs@`mKZUchtwTs1dV6uud{FQH`5N_`=bqPMu9NM z7cKO}lcMGeUQYjiQE2)HVj{Q)@t!RF#J8 zjAc62(pf5l#`##joW{Qy)T)-RwaDh{G!IUE%&1BO=TeF@wM2#&NpzvPrwxscXagI6 zm)hD;e$;Zo$+dT`@PZ4{ZTr8KCoMdI>O;T^b&#ky2ii)Q$7S|f75$I4#>2mb9Ackj zQgsJogYI-z1#*W*>cS^+3!1SIchV2q$I}Pgri#1EM>Gm$uy(PBwPT^GRC@F*W60yy zSXu-4Zh9+liXryPzLOY#k;x9G;q1A^2#-~l&%|?4519ul*+N}ysj0X*Nn2FmcH?=& zsPK99DCM?kx8xEBpe%7ZJ7U^%EUsO*D3$Va5BEMlE&sZ%veX_5OH!}}!+jdzOVzF$ zyZgdx`K+mvS4X9bnx;ZdYSH)5AQflCv{ng5Z$ER6#W%v?h`SjoL!OO+qV7>nO8q!{ zN0naTIEv1;wbw1Fl<}{0UyaA9^+%r_z&J;?-C8XJScOu+R^txk)P14fy&Od&FVvIC zh*or!r5ne5aS#*oNm9i^NvI|(v+#nypLmMsy7*&en}7eY2mfakALBtb%fqyw@LcR)HTx=l(q( zsCsGc{R#R9bV@~H$hndUCo>!R!?pZa?=CFgtdpPCPClySQZc2LWm)APDlH)&f3(+n zEAJ7`Wgob$-U?t6$cygi(45eg>(Y_dI$(zim)!v6kR*&E9HrLH;g+nzI!N%=hDX5anup8BcFb8HTz5I=n89D|%g1Q- zsmg2%gwNI7v4jUW*ALrFKy_YpO;glsP!^2P)mX^{<_oWusB$VUFrMBL2B!SyfV=|V%c_#HkrpULIExM!H& zc(t6(>iHCqd8;k%uZlclwCknOsH|#kurdTB;{v2h&H`k^nrg6CZ|ucwum#9?mhyzo zg+ORpcUi+dz$6tsuh|EXd$2yCNS(C6O)XfBuuP+kg(hhSYb1#d#<lvY6~#_PrKZBfede8xKfnC_Q+S)}S|V9>6E3)6UDrKTZ;Fcp8S)q*Sai9mmMY}DX1y1118SaK+oS5P^0Xy4Ip5!_KRnj!d7=y!y6!GhJP zO7xUAdwVlpM~YoSJ##1XSR@U!O;hM99fF38ut>U)cH>H3HS@t2+;8IO{uS*KMS0UgC;I?wLez6TO{^-JG~*m3zO3t)iZCZI-`0pM68&EzmuUbB+PV zEDhvSMm>+=Es&3Mi*?nQDc-1sQgi-NayHz6SBXtmPgI&X%CKbb>#nk$46HI*<| zu)hBKW^gx?1iY3Dd{G6W((O2d zYUdY9hE2&1niLA+y#4qV$f@!*egf*KL%>bNFyX!}lX#Dtq=l<$9+bTERC;JU|7Kj8 zAWp9CnHm?I#Z$Tugc42?{b`+#=Z&;KXd7IPI8h@GoxQ=2j+yp}mKK0TCN0udR`ud^ zKFE`wO!Hwqm5aBfzKQBOJOOLXYxjyd5YihQAAgWstY>77Bw=+KUXAzgFT>1`)_`&L zexx2kv3d4>l!g;WT!7iS3aTaharv~gM~Pqq)kA)dLPPGSsUY!F{%I>nfGHE^!5S9Z z3#^v>6JmA{K^@eK?b8GF9@H>;QEFBI5QTJemO!8HA&!$}Q3o*J%)-)ueS+s9Is>k0 z<&f$KSQc8>eR4Ch&{t533w>jWPg$3I?Mf6xLM+< zUe0RC^HcVc&Qm2IRHeCawn4x>s)>R&YS`6=MN_ zKh(s0lxs3weSHuq4Tn9+e4krc0Lh~Cm7)^ze9OfMyXjh|P(LqVB0Zkt}c?zZ*iJX@4a6NO8x z)zLaaJ?1v)zdak^%JQ(7OyC>vnN8?+c%l&KayDIL6a)F%O!Fvd97t#0xZ%>`4z75t z{=xlP6(nT~edX`#_4Q13Yg-u|KUVlB^51+^{;sg!!U9Ac@fM=y+%RXg$8fnqGrA5- z=sbqu74}iECDy=$Q@J?tqq57nGmRlTLTA6gmk9^dJ9NMxppp=uUqGKC(_q*PDY`1n z-eT!7A~esFt19W-xZ{80X%!D#N*8Q|Z==X%lSc#R@6WM%q0Y^8fKf8OZ>7XHcTsW; z?0z#+xJry;M(S?B)k99r9S^MgDc9crovmjNJ+ivv(u!jobFDo~!~;IW%HRZU|(ny5VIo+wUps2T(3o*Z)ctpZ*?Ltq-ASPU3!C23S1D_IT zWg-0q3~-pz*yoAG<1hnwc{#q#qJgRF;)nw>xq zmlW60$fOMO(673tqNV7F?mIbWE?#H*AYz3>pj=_;sAOqq+t$rV&pWVhFoQBkrdO=1qfsx>T8NSBl;Zmc&9@knU(OMqhwA41f41Z z9CHzk$kDn`AoFoN9AQG38UW9YDx%O%ak0h$C!$#@HtNN* z2#UowFt=C4%>yFyDXyS~$Rl#a(24u2N;?p63Q#whHVF2c8$?Q<9d!C*J0bd{)o>@w z3ftkckaszBCHHIrUxuZfPv0iiWTIDkBGCA34DUapdwP#*4KQl*`LC3Ny?k0$;W8so z$(P5{SHxeF1|%#>SaG(N6}Ks9XQE;#2euxWjkNUIKQZ=}^$1lX*Bmi3tAR%D%LNW! znQ=*vIvEW5BzR8FYNuf7_~#vQ1`L^E0s1b192|Wy3*x)1cWz_R9&i=Dw;N9AM+mOM zu6yy(YWg`bqExlbFcxXX?%OjDFGG(}9$7~6Nmf8*J;Gl|N z44#1Cl8-(niGb)F(dnGfMIX|chkKtv-IGW8e6>5R$N6rSwy~hAk8P*wR{N5saGBu> zbH5E8jzj1YKJA_p4>*y@)$QxZgHhFmDfygwgh zIX78hI>r*u*&CRBUxgJidFcPxg1Hfq`&#BWfnua@ zN`D(_lNPyPZnQ@6St4$muud_qDNQho%ZCXs zr43bzV_+gMO9AB*{9*BDSIy()x^|Y8`f8Px#@nadW9hgg3rxA8m5V-ZPporc$a?;u zKDK2$jJHb5#M-G76Z&MWqW$WE1zPs1kL=Fol-w2b#q|~N=RzdkF5BR2f!me)xDfa* zE@BI9t0GC|5>OyAbAtf3;mQV)ocFe)$&t3+&)^cR=_2@mzEPGOUPwPAFre)n6}{v& zBj6dE(&bH_yvtLF&=K6Y#v9)!7(=+` z2|Ub|?>y{tBI?0O+ry7HT@BP z#atZtfP#Tmd9KtAP;f7lprgrEcGm+I}j1)7fWn<5j7|<-L}T)}6pxHQd^&$i+`oRpH*ZCrP^qB*Ux1{WoH{ zef7B3(Bq*ZHwzq5rgk&B7GG7k>0VS`=+(;eKrDPfw^(rYmPcbPZSq5+WsZwbD!wZi zS!RMhn7k{^r$n=H{Ucc!v}}%3R^?I z3i>E=It{PU^Sc-d5tZ$0vm?;Ck#^#w{iWi!g_`&R-IX4%z6)p6`o>S@VmVAMX4NoI z$h^Yx*Xau3#+h(opSd5&Ka&W*()LaWXehP$r7G*pJ@PxI+4KWGs{{o>$irqlLCU#34| zP}jm|vm|m|navRu$+@1axF+1Tr+}M-&P-tWuH5bvUs$Y-(x`!hwk{9@V$+U|uSovZ zEByy%bTtO~k=F^)r3q1;KQ0m`$O$@bU4Q0Z<0tpA1Qmv>98lbPBc_{i%+X5F zA1cxY0&6VL_;>-A^ojwEAwH?G9U>hUwh-}hB_vs(a4`!Y#Lp|^iac|^U+*5!pG7ks zJ@b2G^$gl zI90b#RW)_$w7c)8a8blW2oVp1BE)z?yT{`(*mA(mSh#1zhvWFu{S(bEnf1E&+EsPB zNk+O7GIsYlRr_V_wVt)sv(`TMlbv!FZD-BAsH+!#ygpj{agzDB zkAHIhN9XbuJ_aAH<}aMc+ji^u)2FXoxiY%)wrP3Q9yQQlQO(<|sG{xV z7tzJVcs$EsI}Q(iA2rLrMCswf8;huImJict`>(g)Z-)mr@ZT`3cNe=+xx63E4i7%B zVi?@=c2vPP@4}O-9GN$2_^hSR7g2?uDWeu={U>_r<3C3Y45^K#hYxR7_-%P8|8ysL9tOX>Q{~YN ze&t4E7ZQK?aWr1uq8X2uccR0Gx2n;((_1T-@-oh5`|#nN79RV5qc;ka*Gcr#Y_}?L zjSmlQCefom96p3G^L#HPvo=d}nCo&MU;7n|VhiTfMq`@h^U?Re{co2KAAYxp#_%Q+fDvU5+z|;;ts&G|5ga^!V$o|#5GcD~NuT;9czL3R-m)*m8KOemYk0|78@D*H| zM^_II-dn)`a548&7}UeP8o&1iEEbM1Sf$bTzr7Y+$d?b{Jt;i3Jbd_|jbImGXAU3U z-NKi{8>+`JV_Zg&6Mh>14u$pK-Wx?1m;1XY54WpmX916UcagwnXx1@~0>%d4-q!)r zzL}B4C=2&-7-s6av15Ei$^vqYrQmKA<;iX|g<*ad&Fif^iCIjR-_Qd;sc7njJc(W{ zZ-D>Zq0jP`z`t6U1x|X~2otX={QTjal7vk@E)T&kypJD#c&CyzNZqO*EoD|p=h?r# zAMO!|&vp6bugiLtrHfhio9HA@qb*>%@c&Cm3r87uteWPJZY8vwAZjctGa7|EEp!rK zqfd=cVBq)W75E6*R2l@#0OmM_*X&m;E_qVWN>_MrVdH{Bwh6;&@ht3b!Gaxp4x*AL zi%@VM?~!bN2V(VUMce;jm5-uVK`G5i#&+PBTlAjb*?IBkYE#pm@RNeyF7NN`f?OrM zf-Jk8xmCCfpQoefvej1k@}6odr)N>Jq6z3Zn(=gbFQsvQW}lYh!pum*K*gD{T#ZFH z!K%U87WEZq$n8h(qmV4`r0xvDZ#$1f!M}@tEo2vFhYt^8nE!2(#a$Y-8S|s7xLvSz zB}(Sk@DorXSIv-P-GRE|U!lx?o#NlW7SVt|Dn3>qE~99J_U+MC-sw$L%a!N^(r0jz z@tBY(e9+1ot<@LeXgw{T49?d{+!8({EzMiT$V1vLaPj!Kz+6tj%`N2BB?O!f=W1w)D1nvT*vDm5wu~FnSsQA9>W) zySy##xOOG$jyrU^vN)U_)B)|0Dh6y6Y|I$Gs#Yr%9Z!NvN)2?|VwbiN4(_#L6ukw4 z)*k_G<2LBjDJ{meLIh`mi(TQT^vO9s?R`-itURmb7cj-dDN{lRq=f$1IqQL4k$pk~ zl=A;7Hn1R=XjX8c@%zjBpg|JW5Mq00PFZZ_w9hn3^^>=I?*|34$@y-BUMeI6=X1@k6|a{)Afi0?-7$nW9v@7rmJ$o7sFT zOPWlL2R)H-o{W!n{LvrS1intP6-O@t0?+I13{=JjZ|enwMH_Io04cEX9`i8pi+GUX zlnVkfmxepforf|(4qP&dS$j<%%j(vY(C3&K@qUR?8~uysT7OI$BGWZ z79Ohy{xIW?Smg!!m{rgi538cFJyhj(Cr=%DBHto?G9yWKP-sxvNITP8QBGqxY2OMa zVu6{nk>PQOpny5SLxNW2CY)r1sNYpIkv3uD3p>(Z6V^mDm4;3goiIY_qNa^tmZ+I= zb?-zIbPh;O%4+1Ol2RD{UTmyBFQAMU#qvQazl9NjEX*JO8O+?2^x{6*$LrOqQNj@d z0}ZGR_i(wdu+IA`sA~{Zke&o6F(xfJgd8k5bVn5J!Hgibh+3Oxb@W=&AkKOt%jOKd zyQ1t;! z3%3I?lbD*iG76Oj>z7UKysQ8ngNh8cYUjW`0l4wsqf)^&JO!QAhP8QuTIe1DdFMGQ zl<^xoAOId+$@El@5lTgc_aH@6JpO2of=m(En(*KlN(Dl*U+M3!50bU5q2{7aPHVKl!e(lMoDJ(O_ zv1>}oB84-j+m5^3Hp_1r7{Izs3mm{0;8<=zDr+u!(HVI{jJt#zibrTIURyg;mVnXK zNoJ6UYv!I3cb#X(PJX1kqhmA`v<&0N&hg{1KW&4aoz~ zVttKdcE+!vW5R)yoV^g|T1PgV0^9$UTUk;EJyjq#?Nl*kb)e0CZL#iD`={1c0GK@Y%VTk>!a zDfXNOMV6w6rzm|K@?voxle72L^E`=IFFD~F%HoNTM9=5ca(%J>st_0cfjUHD&75zQ!Kr|6kD z`bC{r@VZ%BA06G~kFeS#V6y(q(@)ERe|JGkbP3RYETVIvPB*irtQT$GQKd90R`ak_ zhz38vlaw$2myg!)L9a*A^1lXd83$fy3;=21SBO($(yDyu*Ux}o3Sw5M%ct^F07AoI z?pG8cWw?HgH0E-zmX)OFQUW5u%M-gWjK(w=L80m-)63`tKFtvPreN#}g_Xpb(RkyO z3d;lh^z%}Vx2!xN6&X3cB#uZpX%Ybhz&F4WoGUsz^o)Qo4G+R3&z&yL%UdpIS6Vck zYRu(B0vc^pFcw3i;W+Vh@X>fuZk5p{u0Acu`<43Smq{Sb$_!$4OTXgy)Zn_)R?0M; zhwGsf;L*0B_|mIzJd&A+6&o}k)Uz%a22V&?PuLYr2@IpWzm`;Kp3Pf0^(>2Xw5)A( zc8x`uqP{Z{Wr@5-t=B2U|6MvB zzeWXCqQrcd=FblvtBYusQ6jHO5C|PZl;w*)6imtoANZS?rz%HTmWhnDiJs0R+yp0N z_eiC?VI$$Hw8dTL<$<04q>Rq0T%*B#4uDYGVBCz>Cl2fyj@D;)3W}Ylq`l?DTSKhg zAceFUhB`cjXJRB-FQ4S^HUa^vFCsGV#^A1+I1TqBUbQ4i7uFcLq2FeRf zEU+&rZX{WVZQ2z|mtkTc#buyXno42K&60^cA7TWUer5kSSagAkV;LiV`8?Vyk< zg(YM+TM=Cpz^jF3JP2O$lgfe2$g2Dh#+o^b6l<2JlMcK};`OZvnN!!a3n-KoWxhH= z*sBZz*GJJs-eGm3Fu23V>=|`rFnwgKko;5zQ?ahw*;VMc>Q&E-q6@ST!J@K>qap7| zm=sf96sYy0H3 zy+MRdpwV$W99jli)~7|^cX0PJ&a3cGqQJd;oe}m|-h*S2+S0YP0aX~=XPCBJ?iXxo zakPI@)P*s{Iiug&rtt!eW+k%;g1xgxwB8`B?`KUTUF9l5)^uJ9YAdv&B=1H zvDrW@!#P>O0VdaAq~aA?&WrV|+)bK^9UqQn!c*B)zuQ@7JZ`+}k8Y_zvN~YFA>WGv zc8DGBk~Y4(^}Lh5NwKZ+H(L}FKm_Y2&JW2X*vSoaTjFS^AUE=3%7}fzsf)lR#vk%t z`~=w^m>#j3Led;X)srv*Ig^CU!1DScTK?-oP`2FzMK{Zb_=tO{vrS;PZf(gHZDR;< zhKa-x8u<&XliKC|0tOWiuAzX1iMkT|IHGHy8Q}Yr{6)RFUzqo6QVky~gF{_`@MysS z6AqGUoL3VrS7pXdMe*AFL@oWf)37ls^}}oKz>CNeu20!acrAwj3HKin*3>9X4XGuf zD#mo2Sc-6r7YS=$tSRaZZg9+xp=}WjgNKv-SMouM2;4CbH(8N_4aBuzKr4Kj2L1Px zw6Pe8Ez0%e_+F0KF;RoQg{fEZt7u>xM0ob8r{d@-j^5c_+*if3E#4`+PGphH=MZ+b zC`+5mTQx^j<$Fj7fjxYHPKAhSQL$If|02LV1o$^7At?^-25SL2;Qs-=4vHm^?{ISH z%P$vcThvw3?4sLoIiY{dqL+$#+9cw2oU(D8fT;vOyOC-jpRo(ZIq=jc#wizy(W6_E z_Y_By1e09hU;X@7Y#3fnnk&NEyR-{R=txWTnsceY^By%StS-u@e4~0~0^ub>i1~h! z!w^DHd=m!2S*aHNeab3&3^ixi=F_;yrvagg8Mvk7U4PIDV=rLZIeA#V2MGR^rkb~4 zuh8=$*leIg*EdCxZfR3F?z+4V)-_LXCXT5=kvuliXne$~nDCB?eDkZq927Yyq&bY2 z(odKL`qYh6&cCE14NfFupOQ8hjYf`y$N3U;?wRn_XmlX3yOi{T_mMLay@|8PYi32{ zg(8(;(Jf(sQ5G)PC!9!d=ta}`aX@@SnV<-ZfpDxl>70{WAqaYkDJo1R6Mq!PHAmk? zmNne<76&{|)S2){%BY8=gt>m%iM?K0Os*8u=%sqr{!5uuRc!Uqb8Al@c}8B%i!KHs zQLrH_TA!Di`by;6o;uBhK!e(MId0YqTT~6fqMi=CpsfNZKe18gzN22%Fm` z#_?#F@sPO)4u>y6@^;0Vch*Bsch^B_IsE_b0=5(+mZL#nSI{E@mvo2REt#1t$zIWQ zFbuoIEgqv!IQM{0qc;|9o;B~(&E&{^^dGY!?Ps4^52DqZIr<D6V@H$;TmKXz4#@ z$t0S7;VVC#& zr&1I}>=|`{NxtDQ{2lr@#aMg-W{{y>j+>Yv*uP2LHfeC;Ne6C1b-qLFAlPO);sL@LLE)i=6w%x2)jEsE(K4NW2X{%GB$^>mNe)PS<^k zC*U)IKpjOdG;tUPKKX04w=9C*Fbv_f&U6u;egE74c}$G%(H{&&vlLT|M%5e~pTv}s z1)Y{q%=p~+#TEV>np2udaKk=6F_^b~UM3Ms%)eveF-cAvOAMDD{7!tW?{bT|2-cCMfB?i?cp z^fb2s!`bEK2uq7`Z4Azo@Edm0StqgEJw-Z=-<5kpi~NTC)9)n4=VCjWa7F1PH^M7R zC90uD!TH}MMj{;*(O~!hCi4`66TVjQewTrW#%*jGgrF;%fGwi#v9SLlDYH4+bbyHI zX54W}DKLd>@odo&6-l*|!@4v@?>b;yg=Wba0$P~B`h-}_rwXmpBG{NB4xVucqJ_$i zfW)S~7rCCfRc1rta@YrM^oVj7nvHz!3;|0rUgvR)>5z*$wD1c$`sAV~2DRtJWFZ4|v( zSB{u~XGdbHVSq5>7`42+#clw~W}4m{~)A`4jnGDcQDUwv{U#s>BF^ z5R6ieNbx$95`TpAk+{lo_i=6{@q(Fzeu^XO77#Z}P6A#}1e?Y8I5Z*e5u`u_fZ?F+BtnOh$0e zdSax{B#V@5{ZNqnW(%P?O$^n5*`gH|+`fT}^0E?mJkLE)_(rO8R2-VPB<)D>E0uV} zZM8rXPgbph*K>s$9#jgDlQ8;_gx7)Om=|Ity8#}`q6VL5CCFMG{n5YPDoC4sxImp! zTU>6U+ai@T1*V+)NO@Pf33N(Q+i4BdJ#$L;!tvw!&JkvZ-mK~?TtK96uzqsOt`q__ zGT**?On>re1hQZS)R<=Q7w{9*Y2`owhBK=vP_{KJ^A2jF zT_Vk8L!U#^Bjx8d^17VYN>`Osd!Q!*)R)b&lwqIvMeFM^o{o)C^u`ERZBAtxm~;{( zT`s}5o`9FjR_`Pe9vnN9)g2uG-i1>f1mdSZc_!|_QNkl7Gf%t%VJxZu%yG&EC{U## zt-Q(OvmD zh&e%K5|`jiwRw@|!->lw7k=P`tgpcl8Oa&BfDRMI9lS^}rxJ{_L`nh7OlY`NCEH=< z(&o;J#2ib7Dy^Poc7l=Hq{QtV`pL`Lc3sW$qJe{D*}E8QC*)vCY-rVI>WpJ~1ZE>J z35tj5ML}(_sc#i&TQ^1GWcrykt7$D?hiVT7BU;hZqbJwan2t52r!&UiK?4fP%9q;? z?<8Ak_wSNOQVi&jHHndwACUcg$x{HVQ5cA@vsJkySu%?`^2;#~ zOMIqOohy6(+EOG;1`^evDZ~_X6-2vE;*${JaSCog(D3nGv#I<(DopFKsd_Xw6Gt-N zkzX3)79*}=UTi}mH6gST+PPDM%SiRm;UXGdvR}IpMAMXhA}Phm9Ix4A5f%xLnGTWH>VU9rHB@0TM5Ky8s6=C<7XYsJ*CoCX6hVWZZUrwyt^_d^FHvBINy;7i zHpP2li`ZxI=xq!i8I3Jkiui3>H0vBK6*A#l;Zxa`VsjZyIx^vN#(1BCzD!u6P90cn z7V8l;wa{uk$wQZ4bA8}gnn%z-*3UAL#$~chN#3@kS@5rgX1MSHD+fo8n`CCVCcuG1 z*Fc2|5;0=%rq)0>zV+dO)bUL?=%?=pkcO}bP+f=x#I{Vh^98l5;gkHl-Kfsva8Q$) z_c|rdhJ($W`hH*PjSIo;m56!UEC>|h@eAT$diILW>5>LuE)pi89i)y`u162685rsB zD6Tq{o%Zq_yJ(h?TED(lnfcB?dc4u>56xgiOj&0yNPbAwgfwBwz*0{oKHe<4%GM*^ zIrAn!H~TV!l8Ui+Ilkc*_l5+N`+Q@bG1KE`3zJ4N`DO=veQJJ1;eerw9I3&6gEg5f<*9}?5BCMM3%78;_g$1isaunzd~*w^+?2^4JQojy7XV@DuV`go?^h^ zuz$#im-mkDM{_wm8=V?LrSLH37D(Gkgs?)KN%?R%A}x`5tc}I!Ea(ZF+O`ySWh9lu zX+6vsEpL?$rGa)LA~1-jd=4zx=i1?gTSCbTOm_z_vl<%QrcNmVn~wW(b=o2M_#B75 z7u?c{3Nx8TE};hzSt`~Hy{^h53Ef+=-=s@FRr*CRFf@(hx_V;$DaSI(nHytsJb}AF zUvOB|Yb;g}PwV2M26)yj(Mfm#cOxRK&zLMJ0+sy3BnY1?uL%6NRmyV|U9`W!l{Bqp zG~wH6QW7+elXSZFps=(!{T2G4{lgTPansL6sIuI;tI#Ybc(m;55d)f>(2iWM*3_gP zF4S9FywsmV9m$W!>hx(ND9cDdxP%0l7g^p7c-v zVc+@Y4Z^$Wqr9NEp{qH$wM(yrks-03d5vN4bW(R7rkPfvO$~JOBnPWyj}{I?tS>79 z2Zvr7a7~yx5v!kwYvodtK|9&rqG?!y8r;TG6pRRV1`n8laB_lyBhBu-N$Q9ltn~;! zKZheyg1SGwzD6}VRHwu1ww{)!VqA+Et+^~+Cypk4c8K%Fi*3erG&j)6rzeA%s9V2l zjF>R`2m=yh+e4hqCm=8}ZktR6xB0AaC%A$;x@cY!_B>cc#=XotcrmHkq^YCJ$uy}q z6O(@zrsY#0aR?+9*!i*`Wm!h9o0wtPT>e$tC9vd!YI1FkU;bYQb{F(ZRja!&Ts@y!>u4j*TJPhWiH1bU~G1o5j2^o zLjU&+9`&GEFCMJzjj)4PZksqTmjH31Yj)U*_IAqs!YglFj-w3(TB+onFNe7Ti$h#} zW9$odmDv-Bq_ks^?I+KFR!?hXwNuxIE7`b{((qbskXo+QhoDoqHbab2lLS$7cLoeU zF;r2<%RZ|T{bt%LEYS0fCIG#13UtmeZxFP><$6Y+t8TQr2DNtbWF;Df4U1|kPkyt! zg*6+0*1^ARBqRN8?~gfx>D@`OQ$dW*`@Ba3+*f^iZpvNPwReY)Zej$0PxA7PAz!WP zI2Cjuvg!NvH3{#_?}cq4XflXf@nUxP9}il~0kV;&R*BHO`7})5po4W0HqrHJ-?>36 zG;K+B4wBykm!-j!)y_iLh?l5R!uf-)G@nYU*w9G8T&tjbRfPjPEQ)?e-O{X?5`}N1 zLEU*u#;QZ;(=NGGB{+kXjCtHUwJ_4Z(1d`QWvnU-WNpGFbW%yYj|d54F+^CU8n17v z!KK$$KU7Yn>&$fN;{sfkbk6kNUPt>CTSAo<1;wo;8_DO+wzjtkwO;3>&{umy`)ztO z<_w5X*d0GVG$XXt+XeLyBzdHJ+Am~NC9^` zbir1kIUv!nl{?CZwJs&`O?vveBF4O_b6{cE@rQKk5N9WJ>aQ`_CJ}DC-;y4lQn=r( z4ITCFtuPEl!q}{^C^?}FeBbSunNqzSu&coB%>p!lt_Sm)=9c#iRELO)MDpZoRjCv4_pUYpTAyNkmhxepY71Oc}u(Y zQ_Iz$l)771)FEpO^VqBj9b+&6J&V15E?WI=-+{=!n;Q&y>mvdmB=e7TpkFf_?V|?U zDF(V+WV3nnQk^%kkLi6u`Z=Ly-eB!>>4&+myr}2apR~btdw~qYSHo)vk0riHXsbl& zYLWr3+?5Bph$kg2#G1g$?N_|dZ9_Jto;1J58H_$wZy;}by|>g*vcnwYtwd2x!QNPj0v(qQ?t@90ey!WfT%Yf$(z zOc`Kz(_$Q|kI9ZBb~DEQ{)K*opeQbif0zaV!Ma_ zxd=iRT$?QSlu+HPah$^%oN7F&IWW-X0T-kTyM5l_XNW6 zEaD#WcEjS9V{(6jj3|7lSe1eN_>ge$i-ISxV314Np=9wFw{|4T0T+A#c6sbOamfKwr>JBM_YMR2u~q zXcpAtUr~$tg%BV>o<`9t-kBN_7f)L_PFw`52g29w9qxg=d5q?;1H;&{hK7|P78#e5 z&SyXYealw=IxqUn8QXKz-grk`?W5bHUm^@a(AE-B25z{c&2-mGd_aGGTxg3g!eYY0 z3ab<-ScFQGi!ra_WhqBij%bmmAX{m}uid;m($R4--ECsr*w8qORvf*zC@%|3<5u{l zo*65S?CPRc+X0lAI0W&+=ep{3&pdNA5zA{Ht>qK|Vx}$031w!38_R;jN+-m1T_K*G zYk&aSf#Ha0b!fM}TShFEwp6sIK^|&6oU;`me^L6xiVxK-@CZcp$ulEcXyzNbHe4ot zoTxu}mig&$HtJ@cdCws=)0%n$wRUl3XU^2ugcVPYgXDr3ov!DSF_Rf}I+SXJip!}n zCigq$wKPg0$tmqdLAeC^69LKA-H1W0m_;$*C_d2YWfyH9*Ja1yBKpa(jGs8TvnnXh zS1;h!t`%M1P0&3Dv9LC0TEUK+)Z%*TfCd`kGraYoTLfA#^ZSJlnFl63d9W|B;7CllMY zZQHhO+qP}n$&NX(vt!%&rs`arI_Kv50o_$yebH}qt@S)wZ((pOTYe#9X$C!@*<$Zs zrS;LM2s8+7Yu4pTfw(GK6G6yG$J>*An_G`+_fO?J?OTr>xUv48W}u;Y)HrNAN|gg1+qG&TA4QQ+ZKso zHlRDw_olCXx2Q};Wk*FalYbW@)*qm<9WKvocMrkn2mItU_utZ=w?e@M7vhw9K z7Q`>&N)i+*{#M81^)j@4ZzawO8rs>X&MfnPIf7)}TC&0sCNV>Cd|(3EC}CNs!b&*F z0dSgM4Yzk+VpBt~y}Wwi@+}ag_4_YRr^&ip(G~92mzlr#_n=Lrt5Cjs(J)#AnW8ly zb|2LTW4lfx>=6k25!&O|3#%+iI*1ScHQMzhil3_UH%v2hY7UV~T?+&+>aj@}`y((6 z^54Z3^!#BzcPI)EkdV>Q79el5me>Q7?wzfJP2|@dMEGQhB6?ld6`Cxb^K95FK8q2|k-Av=IxP*2{;hRo zX`AbcCD+m_P4uL|s)UU8&%V>}ys5$5e7pHGf~EI2|4#~+tS;08P}aSFxw+1wr#pLV zBKHA>`CR8rFYeBQeya&$R|ef~a`&UA>fZ3pHl$6aVo`ySkmR7yzQdf-cAf^OpzXU= z8Y=0BdJ5SFO!L)}E!C{pP8o!y(l$?q{TS8DN_O%q*)6}YGbf90+h2siQGOaF8jGYN z%U7agK~9d58C+jPdD{bsxT5yC3Gl2S%V;1>WvLwJ-7@acIjt~{s*q=}U7X-PUV1~t z`0Y`AHie9w0$?d|NP z01DG>2kU5-!48pA}np7GSQ;yEfdktogI5zlJL1`Ksg3U!%aRBqpmam zi|t*ByX$eXEFPEqx?&EX`|Qp%w)vYZl2ZH`vn1GK2SkDig}Qj$aobJ5ky98FgGAL zLYsQXtpc;#S!hsJ)r@YRO2)0Vr(QTlW2tCq2(^nSE$E4V5{-k7pOSd=Ye-uvX;b8= z+BQjDyU%e`?c0xwLe!ftx`rF7&I7>fBMWI_56JuzA&rPy;?{u|f7H!ypj zVoCp+MfO<6gi`GeAaFnGo`VfuT-b@rdlPG>5)Bwwu* zN}Ycv-Vyn;>xp*@+16?J0yrMEYw<>})~9|suJCoJv1RHHI%0Lo%CAb-Yk~5O;@eD` z);lZ=PzAiZ1&0Y6Y7Nab{v!G$dS>+D+I;#;2j<5|vbRMoSrffLK!G1$`_1P;+(35>#1nlZT=hLs`xP)7-tY4r0J?-GC(@}Po_3)t?kDY zJbe3Rh8g!gpS=oWsn+>ynHf&rvT~yzq+=r43`4NHIU$y(rFu~#W${bgquMOp09xGqX(_@#>{g*5 z%WXWyFry^8rZ(e~++>z#p*7wpwC|kas&e zXxwVQ%^0vXf{cn#dX=0*+}Y2bRMyQ+%x?i7WeajNJhToH32Q>&GkO>2v>RuAGk2)b%fAp2t!(4`*(%hBRnpLOhQMY zIq_|~V1u(fMnx1l@YQ}`qqB{a8?xNj3Xw57lbulFZ2NCEy~xUxm>sA@F7r%#E{#Jf z?r{ySXHCpVw)WwuRU!cmN~YbrCZD_G)jhVAUNbocrBpN}ubr zt%b%}_UA^uMaBdsOOHcH!H^7+b$7qGZko>%f5~2<(_CW%K%sqH&=l z4SJ;=>E1i%Jz*w6%mVfT?_X$8*eCyr*uiFyaBe;YL6jf?q7$H!Y=cs~OTd4x z-5JQFO@pv+WQ&_jjs#6bC`^AHU<4A1$dRCf4z*-eveyoAT}ZfB=17U~8UdQ)XSVu- zR6ud~P&Idgnq-->vHgSu2b)RO;vs(A z5g(esvgu!YQw85j+@?P@xvj@w3lzrTG~BK=`+o70`a%X%qCzZzT}|OuN1t5;uU2Sk zdW`O`1JtC{j3Rvr3tDbZ_>blzoWn6@iC06de8bXxBVu-

  • kvA>tDAmV2J4aPuRl z7VCX0r82u099t2vpHgRilctJC)b0PAn1Rhr(b`aPHm*`xHxe-Vt31b02uHEF`$i*% zB}z3y3TC(F;D+cFzB=b*ti1%^jyy&nz273`e0Mil=8bmxZKp9C?d|5-CcJ_kt#1Re zSk`KP%ZuJD68=mGQD-DKIv{$kfa z=&*$5Umh!Ud6rdm7ASK>UI<##y5b4v#N8_1?qrqm3Kw(RvZcrXtgzY{|Wy)WXc)e4S0nqXPNpRBUCt!ntrb@opLDZA7er|B3dyWa}cX^}c%dGt&V zHDBDr#9`DMm15l=OK8++w-T(JpbQV_7!_V{aK5cW2x50@;tD$FUrBce#o=5wy9YJ0 zEl=*vcat+!!W9Mbcs1@j&G@sIql$M7%_C(pi)?5^j+MAH6A&pWhT{?&x3`Bd2CFlxz!C^LfPUB6nGiC_FHYw&yG~mHmw^{3#z_;?f)3 zx?SijE$fU5EYz?uEFwt$C59d5Ek4mqAvgnMbS)~4}os-l3jT~y!F zWVhHNuZFaxb(el}BS@J21?PfrCky~rTw_)?8>09syt9>WkF?OWU!xE0l7=^~YWvI; zyJB>c6K@d)+bBH*cYb)4Mm76GmGg{9sU@DY0C&dK;cbwHqXUf|Ib4S6KWs9-0$c@V?74|4fW|A==k&tc=PG zu*s~R1UT&vKSoLEeB8=1NVJAMGS^M4__eQVy&5o5|1-_##_E3WRliP8)_vZLrTN-B zY|f3H6agO|kq=7O-sVpiSL*bxb@(=_&gM^-VbE!_xA$hV+aH36JJ|6|u|Lq?tdiK0 z_DcLH*(T3CJ#L#nl(s2DWm0bp>EL&AfE#sr>Qxh_>a28i*S5dqh{0Z0&dD7nKEvJ)At zPPVN{iI+#V4a*QG9a|_D8Es9iHuv;3?FVdlhv)u+XBQg=vdwzf)8692vJ~I0jkQbe zljgAnwo41kc&n_o=3?DUESw!sf`gaSTRArIZY_pLqsQKsL?*Im=pW(;C+7ai>Fw>F z?)&SDI^zh)ZV{V%1q3wl?S7v`u|WaW+3}5wC^4I%B!=?zvWz`)x|3L%FD+C^$!@1P zr7}AUkH`0mxTSKpEb$k(Oy1LVx6Q9p0rPuhfbYs$v$Dj~`90r82j`cJ_tC#EuW7T- zCwW>2u69&wgo1O>Vqy4qttaI8K)~+Fjc;o8O3l@6Q)u72M6UEY*TWig-uEAx1{pmt zL@&VG%gL#4l67oD6w$`Wt=-YX@gkjR_ZW{3I{q$dIEIgIzK`_qWE`BI7BO&s(e7mH zdi(v40`T+`^ZV5%=y)Nm4=Wfy|CqO=kFjU;GKVOG`}^+X2Cq*LI}!Et*Prz-RYy}3 zl8m`PlZA1}EC#`)-aoA|dR5{B;{*h;#lhtfFCObHfC-@W9z4lHj8-N3dWFflJUr-TSTCw!S=%HZ z)GzMs*bxt3$}DeFBr!BdDh5GB7dk`i%p9VfN{8XEqFW^J{QEiF-YiY?V?&tu*#LdC zn2eWpx!{CPdOh>Pak(`}&Zci_%wQmjR+`eH9%|k~qhr2_XH3NE>_cQ{rmAGfTW@X< zhZkLSSYyCZ-6V16x~%-j{5rPhoW3mVxqY0qW~-D^v7q(Z*mF#~Tq{jMo?J4vy)mdI zj7(O&D}U5wy1KMhk9jSdm_)*WX@i@cN><#_CV?h7>s8H^yG@tQbP7ZqE-6O!Xwb*i zeNN_$JShqu5Qun?yG9*VaXw|+JYvg$barF%G%Dl4AeMe?=w3}Pw{CqGj!G=nZGoNy zj!8cqdrfl09>%vW@ZKIOP|Q~iuZ0*&Qc?4OWF1m$vuU6S*k?h9bkXDQD@d( zg&a#zZ4rJ>zIWSInmCoCOG$pO{VrYJ!P^bZ^~<2xQZGC$b>~^HJ#N0qK5x=N(=l8? zS&>sV0s!o{k*LMfz;Z%FJd_^9ZwUIz8-=+(x0AU^1^y!bZ_b(*gT}D-5C*q3leKVya(%ZWiw#|dJi?VAOWK1nJ z6$_+;WMC=BPkk4qXum(f-slg%m3kF0${?x6OW>oW*|9Ob_ID&z(G3Brys0TFSEo47 z{Z=H(^cPAKrP9fC<|9^(r$tFVw32xx)?J2Z9$(8A9@2;VQI9go7>yuLUkYqMQMj%H* z^VQ*DCGIh73Ji8Qe z7B66OFjJJsOcQ9sxNI>dTLQ>xI>fy@5=gchItTE@3kjlqq06Y+8b6BO-FqiSwkU2f z319AYN-ci6AxvO}2OO$lrc{c{*mBFng)lU}V&iJ8Rl*xj;YK!8_?+|6 ztvbRmMkCh!Pt^yx=`5ATm4|V~a5n@`i7r?Me8)m)9Dr!}qF6gxNLWp1d$VZtg3vpp zR`<^s{}Sy~?N`Vz{_32`h8GoAm_s9qEN55A6!pWbPN-d586NUSVubM5@T-GUep}Og zthcQ-S{#Vp_ILfJ&jlRA>X)v;^g8&^?hBux1<>w1XPI2ZjxU9A-rFR z_T1I~E`c15H0c|1#9zsCVI!#R%(@LH5;kVlX&5+Z2{!MiWF49N&CB;Jbi4Wt_UzQ) zRq1;*((N=-m)rgztD^ubM`*_(<9IY=;K*{W$DN}m`4!@GAJ`Fz_fQnF(_7jbSIxLI ztw`|9aslUo+?f=p_Mvtge*6L{ATfV+3CV_^o*@$zuiknZ$9F_z6tpA~e~Fhx*h;z~ z&-Bq2DkKO~_jajUQku%^<8SWI`|<~R^9vTy6fUQJ0QA-1*eZB_&=U!@d~ds)sP1bE zGbB;zr^t2Jv#nA#bM;|>^8)3_0`+30soJbq*w{TJk}C9TD+dNrhRRhexE0idlhuV! z?VOjqVT00}SHnLN5>mJ*7W-Fq33H_&zm%a;iY3c%0lzkF?5%$-+g!9y=h2S=R;%^^ zr5C2&5KsmbF6_K%?P4iwNI1Ol$YSdAC#%vYD2k{p-1$Hl6OIR59;)eIU%?*ypT52k zJ~+XI#ScWt9<(~bPQ3`7O)t6GUV&RVJl8#11&%}5JApcDzEA#m|WoWo)LjoD(b}&2|R0EQ@+nY$Sc9!Uw7}bM;(O%FHvnXe>DFOrX&itaL zj7D2sOT;|yLGZz=bjE5?JktWI{j_X&l=7Sue5H8DujVs$AVby*sdzTGy06W~SIRb= zSzK6c@QM3&@X8{;5kxhlLrEMK&;F6XY!lT~)uXnySj6QG#_rt}5Uz1Uc?+1@g8 z@!haDYR}WQ>ND*_J!QwTG*?hS2RIDZ+#-ZF`ceF~*MfZ!Z80agmc|d)j@(IIUk=I-c2PvKLpcOhW0FpKbpvyFz^I)8;KxrWHh1zRx)cJYVWWF#*JY$}5G z9_DY6dUQj!x{Md)!NAeaderm%1|rR33qEAvV{hB(gO@)jREn^RO>m zkPe7K{JIumR=p5tkJ`aS;GN9@O?k48>cleze`Wrf5dNa-Qay*fv8m{f5EYPx121K_ z*n*#nuRO7A_PhNE3@HyAN3!5FnVs~!5IZW8^s zm09a>%H(|D#~3R9v^yb4v>e@+1P-4uIk>6~{&D4}UDeR7MiLg{=aoto*y!Cays&q} z0S`^E&s2i!`Cl&#J`Mq{?piXr7DVM1&oCOeq-|;BpTped^noeDxqDjgC4h5b-Nz^HdZ`bvWJy4nX-RaMp)@t#AhKV0m( z&U>KVk}F@ROl+7d4JV+Wqr<4-+G94t^WLXz(|in4Hg93UAu?DMC1M(9$njXY8CTTy z1>=O9*28v`K=B`T%!IZu1c_-Dj4>h0!Dp8VPlN)dU}(h8`4jqqyFVaDcYdYAEX&CJ z3|V{OHwVXY%+Jx1x+|&5Z!VQSPR-oVqEk4whAj_9+hANQ>P%}doG|h-&ttk@2eC9? zJzbd7Su#)FeATs>n5kMKNG*p!BC;fSOHLZKDh+M1_)By(^fEGDDPnN^#N^ZJ zgrUKymUnNlCUilr6J0qQueq4Moc+*|-o3UXW|OTfhB}yullZTHi=ofSN9O#>ci$Y+ zk)P%cL%4X!@&OK)d?(ELrRww?MjatdC6zVUHTJo3)jL7!|<#*@{Hrp9E)s zv5{Wt@gz?hFziSI<^zb^5W>GG^Q18v`ZAy2yPVR5vzIEyFqPx*$KdbP^?xuSdtMJ<^Y6A4S${ok{GH-K`;sAMY5Oq z9oX(h%<}tzEbXeQw4}Bs1q}-4j_LeU^`L23IQHlO`*U_GAGmKzR$SvI-1r0B`cz>Y z4#VJ*%!izG5};*56*4V?F71N_`4)jG3Jx*Uoqf$2JeflD%LFu+1tmFTuXtiEgh0AD zl_B+FZEX#Mox01Rbv$ExT*X68n%b;{@PMpI@MZ)>RYs&aJv+hq&c<<%$w3Y6_Bfl-|HsOP} z`x_yCr?J^%uR3x*v5ZOnI`O+s`>Bn`z@W3A_{U?CiP7-wx z%fhseK=SRIqob3IHyTLE`Gyb=;6JV{K|` zGFt9_dazzwV@X3{{Rd7c?$Edpd=Kaaq1?>CnkHo&Ap$-piL+WBio=UlrTzrFu-9BW z@%-kK&?e^!QR&i+jD0|#nM_p2I)~|jJZk^(tfN$9I-^fTnzqZY{?U4QJ?o=>KTzZe zL@QP(an*#38y2Cc>YQRp!6|C)aHwdUraiqoAGc|-FsmiOc=F%`E+8EKZ5p+Ti9R<+lqEhPbJseT{Q)NsD`HebyNun zO*=p#6V$bb%@L@G_Z){4u=8D#OB-XPzSgz#=3y05QthqV1lQ}EqwpT}O>bI%))o)8 zDj*H3S_*AqZu(H~dhVK9YiKRVBR-izama63PZ(0imoR2T%x9pQbt*-?4-P7N_9H_r zJAn^xavG@nQJY}K_Ozm3449;uK*3s<*4FZ){-ndwjnL18Ab7~SFhU&RoBq>{mt8G~ z(9a+AP$#A5ZEBKMz=LqN+Xjmgj7-I-pdL}EvHNs8 ziA?3VmLQL)T&A-ni)ww%Eq>07;UBp8x#Nk(i11Q9rsXd3o~%-M!}*OmOZwL!yNF;E zkgU_O9!2F=434J0|D)+-7eU7RqAb$Zqs)-nMYmk}bk~m7Ml_rL7|O%?9qq+dOr0Mz zDxVniaV6ETk*=cB|MiSSZHe37#MNAonGlckrSs=m10Lv{$d*=c75zB`o@}KGXL-nn zI{|GZ>gnL`aSHDD4Y2VEGg=a&!cvePad?#E<9djcGkq!sMti5zM}jl50`DgRn0l0K zn*=k9NTo<{kt-5&y4>pmS|W%(pP&gfe`S4ePP(R&WCmFAGEPIf{z|Liem67nAIM~m zIAKT$F$#5;?U$AvAQ#|kXMcQRdoS<~uh-pkK{_Dt*7t6IhUU@M~5M>#5czlt&gRbwFzHN1l z-)vEYLSL!!EXZaI=wuwqOfT_7OLaYmG%QQuXXwc;E8`u_2pkLFlBgqA>agu}L@V;c z(Nq|oIkP=@oTAj~R>bp7CnmP4_Qitg5!QTTQTq@L`yGr~(t_y&O`4ZEz7;iudDf=x zVLwBMlcBq(sh`Q>Q86pU?vEW@nTmgI@B$HO5b?B@<(ebkLe4@O6ZNV{n+o}|Mzfv; ze@ui2o`<_0aLU6iB_+KlvyvG6*t9PE?Q{9YZ7CQSHn0pO``8-Bn zwrzqB3zP)InnIJJxDn7FrG5~7v`wn;s~Q!*gKrGYmYwhz_NALA*p}=((IVWBTcGDT z`qh2P9k>8`J*ZqwDGEm!FK)EYq?vh$B2^@VXkU$5t^mJ9!JyCId}RBuB^xa>abg5+ zOih7l`3Yy#*Xp6m_J>$T36Zh7-5Tqg0`+u+d`gK#9fZu zwk5@o_G=7k5FxqnB_?_uqy?z)%2y^4Ig}*ulG3XWqNjz>@&QdOoFD<@*%cmuhI6HMZEhskoKLHaI0~jT_mXOTweQ>t;BijgeteobAaX^1vacr=%L!0DR_u zIWmr=K4a|79U0NgZR)UZ=$;VyUbEy(uB0Pk&K8-*Fd0CH)5`HX$(&4IM1F4ctu|qL zwF*7c87U|#j4i2;^{(1if6LyZ0ILnD&`^*-Ieb4SbY^&+zDnR!bYxjQa8*o7ySAk0 z7?}O%Xk?L~Nc$Moo76B5_~>=f;{ZOsKPp)39OXq(tQ6mLAx@l3d)_WcJ0f@H$ZnJ9 zmyHPXx3A(XrdX-x`wEu+Kq&1qy8jMj24%5vmuWwC>KH0@{|#TCgIjisi{N;uKo3(A?A+Dz{K{gYCV zJZE|L&N4R^9s5TXC?%4m5val=QBb$+;aj=p&u~m_@Qp4^2;2@_jenkA60cicgZOza z(~zNc+AlqZFT#G>XT&nOp#@Ms{mT_ZCuCG-+t8`r5`T`WryAK%ir``}cKJ`@QxE(h ze0OXT(r|xtlxTI9*#@jB3hF9-WO7pBNM#02pI`XKernZu9t)Z9ek3e9R%f$}1u-`U zd9U(ogg?x+&-l2()252F`Cz=*+Vf)1d4H@d7E-kUdoxwn9}pO=JbqWSV8cKm@7f`+ z_^&r?mFj{n3Stx>`yP5!6-ep#>#QeX0l?lsO0qKP+ee@Ade?aOnpFX-EuH5u@)CsB zWrbo+L6BPR3CQ;hoz0_&C=gvG4s@(!-DJbBRWG@~LA9>zJ1+d67!0 zD;#lJ?nSk=T>$7POQs*{V86bwdpRkH^6CD*R?2fygS;U;YMr!?ec@^>CCOH>##2oRj7MuQr9bLZcuLg&XyVWS?-yapT9A85=c4&{wfgdgNe=}cB z2(tfSMkbAGuXJY{fAmW#D10B4y_8EsSOpgf>qZuWO+u5wv^Gi*87W)B!T*KmMDCRg z$&=+L%&YcM>P@Oj56`jZ3`7p{l*Mm$?UV%5-vzjqDCu+|Ut0lO(}|!oB%r07S1hr0 zT(1PGKceqip|k+5q}bo;;0)A{EDYz&ufq9g@`DFrwc}F0i&%yboON)Vg>4zKs=}qe z0@aph(>yOm?!Y;}6ct+QZw+EjL}^teW=)^`W2-cl zD#<$rHT6w%XoDQxcGb|ZS>|Nzk0q?-swNRqEJu<|d7*Jg-08{-7hC_dLJgra^I9-L zDC1JzY7gz+a`)|Gk@3nuWXup~u=TyJ6Kc`^GIzlDY-om2kU;SNtC$X)%!wNlSfWz- zqb>Cn?Gcd^sCb`6n;ID#&H&2mfyMSKbRBW9yQU;qcQosXkOR$X3{ECek#v98oSHg> z<_2nM<&mPO9ApjM(q+r`xJp9!z{6x60blHrCt_&;KY#rg)r@c__<)sK zR!k6X68dz!&9eQ4-(H8;GKT&Xwxs69ZhJ*2lTa}iz1dC)f7Upfrc4BAREqKCBn5o< zYnA906ei80=&R4HTT2a!tCp&;D4cIk7#G(s$K{xIF$jCvUvS9Tz~a$QY<9N|1c%_U z6F|`frAa=8nL?@m2so&Z!5C((m|r{vDE`Q`j|LSR5>n4|HzDjP6R?>35ikdNTYgbi zB=0N^!&jQnI-5TtB$+D@sPmN0q;zZVoh-;z1tS~@1?gOD-*>4MTjrSEnG^vjCaD#h zYl`Y^7}G?@UU{1#yxLh5qn@(sX`?!_Sp4f{t{JDY&k)KDopvHF*Nic0_A_WP$R9eAJpLA@2*5Fv-^79>$2?tI4 zS5OyX_U^;#^MY0+bBXI_%2FB7Jo$*s%EoYKXI+pPv{C-y`@DU*6sM!$)V0WK4@;&` z$d-5BpHRz%qy~z2-ayeN{1oQqHkz1DQo#rg5kyiyy%2RTQuBou532f2ApcL8OW$4x z4UhWbps4?g^^bN>s>=t9My2bwHjBLaOn%?eAJ<^3SVIMmC&T5{~Bg8C^0(O+mrV zNv**Mu%MA^Y+1|=h|XD=(hN1+YNfvz>-fyulM|~qdX>%CSPTovsk6EFeiaHDu3I3< zQqO_tzTgrr(<2RDpZ1Ac@ymw;^M`_D_Z0KRf56LPsRjz9j4dIQT7rL$fafUq6y&}r zD&#GPq@;0HQcuM+WL7iX3YKWPhZU*e{@EqCwf`GV5-FHxov)M|wEtK4&eUYTg8X$z zkdM6vfi4dHY&D)42ByKuJpgOHe;@G6o{QJP>);8B2- zg!Y<=IzJw1CimmtD-`L|#9Ymbj*D`El_jqE-ZGF#d;?q1jaZ6TQ}2DKZdJ~r!g;B} zR)aeb<*izF_MJSLrkkAYjd(w9j@qjuoDMVj`XH5Bjc!G<&J!=5Qy7wq30UbtcKOj! zK#XK)(Gbv1a@G>+lw-uzO5p;+9ZCN5V&i`Zlla*S;sgiC#rZ?bxCmHL$S{WL`GkqQ zY_n0kB=QiR0CA#%)W7E5INF2s0jxO#zd8F6MD`Cja#iVw?q_28g@dTB{O9PGNC`!#$ z!g~X!Yvpo55wAjRDxAM1S3~=Zbl+eg7s=vf+_3(gyo%`=X_DB+j$Wx59{&j5YT+ur zqme;!ccsn#{fr+?%zon^GBHONLltzLKD}hm`Gg_Tdk<(%+7<3I;Icbo#@2jcOQ9C( z@ChYKd4TdGq)%8W@=Anc2o9Um&?t1 zVgM;D6Ny$+l%c8$g%h(w`jVk}?v_P}7xltH9!eaD=;g8|ouMF1{kH!yD(Aow?8MBY z(n2Q;#jFS6&_vX_EMdTW0>djvq<=Qm2>UJP=~`9RQ$XoNnGp9^4T2w3RaK<22ivns zh+cB_H!IZrB?bRAf(|!FwF&!fQ&FHtU)JB4L2EjczXx$!G4p51lAG@jdJK>VxQK&5aL}JKSzHnc_H;>s9fzmotaTB8DOXe9ujFMcBTVDY}jW}w`ZeHfM{wWF*S;g*ppNOL+(Ix+W z&2$jvbZoC}Rho*pdbt>E&8^u945Oanf~kB9TDx=j?r>)|V&^u%O?VfG;QuO;ATfQ7 zfHY_TgaC^MR@67@!g%A=L8}g8s0!tql{ameGI*uH6qMk_G<`%}tpGH^NU z=yXIxK;TwK{dtoHo*kN$H?~ls9WFHth6m0scN8p=n_Nqs8OIpU)FaISe}!t|cgRJf zwRCG_WL(>p|5XRafadVQXI96~{J>)B=M3z5=wqHX50F#8r1NX))p;4nu$&%_DJB<*<`Uy$HbbL6d-xo<2oK|%JVw*d`DWQIh(vw6UZL;ZTl^5Hsfmpc z^Q!86`kNU6leohaenT>yj--aRgHnfGxH!LH`&(6r+luwW0$o7#2&f2;iSZ3MRju(V16+G#rXpfG{kjsMbFV(Eq8+dj9vqJzWK61%^Z@DW4u~?-P zqs!2?*rj{wL1CyCk|4UVSGO}%ED6WQ3!9lZn4>-Oc#tqbvk`>v6f%xZn=Y1*R0`ev z>HfuLF0G(?n~RSb}ewFr@hdiy2UXn;5*@vb=Q(el+A>)6+6R!Fb&I9s590HPD zp)kULL)zZ*nlUO~O#|^A^-;QUq*#p$2znD)a~>2}p11HJQ-}f2n}GLqJHHSxR!p1t zRzuvvBAZ9Yg8itFkd*fAnUoR%vAZQ1jH>1x`fU~QzvIBuy)dUje8Y%7O-ZisMDN2e zrf}8oTwuqoTtkCIe3C(1{WI01+T%eb_Lc+k;z1dWH8EU36fKmYez0$l`}qlS3j=L_`W}GFVV_ z3DlRL(z>d2R#k54Y-Iz;C<6C>gA46h{uYu4cNjLom>@N_!1$RdkPkn7lJq@%l6Ju{ z%kjMJRAm*qNf1uxWZGF}yOnnDo9lG8pJ$hHV4NUhCZf~xuo%!soYv(`Wt%=6tWavR+tKavF|Emkle5X@^ZQyt({s95kV`x? z%q;=?3h}jxG|kp|6Je=5+gKh^x-0WmF_p=@(I;!tn~55c8lzoNNm7{xWNjo}sQ-)X z>2m%x)|#fk`xq(CD_hj~+Z`N%%M}t96J?n!-E=E8W;*@Eo(0tSiz9`FC1iIwYdV(b zow?N%(6NaW0Y2lcX7!KpgTTwPJV!Y z!Y>B2yhiuR)y|V$eJQ<;mgIc|m$6z*?`m5?23hc&mL>gLao!`xOP&;SkB!|^%)Rb~N#kDD>R9zHo!sCPZG*E@J;DWQXT_zX|Kj>Tha*NI|n--aA(ybB+l-?t2U5oGf_ z2SGh{RBvwINkkTKPkb~dxj~*R)0Rb5 zW1%#4lf~`q)8vD`2sCC+zYctjeW3dZk==@jobPN@B;oJ8tJ7IH>f-Bo)_)Vq1mtGJ zo+f#rKAnK^5^Za1P6fij_!*Fia^y@OX6bo z;#^F)kXf1dOPiai%^Ce+yZ&o&)P~ICcjnQnub|Mp>ds0{9&*8=rf2gL{ug<0{hxQ) z+4sgJ4`hQm3u^p%fjJB>cz&_x5Hwybscq-6$uUAJ`*+LMae2ZgIf~}P&-~-XKaYme z0(ji{V^c{GsY_gZd06xCl$@+jdM=*(@yB<3Nf%IBWSwm@neAR@&ge}~{8fLiwefj-$G}%aVjUcM ziocE@FUWGZY&U5$LX5qSM<@{_thS10N?T~>ql2FpZWT0D2t;qp%5;3++H+A{OaP1h14aP7Tv2f1TB zv(V!XbQT#Vjq35Rp5cW*yiPhN`_-l7hu+m7ig{t&qsQ=To~q~Qpz+wLMH~!Hdt@U8 zfJ|DD?bc9{sX7@?|RQcvBaF%?xo?bm}Z zqxKhJhKb)Bfrfs|qH~OSWXS}^{_{?vz_f8!80uL><4j`2$YDcjw-DD<@TZNDda2mO z?GV17zN{&4#yDaXzuH#tC#`U@U!29ZT{i}*#`3I&{0(PKHBVxaM)H%%7BjB`R03!n zz>>C)Qac zz6|KguJ?!cqwL)K#;3JBJh6;e8ykuH-Fe3O#A*CS&O?uY=HWj8en5f0R2rCN!TM5h zPXp1EnMcIL5rF{g$_}*v9tJSpV*U4+yv@HApwCphi<|r4f9=KlObdw7}ZjXBXw^0vsb8{1Vsr(Z!t3+&v2NsX>7lUK)C zpT9Yoyj{-<=ne2huY2IYFP&c#!LoLNAYh?&hfQ9xl!t4{4W@FUmixT?A*`LGfI+jU_VlmLHa@F~+#$x7JH-Aq9qUzSc%I*(w$_URUL0=Xwu?nu|$ zL?X{YLEu<=+I^->71#7F4*U)bUMDvEJb1pJ7fuV2z*Z?L)*w%W59#5yC2Lh>YClZb zK!B+Vi@Y!%hP#kOxKmD<9+r8+pkS%FO}|#jb1$r|udmaVeB&1^_XXublXy_lw%jd} z7e=LStPqx5IxI+VvV_nbY;eH8=ToWKd}UKaJrB`9(A`kHWIcL!CD^G!!WauH%%3%9 zV=R1cTM-fbjwYT}PNb4>G5aX)CX5QUNQv1a)x>hF;e8=V(`$ZYM<&9X0E5i~? ze^si25Iv5$e^}*f$z@>y-3OsBvD|snsyt_le)9BlCmij+$!7=c7&{;=F&~v8I45r5 zGV58(3ee@VICER0ln34FsKl)Pm-FS0pCV@Tf}7A$$9OFWNl&s5=CU^tEt)fED7cG+M|`QmDSj0O03kk+)QgWq(3g@I^}q_ zR!D60bR3*cKjIoo7p&{H*y#HnMbDx7MsEwBI@juCi>31 z=c#%+XQ5Zhi?ex~0?!}2bmrnI`utK-A&}KqeV-gRlFEH0^0jRrsL#fMA`U!uKV?In zaso2oTen6m%tcNHcuJuP0OnDX95*352pu7!2ME-B#0N@hyMoY&k06)*CdU=`jBA|6 zrih*`)(fHv8VL}<0uWBUI4Bk&QaUFmxSt=p)EV|HTA#hZq0p7(Z>-b$*L0h&5S!61 z&CBE@9{aH<;t$=vGkMXp-**;uUOc%ot=E#{*RPzoc&fN0Q#?g;JR%&XTcA7V1DTG) z7fWW^F&X#bRvzJ#Dyv5E8XTRc31)|u=GOylS%;7)B)htZ`N^Hylk#D=Lx0Nln2;{~ zYm$L`6T|0Bk{`^I>GEGCcH;tK%e}@w2877x|A++zd0d+aamubQ{{10bmHT9ruz^}h z4Ex+U%ZzNHkp)4!bUlaP@(M=ST<&o2f_FqF>i6A7OFG1;cczU5MrcGA>;<_-I&#S7 z(iwVFae&*hS&g~K{(M&d$H_!HZ#-1YbmvVQ(Jny((C=HE#E5L>WG=4?czyx{0+ES*nsr$A8jt5gFzvU#$0U4`*igUy6M03H5}-BKC3 zpF7p?pzdCl6g{Syy`oK85$FTE3Sm4j1=^ zBq9~~h-ep)IZ+@I4j2{V<>PYskS?3Egpn=aOE?olT(S`RU3hH{>!eCcEWLE{4gA<( z+OHP3Ze?R}Mh|y$Jk_6mespvifQ=s!Vmr#EMr^6N{)@ECX0)~0tzxWsrR6T^^0A-9 zLJVufMFza?7gg~irmx>Z>WKX{2A#+yn;;-fw7|Tf3;%_-n>J&YHk|34w(aJeW8-|9 zJtKK{o+fxDPrx(PSu_P(%?&JQ)@Cg}!_KaH0?v7N-m~@ECAG0N7XodR(m3ufY-N2n zmP~4}IQef?t$f87*(ngYafI=axDS0Yuq3$7tb0M}%o?fWUWS>%0~zwZ%pm(?77ccZ z{vz5ez9Gm$Z|^`-F#F#`$c-%W@7N78$&>CNiVP-Fz;l~K2ocnnnSco_U?`E(>+5HG z(aCK*x4L3*CRP`$_ug5#faA_5$Ek`WmR8@(39KDydi@vJHZE^avFksE&QRi9J}j;O z)c5j#grk$7Ela=qn&(iJ!=dIib_?L+*F+xJmU(jgc0C;rlH0`~OKxYICpZSK(nx60 z#>h?TM-J^~QF11x%BHiEZ)MqGiD`Sn3u^|PUwcMV>_%;EbdCx_z)OskDTSxU@qG!e z&T2=rdJBK0;dgeFz+=XT$&I%K66?tP%|L1~3CBKKh>klx#$utnC#-(Icd_pdJ9nV2k=Y#0WCT85w%CI}Ar z<7JJ*;SmxTNWk@T#~!=R8S?`ED3yHfxl!43&VmMWVq@J}jG7@HG5a9^*~e4QpI;Gs zmS=-_@N-=}dFX7t5CFuqlnd5jAJMn*j?T-VS`i+ z0H?@JL{`+DL^-Udy%sZ*MC3s>j`KLPMB4jwyuZvgV6`Qyafxw?IDmDRT@#68DU0eWBo*QGXJtEWx!F8z}yH=1;M@+P@q!)aQw z4q@@Cm<*l;J($+5lpeHYi(-F@QfpnUr3_4@2PLPczch)9&Q zKyd$qgAd^}BDH*t7k{-TXQN3+89y5)=37}h=q1<5DY}x5>L%@}{KBNplAjg{m2nDd zv_poeSslqr6Bg@W9pa6>f30w%SRNx$dTNe4QPoCfm0#RZ3IR5qHF^ zJ(q4A<4W-_+_<=5jS2M0KdO19vC=6->`0tcM4C;C1vmpATr8R9>=KN{&B}AqGoZqb zuN6*3yOZkvGdX@1u!K&~D9A+3I$*_|9l2}wC}4dQAmUHnAe?NT8NN4Cc|t5$`;4u$ zfc^5%)r={~rL2)^U5WaUHd_=7Rrv9L{cj&%7~<(dCE^TlRh)P6)TY30RM#pw8Sm8$53L=>2#djNQbFIc=aXy*rm1KafSla zw3n!W|JY=zb9XfNrL%&e69-*;YC^PZ*BBNogNc99xHOrH2&2&5+(7>ZJa;54&na_gp7p$SxkF4gK^dNzM61)<@rIJ8BKTCY-PkvINE;Z>%DVF&3ohdXPvm;*#Ey{IGRv?eD9yxl(|Z_nTJ6E zL=PfnRU8=h$(0HH zw$samfoL6!&aNp0+l*)89Q7Xg%Gn~Tl6SMB+RUcIqtQ@^E4ZgheBt?Zht)Un=%}0p zCRoTnsKAAT3}{Jj)n{d)b!|SK(w@JbjmIairB&sO1C~r%b4aOn^@}2jnd~APy0u1l zKKEhL^C<=4CqQmL8qZs!ey9`T3sqySa~53n@(vfLqHvlg31Iz+mNfwl?@A59M)Um$>0o_T-}kpV>T10TELlQ7|hJb z3PCbH)pUNXsH%*N>{;?|I?7m*L7Tpk`eGI>HYD;frH22FrP&Q8k(tu-WCfTJfk#)- zR$TWYIn2rcVATSF=>WskAQ@ctP;CXD;a6FLfc!)f5{6*JU%?}l5L-oGm$?2l+g5*FRTX!v6wk2sP)F53hFn89EN-JCR7h&e?R z;Z5ZjgA&;EniuPrIkok$N{-)X(rUo+$A?Kd`WSmVz{Ik-PkEE0(jzLBhX2uHApq}gwh7FRt5F}>3lvK}Wh0pQfaFE=6L#-=odDEh*ox~iuLSd_)8 zx#26$et$HPsrF`N)s}fd@wddfdW$w{rsyvlD_+62ne61M{*ZuKg;7>iW}w>Pm~7M+ zS0&xTeW$xx<*CUl<8rOg14oO^&~s&q4g`hho{{&fU>GtBKzM>r?T9#GL?58=4tRa!j_WTEGi{!&CC*Cz?KX14xs>(zK-#M07n4Y>^-%FCXtJ2>bh-~pVD zO6g-eoxTyj6|=30$brWFR3xYzO&!5Ag%GP7ROq$*6esr$wV_sLZjB z5VI1iwe=ACyf+eNxT(D%~f|A^Y zrdx3O$l#W8HoI2sSEh^KI4La7A(+CY$qo+rzH>p6*0Md>>;y*9#J zp6DXGp2b#x=y`4AV=v;VIJsh?5-Voki>CjAf-l;IfmX4lo}{$Gj){OdV3XW@kc^hG znA*V=;p{RZ-wPP-um0){&Xds=M*hAP&z9_SP8tiLfm3c`q;cfBX@`Zq@0v)I`>;o6 zB1~;+(bo8mmpe;~w%5lGkZTP#Z+1wS)aXz4+94a<>y)XE0I-?Chk+`f5G9?4_6hbP-#X3yAXGd|h^V+kr<^9V> z4g~iLSLJBv|0{7xkjG%_0u{6(JJmrho#0Q?ivm%FzN-}Dpx$^c-+I6!aCjU>w8}vz zq1n99&Sc1nRQ3qXrCtn%s>|T{tgnN8X+55%E=2Oh(IUAORz?(yvA!@rSRCevKe}2* zi0!?fD1I}Pk9T$-YB+o5lE@?NaUiNI)cEd54TP_d__ETxdD{#1)+#a&af-ovPlz1} zhLQ98AG;XMP?N389l!NZ00Mt~N5PdgilXLCeCpQMwW@|SwJ4;(_AWvTysrX!caaR!=#UW~F6QC*TM8?D zRjNZCm!9}??&zQnfcJ3`Xb461EUuj(Fp?^M(#oK#734lQ@z|yKHrCz!9pgWJ-p}%g z)6W|Lp-stX`!@W?t#}qg@1-x?@!+Ni@Ir*X>J=I5tRKbTYQ?U2Gab+WF6~7^_@M(4 zuRJUQl0%Bf=XO~O4bsz(6VFZ^M*i^&A&rojJQMV7aF>Wa|*IY+S+62`BoVhct5$2cIgoSBYoC%)-fPJX zK|4JzlFT1xBsCpa14cz!E8eP^I%}pcmC58Xx;7||Qfy6!ID@O$cR+S*z7_!E>)Gw( zzt?1u+$_p$)@w0eu^Oyc<4i5wa>cDD*3Y5MUy^(TpZW{B+8o-bGBfZLW+MHe!d-Sr@7vv)7Dgh;l`v^5=e0h~zdH8rA}zHboZ zUTk`-Y}Qs9Qk%XH8ErpNGd*J~6>3p1ANf$*n6V~zV0EOWt(1mny7r9?goB1>o56Z{dNJ_0hBMhpG@p%%hcw8OY2t+U; zo6@gGL;r5j5!-7cX#pVubm9wyqie)%lbWM3LK_3dK5HP$Z(&y^%XLy+?n&ZOkdDjm z;D`Ad$J5e)$u(zeLn!>}QNS!+9GS4PQrG~!^?J!0!+MIzzdj{nY?LOi)Wbnq)r(#i z+#-0(c$%E0w(o56v~*?VU=USSo6-x1sL*ykyN5s5S-w65YscT~J0G0Bg z!{v#iaR{Lp4wW53mkk)xcx{dZgo{T=0tnbqgQ}2FW2q9fsj(Iz+M=m(z#?x)?z*6K z8dO$nieV&Hf`Z0Pw=5+=L>Lfw4=pIca$^M9SgTAB-9DrbBX5`~3xp1UNJNml9S52*l4Qfyy{{DRohlA9nyji>6v+@hj147t;H zV#;Lz7TRgqqnFf-3uy|ewBe<`$yn{T>&YaW_JX`%&$b1ck|l=JB+XXa7&v!yyu4T2 zw4ihxoEFZ|{7v8b$Wd1baJDv3GYEVe&kZntS1GELY70YKuvO;IriJ8j?F2-|SgQ_C zvsLsld9FC8-;$xtw*+XLGgLIiN?X)w)8Ms|P)g93eHc4FC4oL|ZyF?@cfUfcD>8uN zc5M!d%Ltnx%1nf}B8+gmZPQxos1#&?>ghJ1m4D3} zQbO(Z^9$Xq;BqPSy!+%8&>ol$7l$7+W*!ZF@@uVoX(30RJQQpC>%J8`9CG`rFF!PU!H4Mh7`ZJe zTtI2n2bG0UVv{%?G?;7c&Y>gQ=nv}19#J_F4qMVs%O8U&!hJMJV;a0atypR8ME8~8-{p;o+Ju8y18 z#=9eKy&i-ZPdM!WdiSg|Wz%yZXiQxI`!Ui@5gh{NTowCbd~`5aIbQuK;^_}7RIbC~ zl|G4cZL1f7*-x*_Wcc9QE%;5x{ivKN@huJE2>W@%_%J>Y{Xgm+i5g*!)(r~=M@hpb z>G`ceSZzM4)v6B29rsn}Z1)UM8EBhBcgh7?E^BJie2xCm6-%1%2m%BuBzM)Pa;*B| zgWpQK{#DX39+2tB_dYLv2ebIlK*G4ToVObdz-(u@v(NXAl--BC{G+c%GV60Rhe|GI zlRPU1R?xHpKkjt(tpow@fkJsW3)%uj9B029T}~wX9BKl&5H^D1Q%#0{F?S;CV);UFuU1U}vQ;*U^sdaeiK{kEIfy`yBK1oY_9#U#>HSh)l){%= zGTDgMehqd|9Lt1>ii&m*aWcDrn2hbM@?6idcOj~UjQ_iZ>05C*omSbf$W~rtV)2x= zLl?K{gkS7Xwr@&pg4i4yUJKjebaQyui8daO=)iT*708y=rsr04sR?Ywa%-s#;9VI< zj%Z7a@elym6!A~XxdAmS!OvPf7HN2HNSP;?y2;Hj|T!Ji( zmsRQ_Um`S4zmO~%71c}%5PMPNsFU&Z0NTMxFyEQp3*iK9zGG|orF!0NwPG9AL|v8+ zIT$cRdfqz|w)#Ks>EX2C0C7C2IukngSUN5j!dm0{cNaM*fz0=RHuGa;X zys@lSguJsue9>6#v{_4|fgXoZdu@{qQ`w@~g=EA0NgiHkx+5Q4OFZ5dR7E2|osM;>4&N)tAyjyIw!ioTC(zx&0^-+1M zdtP9P|45SqLl8D=76S7gyanWh3*-1wJhYcJ=u$JD*^pj59Vz9BykaeEMNmu{kjAM? zV)UtZK(`t%Y4X20J7HHp6HF+%_SmQr}c!Z}8zP zEk|2@F_;>7VhaX;+_lHDR-hyvqSn}g*@gXYr0=N1VUetO2|bLqc8f5M@pueMJ3eW# z6HsI9GwgshS-^zrf+}m(^Z;9B4tyo#B0hIygxSJwCDAez{MgrKnbKLTehUCq?J?kz zl!(xif9)Fx9AU+UR~&){Ikq5KrQ=!@AWa1sc{e-}l!Lg88a=T@)Q()TY0e2v*8xyN zfx*^sNpTTmDBIYnlh?EQ)~#u_%?|9;d6(=yPE%V}5)!j`cdvb=l)*rlN?A+krGU+N zpIftDL&p_NNdO(m&ojmdk)lVo?}p}NzD5k@n`*d{v{3ts)98O4brpb)bxCF_ z`I|N=Xzw=L155f6f6r_B%E@2fBMr2xpc$#e(*A5_Z=Txu(_p%6ky|UXhwA)7U&`Zp z6SneStyjs2ATwDRX~+U|f*js0CdQTbbD$9CN?oPnLGpS%9?Z(3$wM*I;U=g-#Cvq7 zPvcxW_d-yLrh{b5p4Y71k#;JqujIIElI_hP^G-?kx-bJWb5IF`%#_053NcHztz>?T zluX-hG&JIK>$>ab51qe{IeLg%c$;vLuC{P3fd3io-G0@K0VRd_aa7SnrtTw|xyd``|_C=+9QYLr9Kbq$fG zt&&KRXgd#-J4qu&hjTbHcdCe3?A0YAQ)bl>@0?6Bs+c{%4kBUHSG{m=)Y`{`{Yr_gvV5X*pBC zuFPrxhzT(K*QQ1Dcgg>_UGzuW(YxlQ&#GW4OjrGdDb%+GngJAa*-g;X?IYK8Hb=Lq z5!wK;@O2K8KlPc$32oVgKUpRaO(NU3K`UUivm2?cMi1{p$o)GkB=X35c`aG~#&5gn zT7t}R&M7c{G)E{UUmz$ejRyLfEReL9Fc+e3N48O{5(qu~-8ZhiJxh*vg)iUD($RQ3 zd82BwY1$`)W=Mw3Y*s9?&WO%$B<+X%%wPIaOtJ~Q?Nu9FDD&^yimUKi|f~acB5NZUE#9xUsR*2zFj5P z>uQ?a;%-JPzv!<)*3cg*=ebpYB{%9ayPaoJbfUE0l4b%@JwX3*J}e8~Zn2q=doO$& zyv>y_JEN4(AgS8n0BaH(P*W>578__5rQ8MmD_gL%$QPGJ=mtF4NbNnGjtCjRT+o6# zi(6yfSJAewRxEn2Df}?fIC@WBk@9(wtXfc^b&1=pfW5Y&oqIzb@@h>N!x8ceo?bjg zA9Y2(t%Ed72pzZXI8#mG86?gs9SB|bAxYCVzH z${Q#lO7d2__6t1@BxH9}4xqCqONVc4QHMQaAEWuj5aAm&E48hhPrtQ+Ew2{UtjP-3 zI(F~jT>Tggq2$tg_ahvnSKiu!p-Z;Co>gROIy^oj^nad>Q<7~(^UUacUt`<~A_+|i z247X_kS!HHvTrLPzG1PvR|yHWv#WjyQ9%heOBn-r;Y?iJZ-+5u)0_AVS;p53HrEt= zFq8gwdN{oniv(!2bZ|Kud~L$_F`PUCn8uxDj`VauN&?_e8?5z?g&J0NVI02&)3d}_ zOfmv5UrKA`j*=lwbzV>)r68|{>{nv9%%G_k=d<3_h#v`+Qp zUMk|*W}%AR^jGO?a?_!QqvElU&oy0IyIQ2!SfGY>v8hMDgx5j9J!ad5kStT1kTNGo zJ-mFzLicKT4|)XeMf20Fw2g`o9twS#-Jl&aX9>WjtOf;CR|hQ1f$w&uuX@v-JIEmv zajre?AtdQ)eN3DwTeQUI%8Q;uSVCSenVa`#eX2kpu>|Oey73oJZPtTr{+T!B_|i}Q zA5cpJ1QY-k2nYZnjFVO&<2HVOGXMZ6od5tJ0000_MM6+hFJo_RbY*UIb1ze6V{~b6 zZZI%0G%k2(bZu;%eQl2%RhH)W{uLohs|G1L?Sh5|+PGyK+UCVx4`q5ryIQRxBf}Z7 zl@XCdMy4zIgcpq%gj%$RK`q9OaN$K>0~XMxg{V@iKcvT>`cD+UWY6op=SD_Wc}MET zc2#D?z2~0y^PF=}|7N$GM2oDM6?OIE&$kAreja62T91lq{Nm5&?X_P#_w(PJ`Pu2b zg^$5UtJ#Yu^0uA6aPs8!>(>X@pB~iB_~h2}&p&^17e902%+I3ebe<(6{0scGE!s(T z=FMuSs;^h4Px3$cS7p{F5kBk}*<15s@#2Z|b=787`-`i~X?7w?`Cl)dXtUk+BtHDt zQJN>sENfq+g`GG_FPjwAPSj+R7f;OEdsFO>(MewC&>&5mL`*8*kn(iKtgVHe)`K3XHL(i zN#%Z=C(|}-ifWYYo;b7h)ajG>+uqL*F}F^fx!SDuis<3Z!~HMXXmPlIzrueUd{T|| z%O~@#Ge5&+O*?OYuJiU$Q%}=m3eS|UHgz?QN_bcswecp9slcvpodgqf_w4E2%S`e1#d^4Z5FGOdf*Ro~Q*3oudX3@E1R;1CD zrXEhRau(IsBKl^uofaTv+3AzTndrZ_hx>bFG=in2`3t?TdmSh^g_Aw_P(DTkKRkH1 zlHCah`~mm%0&HpZbpixmJz#RfVZe896+*}v`~=zLi%NEwKH7_hhx>Q*X*+qH2zBg( zakc+r5S?EquF#GTZ3w@B$H7`xe~nr^{mik2k+yVe_b)B!Jfav#XQ=B7d`s+?>FF& zX7v~N|83-Aqym08k47u}#2DE6n}k=I=Bv-=vfhe0M;0=OR{w@9j$ArL&io>cqo3aS z6My3hF#L#CM^f|XTcE3+Bb>$Mq>L^d9{d-AhAECGlHYKy83(>y(Ak27TBY`+@vKW^TAK=d}^qgRLDuI2k_heQ>#|D zmqU|h7yqEhQ9qO{A&h_<)FJ70~=PJg&-Ni8to3 z{k%XelHviuPJvwCIUd2y(jgzY;{`1SUI4V-$9*Z!$dUs-z~6nOy98RHLd%gATKsv0 za#`@ffJE&l$aipXLsm+cve~Se*k|(Uo4~X>gyPn{aK;=g2(?2IX{}h zC+=4L$9w#aCv-Z%U3k9HPyh0-x)Xftog(Cc5_y>GZ__#o(>9m0h zkc~*&Gixh@<;l{Y?I!&zW+F$v2Z^VjwWtY5^TU_)X)92YEZ0Qghc|Ha+6LxE$m`Flkd1T_V+Qn*>~gbMt040mXhbSx)L^Ab;vxTM&5U zmxHh5@#6xO8Yz@L@3pjI1Au+!S#f@W2Z>Qt*{{ep?)d^lIh6X_KOA2RH;H=AK_jf-mGCy%zEGetnR}uTcT~- z6oLAI@BClpGgN^S{0I?9_Pu5u{i)L1fT8xMu; za#MsUo$(fVB^tmH?Bn?`{{fvr>m8|!wsDQ95g+~m7X*ej)I{V3u~2r^1K2lR1e*u> z4e0>j+WY*RJFNXdsLoEVHQ6Zo$84NcpxaT#Q2a#u@@Fn3&2Zj~QH#TKVY^@8*O7*E zpaZDNf%`tKrz2>5$~C$$Vh$E0$GAZ9+wg?Y!6HJoxw4*9#;YH3A$Qc90LNP-D@BcP zPo-$W?jq3qe&EYFqYjIQ!xr|$m(n7>$MrtE2W~SQHHj|jeo%Aw;b9~bDY<{^y5h2^ zgcbACn;@5E5lOO)3b zyq*Zp%Q3tLYe+s|oA>d65*7;jSqobvyEjBlMwa_MHZ8YUy{FbQqJ=ptfTRV@MDo8! zJ{>$~ds?(Ji0eQOVz4>z&}UDb+9}!J1|GgoYUZ01C>p)FjD_1mhXXYQo-fB1T>_JM z$E3O8eS9A9BXC>jq-a@47ZP*i?s){XEy0#TY2TjUf$ls#U{kWh@Da zN^D-x@ZWS%yvUOV9OwrTQO2Nr3S#mr5HclM66+qFK2c!{^or*V&<|{gZX#8K@Vq6m zHX5I!Dfu2G3|86-X&0o88l_#6#dt?v!u!*3|Su|zP>!3)1iz>F4uenwi;I5P$(RG z$r6d>AX=D|L!7Z1tiT)HdWs&}`Q%xoR>Gf|C3E6!h$lb7&!MA@yf9_^IV7*S0{2dB zA8}eLPQ@!n^7ZdlUlYyIrIatAF^BjhalUiF<@^d22a!+sEhxqP)*4jyYORHjHA#cd z#TPLFo;np1%h8i4H{dcu%o7xDGCfOFG@{PQKC+diSfI+`1sFNoShj8O8!c;W{McRL zB^1Xybu>Yrxf-Aj|Gh~e&}Zf@Dg**-ly2)O;sMDXQ7+j!3MI(7+nuv4vn$n6Z?JC) z@8E-j=pWEGX$<4>IYIDtS`{$)SR+n9rnGXPvE8OtHp9I!puLt^QV?Pp%%YbNhE}c zkx{Kaq04_c=2+dR$xD%Nc<(J;T0w5ZfY%)g_?ABzpH8MRLkBQtQfZ|uJ_Ld!W zN2lUK3|KYMAJ@s|_tm7t4C=gX>mUIK&m=S4aBPkm)scvJ!G=XM@C2sF7??{#Zsvuf z{aS`O6oFfvWGy4PYFhW7SDO3~(ftz-pg1-q*U=t%?b z&>Lo;4X2Vu!u|Xab-+i3GY7C*iT32TtG|@s0FTKE6FK2Y_-4shnv5$sQ^tP0F$cBL zT&sb(@afz2XtWIMXHIVx-Rv1C4ph{V+@}`PyWmNESBjhjyo4oGh008s51 zQSTDn;MBkF#=W9X9Z9E@lNlm0M6q*ZJj8{Rzya-gK(xB=RiWgiID^7L7P{!M5S4Td ztG*`b=yYOP+GVXr=KN&IMx7Fe7TKd4X(Np#YiJVoey2p%H=ATaYd$-jCX)mVPC}_B zcC+cjXD8DcedLWg-6=pob4n()4X&YW*oxAEc$b6d4b6zh;zYCJ?C3H$h^U+^LjqGs zea0RgM+?rV52DwYLS?dyyYY2MJhEWkB+F@TN;QKJJiycWy{ZLTF@BiLldw?F0=?Zi z(p9=lY8`bLA7t!Kvc>P)Oz2dT+WbzNk0NeEV>iwV(F0^2dn`3?bj;;6TyeNx{t()x zSaaQQOytCs#FIWv$3c=!Nyu^S)6U%{1!eu?%hiN_h%#S94Y&;&%=D2mruW(E#jv;Y4@fWM& z7TL$9g<_(*iU%zNi)S2u7;hV0vlJs8aZ1p~k%)*KY6^hKd8Fsz11ddA4vDKVRgLK( zoY*1Zy4@QLUMxVPHbq@gb=GMhDf`%bF$dAKo+~+K6p(7aozzV+N;uqOBO<<6phsDJ zRZ>4+M(g`Fi5t{x;9=20{gELYX$v^@@MMbU<%#vHEinkW+W$k`fvK$%1iv zF5^Wy=MTi;__NiG_?SIRo6~$ot+}(}(lGjT z9-Pp>8a4_}ZKI1r%IO?Q-+E5(f1|yp4>ZZ!#U%LUmAsH&1_W743c7-Y|558Iz~@m* z`K&2y2tz73;|VF69iM4eokxy!m?5l{%LbfMd>jTW&i8m64Ca+D+m4o4__ zb;?hXfD!#D{*v)5ROOY3A~6ZZHJ!Li2~hU=kaOfkWAa6nYBLDtXR8O^k0gJLjiSjE zV8}KJ#P6%XLcztvIh}KY{+?(ZMn)tFMRf~qLlu}JztMFI_=C^ zNg_w6mxrjYhq%1ek4wsC6)qV@wE&gEz^&hNjK4t{U(T*ytLN1S^W&E2EIarKCNlXo z&NWSnjTv++V9tYNTkVq-%31y)3tDsA)nOxyz(&Yi5?AcxwYY%vhNlOoC`(Sodh72< zX&0@#FGi9KN-mvLMv(+wZ_c?8N__F_C<1B}Erld`8sCRjoLP1#ewhQWfcd;dn5%mg z^D{E)f&-~dr^yk(rgIA{jL5V*Y}ONVapA7!7^R&fcl0G^1~`4m`)-j%xsYIM$6PO# zvk%}M99&T~@n((cPm0sl;|y|E6k0H?Sb?q?Jw59dK@SU12}hbmw12gCkIC=m$ne=; zasucau>xhH+8XOJcpPAciZ-dLB2B_vCLacAEr$zOioZhH5U$E{0BgO31?B44%*dm} zV^EK~B)Vcrkksdne=x^`u7cZe6t?j3wGFt~;(vqd1G^vAMn!`8O{hQ-#Zije-Uadq zD_>}`tRewt@EF%BOks(1`;J`Pe_TJ5@TJy&k$8NbbR5;!&ra|--06#Z@3Di~R zOt1~EJAC84`X8Ey2OomW3i6UoPIj-z{XUptOk*kY+@6hqOUbInwe7mHf|-FcAgr6Mdv&Ph%vcA)4LM)k{0FYsIo2eIL!!3Wb3qzN*@dXXXTo04H0M})LegbIw47}z zhgk%|e;?F9B5@=Kln)%TO-_5Q=Fg6YEJgfM`iMba+v=PcIXV4ObhD}>g^apr3yraf zlh8hEWt728A^445KBOcccE{*>;*5y1CrJLC)xA0j(QB{`CeSDRmdaRr@-`Q$`q8D4 zN`N*yoN_4>_F)NhJtZEU%V7;!JLBr6)(_|8BSY?`-12p_O`BzA9O9B*^J*Ba!CP~2 zf2b_iDJ^h#NS>Y4%NP6-DqErcG<&sWSQD3T6yqlx(j2qs4$+_*;Xb7+P|gq%MQfk~ zF!jo{w4{40xrk)yQ+9<*^ela9U_)xu+R4F_F5xwBbj6XhgkOlsRg=LD!gdwQE*h771%76^JEMazfp+WZxxK815E#GQS=R=qw#&-}+d(o|o>ivJ`vwT`3} zmQ}^$t-m0BiJK7&7V}|B&ImV0AV7S{2X5y%<1XRnsF_O4vi|=y7fZ=L2}Tn6E~?< zqjW*4DaS?bKc$Vu+}`PwB)CLavhPeuEm0BtU0{ zj07!Tatc5rKnygP!;~$0w&+)-gqH3^&J|Mv%z6HTJK}m2rHyEVJIqJ&D3+t|iz5%> z(i(PzLj^v0&TsU^?*X=f((z<#kk1kaMHTjXOTL4t5oB0oXYz9I`wS(DRz;d8{1TNt z+3QNlLnUiu!Czd6sH}5Ak$r~nxe2wrHO(@*$iOMv%tH7<3XurP=SvfkDQmIU zY@uPFGhG~`e=(2U2jAS@?#~S*(=2+m&Z`;MzcIx@zKt}ob>3GZ-+-J-a&<-;z~%UH zdyQf|)L(FWX>-<}J4|#u1%lC`@4%4?1F<b6e6>bjXPWQWHJWkoJe0r(7NHsoH+G{GvG-kf zA4j`rBQ*Z9*yxfhg9I5ajn+|Hrr3k&HTGKk+4O5N-y=wkCqGsiq{Gr?oPS2}qmy#3 zRWP23+C%XK5sPjrx-Q5SSECox8dQWDQe~3oBeW|+naLqH?icTZmWc$zgfam^DU~BQ zLxLr_HYiX!lz=9;^`ImOAKI1-Q!;D+%hAwmPV zm@O%(MRu(T;Y+INqN~O@V8xLNIs!8}*yeS7;(QyM#pJP+kP}g7gfu_aZ&Z3Q?h_$C zm^-)1Ot@fcM2_v=(rrywHUvSX>L@urfm~@O5|q*qWt0I^T?Dnm;Ri5L%oVNm*%E}t zqGdXK-Pd2Qj|kvv)tIw%w<%~~Wr3z?y1olt@LQ%qfx+rzN`vCAD;5~V!^h8_D|roM zTVF7s)|~st;cO`di8;3sLAPvx5%_=7HqQ?gMj_O*dPBPO%baxIt2GP|POUZa#1NP9 zHZ;S5+bt{_UXF6TwKfjbmw6nO_xTH~tA^Z~l2uhPQ$0K+o1nE443=I=Gb(B_wzF`( zBV5z0k}_V)Baq{ShDkr$N=9-{8LiJtAzlw^EQasUsba=@K_|dz;FOEY2I%C`XNUX$ zr=lw2C&APOL^EAvHAc{2pB}G!OZa5hsDPvAUo()fpjupq=%r2Uz7NTS`mn zd3J30M-s{BlK+)N=RrMOtDCCOnvNe!v*Z*G`4mJU&6hjW8~c-ILDB3`6;-o;7906K zChrgl!UaI;R3T!}!`V~T2lsHKg=$DFhP-pv{Sc=+q*4#hi4DTvpMAS-GRAzLPpYIr z&^KArzN5dGTu%yiKl;wc;AYH_3U+`nmeo^ZP&ud;oVCI!BP=t>pX$+=qIZaV#;1a<$vhRmK79^I40>$&bR7^C~ZbD+x2|G#j;jQO|Rb4PZ zG7wH3GVU+|EdnEIuox8O?`toyXDUW-OAoWD&E!<^kw9xW=VZ)|%l~|+fOt=hpngPj z`YShd3KQO`ZL&Nl{1DJ4I5>-8Kh_mwC(Bl-pFI`3T;Nx8?Q@W--(LzXmq`~}5Jw0X z&|n>mXAVe*dcc|tI_c*Ub{mc7MNK=L3$=*b-NZamO4<(FgtaF$0c;~Y2yU>JIlzSd zE;hc|d`s`_2SK-)G>Z`o!(1E;iC1j!I~^~y6yspBuO4{G;jH$(igpMD!+S5WFB}eK zsL1|3YCPNJj!&B?qm}Th1Bf*7B8GrHXA*dDv?fY(a{gq(jVNK(gF!LojchnPh`j#` z9b~!6hfnUf&R*+g+wSMUB|nPi+0dA?QRAjLG7h|CrbQ#IK9sLXXl9Xi`)hXDw8OI| zZXOZR*hf>HE<@klZ#Uz&NY;@&iPN)rcL&d(IJ0&7B>enLN3$8Gv?=D+hoxM~J}S+8 zULim>v4-EcBRiQW&WNBym&wTcc4r6o?M*5OkE4@<1d^JonKyQ`V4V>_(R>Gsj)?k1 z5n8^dZ|hgj1YLW!N3R=uv&|%U08jSd;FZRTaZu7fW+-^IvFh5O+Vg?1u{8@gu$ir^Ds@@9wo ze?frR?Mgw8LC@a0dCe1(9~l)3KRI;X=0%#HIMX`{v?n9nBc5BQKt2a7ppqEq$t}fF zYj=Vkz^Uw@11W=8_rt28oS-h~VM^gHc8yBTk(G*GcZ8&ii961m`HB?Ms6vK|T=;$w z)}ZWYbT$b7;al>mGO5}kdgAg+PYy6+PE!**}x}%(CAQxu9KjlqJ$fvKpLAF z)3pw(|J&_~p!_EGv!GMIC(~VcOl4{~#^9tF!=?b3g%lb$%#NaxZKyzl6@*Rx3z>3- zE9a>P77umm*`QwHU3C|~aBrRK+dG#v6;5F|2QEUc0K+iA5wwa6i`J7zs3P7c*F@@Q zqN#PH1_aam{yUP?w~a~syjjm@6+xyJJy#R3;GR@w^{{ARb#pjh)CGZ^{_B1AwY9bS zJe7k`=fzqIMvaN7fgf0Re8ZW=54DcaH3_D@flj`^yD}vh^d2=?pi`RAVm>eXQPZ+c z>jB0dTp>^j0W+XQ+!K*lTU;<&fWrZr6ZxJb))<(;Z~N(;KaC|PbBo$W`<6=#I z?09!Tu*aJBbW<$F?i!bb$>voX%M{Cz3uid;SWoU=Nxun zP>ZJhrVpI6xNw^Ls?tBxp z5WT>6HaS`L9meA#DRkpbBxL9?jhAyF4#Pgf;Rt)&VkD4=dlY0ATrUNUyo02I2RoJy z6uuuz5TGFm3Ir$o<+}5w*!!f-9d4LF!0_jja@Z83an{=z!Jm1lnU^Jq zQFJM3+dR9@Nz#sN&>ZpK;%JKB6;&pUDwV8lFO}}xk#8)b3A%wbd-mx#C>RT7D|n5m zuJoqYa_)+!{DbXHwOxo0dGHMPF$CF(&Arn$l9U{x=N*2mE2wr+`>~cOdxxmu>I+5F65JX15W)Wa!gTKPuq z(LNPRs?MNz4;Pm~%N}12Um-%dmOdX$2XS3@wB#aa@qNtpTl zWw+B=N)G5p1etS_RuY|j$V2@+LIaD)sc?woN*PUhF(j77tcn&5Xm6?@vR&>X3OWfn z6JK)cm>m!yF@_mZwa_jYaHuq8I^lR=;{5N#pkZ_IW;diyf?~S^x71n!FnqOPzSc46 zO8j8OxKj|y?$8h4oq!sFeG9H!QS(eEzs9p5cRKS>)`uNaTQzme^vJ@R&;%H3DGcBd z^Z?0?k3=-&=@)?$3{0t0I69+VDaPeIsl&hp2QP2so-*p^b)A-B(N7=3P%TBJ19@da z9_||HiOCH3DNRy>e}lL)=-v0=iQqgJn}oYZJj=N!y*Ui4vyBP6#7zK?bVfI)+#9jB zRK;A~|Ib?3xQA+`2#1b5Dwxo22_w>=R4Y@c>kAevj()ywm?ed@CDXX&;ZR)@P)Z^7 zc7Qb32Oc?gOmhRlkTLAukUH1{VJggPo9ekRTvE93!;D4kNf~xPfY+(oNLI4p+gKpgVOQxBGSNMjMR&E+!44++NMD zU2C%COz`eI6p%5@KlTpB+C3;er)w0t=EM}4F3m_eXM>C0I<*5#aCQ<$%*=Frhnb8U zbXf-xv9oqhfwg-*n9SF+SQE2}4&B8V2D=joZd6B0nNq&+X4f`iJ9A@W41pc>z{pw_ zPq0d5?-}8>NmYb6s5c;_c>HUUEOrT(^pau?j-1zQ$@LsCF~XmtOX-z7%lglo6JyUE z*kp%5binOx=*Eq;P1D%|~?1kV0~6u~S;K{o4GmO;ayHe|?07vb|FD-qur& zgUQxEA!u{SG|@sOCCxxI^|fXGz8U2!K>b_QlcJ(r%Ywdwlag573Oe&|gr#r>xT((} zV{1h+D6P>q?_R4ko3Af8#4r6#v9ORXq}gqb8<)CZ|0UY{1eLM zwtex3_DUhhlfLJWhvuk{_aQ+S*LT233b|E=NB3wRFf6>&$~PlB1`fH&rM{e|Fk#{y zpQ6)+TqI9}D|tdMBLjUec294b&H7Q=>X;7_xS(5P!aF1WTb9roy>W7PPjM!Yp4bEM zw3lhb#w5Z3oJ>oCf%z7wCCW)gt*~8!lS)9L&$70i3FZp|YDO4no!kJuE9ogXbVJ~-BQAM0_yTC zW;dmo`&&vrL;-SHurWyP>OrYER=%sHkj98TO$#H!lV`?G1H8cT;<1bVcT4gdKsUJ{ z=ORuoa}JbS&DFVDhIrbRhWQL#?toH)m67obfS|IJB21N`0cxn?>SY zycWZH?biaQGsKhdoJH4m&;xWH0Bae(F&J@vk(q8Gz;=7Pgupzxo^~l2CF5k4CXKt4 zqvv(!-Nj~pCvpv#y%NV1uFNn}wIHaTKfszc9ty+m*G6s1c+Z{|3!*dq;$l$(UoI2n zDU#ePNmI*JFy!K@S5yOIp$EQ%sg7%Uw8P4q;ZpkTdweA{luy!m=P1N}SBa0XT@R+Bk(8&oS^)|eKvv?h~^a0ZN=`D&7bZ|2f8 z;Y^}kkTl6F{kjbcDHkgE(|abpL0%(1>tmVc=7#xV)XsaUq&b4YDQjIs>IaigtP>R+ ztbh>|oDwm`z3>vlr0Sai>rTRE9Rnc~J6Gzo5qkdCf7yurIi?-DlhO7NoSeqwd8-gi zO+kC3x0S0VVBg(Pjc2Sm32Oe4EYH zCc9QlBBEBvJI@3==#?Mwu(@Xszhbb-xp4cwnMve4 zfS#SvWF3UyyyrD)aMx_$bK9#8H%+z*iqu$wm%Z_=FQ!IAo(InoXfX%%9;;)T>O>KX z$XXAn$>oDjTylN$ZoceOr%pW;M_20#T-hSsnbk*PS+o>NVWg?J$k3U`DwUX9<~5JS z2&W*a8N{o`gp_nXK3^rlw6zSTC7zV_f-`>Z_l7SAZqos_I=tGPSdOlU$U|>q{T_gI zBPv4;JwsYxOHc@r3!FG5t09bosmUd zSngoRo}vZ$eSVh62EjD<19C3}hDV)paya;30HTNXF0h4Qjo@gf%rl2Hd$OBFLu_RL z48+a%$aK&Vu8^_!?54C&fRd38uu2_}EE@ge+BY?5d|$A?F43A8i^t+H9hYa0amv!Os+7V1q_bb+pXA4S_mIYsB90|0F8 zeC|GV^V@nhD<(6lHMe;dT`Xp8-7FDZ@_KRYu`ACP?QQ2rctKK!KK8ce^~Yvuw1vAmJh-9TVZu2uk=tp_w-+1~Ns04^cKs1L^GO~ROsvD1=tl|Y zm3*b+dgTfO&pb1_^EqV7T9UG&k!)$l4GW3wloEHPk{d}vDK5SPn6JlVzN0eVtXJ|~ z>#j4(yL|6Q=K#Dw^l`+632;_DZL_ABu>-DMQ-|D!*w;5@iS4q6;(?m$26(2m_#WnN z)tT#bf1DLLyytN%5wA&Nu65QlGZk{yE)OJl-~t0zyXDpj_`IIEx%Mh4bVhpjIuS{& zlM5Xbc*y3kvvJ!ESxUrYl10?AFObXB8x^D^ch;=_j2hH8-jJcb+7!vGd&-mL4AcqG zxS4my^4aO7JPW`N1tYh`^QA|aY1TWo1B2y)GJi{@gNApm-r8IeWYoj9I5<&v#&js} zhxT$e^mUC~DZ`oy7f-Mci-)F(;IYTcx=V6nK~-pTu8f(J7P6xNr7}OY4>Gf1zz23} z=xk4ikQ129OIfwZ8avgJ@Cm^b8=p><$_lKh^rOI->u;Gccok@tu^ZTd@mErZ!Js5T zv}8^r9A48VIOfnD$vjN_1VAmig!gvH7P?baIu(9S#rJfsoAHk+p^B!W-BBaj(r$ojD&0`#ViR?JqAauPbF#HJB96Q;KnL>f$(YH zX_z~oJ%VHn5 z!#r_U3fr*+LLfWjB&Ay(zYMP`wE6fRTnH2RD0GMv(Y3Qvd;k$n^@e0ZC!fdG;90s_ zEp=Xa;^^%9{`xq^&H~nS(1HT^Ei)XL(m}=?vi+l!4i|nWz6;**S4T>d6^(oI zU^oF?k9{9ISOD+_Hr@Cf++uAqr0YdzFi%2r;%g?=x;YYD0@^`sxi@&fQ?Q&@uyG@U zh@m^4DCixd$zt?6HwKVf)zB=Sor47i8k8JBXhdQUAan9 zz!;w&J%O_Sl55IQ%zPQwm1k92U> zu1m9M*QZa#=ALS_G@lhwFe;5+%+7MblO(BN!ntuqa6EG=nBV3H-umG%)FWBQ9=(?u zR#>eQFtr- z8c~>u3om{OOT>N>Rvd%}$dtk4*R=@?JZ+0oT{xxPW{znMsBA$oOeNuX=x?3jgVWIh zOLt9r&<`P5xCSB*bJ>Qy`=c{Hoo9>*WoN{t|Cmf5j*HGt7D$pHYnGYx(q44*3`BD}_DUM*gb9*Y;uZQVtJJ)-k=I=&!!Zj++@(I)%}9;a zzOhwHWR{ZBAt0jZAa`vW70#j&HK+EsJJNO_16+pnXo-L3Z8V>YFflbQcxZHO zY`uMLZyeW^=J))HS^RbY2D-Ca$Q`DCvV zc!R)jyxweJc)T{H^=M^VaBO;Dm_!g@Tcc0&C+J_Y_dL(J_nuo_B$b)PVkWXg*2}GX z&poftdG2#R+8vLwonktxCiU~*Ut3xIepb|j$!1j#pa1^6dG!a+e*Z@=eDArkahJJE z>)G??%BI==;ra8oZrxhB^~B0#Iy}F2@#4kvyK>FB7rvKe&y_{KDSvT)ZK`HeyzujS ztDfAdpF7Wg@>k=c$uoJ_4~p03)z0(h)+cpS)Xfhz_O^?2*?|9g{#;Y+Hs|Hx|1les z`E*t^&tqWc&f{gHs@}?`#pwBSvu1Bp%*vu@&Si~zhTb}u&CX@zw0QOTb1N(7-T%ky zR^)f?G5?B(Z0Ez`Kl9?X@R;-d%b)8{Huti@D4)3r8|0&^KP{d(Clk5W`stJBUU+V{ zo!8;VWxm}M)2iMqcF(==($(X`f4rIfNB$`pv7^#!uWIH?REs zSJ~B{93TCc8~(=g<=PA1laXz=2C(LCy?%W3yFr=Fj*sqVgX5#SdDcHZ{G^e;-^;ek z>i~TBl@O!zYmkq1qqj&3JR+kU|lnv&`NAC}^2k#yqeOT$`WA~#b ztA`K&gddI;_v^BUOWv4g{d|%QkB{CPyZeuizHrakDksN>cidl^64wta_sN@!kE^Wj z9{ygPHOGfX+0NqQ)9hE)(@XK_rm33T5M&n ztYnvl#kA+%>0T^j|6T6H5wqmp@b(~n-=(^I?tJwEUi8&w(N^3{ib zsoe!1>yqv)zIC_CkKHWn93Op9WmEjUc9SiO``}&vcXWKXpKTo<9js(GAG|rv)-JAH z=(Xj-z4PNbTYN3+IGu3GWNFA3S3XQv9pP%T&%nj82=)2e7bN~AXFJEK1u;hhXn2M%y|K=B~ z5Y+CGPBdk{-4E{UefRo@&&}rTMY-sf*vL9 z#aZev_TBE2KV~_W=YStJbaN!LTe+FlIXFK0NLR*fS*L{l`JVeL*F}~9m%C@XCv3WD zn)5Aw0>=;kl&@s#?ne{{nPGQj<9_fjZ^WzI$Bw%{?}C1wyZK9*>BXlt-{2PI@GnuO zY_Bt-ASN(GlJp&i7<=I}hHh zf0&JnQIn1HW?Jp8WRKmv{CM2M|F-vC2=CJm+$tgC15ByYj!vn)>mHZayA_0DoDbcs zwFhzDO~wl+?DHGPhu;jGiu~3~c!NpyvW?vbeQB2uQ-1?GAR8`j?`6|G?2MT#9u(#r zGDA^x&l6j4r}CQM$+fH&@pU2@c5}HnaH@RBg&)W#x{X$K$|Tcd@N-F{(Zb#>KE#cd~b$A@3?E8XtD?<7n<(mm*l zf!d|UJ?_mp^k2|RPd(AY4huTM-HOj~^E&Ry4jgou0Dgz;l!2&E8O$9w?@q0`sZ%*~ zx4BWNc}>)fKC2NsJH(f5PBO7+`%t<^@2j}var^AbKyaT^M0_U4wm1}paOA$%{qzqj z*)^z^(fs)Eeys`t``LZEylI@3Vp&Ivub}6S-mZc|4vP-6FkBq)h3~gM-ObSFVRUXF zCtFx2sV|FQx##_%hDv$3ACx^upti(_CbXPx85KK>$NC`I*i9LJszUg1zru8s*{+Op zaVW3Jv&DT8P`_XzI#XG7x98pJ&Sf>e8Lwooh@+#Pgv=pcyYHq$?2(RY=lJk5x0Y_q zDrS9I;pyV@Jn?z@BCmZBGnsq$3B4e**dL+Jjv)G+N}$=$Et^#Z@R?LM~5Y0B=1O^}z@LvaAy#<)9|iN2q` zHs6yGyRDaFA`TDS?{{QYl1b-VI65bBUk>EY4|Ei?i9`8*UA3|30%*Sj>ZgxnQB+a& z?t?Ih1IxV-+EQIv-rBwN7X^yP8K3&&_(J)K=)t{ z`l35_7YDi1d6*4(gPWs0wO8)C~O|iW^q8!(F*Q_Hrt^r17fa{item?{dL(OQ^Zu z74JoiK{FK*b(efH2)99uZX6$d>lEhVK<^*4yal(IWibibq7^29FbEy7UiJbpsj=93(iDJMm!+xWI=!+6ns}OaY`WHcA#=EwvTy>83@9LrG zMS1VH+oHSOQmte!PgKHdJku#T_r#+yHSCpXUTxAtUn+*_Lhq@dutYL?;X&%o_MJN; zN>z3OBx(c?S-$S>UN(kc4aEk(8ecPsXW{kBuL%m$bE7EjYTEs!tP8Ntm3R8Fx?aC(@*?YCtsTSj&X>{N%&?cpKjP0e6lI-QZ7TB|c1yy;HI8RWXv4xqKH6@;?1u z`8*iW8X_-`a-p*LB_b)&8$9|$l`a14V&#?WMLr@}S}f8`J`(bPrH2IX+57Lhmx_|2 z)tCJb?G)Woe0YCxXX3PZP=h=45aCul-AiOO4j@-2QM_FZ_6E`Mkx%}Ban_b*CFJQd z2?iT3M>9v>&CU96-0JclH&lJYn%1;hKA^Vmp$c$uqO+*4>d^BKyZ}BShih6GWpYp8>Vg3#LfM zt)Z}(0Z5o8$-Fbr(#Eh6?uMQd*6dPU=h@4Ha+GgxP0CTv1hRK&iWw`D0$kw9A^r&*Yy=_RVT9S3g77f?kcN?P3L zo?jsSe)(kR2KY%G?uP6UbtR$?v>Z`$xsZbxLkYlVlBCt*TeXI2zz{gf${<)Dl)>+k zZ{;<^Di;+BxMV5zpvx!HGRpI@cwnp;mmWMnC&|N^`y>?mh1Un$FELzwAc%$e;dusGF}qv@j+!Aj(E2Y8aZJ%p3S-X8!L$%(&pM3 zfQg{{g#g}*V49WI!R}~W;rD_n#~~ydW6^0aiINxd>9nem-4~ODw6hCwvKbxLcSMhV zJcsJIoYz$`%5JR0n=k<9&JO&mB)kwuP!j=g0(Kbji92hZiq$7pvc-Q_XL3qMp<{q; zMK9s)G}qX)GofJ80~#wdsy3K(#O|9x@-So7R>8Sv{vCFEi+e9t0YtKqGnM(bL+*uvD@*fdO)QG^5=HIo_Y=@%HxT`OH_XPOze9< zt6MgaJB@Qgt;}Q%18d1@Vxig!BY9Pva)~dgMUv#xSo3=tbNl zg_1okE`&^TrMc7<^QII0%JzLSr6P_fX3X+QX737vpa+RfyaP|)`{|`T)5H~cmKHwj zlkje=d`uglY*wSp(v=z*FsP#C^J)_cm5~z%OowBtQL8sEi8>iA>*5{Erjw$|3a^j# z>0!x+y)WBszfoy<5lf*m@vHe@ki+@AS?uJSxpzgFC$ifuL3l*#s!GVDlNh-X&+QUo2gpgrl&qC^4jf^tHr3QdodLvzuS=_0jovp`E)Yc zV}^CW*+b6Ya=ue-X4i`yw+Z8pNkWO1z`&y&p?t)dek;2HCAp#bZiJAVru?G$hcR-% zn(Yv25qGHalOe_P?4^7(8Rt_O?x=coGOerJCm|P~kG&)5w}s{pV(F*7esmIPoT)Vg zZqaL1$;1O>uKTrlF6->R54$EUQ=MLpjLIgKA-IV-2kk6vGnJ^#IgeCo6r3MQ1b!_l z82A`=EqbOp5z==sF8(c{$YLgj+f8!D#`#Yyw5*2loYg~Zt&SKiZ))wLQME8?+magM zFMpYBhLV)L+MA|#G-tFVH1KoyX-EJyQef10jCOS>Qz1%uC#)-n;6@`Uh(}wTw)7{H zpqn@Pjqpo+pd)koB|eA+0%TJM5BE9!UL?i1bY$){S$DDsJ$>$l|B$)=J6#oYOEaeU z`%)^&+iAT#kuGRc zEQGPoEYmwz)?4PVvORT+@a!F=nDW}AChL=?-uuZIixy@4Y@HteCc)^ltD53E;Wdd} zi(!qiEn?G`?@N5HZWYRSGSq*=)gk5TwIlpYn{f#n_2p_%jhw%aYPp-aE7g2fY;RZD zOI7~sU#mlDl#9vrsKE$E&y1aGz%T{_ikGez(_)4ToZ)pd>zrnFA9~Ab{uk9~ROMsm zXiR5=vKV!s4AQ~CNJ$=5=3pN>=N)UT%or1}r$7q5Ys++-8FD^ris{6;ELbR(4K;6g zJ#VxKMW_I-r+JO$LvCZ@7mti`_eO9|TLwq2q!XItGzWe=C5b^ra*EgBCp&C(eEP|5 z$?2dB`u=c-vdoH@^+?u$o$K00 z9Xn?wdqv^3vIs_r$s@&(cwnlZa&>i}o2@}wfuqKZQglUZ%6oZ4yDZgmB&{$sSf+rp z1mtg|kO}05k3RFz!&IAS=w1S%k)jOS&RL3(ZtE1yQZimip{?0E0<1KpqNQG-JctsI zoR!_jtV2*6!)Co13vMjpNphU!t(FQvB&G$f0XK_R>u?)W$i9K5w7(euWmMrl85nRw zr^5bHjh0w2`o3Rz4T4b4pbU|y=o@TAh=fjXT8Ah^UvV5ZTM( zT01YJefulHvo?hyU$fkl>iG#UJkOk1gs!O6 zSQ9nXs!l1HKN%D!k1}sii-f))00KgIDeE#_{FD3N$1y{hLdv^mYwTNI+^X4iI6afB zXwYE(YpsSle--h(2+aL4l+15z(@H3iNp4|E2!mUtF9ZktdFQZCQVYrR2#ZNHfV^M= zJmSp&PEZHr?dq=x?lfpmm)^SZvhvA@ZP*^L6nSOPVVg2V58f3Nb9^S|EkX8TQdziF z>+Uh`L7al~3!CTRSP?cZ9<#x91>mLIrxS~<;&O?TY^!Cbjr6pl1XBU(a;L3@h$tFB zqExAui#vPNPMTqCp!L}g+)_0QW!slV{G1beYvJ6n5XEq&Vq9J~q_Q(j_{Byhi z!vM}u00TRPRwU}-L@cME^3+$=Rcs+OV|c>U_ag<`S7p8ge3YbzmfJXO&So(2%ZDyI zX##-5#i}M_X~7HzT&`&P?T{&@ii?Ig=6seQS@8)_;V6SC1Xi08#AL)aPiPO+@Hx%C zh~w1s{~mjb?7eLl3m%AFT*(%12l=_U`tO&pfhC{;1PJWr+AgJvF6@Af06*4(5TU`e zEt(d;?SkML(qIhT2!oeu2SJs@)WUhI_>YJ$mUK2hI!-;_yDVuUo{~ohqNyW7?SO!c z(CpWWFp}*GnUB*Il`=*ZA0Jj^uO%8|HMv|vW{e&LaIft@SzBEdE4ej3kC`AuD|@*q zc8WUt+03noDJ?+XqYvz-MU%ZWoovrX(x2`=?tZo-2r}u-M1m{6-OPsjdcgD>Uxbid zwJlGio=EcLT^_-5GY*mf&a0CIp?;`nOsPDi8cP$9?L7b5YDD6|5|4E_CdbdM#XcNu zLI6ll(wFMB5;%-^sN)%fTxXGYWcHj3C)*%qLWut#x!0Ad*muQ!2iX2&?;?1VkR4+Z z?dEhOKB&~;&=%RHh6`Ph%_`!4mp?2fTn4EbvNA(0SC{!bD3G{zYG^sr*c>PYjaX`E zm4LE!_ASK9O4$ktzs&j^u1G@buX2wHPTsPp~KHru-LIxQj}|% zhsO9myvVyD1e=FDTg8j+)cR@r@|xY&ZM+^ZE6AhLaXYQ8*tsNQuLFaJjY}l3{!Q(B z27IWp3}+)72R_(uaFe0q%*7@5!1<50p|BUzyjl1aN{B z5H-3_34izc`!ieR7HWuqB%}useRbymiHZncZ=sA@satvcbljikUb&L?5+GRC4p8jN z7GQy09|omJJ=dKn>2cuR_@+>$fb7~8cN@>`Er3x0a zgyvX$m=<+Ax+`RFztjc!y`GOJb(3A5l*P0WdG10yC*>_CrO1`8U3_M>m;E9iHEv!n zjdt>B@oV+5feKvW&w!Lhnh3llG$X$_X_|a6a1m0GU6~ZqVbN1vm9z}~eB7T_+PKU9 zl`HdpznZYrh8gV8C);I6-LT2!9>c14+#n@0s|CFrh`tZDv)G1jxDyP-7}JSKc&TK6 z;#AskA~Qnxy?7vRIn6Oflkn|5O|U2N>dWeV+0xwdgCF%J{Gb+qrs z8a$o$UI)w6Q?4RXO^qfR%_Lb}+aBX{c2w5*SEKH%Pn9uvkVn4b10`W8@ZiJj(oQiF zsoAC?kw3hmLw>;M6u*R)Ur1Hbrl^sp$K!THq&^WFs-Wm&i`s`3Qw!QrZc=;iGo^Mn zPdbUa(RiKQKL4+%eQww~qmqV!=7ei!zB5#Q{?7_Vyqbsb zuIIAbSm5{~yB0D;dy2CedB&1!Q=!32ArV*ir1-SIjXcsf1G%Q!ELs;m_&v(L3~s&i zA!HO`r2EW2b6ws$C?@k+>$#VJX-H{@+=875ap=0PpEI@vzf zYz>pv7$bq}Wj-Ahv+Vj_F&ae)^%bdB-5pE=ZbF2g0|{6Az6itjZLS0THGR7zOOot; z<7Y@>5<7~Upi6biR??6@7GN~478#+E&TQ9V@G|`e=6gPo9&!>vhYaOE7H{g6!g607 zjgUz*YYh-a*Y==HGFwD7{*n@2B=rom&T8Sos2k%oYg$AyQ>2=ctz(-6&L}29X9|nP z7=4`Lv_%t|k_Fw>rlp?80|?{=KlTOA(t`rULS3J`ctW4mvmQZ&WLPwPtN*bTJT=pN z;`QjwNxvAagkj2CM{_r%5Tr}RL=yX&H%a zjPtNg1{P#+t+sTt{2U1~r;vy#J4uk34j&iLo}o>Xokk*Z)wGf@`tRI-H>>&h?<22R z1HT+75pMP6n%5A^Z_~pJPkH5zcyr16JVu|`qLVQc9YjYgsQe02q28S<&{(3R1au-9 zNC75)l+7Lry+B?)eyRZ72veN&PjF+{%?jaEAAO_cqu-hq^`OXJET&t#PnET2xaKaqa0hgqR@f;=BGnhC>0)W!@>Fzs7~v&KjuaDoIQkYpa&{>k=& z=#J2>Q{7q2WubgkNgl2Hm(GX(eINRedC6|l8RgYld`0$xI#Xm*qScTkCFEYZPa6VH zm;r`M)i?t+%*W$g=V_W-58eBmS`L&;wvC}e0KQd9=)iiSvC&+E#Q4F3+?0H&ce3ov zSY9pxg}G3{X2Dxw6ybGVWJU93gXs^nXA*Sf2XP)W7n8_DmKg!3n!dgQ?z~%MKy&ozd&W7aLB4T&&KqFa_U7Vh> zPGwN7;IQ;OA7W=o+B5-wnI{QE!a>WPij(9}*$!2wpC5{fwm(?L&7zAah%|$+?a5!@ z)6?2m*GZvWe$aebN!{ZkknS+NtHUyqGI=KCsVC!eQiO;E6qqHng)esGRbcDWhx#qC zyoc1Ma98e+Gl3y``r5_Wv@BO;j;9I)bQW76dPHP^5Jnk(6b@*RPhVGH#O1P_)T~AS z)i;*!cuvGgKyO_DS;|JBM)Rh{Id(C+xQ~S%lmYMgyUb(jS@WAP!3o73h{u%QfRsJR z;jj*OZ1_^0_>H|3Nm&GqViwfakay4sRsea3;{%-^XnzL~w}CiO^jmfahqqKG=#zGz zj3^CEs%uXu7~#pML|_knSMr55KeDG&o*T{o2IjWU<~mC|>{s636ABjgAOJEYKT)Qo zuz(jXJju7E&)(ERDapA!PY%UNIydi})gyK-UfRVuN&Y&7p#6LaH>)falyhwUx?~gb zRawBG`GeOJ^*I%}S8-kl=w?0PyjactbKh$PICNcS8_{;?oEy@Ko>7xauFqBH!Uzjg z?Bsx~sq}d&r6CJ%&wQ%;0o-=#f&nX&#8SS%asr$9 z{eH-SmP*MWS&=<;0FXd$zmq*}G{J}fU`UCkIhzGgltoGvKTzM(*{0}IByqhclRV}@ z(iA02MiQZGEi)`Os}zR5Sbn36wj9D3A`;t*w^ZiQELv@5wZnWETnF6~>Iu26+m+sZNf2MTb0Gy7 zR!_!zl8^L3sYzI2@LE9bBcAa^d&X*n#2z31lT-v{i&VAY=#=q1PV9jph6b*>Z76J_ zr=!P?SN+Yjo;BIxe{5G<>f-`l72-f_q$WuT^|Gtd;J=yud|H6rhkIe9Uc{$$$SyG# zS&IBB*IsNHQqZzSB$4O$J^u3##3XW&H6%sp-LhVEJyhw(p6-Pmhw}%-Oe{0}{A^kb z1)6tbCHsYo!U`98&-+FFYB8Gi5-$x4uv2-LkqM0M>ithA^J$%rvdOE`=~ztaW-^)# z_gKpB=v5~;W#l1jA!n&xWoooNr<|&Sj+}7Zd@(yLbD;ap{ZJ?gHC@czMwJs1Its=i zD@e?_N>SjhTq-pZ=MleOov=>AwA^!(d8^pVe(Hja+5SQW$)b`;~-GqLksc zSZEzTcS)|jFqexv$WBz_?CNAR+PgKGZ1T%y&?Gvqfye!QUOVter7n3TbqSQ!-!;(0 zn^@x?c3%CmvmGF?kQ@HKMK;@W4jE|gunIILPmx^tyVw8m1eSMAp^}0*Sji)1On1^2 z&05KGJjt2ciiepbeE!|zv4iAGsWyy3X=m7yHWiHlsk&O!)4lA+lX^23PpNUAS7g6% zliACz<KBwtkp0Oep6@KHYPCtN*qG8nO#X|IE4s`=Ue*(i#Rlzau@0M zRWi}kpXp?H2R&$Gg94N>k?P;YsBtAAIy24bpfPqR=N3>2pFtDEIE&P`aL^EBt(yqh z!dzMuAV)DQ+!TUC9-|>RW2L8}8P{}NXs1ncQyxo2dMo*C);s01d(7#DJENOOGF}QBXq3KnDUp%JUbamoO9$vBsAAC zG&ZaTv24r?*@3D_4W9tjA4BrG^YX z3rr#4flK1sj7*yasfEP4OIrXDmbvcvl0x@JYl%Z42-PSiDWNsbO0J|B>w|W{<_T=I z4@>k4q$q5~g!?)75OgLcQL;}%qd-WYk%_!!3|cwr7xl0#^`X^*7Q(JsQq`J9KQbTD z_mz8bX#P^Spjl!hmcK!>ElP$Jnz&;7y~(7K84=kfUL#})skpZ)xDt9P+mMoZb`g-Z z&azVup$^ht-xCY8gLG+>p8E$mQwcul%$p!5xQA~GpZX)PTC}8@+?jc$lxhM%uWZ`u z%)M?;^n>0O>vFJd2G(xlJV6I=csPMWiNL?qHbgyjr0NC5fF(;QL|Vb0B@#jQI_9TZ z*iaW4foE4h56(o0b^+bD`dnm@MB)4Nu*ZXz1?gPO#5;U6E*(D(t?l_99xuuvTj|Mp zL)tRQq%ci7L4WJlQ~13$*S`_%LEOr6_P2>c5S>P*kuvFARBWi$H`L!!oQm zUH(74SU*HJcXIH}j+Q4Piv2F~nt!Onj)XhILnT^KN@&2_HJ@njMWgh-5)-F6;>cz6 zTOceBD|Sg}2A{DyTOQM%`**-qGxt|IXYA3Z^$9g7eFH0DNElp}Tq*=Mi5TcZD>QGCg+8UG$qH6?gto-$zW7SL0&|~9w zA;C;9uC!@DYNMrNGqEdiSYF=#M_H< zk(=Y>fCB`G(yrh{drP&oPgG5u3L$whH1G(0Wt06G_pwa(n|V6>%pKO@O$jLpwOAiI zUWR^W9B}9Ua6dg>(4Rh-;>&AbqS~3B^!>}sJa8ms+53}m+pFR6c!xqlSm({WKgqah z<9Q7-k;-RX$SD8i4WEzqOSg%UkYo4Cv?yvRhx&A(r%RL9iHD-7bAGhaBG`b>bb~1N zCZV^b6v(1;7rzm%*S#tRoW+(AYRFq5`|=a=d5A zj7*D$IpRA}tM=SHtLIr_^^<>a1~^u7kFn=%V>-FjpH`d0A~Q^Y=qBd)O<{KNm4X?D zoPYM?1S}Uw)gJB#=mu(3dJqA(utFtGk~3v7=&*O-ZPePGC~iUZjTig6*&p&RP@2`T zc;hjX3OMy;Uu*}|k(p_2?N>KWPL|X<$kexHDJD0ZeyPct18gptjVc*P=(9CI0OjEy zB$zJC65*2yp^w|2GJ|~;;7K0Sixe)Fb;pp2e92rq(AeUy&V=&*G~xbRr)w_No5j>` zlNZr>_KT|d^;VGxO6-f#y~%zNcTR%ZIJi|-wPoVUUtNi|(T8AVDcq~Dz6(WYK6+@^x5l#w2>m-JgTBwGNv5yCHo`uvy@Exi( zHvj06cScVs^EbyWlDobYsZAv; z_F1_rlX;d4fm8#HJUthtIVDu2Ek zhr;trSUeSpw}hMs#Rt*Hx>>@AWUx<2(e%~ktZX=!O+i}98hCroU|uO&a9kn}_*3Ck zT;GTkp=_x;@!5y!Xz#7SGMg9l{6QJ9uTeLf(viV)N!AEPCUuH=?p51bfHg{4BzAK_ zgWj%{(Nks~^#Xj9%CUhgpH-XXD$&!q7Be6%r5g|9CWx!i*vZMnS-0N6Nz`uk48vDK zsS^rDOnTPIwu8XOccv@nF8S@4=3Ts3M!b?BI$LihF9F;o0)W0CjD{Xc9HhsDCg@#G z-*Rx1oXuh~)usx@y7tGKnHAI=;M2N+%w!Zp*pfyAAm ze(qCbPq7GpWmMG8^ZRwt@TivcmF)V8i&sXY@nl-)(*&5AtbdY^P<$ldTqhr&r|vq~ z7?w^eJtd2_oH!K*lK4iHnt6V#TT1fKNy6-~@wAp?Bh_GCZt)o$I-Xos=!iie%f{mF zsXOy|SbFg62AX#zJ3r-wmo%m3XGNzXVGUCpyVJy~G?U}CaM>4kS0--k~c`c$|%>k+?M$tZrx!LZRS3-3?Y#0S#+lACe z>pFIjU>Fqd^4I904;>=^2*>Gicw$s1@FI5P&s1qr%PLtN>W-aicpB)z4{T1imCfzN zZGw|*V>`K&MH?>M3X3&wp#SQvNY+meSl5Ay(32AwmP01b2wo zf0?++roWfY8W;cQYk!cSTm-*ZJhLTjO3hkfu*YU+Cpu%?CO9)kS*N%WAMYAIPjQf&!uzr*mR<0=*Ztv?k4DnwT-~|Cc-1WwDr4;l3gnXyK(VQT zw|CS0iE?x*%Luh=zXQ#P$_9W}on?pC%gFSbAhp;I7<#Z8F_(dk;v_7S!N`XgBRy$U zgjP;CY#mmV+jBeO)wuGa$|Aa)qFOQMm&G38L=7lb*izF3ziUf#8hJQYPiZ1f;DF!B zJ=uzL*F7pkTnf7KP679{|5=Y(f{u>eBv!qm&)#Kly zAo14N%Z-u>`8d0+B;r|%n!?vJg72uxX=5Qv9MQ?jhxV?y5Mk=3GuHyIx?dsZK1_1) z;u$X?q&BAB(nW`WTuEc+bAp>E2YzpmZRE}$Pq-V?PzjzTL33I@J&xyjB#|4qJbg+} z2MuRc%0{Lzuh?qo zjX3ZQz%@BnYo1-7*ZEXJnAvtQXyjySeI(u{z9x&Kt~QR~>V5%3&opjD;ON^;&1o(al~FkT*hNuj zc}$W@;zdw3NadDH%96ozR`1hs5S(y!%?>F~oyu;sckl52K=~~hI3jn(f<4ZZG!A?R zoP$^{ZNy_SCV-#;7}fkJA8 zGEOWRM<}mA7M-&edzo+V!HZ7CO#v??umFp6a8k)&U=_Q)ps0lJ})Typ2;PkPD&PN4qJ*{$!wr z+-rk`HX24tHf=_qemU{A6RmWp~gFia{iJ$3R>j-AbY>gme? z9m})Qus0|yWW=y8YSc|2VG0cynDn#`sagkqGTdn4*wB5u>%!4q(wr;`B0cQP<3*BN zIHD=Zsnm^<#f#$t6fF;kD9cW|%s87guttJJ(;Dl~r&x}%2*3`!wVlmDmY-uB(t}x- zkxq%7w_IMbF9+4&P;taKhB^}UlyUmZO?t`}J%Y1t) z=zjs9zLC-v3k`T9OlQ5gr>8#P?xedz{nfrOq3srw?Cq88Qko(pO=EJgwkgMb)b#jx zzHPxoLbS9{K1}0=5{=ZH?5BusW@U#$!pe>he#s4Rtr+c8^%(@{RE%q@K^@vxE(M~k zV{p}?PiQu`BG%+Iy}y)b@T`^bv>Bov{W&f2t;jDJ^W6(QG?GJSyz#y!n?N`zMKo@y zr1y!i&*%Z76-?2GeXK+{1T1>2_w)aMT;_jN#`x@72*J1_fQxWRv&Yu1J)Sa)`t@46 zW4##7s`<>_@_+ucPExK__czZ5%AIuKnJ0Q{PhXS6CN4kzR}g~VFqYfvR)vL~y!@%F zfF)};B^ilJxrEu&C&8%gWN`Xa`g`ic>DTauI>(;W*X3@kWG^E2Z^)R|F~mO93@V^# z_Kx@rP3uHf1%GCns63}!*Yrf5z8MnVT3qDTSo7DI7TJV=NklQP)waCzJ$Aa5qoOh!Y#XC-?X8^b?U5QV5G;X7ZO z3q7TFJdEw|2iheVfJ0}XTzjkuX<@$PLk%=E_Gl-#8&F4O{3_X zs|bi$ISNY6QgGwo~oz2pSM z5Q=>==0Vev8migsOaCibED!n%l49NW(_>0PianUP@`RRA02`)%kab7z%jKfpiG8k@ z3%3@PyF(I?HE|QWtP{W{Z1zwYD~EIjy|b+_C%{C3v9Yj;}e5ciN3K3o;A!nP?_6S^{x3ek{GS6 zJO#~X{3}_u+_I?Tu+4u-xR8sxiYN z8daKe&ts=cg8U8sVpJAwZ_}S9>1T)P3S~reahWiKfODxjHRil;Eh}mi?xxOn6lyYS zi$++Ko1i@;B#G%#zFjGMlI|?LYzomQ_OD@gC%iVsnvrh68>@zSTYj>$>3X(t((~5W zLWE$5c5^515u3}MZxpV;C2xxtU+6=nlmWGFEcw#Wk7%SUm9r3CAf?dXChlTgA%FzkkFy{9l$hO~mJlp>D4{h@amhZ>_8DfF9u3NxlU7JVR8 z@VnaXciPUKO|nZ4JOvX1yD|1*2C^tsr{uiuzvJ6^V(#;Tn1t=<_lN90p)Tf5pzu1eql1+mBVlkcO0Icfb#*PR zuC@<;gRQ?xdK~VoL8N$o%ba47`Ex7Mvk^QED2gKG;?t2jCh1XNY-TxVd=kE8=&o&W zw^$Hc4Q?zq0aRC`VjO^QYctDNKE$0Lp>b;2i8O)4fX=C!6I}#myeeJ zw}*e1i#vPT4x0oo;iyTDBxtyPXoo?q{&VnyDP>*vrag0hMhtNSA*aKwlnA8Wq2<=vZ^Iz zp5o4?p0`V-_(E$RLpkP%0%vU}HV)1mA;R#i$y(cW>80s79~PUNlNv;|;k-NBy<|>S zj?$(pUMINdsBg*XQu@Aj1%{YVF#%){nna2)I^{;JNx{Tl^K|;S9!jthy)_qN3ox+G zp6UgZ4_Z?gjJF7%U@pB|&^q|zAsIn2rTV4w(HxY*$NvNS| z7@KNaUg-eG;;gGV_=Yy?N>7OOKH3SUQrqgP~*FBg#)wl|eV^h`ZII zo&@5fq@z!2RbTdGvxH9GCweu+w6_{}_QX1Ta;SR;bd1QcaC?N?k%@{`Za`fP``xqOEI48!FadxFBr$Po#VtLaUbHW+Z$8BbQZBOV~)b- zaxJqx>Jn*f^$#u!<=PxEZFXBcq~2R*Ypp%#ufyQm11oS)J>2z(T{TO@75Hlo9}gZU zkoDfX*8}R+m;~qD)0zS*=;U?`stIS{w4qA61X6q5zh&-CkBJ0MlzVTkAixm4dFQJEWNj@WT|{{4YQuGkHm7bC+(W$m2W$Tk0^_y zVDOeJmVit`9FDY8M^F}=)#wk~m5pIP;9FMBr{H2*2i13#;+%crM%jKX>x7OnucVZteK*dt8p1V_tuifeG=gGMd5`2{|!xkNf^ z;tBVPbV{&5DWAFGyWJ{VZUO@pJiAN(woR?HWRvaCr(@S7xq_A|0Z*x*%U^|;h>1EX z({^*YY-YSJX~sTlf-GYhY9y`mTF?4m%^$0NhgP%G3s)GhRNRLbg=|aO8>u{QA*MdM1Lw3B?8MWpJsu3LsMYL zhXIh68DXBO;UN-QTQL||2Kcd35|1Ue3Ca#2idlyQivTkqf1JLhD-WcF>{4sQim#`; zWiABo19Z|-8OtMfQ6jbU;w_LMQiBv0a=uK|W&bcLLpu}+X{84_vPRfMMH@+EIIQL= zZAYF)cAC0VMsyTF(XYurca(9_P%#DgyZTWHYkneI{m_iLFLh0E#L*QUoJ&pX$fnf@ zhU89UNMW_e5^m9%=^Nz0NsQbWTkth zT>^G>)$?-R&+nY`^iQ|SNwPVb&5OEv<|pgDwVx!TYETc0YW&Pk7R~RTJpYrQUi{J1 zdE*{)k5=<%j^#}=ed@%CS6_X#_v)!$JsY1`zi{Egi7k5O*u@_u$G?FP{2%Apv>DBcYB<_Dc5(gm(Oa%P14NvclVO3#l|SPS=Y0?7|q=iSv7Y5ERrUt9}kyb zx#wtw<^JA#O|p?MlFj|SF9&$nJMP)R{@&Y(d((rG{<$+v_V+$aruowC?9uJz*Y1gH zqy8+LZ)BO6DY>urk{9y=%X(#z z$xmO!Cv*2t_sZqN5#E?I`+J`z{r$ar zMKV}^w9VJRTdn9HZt-`M#%;fJ|34Yk{Hv`|iM2oIB{y>VqI_=oS*hQgxPx|2yf;ne z?v}Bz{k^*b_pRN#wOhaYA3e>%a%YeydA+<-xu4KqyVLwwH|Y4uz4()4T)4-Qs;*LA zlz$_g+vjuzkKHkpkH5&0YJc||_XqA>I}M)8XrJ%X(YZbLo<1=>kgQ(hyQv&$evrz_ z+^-(WVm6m|h$cX$1MD%7LcV;68{MVf3~{k|@B@0E(3(4K5SA?65r|u1UhMDPsz5Q9 z_IE!YBv<$MzI{r*=r;F`BL@E909Va-GNb1kN6+q7tMT&d0zYt{*nKd?<-Fl2yml-8 znr`4W_L59$+5i#ldu|<@?%5{!{p25oiv#_hDwvo-sbnO z{bzCm8*&S}i`Tur;AIh0eb*%OY$5BX1G!t$Hr^s8e~|3&-mmB!Yj<=tQNcJ_Kk2qZ zhp=E?ZDzdR)ctzl-ZDrw_V>PN@$J>39*im?KzGCiJ@L?y?49k@a~jdXmu1Ab%C3Fd z-Po}z&Vf11t;xOMA#UsO7s>U}Y*dX$O(E1c$d?~2l9wF=y3@Y1omAO&FS$0x4Lh31 zBI-Zzu=_+8o6Bztm38>IyRcd9KE7LsG@R47m}XCvz2qhY1kPEA4pcgDbV;iosiVmNsM-S>yj<}|~P4xnt0CLn-GGBOFrq2{u-DNCpv!G*-nBv)a z{<~~4amVI%oY$HACaIXawfWUTcn?C7LJ}E$%rs$vn)Uw_u!a*|9+9OtR$kL zo2Av__=T4a<6 zix}fd2V+>iuINx-_jEx*dUN?12`I3x95Ef>OwE|R+w?W}pLYv+{!TcL1_lZlM2;46 zwi4XS3)PQwsAO5Fp8JZ(X!(CcTloiw8^KI}AU+j78L@O3I7T>I8q0+>f?IK<=RnxB z+_%_n`Z&W29p!<-4i!egws=W97+2p`Mxp)iQt3Pebivsp;r(3j(?^=~&ve}4lqijV1?PRZjG03T0m z7}A9iNjT1Sa_CF?&E6k`A00P+R*~v?m~4^!p;L6saLsLV5iQdjY5rcom!xaI=`xo5 z?&v?117&M$yBXU_PQ9!5ou*F@*F&_%J8rUV z5^ArnSliGUOZSC=+uL}5_v1?LY4ErEEVGhfAurj;vjTReJ58s%A3$_CcJn*&=0{Fv zK~Fa`QZi(4vUp|tfnN6xuZ?aHXItgYz=4?{ve6xpQ#~XT`?XSj_g)Vp?;Cu$dv7xX zrODRve#1wx0bc?JU=9r~YL6xS1RImnCaFvYwfpw;V4eWM@9+KZl(y+;s9cZ$X;F3t zE~j(GpFGgMm zt>MeeHndAN)JV@^$I~1_j|3zMN2mlVM3tOz)5NXOlNmR_^u-%x>=&vYMe1wf`{m%Vq98|Z`i%5#;n`uJ-CEOo`bCD$?wFTrAvsosep|w zn|8A1bJ#b#A1~OQBa&EbbE4{-zP3(33qp(=Ey`s86*dYU6pN}C~+e6GthwB%#>)C%zj~`3bq&m z4$B9gFJ4(V`J@7X+^ac%jIW+pkF^;6PJY6cl>UZJBRFS6C{gx0NGOY)B}_gi;n~RF zvl?-1^Gz8v8y(&^jaL`D_ZMQ*E_ce5h>T8;bmVPyK!vmB?rW)dKF)-LEl&c6t|WL; zL)z9D_Aa6nB&>?WSqr*j5Z)DYJ`D$MnD*&(g&xNF@)IJYyDg(hl)QV3EVhDtaX++I zKPD1l5#n{y4j;X9W92K~DOrh{gi#pF=P{5##n0R$AG3Y51Jm#=J)3a4EJpD(e0R6Cd((tJH;`KaS$+)9&b#7b zO-QqPMA5_H{)0fEZPR!7L^W}w!)@1FrhR_wgyM#cHs)M zy>U%Wk$x5FvzB`w8)KrOgzBJ#CeW8Rpa6uE*|-cLtnWAkRhf7XUJEO;$>E_R8UmS1 zzVj^8C=hnboH@y07dT7KIfUxlg4-|G<%l`=*?-Tr!nJm7-Nt~jLaB|G`T0O(Y7@e9 z&_NtuB3AcW*RAj_Ns(qZaW;?R>DCi=J#9sFP_?lWKUKcb3Rbl_Y36``In0_XfbI;FTQR@&g|I(Z1(}VU~+UG+`4>2>s#@3 zm=-IFwrE_%1U>m$FU=O!C|f-Fi)_{}hT~Cc@-z*O)BPF?=_S`mU~TY;v7N>%5H-WP z9^Bm=9Pe!foFm~DVi<1e_v~V)`2txOV{6l6uPnA5#eE&edl6IoQ2*twO)qF1U7SR+ zdAzP&VyAx*-K&cbn%hP;J-n-%)C zCqj1*S@vX^@k*5jOWeuW9+(yXDJar9bz}O_EQ@my-u-ub=&h}-v5n4OfRO4XFF{tB z%NUSyAQt^rq788jA$pS@zKHTSN=+`%!E!LfZSvC!YMqps53^TCht>bb0#b{V$gf9} zN&V`)sjJbU;#@3mr?`ZZC^N)6A*+yOqC|&C7!2JK{{s{1MQoDKcpebw;! zl1}31^=xSDF)&{3WD@HUa5FIrjIO?O?5@@Q(L{4v94CULC8^;Fm{h@_y@4Au3I#bK zqEcwG{7b>&w^2);4r}?>z$DnFgtgg&L0ZSr&AkDv@IpAQ&+#X+*`x13S?f7DVfoO} zQ%wn*T_3(G+1auQx@M+EC4CY316Ui($j0gTpdjdz9j4vunum!FO z=FY=x#4Y`(6a}oR|7`EnIVV|CHVZOq@W5c)%HrIcq^T*X;*4Lncp*s+ZBhDC6Ci4n zk2SFrmJlsXW3hKtAc2&|tXHz6PqzcY-;R?ZTk(!D>)8n)Og=Y!o8QTZ2+3in9PQ&yX!(PTWA;y4$OHzC>Ay|<*wt9o#K_CsMBj}rBYB#vKnM3vr4$R zsPcBUtHDQ_Mz7?x%A>?~h@R*>mpiHDBxYmDQa;#*BB?cUw|2G@ zJmmNJ!fZ6js$rV^s+T<1OMW>SIy*F#lbkGf2P-jfx*51;k8an|Tg75FmZ6%Iaty>K z&o8oORA!Sb#5HYbPUF4!fOw#Dm>*#J4I~JB{wCsBJzcR`kODb~DrQK#L0nW4?`iUp zidu?3r9PYuJPP>2QSdiY6*4N7LA~ne7Mg(3i>1_!_^sO#-JCCA)2$c*B+7fqC5gGh zbs-76a(R_-gTKPdv)Z|iS(-ds4QIu_XUWw%uV?jU@#w8$@b}kKO~iHFW1kLdAqhXR zTyP;BH}`MZcsAg8R$7S4PW#gG@eYEMJ*SsIvfi(y z8y5L+>Z~C%BWnYy;*ZWyy9z@fO}(-ZeQ5(P8ec zIeG6vUqW|QNn*nhRgtP{T_cOz1Fx<_u&4eqIy4QF6Gt&FyAA)Yo>hffU@Vz@iZ)N? zH6T9uVPxXtC5s+~XWn8b(>WHC(Ht&DGn(N>E{&?%DV%0h^+z*zOT<1%6^St**Wrls$;@{M!p}-WBCZ+jJ`J3<@S;%F6WDF2t3$l zt7{s=e5SYf-@J4nWNCwL6q(A~l_u5Nh=w849Ks}s2D0TZBF=A=Q@KQolLe(H`R~== zxq;^{D?AK0)jNJDRKUMkuPUHTkqOONg3L3-o)DViZ{KLxAOZTo~t zWx;?Z?+}OB2NEk~&EsfMNlh0Z*_{vqMyS`wU$^LSzPvB6KS7&WNE+Y1$K|~4@e5?7 zGqDYb!x)>u*^BU-6!c5G6DjCHWD@_8WDxmirL$ss$&J=U(q5sGImVEhA6wl4J2{GK zIi15{f6gv(_EFWlNFjtk5=9h|i2AbhX5xDZ@P{3q-VnfD_Ia4^#mONf(E2m+W|D@H z4`jFvkS1cx289b!{$qoH?v^Fz(o<@X6PZYU9lKv&<8WG_gTr2Q*1w3;2lhSx(2LIK ziw;#7H-kq^Qmi52flx}@4HxEszamErL&pAbh?CWaEzO?4BO~`i+;?Tn5Dz51KgDB% zNHC-=cOBUlM)QN^8my;KU;BU?lVjd;pXT5wyDGul<9Kn1zc60LJ6$1udWK@a@ant+ zCo9vyt4%mWYqWThK%we4g#=Ld9_V}V(MS;m2u9Tt$AJ7kTiZCRv50eS6Na)3wq+s+ zBnzjRGpBOyc*r}VAoRz)Y)X|ot%_xkp`Et2jaUGk@;xtp;hOf95CT>(@_=oXOsa;? zxNv&S@2_oBG|V%OrBihm4dXlw4(>6W+ zNqI=F&&U+S-*Qq?mtY({r)pCmXGjWM&I>2LWQ($jwG`O_u@Zu-nR}bP*MDkY` z(lerzI4{uV(a zQUbZXGY|oQdac-C2LY=qLq%)|aUwdNiC6I)`PrRIuQ(tdv^#)Ag9sdE{c)SQBcw*> zJC$<0-iAJf4r)nX)R!QY&hhCX2f+9QC<0B{NVe7?sW+DQYa7`D0Er#E1}>o^R?aj+ z*sgOLaKlmc*8q!=d)UPV3>#YRh#pb*5@}hIuBI~PN-?R^juf^SI_RkV8i!miLC4YhUUqz6OsB;Wpyn|BtOVAI3WaL28n~V4~ zqR$JUGS9%DktwJW$;pwDe`}!`4|~aV)mB7W`~bhLpGhW?ZRf{d5QH}RtT{8yk4R8B zeBrJ$ZgxFOTECX!GLVukYO41%>LxfG7-BpIz&B7P3Ut*zM=Mbg(i751p` zN*0sVa;G^+q0k9jcP#t!Syl~-`M@NDx@g-wMCW?vJIEY5WC&E1I5+b6DdNea>XOOg zh*kfNK?{?zbt>ymTARvxLy4I^L&_A2yXx&TiZu$Dw#!~U+1iF?ZRr;ZCgNn727rKo z6>V`4|FMp=CG>Qb1n|YJLpwbuL8q;SNrG@75L*i+6R60Rx{1gapas%)zTsf{EjEKV z-MuN4;I`kTmJLu!Op;)tMSi3SQ?3XnT9Z~Bu{q(h%M=Tv5E=`ipHJ#pF?14NU{M00 zx-r_y=Aay{9Z>`T7ogtIVjHuFk}*5*eE*~DAq()cYD`&xM61Rb8=pzR(;?orA?+4opre(#gF|lBJ@KZV*I<{>D9WGL`j*IH6gDk)}os$O6u!>l*NoDkttKa7)Zl zn{e*l2_MZB(yW)AqcojlMI|Xsx;|bQrK_ePIre#mWBYYI+u#C{(X6biCiTILV3S6H z4DLBlas5N>fe#-+(mr6H4N%fRO9*Ic^@EQGmi`NU7UT`q)~EBCWh%sdDY3{&3h2WU zoBZv*^t6yC$Avx$u2}+HMJu9hUU8=~&x_d+*fFv_MEtjoI7FQ}tt(s@u?g6du^y0k z3LF43On*j++Nl14erYltLr#E@5k95R8%bu$)Q++_n+Nbk>s#;F=`HWWm)J1>?C)IUy?`A*Dmyw*l-<(g=2CFv5mh9k9G# z$y1?2!KSaF@Mus@DybL`*(Qx!`4`v{J(K1SDDz3J`FA>z8}-I^-D6nq)xq-%MB=9KXJBfzJCIsHrC>sA~7PCa5DvpgxWokp*Wd`F3fUj+vOm4)y+UK7wc9 z2n8oLtvN18wL^o5CTiag^Tn8v-&homuc;1Pp$zE&aF>sLGeqd90UD>5IXvzG5H>|D+ayG!-)IJX-dHyy-A>U2W z?((y(1(v`l8iNQlxhu8`P?pZ!x>k;Sg0ux8B3{?DIhfeJV>*4Bt9xF3H~s%Ssk4zQ6qC??`tCVmbn4u;8n5?=(l9M%SLyDt_& z(87R$xN?YWkvTy{pMcFl=ex5Fmr~*JdN@-1tudrSjLcx_as8#Qr!;Vl4FTh-=ggpV zm2<-A1M+W@4F-WoYo7XejJKtaQLLI0M0vu!=m-XScY8(Af}jnobOM)B6XYJ+53w$c z?O_suyg39c@JTPXGKn`=((33TBAtv?)uwk&;jEW}f@gdcD|nSCn@D?9yaTKgfd-1^ z_mZoq0e<|2yHQ8J4=J-J<$96@@_f_=(mB9d;Kf0g%qRy-27g;%)C(ka13xuAvc^|j*`9Sc)q=`*2 z>DQsv@3eRBH zJC6`02)RTrP%(<*@=h`dDM$ERV&VJ^lXPjQ3ctVnFMN!#mo`4iR(Kya>mS*UwxE7& zVUEbuxS$)OXaIabgTI2wl98wfc?w7b2*z9O+CSfZvb&Yk}LU_%sJ%MxS^YQ zu6LPhMuWY1@{|`!8UT~OIjw(jg+kB=$9FojyHVDsLYZ5mHgOi<6Fnn>TVg~r|14=t zIDI3s3?(pUfB+U|gDwvp70+nK&}pYgRgI~L^g2TfUmus3EB?09J|7aJBMOSDCR#;Q zzM_NH^yxy^6qSNC1x$~<_orGn7*v;tJOHe0@Q3L;F9zAznGG*zvtkZZ(Thbj&$D@E z&CT$`ZtLMCwrp)VFFV^3wGwc-5y{pN`e||n9;~=n!&*;G-t$moHED`664_B{SQ2pB zajzOrBvH9B=Q-R1hhwxjfFr@=01xP_Z834^CRb{I3l@#GmWUC*4Bg^VMF}W^XjkyQ ztAM-I1Y=NW{R*SUydu@iJd3%{LQ>+57DSR|Z?2V)qO)KTX{g=97!>WyhhW<| z!XeHMsN~z^?|qKIZqPGx1iMOdXy?;xoR6ADyA|?Ewd{QFPvWJyTlfQaulC6Z?53iQ zJ^}IZvvOL@M#=RiYep~>uCikisxc)8D#EbO;VWbltq-ZT6DL^Sic0bJwTrS;Z%|02 z)xY=rTG>lHVKUXl1<;+HI_l&KJxJ|2ezRKWixlgUBghEK)W3~u^3I<1y|i<5r{SKY z-Yd!rSZ`t-NlluM`3H!p?|?{sGdKccKu_*^Q?0kpCCx6y?H+8vk^o|Wid>KAsB^nA zwP~GN>?MfFe|5$nzSY(%XuS<5utMK1jft~8jx3@VuEfoumQZk70=Q)<0yM{q^(522 zIpZviQe!L`xd)46kY8p6@lwV~iQJ0~3jwZu35bbVte@E^Lnl;WR`O6Da}#qfP@`sC zX=og9@LAcCE-@kl*=A^jEKLHLQZ@={cK#VBkkDUiz|joyY1c2{oWBzK-Ek@jKco>R2UZvl5Z(wW zR?+DFxa4opHrK?hCf_SmMi8+V60yE#`ZPv9`(ZSH6>c$w6|{9n&aqPI9A}GcBqC~p zW-)l&Tcs!$A;MYS=Qfm&w6a^GZ=P6M;7#pcgd%P@89fG9{g48#ycSq~CoNj~1w;eh zl)JW=8d!nNP^Zqp?SUAEZEXGN-Z`iH(#VB~g4!p0r${;CjpJEX70oC$z81@1X;*+> zvbmJ~KC7alel7ouR)rogoJN39rJ_8|?3k^lrce}bjyl2xz-VZ#Nsa<~&%(%!uqnPR zx*;w!$s}p(q!B4Ob{tmv-be<}kV{4peu=H~@!I&$`L+6TyBvU_o9@I1=;}>dXHrCs zWUKsyJqU9Wp=}r3uGob&VBFS6#V??X;jsbOEbaYMb+*))vd%MedT0Q~Ewr$?BOI#F zTKtYM8kTaPA#LN!O(soYxyLG-wLUyYv6U&?Mq0=r5Fhf&wqfH>q`vVj30?xkCOxZ| z?@Y%RDv8z*Ty0lKWM}Zol!Wnd$T3Ov;Er+vRh?15Ff`=$dQ|kneZy@eswn%T*~Br{ z)AL39G%p;xxc>AB_vaU-9j|+uXzy{Pe7FN9TS6hmPC_h%DugNy2#K1Ke(n`T;WCwU zKA{av3|Z{l6sgR{WfoRJ5pSL&5;X$hJgrO*0ZAe=g(`Z63)rTD!F^EIRk<&UjcDyr z`v{GFz=;iP1RHk>cauX>ELIsCzX83>Q!g?R$EbsatiTCzUy+*;e%$vRv)Pis`X|@8 zxs0!rTUjTkk8EH_A(%e+8nKY=8{95uda9jgLp#Wa!DE{)KbaLol}$k|Yau4y8%aGW zHjB!Gh?#KRk!Xd+7Me&bG*hAp%k>{~ITjIwB}kMa^^#v%%L@DND>TEzX`ENTZDz!D z9#eM{mI%e)XTw>0KSfS~YOQHrAa=yv&Sj5!XkNPeb*|F$DiOOs`7{fCq3>|%%zND9 zp5sH6WGQfcc3I}gdYskQ)|>{NWMGeiFV)U9(Yp-HL|FK3+cVPMj&xXNKK4L_Hh9w? zxvfY0Di+1uZp9}DBXB-TDSW&PN!oV6PA#I?*L2Raa^p{ht7chjhx1=DqOQV6=*tk3t3f7|*lJxF8BB^{u^A?MEt{ z&gklJ`a6{9`kK?CJyxU1i$MklU9+LxFsN6o>H6n>-%3gkYsHO-6hRaLqC1Nj`v#=1 z5y_IdHUf|mU?_MKCJeK>WR;_B+q25TRKaHL1}v*|h)#tu6`ntpo)O}c4EDM8UN{z; zoMR(s#kG{ya_DXc)?y4?4X=Z;fo2KWB-33uzb{)0=YNg&!f zuF!-o$m{@pIl5QNPeoHLA4KxV_*?vr(6b|ik~@8hfh0zQQ5YH)gkzHKU$-k+7^zYp zpHp9+yGPkSX7jP{z2+V1_egT{?zVr{^h%LD5F(e_Emt4m(=e@8dWTw{#?qA|mvcC% z^IqE+pBIy2kTt1*AzRT^5<=hFD0qmOL6b7}nN_LwZ{#5qf~@_u>P^)g&aHRgaY*t73d?qtNh4jh+BL{5z?U6p1%a(g;HbdZ_tUx! zZWk#Nn&(U;TJ7xX7|7I0PPN)<RfZsL!*e0`qle zLPD1hpHC#zv5!N-G>Q{50synWL$0a?sGOD_SxJfgs5A>!$X!XJQNy-~&e z$IQ#xJ;zjb%SYUs)k34lSjUp$=kb*P#rX^IFP`&HxxbO8&h*y(>W#3LR^aqBo{*=d zPic6X>jO`F}_Q~v#~|qjdMy@HNMV2;(o%W2wgxW`xwkXWqC|mR00BQG6jiy z$@8XwNK%QR*Z(HR@M0H0up1#tY&7H0cbPw<^sr7x6b#hWRJEy|I2}K0QX1g~&iXfB zIAfmXND?COVk5p^nSnM61J-IlpU==T4G#d`K*o}?;sP&W;lU^;F2FR+D{Y27?#H8b zleDDk#b`F8(xT0bYP~r8KVt6hl)y8!}FI53km~q;2J-<82+Tjav}7KZ#Ds2FExevjQb3 zWrBSx)k$-BltT{!O(*AtHSntJn+$%7N55a{2(_UHaW+udNR6D{1KVR`BA}o7 zzgAO_Ql}aer$&xEN$tP-fQyetW|$Un0{`Uf{-NUQ zWh2bnrii$03?Pi0XPr0kidZ*KbdiJes`Gk2%}28l5k)ExbnWTGVno6iSE%WOyQ;L4 zu=q{<68J;`J3-p@c)%-iY{U?NNkFSVEA{$J^qTN)Za`a|l(%<(logvS-xZJ*xl?Me#pv zc1ubnsy^5cEtmaJfJ25L$ZV9&2Ov^UObUfl!%LxSaNYq7Bm@si0vrp4=n*>?IFm+$9KTBlab0J}5@i)a}~nRT*jN%SLZ|McE#<>Q3!>lqEP(oBRw7 z>i;dP>ZWn>{n9M^eK9$1El;$^HbjjOI#IADRt++CRiyBN1W5;Q@qkfECj2IT?Y?PS zZ!>#e!h9s1;t%%+d)4YAXsn@2LdnbyE)on0KAqhfiA`JS*MV)0tix`B} zM1veEjw-GXMzvU*wyWhw)j0eF$XorLomYx8CZkJAZ0-Wf`rZmg*mJrlE2?2)G^qTC zvY_lb?|6U505>ym3Xk;Zpm|4^7^(~F_E(GYcQhPm(~MFw6D7aq9ry(>#Sa)c*1Nruw}%=8fnE9 zk_sbKyxrpG8gR(KrrJ%v&NONhTnRumG-&rnitFOqIYOTvT`A$Et2i6y)>27?btiN~ zNB9odi5-V&CPJBZ2v!(`ifx+$*Lj?~aDxU4HAe%)>v{HSl_fXpvCe>sRE+m&ygcll z__r|{Ch)eNqTmQ1)6b9UX}&!#2C$Qp-;ljdLs`ikf2#8}tsI&b&F|eSp3;Vop#v%| zi{AX(r!Y8PS_B7pfEh8>S)&55DYanYk+FddTH?E%CZl>nZ>M$;GWyHW+Q*j3Q~fgz zQ1BmZ_BOwN?LR%bBy`LSm4I61z5EL=WLzvC9yI{UfXmH@&mf(=tXU-$zWj!pWRV<2 zaI0!nkSVxGMvHfcPP)co`*k5e-O(YA?N*7aQ^KCAzBMYylZVJ+Aq4YH6J~K@Rib8G zSb1YM`duOPEbO&~DZXURNQ?hI7K8CD9B6HPR1YO24P!?`(B6gxeYa2{I2h$*BCVh{ zOwZnMKKKgf{u*xe?ak#ky(N86<}g}95L0$o!)jE&T>2r)t99)>?Lmh-IrGF1^ND1y z>4w}+7^pGtTl8?3*G5I5QBY8e6QnJ=Aug2 z$C%M*g`KA)cR~(33C`s%P`-ZDyStt9Cx6^dQlU%fnS-G3@xtt9!svoTrme{ZtEyEe zd)MjNG|G0z!w^KZaVM@$h=GvDd)k(tTS3#g*%V`N0irG!VPx48(a5V-`uVsbaKa#; z_7CEMvf~G*xI-_iE;1>$2mZY zTNh}E;Gh&|cEg5OcWMqa{-E&cwX9ia_{mQ6_TYq2ereY&rnuHv`kqBC{t6{{Lvw+)WT1rztHnS;VhTVU3Cl?8_@MlbV_$@cwV}YO9ylH+ zW;lZzpNT;Nt&FrS5D=Bx26i(@ms58NUu`4vW%GEfL{zyUmm96bps2V99!{8XL9kGz z>0|1@uTjzNdt+7tF_h36FbLPz*Scd%1^d(ftS7y&JGES(=GV^JQHq zaR?oK(CS?yK~jy|IZM%4(fjQgUF<1zPv%NqG9y$Hi=?Ea;6e&eNtgW0sjpsgX)&2l zVzHxL;N`6B&uBn*l#)ArLFVOf@rl&a@VX>SyFz?hHKl0Pw$4L$T3;O%xv8pV2~-Gc z>Q$KCF0tH`Ol%)VElVB2W^4ql>T z;$q84*$Hxy9od>R%-dP2#BJy4{sYtG4zREep@PKDmTPxdVI#3T5qWSvL;l$d4U23F~;zC-In#Y+A7vO+^^kGA?!Z*o7?JI_*s0(a= z!WIJq8%YEy$U5r9kJ8@Ns$K~Jz2q|$W@!h{SU-1W&37SePgqyDcNJq(&3lHcvf_ z`L0MmF7A`P3W<}EhwWC<^ntsL2Ek?TVyhi?SYn-op;kZk@QON)&jqTxWXwj$J{n0Y zFXG#Qtd$|QQfy`0|42}~K(C;Ci&T5Y#fwz~KD?2d2#>$kOM`^;~ zQ#VpuONpUoayTucNlUdct~&ISu{jPT3l1u++gx^pZ6$)n85~rVjnT-EP zdl*UHAoQRyxWJ<#_?K1fwK}sQw8XhuZOtSI_5F4et=8aNZfFS$&0E;kM(nVJ#c391 zXXe2VRn5n&mr8f^2VmVqo5(>Tn#y}rPfzm&U~!a&6#LWHlwEI5m%qwDU+^4I!u(;}>o=W!(0&XT-4ZF=e9K zxLIU8usXbv*Mzm00J>x=kf76wpXCnCh~Hrnjz$1+nq9(?zK$i{1g|4}cSWY61W_hm zArHQM$f+47GFzXngD351l*4W*Tz5QJJW#qH#t?FzwnL#dhGUE}=QFrZ<67cp>#1F* zS!|YnK((8!DQ=L9_SHTmN)uZxjCYX<%%<68H$SJes$` z=kH_|!@(u?{s$O;yM=-@HBpJ^4H~%sJAvM+m+=HH7kqneP4K$|g}%`!WN~mYmzciA zb$PEW$UY~mPV`w$v5Ua8J`1A;$!0bwMOtEC`&Mg_4#N7VqG$z;Oi+}o9A^vPj5JEb zdZy+!oz}OrBX)!E`T?yVxi|9#Wv?5Lzeow$gw_$-t`+eLmZ@X3z`{}@9-rnM@tQ~% zC`B7mdm3%yBAhOXqzJjH10#v7$h!;$4{cPFdQVZEyF~+rmL3C5cfWpAdUB&sz^Vq@ zAQIWgk+iwZMYe>hiT|5RqD%FHR{Igg_mjxjs6JAtrgSJwRBPe2P5UE_IQe+>JFu>A zQ3u`6F?ZT6BD9+I=)_-SgN@|M_R!BC8GATetJ=dPLxaUWkg0VKgZHfAPTKK}Y*3e( zlm=*XH@6qJQ(1QqRW>ArqJL@O$SoEWEOyY5x~+ssFYQ)z75B(7k+wN!v=qX{g|#A! z6jcMN8*_)w64G8n5GHWZnoGYTPZ3QY?v z65q#Wy!rrV{lGY!c+oz+72=oPh*uN~X&}*9=LMj8>ZJ79p3A%r>G#8pp;@Y&SE+Ih z(JvJ%4J^}Dfih8eFSTCL`l;Rr2QGrIols?iEIvH_| z6et}44J`#?nw*P3^snObJqd?sp|Vg6mH6p&&Kn{3mPXNCI}3MT+Q;XH>`xI?>@d;h zZSNAjZit$Ng?Zy{ucoJ2C%zlWINwg{N;aEqC(loc!3Kqep4GOEYM{h8AugvN)>K6j zMB4>M$iaf#lqSkl0QN4I2_hG`FJt2CPVp()IOyU1Xrf!1Fo)4}(#T5=tI`egOiNQF z*LLH548}GC%8~gaPa%`?(dV+wVu zG_WtyU#1t4UiTXg1&Elt6}7{_fXV~e4V5>6S_IwC_ia-BemDz%BN`BFVAWEC=tI$A zlEmp#olq!l&9-Dz(3@m#e(M1nGwtE*JTYz}Co&l3{-&?~ZZ$@cV495>k*61;i_+$e zCf!T%R;mq{=raDf`u&L6&kmSgopl%WyJlQvXfw8YyB?SCC%cf*NhMiFk4ogWqb8!! z0?Vw5zED#cpE=ve2X+H9*?!-Daj2up#3evHhOR6?c_J$_*T&u}aM6BlsqVH8sJms3X(A6q8Aj zm2)*nXuRX8Dtrb$M)2+mPoIjGJ5$$XZN=(%JW% zQ^{qtA|n!|43jNxJSk5}dKYz-E5{Q=Gg^?bLdE}_?ZA+ccsNA?9|6enl|Djw$OxZ$ zs{^dfaTEpDycz5dR*>ifYP!xn7Y#A(#u-!EV5>Ry~}tLNk5t>2IX2cwi3ll zQp4|oifEmavK+8!uSkF$-N*v($k|ugD)thTJBry>$q)w$PmPD*vOV4d%#!h z-SSmgli)M?DdCA}*&XUC>0?j`nC5q#PMAnXyaVk+&=R?R9)@qIqLk`rc9to&(2N@P zC9d$kj&6l=BXn43w{nr0Yb&v8tM@!HaG77uz01TVVF2%=HzbO|tM#QxRAqRi{Y`N* zG6?XGN4G~95TAK~pR`ye3=f67h2*UX_lh*CAvi1rzzA(2gSfObyED5^F#P+d=Ds&Y zDMPq(jZGC*^pql$%x$E;6PH}esw=@5hzH)iHoj4+b80MPk7=H}=leXbMD966rTI&! z-_;;^3ueO{&Jk(F1O*=QV<-8%`njglE$eoYI1F!i{!D35!C^Y|;{ zvALqg_OBsHf{qvK>6t+pgx?CV!|OlF5`VNUiGZB6=U5Wd?{`zTnLp5Euv1O0&U}aS zpq@^CJ(^7FS1G16VwTYPdnQ>S9V$-r>)|&2Z{C!Xi$D6mP)h>@6aW?o2mm3BlUDhi zCx=!s001PB001BW002)#LQqpLV{dMBWo~qHFH>b>bZKvHFfcJUE_i5kZET%=U2h!c zk?wtdMMF19fHp-+mMqz_0!hwVi7c&8q&QeC76&~&I4!qIGn%iY+KM9T+09$i*nW+CM@6l2i3m)%(#iB;^AbmPF3H{eIM2A5T41ec@-@ z)hO8-Or~X1zxv~iwe=q-gF0{eWj%cL$FuhB7ta0oXBU5Tp=jx2^wE0y>WQLl$1k5e z`R=>#uDyGDt(go@Zk#`V{^T})=ETJxCCPeQ8uLw%d=70n+#5$;Emkq{Pe{W7cWf5S?zvYWaD-)DeL}V z`^3eKGZ#+sZ&!W>o4Ik~;#&uM`^mFA2YXM)Nj;p+lcGG>zg^ikPZk>&f5dYdcOHGN z^XUGh8RyxU2Gp-E?lnnW9PB@-he`eHc9m?LKf9hL?WCa}Y!)Rwttc0NrUAbD%YXlN zmW&Se|Bx5S^kDySQZM#O{=wrc$q)7)X33SsH}tJ7eExsT4)*Wl$*|0le;SNN&AZdK zsRwCtx#=ZWib*+b%dDOb>ZC2`lb`0vWt!!+;$ZK7lS~&oZSw3RdK8UJKYGw6SDP%k zcCf#jY?gIFlRDVj$&;;v{of`PeVaaghc<-fmlxmtB}>|a{V!zx2YY|3ldMd7&u-WB z?}q37Wkv3t+<`Ei!Uqw>)wMoKWhJjdU>sRu-1BUZ@!k? zqK77<#pg5n4nN>-nUM6;Gwvrno=2O?gnP8c+SV294Sn~Xu4eh6-@o@U5B2#RpBgRx zE9p11xil0#rC2 zBzwHQv`srn|6u=jx;?aN62=-LlE&xy19mjrgoFLhc!y|fAaPjqY>lO1@7tU=a{qnW z$fM6pHZiBa&v?~)eA2wy`y`L_>{51`hhnLB^H{rZa(w7DdiGJqQh$fGd9lY&&Fp$S zd&Khgr!rj8bnxFar2=9=A1)SOlGOHR{5^bBen3O*jzyv&za*O?To~z1dQftcMlZ5? za;+SdRaXD6Y|=oC?$mxwEgg2lQgDwS(j-+jtg`Nzw~!Hf`U9Hc-cD(sm%SP;zE1M2 zq0|4oPPTdD>){%mCzhHoc6F0w+WO52PN^=kx>!qYi0*jtG-gAS&n9I)qlc1MTpw(g zIZaz-8;92C2ZeW;BzNy|Z6`=ayIY2$$v0XDsQCWS<5_L+hEAZK7CYF*gZ+AL7A7Fpjk4<; zo`o|_!P;qW*OE7u9>_` zT;0}tvxPN`7JseqQ9d-9z{ja<6+PiGP2dm(ll*G&*MzPlpKz%3%m(Tna%AK_y0hjR8_|gf$S!< zWVP6tCvs6qVjfnw5j2snpig#kxn>W>;dey4$d_aV!5*z8*YU}BW|@d0pDbyGJ1ql<^To7g8Q2Q^xXC1v!I=U4}`A&N}{py-dB#d-s(IFUwuqkbv=~d>XBn zjk_$ek3rNToM+v#SzVaUy0UQo#Kltyxrwv!MgFe$PF4x_TWnZxrEm=4g*og?wu7P| z&z{+=L{*7a$BXS161Q{sW{mTGz{ z7V$;ep-7eoTYGYXF@Ro7->)|aPu zr?f$q=fbw*<5E0^pRDltNR|ha@n}{JeoFgMz?sy^!@-C*13HhtMiCeL6>Q&mZ!jz# z+VBJ)z}37jx12Wa6EwJFa+2bHEzR{gy}Ze)JYkNfj-=DOV}K%e*Ap%D|%g z1Ml&z5Z8~71fS8n;~a^XPSJtz&5|8w+d?0H${!K;u+UkFFt1i0vR{2{4*j6E%FpF8FwO^w0Qa+7{ZeHev!vMdL2P`-x|ywxd!bfNL-NbcyvTi;;g` zstYuOqy82=T#ep#5dM*As5q!<;a2EMQvM!YSLpu0b@ygK?rsHljt1&WU?l!EO(DFI z&+cUSDydz_au41tU%<6w@!K(P;a9oNDmX%wJ^Jjpz*1=MKaBl1D4-gbD10D`(q=K^ zFMP$3A1me@+lAqrET}gw&RRKId{ZqRk=kgYQ^vNMG16#;ZVu_D8Qcr6|5BJBQpxnd z4>SPU!hW@;N%@k<6w`JhtZIy@? z>WBXSz9@X!m?uYvmFmZO#l%}mi?FL6o-BfIiuoz{v*R0)waF%JS(mt=Dl7J7p52EK zh?@OCrwwR|0*pW+?5dbfN#lT0Z6!9wmYc(><-AdCWHX$d5Gf{AITK0ZBfjoky=VZa zA#$r9&qMoeI!xRF%v9a_jkWW9CMq+ccFB8c3-wG3@o(yEo_1mj-k6J4meFHkRE1 z-0N-FGn#~HVp`;73d82fYlA!|zm^a5VDJCbz{x%(_lX|K>z)aWXBd|Y;(0=h6~XjJ z9v~$3%=&tIlp`p9VCq6xQ}i^|A%hqyc|%sFlT3Y5cE!oS=IRTHk{dM~YMOsEVzDB> zSDn~~9#IlEpvB}bq1>)_7he}5F=6l%2R0OtyZ8f;=1SVFj(CAD=R zp_%Uoxr8>EI+7go-=80Oi7}nN`Zw;Nf5Ny;&T+DLK*aY5C0->Hlc;!QLEL|OT}M@k z7F)u<-D&Mw>4`>`0f$5z@dv*J$dLo$KUGp|f0t=onU$pyz8@&U}#D2n> z-n7Ti3_lC_FY>`CtNUqkHG4NJ$?duHugzpIO_M8GolVNYbj4t=XQRc=I2$(8)PD44 z+2&a}sa18ckn=rxk|j5?italv@-i&)Yv28a*tniEO6-hFt|@xeF+azsVjk!rPJPk?_GfcE4HS zBBuZ-SGdmGGt5(kSN2OVY({-n4DTmNcjJL5*x$<4Z6_I{0u*c~94!w8g}NL<>CxR4 zp$?znLJ1KML6X&jWltWrBCrV#Lm@lkvLR3s-Ox%$5tFH!@HBobcirW&pW9#Ay{e$1Bx zFmh?=!S>O<$~EIwvhWn^5Z6<|nq2W7C=;H0kT8+Ucx{qxW^FdZ@%@5B zg~7DU_$1)V@x8mnai3&6&z(D+>f=>Cnr#E7!}hjMKZnDz_hcMvPnj74dOagDCD4fG zR0K)3KhW`gV`tW48Ke+;lJ>ct)p_G=VTo*l$kRa%TezpH@NoYolI`@%UJ*OP z-SCm~eXS>Dxsv(iQ4Sdh0*$hX{ zn^{Pp+^A8(oL1=L@IGqtBD}yVXb3qCzfyN;@A1*d_gkGOMwnk#u6D3Rm9-LBOfr8| zBplK5bDkK9;nR|F>0xqX@NV)?&15sM(+)&CwO+x^`!*;4X;i-5OzJXQ^}(|h8wOU1 zLE?d*%)-woK*1m(&km3~w(xqnIY{1Wnn}TK8GlehP7Z)Duihk^Zbq1{i$$jF9=$#h%v-&>NoMZR(hY%)OEpdG zW3y#-GDB?0YQfKi5d!!U^!)4jYfYVv`rp6zse};@EXO3}02wf%Q=?GgdQ-O)bfmU# zhP-j+s1OgXLyyqF+$GI^A|!}HGk>0iA^?=6-#Hmd`|&jU>5)q1CRBP zsKhyf4m)R_O*q_CgnT1C$DjHZsfyaz6Kq{M@i~iOTM5!`O=hAJIpo$@rIO!-?hoJT z2uWgJzgRrVUueZrn2BSgj`PETM5)>BizAli=B&zE zM5LCVc~O`iF@krk8xHsoAZMtu780MaIe27=`9??ucxPULv(e(OLWmpUlwO|<1~r2> zlF*Vw^CXCa-~#aM1K>MI^N|a$8vpzE{sT8dJqf>6-@kWvHLkcJxS~U>#Fyg`0x7>g zxh1otIv^vE7(B0)i7=Q<_c0*f@q%B>l3?MN!qM;6g|yoyCt+6p(63CXk-Sgjd|bAnr6COXKiDWgz);u$_yD zI)=;HP?jtz)u2i&4_ant`#n!UG+jhHfRd9f?koDJUfE~r=Jk|qXOM;n&(zV`{N-H5 zVeFS%o=iNWBg%^t7grL5R|wLI+q$t%*L6+r>s3|z&fF>r6Q)!r4VXDXX;>mh>Rpq~ z5|~CZX%y(xjC>ANCG(El)to-3BgFv}IVHR8-pR8(`<+;W10Iws02b7Qf(rHZHGo`*t zHf8%+Olah%wWm7Q#>QwBK?@fsT}Zek=N}Kjl7#OKGv++`xsYJ-it=&`X%g_VazSd3tU;=SjAw3(?9ePEIB+j zrf{wQ=EU#Zi)k1HXt;cYKpe(23z6REA)E=Hk8V8F^hV{m3AipKXpaFG1?;@W0l}L= zC4oXCF0>BaHn{V;(o-)AmDkV&|C@7X(tuMDEMBcNO_U)Pr*}M@v7T2Uo*m_;K@=8x z?Y^q~sep{0#&mq%@z5|;xp9-s#8@fbl z0&Y#X_jZb2k?fRFly{^|kq>{xWHLTQh1Mj_$iTABG|>{!EtmN?9g^7BN9M7^Fg>NP zA$c>Kjgr@z=`=lD(x1Qj2yUCgk4*Of95_|%trle(VKhcm*&ZZUv&m>Mf8n)ktL#r3 z$?b^gYiSS+CxISc-v?4ausk#V>GiCtnzl%;Hf?fqJYm>MaRrfd7zvH&Z*p{{m0#it zk&-G!awWUOyF0R>e^K{KfM2|2QALqKW?Z~evE-0vds`h@$+q+QpGqhOJ%_u%mx9e! zW3a7~a+Jkkg*c>$IIj~b7g;X|Xt__Qtv;o-Wbwb%O&7p;!f@j@JCjnpvYRJ8;mEV^ zbDQThlLKTZ$*8I=#mE@{*&R-{>e-Rz23|YO#ziSihYyX7#Ev6eh#jMm!$ryA3c}!7 z45kYS=MQ1V=e2SHe~3@t6P%^T#R|9N7ZJK-JB8vGv7WurY%mpT7i7W}2Gt~A0W3@n z^({%;a@JQ@4KFx2^>Fwin^a9*=9x?MM@$15f_$_>HkkK)E}#s|H)HBrV&m@L8i)M1 z_#DJoGay92Mw*NzNQ*eM4gr9dQ1&CxWa-W;dax^WEDIp{F`-B0Zzg=W_u-&Wbj$3$ zA|>J3Wi}}V8L3C!0rmXjsGs~pR<_04vylp(BdzmEQ-q7CRMu4r;GyxT-6o69Z%aV} z{0u#V(h5ZYxynAs{1jGpRGbHqF+5bgLBcfZ7Y!3pgH0mw`#2FV5Hco9H?{Hz3T^z? zS}XB>9pyhq!ryZ{)<@Puq_FSmKY`60X-8s{Db%_kepZ{J+6OLpYBU7HS5)h5IWA+j z5{OA5LyKxqfWuxYt!yGBdj8I5z_E8!)Pe%B4^vNPwHYqqGIGFYA3tstRT?z{VWG1EXtuvIQ`VeMQza5B7ST{Ss~~xdR=Kgz zk?myOyA!=NMsJVy7~cYwQ7K7cEl>-`NAfd1MJNEayGJVx8tP#G-&IqjX3r*qu3?P1 z1OdC=PJr0Tdg*Ry;36=RTp}EiKt#cONOP$}@rFwiH&8?dK)MH2AZ{wT+exnkbRp6` zQLGW>l=Ttx7u+)o!HGKo z?=eRQ+b0MC79nuweCDO%dl)#u^d78&#qfe z^`&(_m~XkVH?;bp>gxyYuTRW)PN<}4_Qc`&*w~K&#K#(QsTaah$gb&Mm`cwXM$s%w zz26AYJ$<9{GudbtH0(c0aiX5ySzTG=c=%E9O(b}kq%ybEWl#VvzM>iPAeWhihcZVQ>HcrErfMyDGfZmwjFL!Vv`03DOmC++KF2AkTTTHvHw~~KE8I@E zh%lB8_?MXF}sy+*K$l4y@I4J#BfEju487g}nkC?DgV{$;2vJ)P|CTe4<|17Xr3%hC9fz z#Kp#Xzn(op7(gR?mw|_iYC_-_1r{rWg?t{*6M95%(FDfb!n_c2rAQSrT(M)9s+}_) zLIs%}HJ(uE^>4&yvFLd!T12QM;42Da&uaqpVPS$?y}Oq+Ktq-oeh$kD{U=o5PN}O? z{Y*P7WS;8T^tg&jGF?cAM3fs~M^3JP_BjMm~RVfMRl2vY-wf{6BXaYp!TrCK=NH#*qKd}X%p>FpMemK)}ac*4AXN+ z(GAHTk2HrH5_A1(f)lH76GhMQ)*Bb$xunHhF1ZLp{9nRSHRo~L8pky7jQ^3w3R*fL z(1%1Uu1GtLNJ^_c>A;IN^8caIr3E3mVii$@4NUYf8PZaJ5;k?~r&8FBG+%Jy0upCD$Lh;P_9~tI z#Z!1XL5Gl$2DW~4j+4!sLLcbf8!eMi&bT4~gn*tm-vco4h`lPX`k{&1jpWl)^HI2)_pV+1VUAZV*ZI(ak4iNZa%r&5q%?f0P+Bw^f+7HGK$O3)kWx!dt%uy+ zWjN~A>fR%&T&3>T=L}8w;<6VF%@~)TWRX9)DXn*;_#c))ax~!cb#j)^>to$yY!LO{ z5*>uTQjCu;=QItWSLBru6R7=qElLycaRr66t*oLjCukt!+h*ZHTn@z-(H7&E?zorR1dXf| z73vgNvSzI%tE|X2S_VnED%oMpYDei<2L`UVrq4by>5zzD981y>OpKXHB}IUv3(}27 zUAq*V(;&xOs_Vka)FA%U`ucimEjMJ&Ruam$mo6Yq|2djJ@F1x|3ev?g$vL4do@C|3Gm59h&q1>-~A_}cm${R)Hu=IOmB}Z0Xud(~u(hk7C zjF;r~URYAnNm}NX5B*Zn|2jgD-mfJ-wrmXde({d0>eI2*k;EaZ#5TN^AZ)gk*q-?G-n?h>~`za%}1X@a;oWrs;P(!ntTvqc%!mCvz>mTa|I& z2_}SQ8@2sZ#5EkHaH-f&9X!fgT{!*`li;MN<~YDzu=|lW3E)i!$pw`Ag->^Ua}lQ> z2=HIwvDcDci9AXUS876N9?k)SvLhk+Q-%IB&^U=OGFK0KEwau5Rxq;AIu}2NVwUF$ zV`2HSqU)zct|G6DHt?oHqgq!7i)I1&V>!pEP6lhE-F7BNqjte9 z`bq<3_oNhaf=j_S8PubOTXJs38ppTW`Bl>!Oxol!x!+aU78bIEZFhd%W(C9( zcV{UNjVCL!7d5>+cqexEjf-8wBX1q?+uW{=U60!JFDNs0U_xik+VrFzP=++1E z>1t;vY$kGvmU>}Lg<5F*D%ZxL9Rg-wBlBoJVFRQJK1YELr;@T;!U{tyGk}OC;Ie{S z*q5U_N-ESK&gYV!CcaiK^co}LyC6f;L>8v1AIHWDau_1R?srQ-oncv7qduLB4v?HT zY6aAti;#jttz-O5&<;8Kh_8a-0!aIaVuu(-^rU_REdz3Y%-WVi^tN_IULME+S@&<* z6mZE7XRE?QgRA}*pHXpKF?losZ?~WdveTCjUq-+M)iPV|mG`L-XV8jF0@9K__FJG_ z2JxRap7Ld_p-~3jD*+?C?S56ed_jWxvpJj%l@;HX7Mm!|nnZMaxO}{=$0m$~Of1c# z8E(v7jOEHl)a_@*B@{SyVA!vm)s`lRm@vwV4pB&>4|_~!;)_qVG|ENH!b{$GX+;-< z^JmVds**uhxjN_#2Xz`$J1ejismiMvI!>@{9D@euV1rr-wk&qySZiN{V07y!#X(fm z^Qz;~kfnMeJrqa+eRmE(1X7u~@@p*MFQsS9bQmmy`Af)HnDePwT1n$-_NcOWrWaP|<}0mHGZSJ}}j}R~gz9KM_A! z+fit`UC9!ea$>AIbX0)W7JSrEauU_rR_eYc0-*;ycx?F-UEc>(T zo7G9tk)SWgisHCRgmh)AWvh``d}%Fsrczz!8+MK~FujinS@OO0Cnk-xxdlSlKq=&X zSyc!J4!rfO?a3Y}&&6a6jC1J*?Akt&vV7DABCGS|z=@3U6DV2NSNc~?zL{K^3 zRM<0PnK0^# zCe2)Cn=O$gO;0#dJYWhCnQ_>573s`i24$? zh74QsA zb37yCwx;Cmy$Vuw%k&KHSgV`uUlouq_7W@P4q9`v&X3y*fbmUQbL6O5OYc4raS9gY z4V2nF)F)R*S7}*aEw^Rx73`;BIgt@%bESPT1kSobmI{uM$>BM2X;o*1 z8>r%5>{do(lHsD}XkP7i=A?L%BCASz;5g^ll06^Wu|z(cE4S}Hn59cO%LjZjDp>1PNT1YiO~7u0Lzu!#N>yNgoKzAadkra zEZSfr<+jY)a%n9`_xwZyao4Ttv*$>}UWv+lxL4A^UY5k(&}*}NGqq5UtsrAHr%3k( zU7{rgJux`O7uSY_Cob72aNC!m8_+Q(LAgQD)+^^ZWl9y~nl7tVKy|w3aRjiDHZbt? z4@+8xbmGHaKe2JfYb-KeLEp@Ps5SB0k>YvZZ^9SSDX!Ly2Yo!Y&7*M_zcHZkST{@}! zZi^w+Pj7Nt!7D{Gj*HmO3*YG3q3>qt+^#cH1{CEobULnF!5lR?RCZTe_x>QCi`J0R zQ$)o!b=gB}$#n;kFexl`U2MZ!l}UdHKW6F@)S^cZVI#NJ%4!RlJy=FvNuZ+R?&|>& zvO8QP01-=4>8Wo85YKkTZ&k}ue>=@x^}axOF0LClTOBZxuH%KyW1rS zWuZCu-_>E$X-&wwR~{*j?iIW{Ki7MAS5HKHX86|~JTKkmhOw5lKfZ!NJLcg9Ku3@+ zGUDBqyuQx96Q7k_f!DK1zpMunZf!Sj>gWcXKkp7)G8-O~+w$c(nX7}aM&MV}oL6|| zoG+!+D(fvPPEvA)lLKr0z5ih)6K*Huw2!{SY9H6b2;hoYJ0pF=fUE1xSt|r>>n8@T z{thZ{Xe>>8FQZyBf6h}hU0LlRu5!ZI8~LDi^%~O|-rsVZhJ+vCFbFA;l6;3R26O0+ zo$(56$5trji zjZ@^kcr7S4VO?+PxE?AQ+kjw>B4%9iz03X8am*i3`JSi8jcX{;VdtyKSXF)&NUgM~ zSUjrWfqHGAN#s>DcPA&9bYa(g2Tp@ahpWce6uP;|&r`jv+((;eXc2xU5~f1pwtCHz#;Ihkwxk_cQgF zw6#!;1wkZBJd#+j|22NMhB{^>N0be+NVF}BfuLzTH0hS{y zL*RH4wT1K}w?PpF*tdT`!+_{b4ZdNNwg;kbaQ63U(B`A$mwO7hp97=ihCp?Z&0Jai z-zpPC?g5K2HLs3Ar9tjjxulbPxD$9Fev+_G;Tv6|b5KSH5Hvgi9WAU$w}>C~Oxjr* zO?zw+l6C(G9SLpA30g})ID^~=$;M;eEo-e}gh97d%O;mZ8X&>VHWbj>cbEwTKc~yv zN+UOXbYSh#Z|fVFtWQi^Nb7W$YWsOLm}H~AA*H__k12rA@{`Niv}ACFXT#D0ixI?x z%RP&Q1gZ_8oUi0U4{2M(%MY69YJW!P7k)}DwYHyybwds|3cFZnLl$;Tk50)+2z2(0 zA@Vth&~yUgxqTd$PvLded}+d#CY)eTNmQFElc?v7W>!uI$>mAI;GBepnPSPl?TsTg z&6UFyae4K#nyQLyT6&mKbG3<4gH%SqOrqHXu)2NT<}Iz5xQ9Cl=l%1UPq0baWmEJY zw}ND(S>D0zE5Q^7{wn56iI#ALLEpjG>dA4o$;1Wk%r!bh`8}eM8?5CY`>d$l{*|+Z3Qy&A2E>gMW#=nH5D=+N04rZSUlv ztb{hx)8A!56>f%01)JuI^={8vqB{DlsQx0;bjj~3ezn45*Ji_aeUVR#ckGHc+#G@v z^k=1xGaG8=wc`c^ib3sX5bIbm!?$?|;LaVQ6kKh-N`7ZjF9s`KP`fHvoX$q$q8T;4 z*)+-Wvft3J`q`wMO{JytAzveFKasQK?~$apWiDSyRW-7V2ihe*l~&uQK!D;9(VEVb zbq6xi{>PH&S#|!1W24vZy8fPL)|)FK9_Jk9u4HLVLL)Ukiyh+*IXc*gQGVAh7C6IV zr%Jn5$P14MmZ*N|3@er2{>4g1`(k2R<@;J7mqr*hOMvW6Z~-Ms#Cud&&q9ZGZ*BU6 zPgba@5{k=<(-vRTL%!CTj0+@ax%Arl)CkDy=pI35h@f3n(3SyB{QOI4SahyslQ}1$ zug^xKa=N5?toi7xv(ql2!c|FFWv~>EU9;+Zz=3;#YPkeN`y7<7PDH`#r^L0f9I@8avNETC{tzW%e$;b|Y+@?pjZ11_fo+ASnqb z5^!L~)_L`@)9)5%Y9}0DS7TzNJrB9uI>#jYd{woBioDa2-{b(NSIh5f{7xHx`9^SY zQ>b7VA-K}Bjq420U*A5;Do?e(?uTx;G~>pweCp!_6&!;7v#YNX5wejQtN*{z^ai8k zsz0&_sy%%SDj+2KfStSI)Rqll*9t1Jj5Saiyfx@KHFGg1KhfXDfn325a)p#1q4mzK zukM4~NE_rU+UwK3_KQunT$-qlqML8LSbv?-Zy534KTNVZA54==(;}ZVZ@Z+@;S7;C z%C`qe)(SZU9>QSyy!?=xp}S-WZ*w@5AadC5j^`7#dT-AvvUjC!uV9AG2NSGdl1UWfhG{15BxTAXAZU{S5GBNjx1f8x|Yo2GJnLo?4pE^b) z02-`p4I=R{lmu@?EDO*8p|`IV$KW%(#LV|$2s7rW2du?bbl&NZ_!r8WOT{d->$@4;(9U@UdHC z?;RHBd~6q}tEv_J5sMV!Oez=tRjVPw(`iHGtx*~*N&3_Tl-Y3ijzMdoEbaBm(G7^U zM5Vui>QFja^!jz{=vtIs75N#u^nFzBuuO<$2M}t=@IE?teb>uy7;622T)4`1QY-k z2nYZnjFVQ|BUm|^KmY&{!vFvv0000_MM6+hFJo_RbY*UIb1ze6V{~b6ZZI%0I4*c- zbZu<4eQS>#*OBFS|B74!f+e8TeCjRHkfA__II?#Zi$!)-xw5t^vszVIrSADO z9>LHUg5cq32Zo>#%of4bP!u6cO~YUlhCURBpXN`{zhrNm6LD|ctm>w`fB~BnyQ?zq zBW^rSoQV745BBOwu^i6k<7xBK_s?#f`F=5M`qRO<8NKxVMf>w7pZ)$1E`IODstq3t zA8qC@ovPY)_xaPO-+lMpt#{9FO=qLiXPATH~r}jPs_t! zDEd`7n-ANUFtAgn@v_Od*(qkj$xEl^?fzsquZF|+RMCcK=vVvm`Kh9s4S)X9sjaQk z;eY9KTk^Z`nE#K5?3Sb9|Kf+w#>bqtnZLL_9qbqVNjVP-)-NaH?b-1BDOt#~ou6Jf zb@9ddZrQ{iSLJRyoQ<2oaPQQ`H(z^r^nWiGZ@+k2KC|(YSkkknF23^c=(EekmDg7P zc)57%;l1CRlacLq25>ff_tNTGGb)-+`Z`R)@W!UELWM zeLS&4T%$Itr3ap#B6oVxf| zv*EA~Yy9f|d>Z6+d=XFhbGPm6)8ApkUJDCU7410uasR5U@cpY{1^SQNuxC539?Yh@ z{c`uz#moBDuxgXAJ6zAXJb(G{=yqG|RI58-ohsQ#zHt=R@p`jWT$xS7FLuHTf3=%d zyvKcM!WX^@zaFi=bW5#UfK9}LH|2h>7%cYX^G7#Y>^z6iJUAHl^uJpX1y1!NNKTNq zSHmF2#pTiJv!gEuVz#;-9yDKlwy>EFKrm!{c;9vy&!p6uMj1G9fx;TzyE@i~1brPeh%CjY-0cs;oUnB`<+p3>K^W>c zjV#MYGUI#iL$~yTHu;jv_^Ifj@GU24ZMBed5q`Wnti3#6ICCZpGOW-0VJq&xSBHOK zC;C(pvr^aToy9(6RaWQ&S^laFe})$vh8Kt)n@~SZ?%!;x=jD6hB;5P;SY-U(dlc69 zY(FTnvejX?CY0tuSie%9G?m4^U99fx?T169;&a&Z`Yn!dx{`_O=9maQ_gwF($BK3u zR6|ggVL$cvqp_U#bR@z8iPqKKlJ)&o4zoO>g`ne&GL5i56M6V`nX8=q{(}S2#Mf1o zHbIBhVdKIp$M%TuxS$-c(mHEdg0$1NH75$krMQ7Q2M%5S{B4|XqstNI`rEO6P{j9x zu%!?0{p+|`9fTvlz*#L`oyIRTVx2~`O!_q}{Rlc@1a)wB>wJ)qiTroZJ*Sut|1*r^ z{(CqSVKXy%kmIq9`R^?_cO3OU{liD$S5sNHQE@grt$i}==hgPf-D)U1`8KeNRk<$;FYIM2zxu5lCpjT?@zZi%1+T6R$5ft&GvDIlS33(0ef4V$KUnu# zj&MKU#NA4CwH%N4!?s+3(ihhu=&03Q6_<~>a4_PX?e0;NhE)<`xH2 zgQ8vN2@MKf#<=#WAU7Wbb$T=HmO2?btK0nw`Um2|)t!X7Uz+wy*n|UkJTe3wJTznr zOIU}wMtK#z2w$j`B^yk8>eNuDo5~C4PWG%B1!Z&Z{YJlHqjC$ za5lDzpR9f#tW5BpdZL5HHi~D4P2@}Dr?4=xigKRcSp@YE&dbLzBL`T9urS;7&j$RF zGaRDV7IBU6*W+TYf<5KzCSh@V-8~Pofx{*r*JWPHu=-IW%;aoOU}{Es<(nNZZX472xL2!5Hne+B|R~j>5lxt zm6LsX=3F@S|MV~N<3rKtVJQb@LE__ApVB0l?EY=N9lXnF@#b(c{`hDh#QFFptc;zU6X%58Pf=)ie)INBhFU-jcuKN1lR zs%DauqpE_<8dIhZCosrMnc@bT>49iBb#9@Cptr?O+bUjx9f3XU!8;s4ADQS(ux=vU zMKy)ay{nto%XhB-A2(@HoZ*7P95)i;g!e<9u|Q#5;Xg$~-RLLDqhlr`IjobN9E_JK z8d$W|xL*Ztev^m4AvW2te`n8x4cyWl{BbpA=oJ?1D=y~e3pt{2)Uko$_A$H)TNi}u z53(d-*yh!Q>9`pj-PWK4CtW`A)A3|7F6*#qi|yHXFdC*MyF7fi_`6{_DVu@VhXZKv zp1KT9Y@U6(rmNIe(7{)NF9YxG+?g}aZl#dxbXcnsTyq{}Gde*J=7G+EI)Oo9)*4f) z4->|AsG~|IuUDx0)6c3x3o=-{1);KoMT1M*2HCq^JUqJDh(!^lT7Q?oKqQ+{#2ev| zmQ7iRG7ytKE?$9Ly~#-E zu20AGaK#>fg}?579)bu71bDPR+jq)wg0+J;Z}Cc5?^fg8>7W-aJ>6MZkv$Ox@oeF~ zukO_LTn=O|Gihn|Bm%xJ(kQ=Wgo?MWnd@x^Ylv|(2UvrA7?+DLOIKbIlNW5HYdhc0#51B%y|9ySeXH-1UBiFy+wcg^UVs`s`nF%} z4P|oI$8fiQOKq`V?2Vr+YRq38&by7c7ALy-Kg2W^|Vczf?oYhvhME>o( zUkNsHMO9&hwt8WpANDmaXyMz8=qUuNAm`Wcpx_Z{oa9B;IgD_pejy8gkWQ&A;RIS+ z;--J4x%kL@PKJWA_*;UkeQg>*y&Ve2F2^fcCgB?O}^FeK+{c`t$r^rncAa9ssNz7lTTRMH=45wDqie5xV2t@uquVw7F8ad(cV=yK_nz|kmV5=}k@1b!B zO6CG9_`xM!eKV$mE03Td4stBd7Bx!c>B60`;CIG2SV7wUuxkp4!a=v6K)`i%k>vo$ z*W<88(A09CV8>QBcejeyI$wl+-wRLPCpe~qMa;VW;Gm99g`XARL;Mv4tS3R}Eki!K z1A`@~y~gQ74jEnXoC6JWYrGZQ-30rz)l@VLAipCbBiV6|r_Ze&PhG{&C#?`9r^O)) zbAg{~2DAQ;n`Y+e>WS2;SHZwt9Pm8!oWMT~;+ui!$qCpzH;44@nGKJ@`;y_$(RIYr zVZ>tbi639jjykMDQ_0RI*OBP}5YhvJ1Rn8{CY`!{_C21=z$BsB;ZXupMcfMzVb)VMAK-@S6jTAVD8ZPTK z>i320z^}`&{-q6%c6Y;plzE9HT&0vBCXZN@JYo|;7=mwIo3?4_P97T85h3nA75t7^ z<7!K%81~?k8Y=B}qvrB!#3!)GZn#zvBLghZsibKZNpPz)t2aR8ciIFrYMtEk4VNg?87^~Z$8ig57dhMdJ!{`llvl*7gv z1aCWXsO6MV|H!LwrlO|xs7Ox zBOXd#geOv@ZySmhaz%K1Z}pkV{x0_&IJ9~aeNm_1hR;hVCu-ftR}M6PXA!&(B8sw_ z>Z7MqkyMewV36s~x7Nld<~I3hy54xUdVS*Hg}tqx+?8k4>QmhNZO=SaaeIUA4bN!S zv3AVA7mrR%S;go=qfJ#v`Ep=|%)jn4Z4E3ph#k`>;gh>-$pgO1d%+OF5tcvxcnNeh zIkU1l@-vN!H>=59s!u#cZ{-Id$Gi51wZq6~0znkBsVt*tJ%!+R^HiAGzTIjO*7h4X z&>xD^Q_?972jaulf=4K8^%nO^G3{m4=nc+`26qcOA?A zNKi309s1#VLs$T-uLByat3rKZnEq5jUK+-jcY%v*Npq@K$&83m zlzkUvJD`%jyH&iAP#M`f=inXsqc4sw28YlKdRyiwD&dpe7hH^ju|RXmLvQTHHbjCy^V{8f& z-^pmjlRObJln!w~(+Io(ljriUz5sLJ{Z=#mt-K3KNxx9*^RB2(Wz0AFTM6FLh})bD z>hHeTe%izLmA%y`?6x`(nEIg2u(y;-W`s+lVj{+qaiuEj;k;-2C_a(wWnahDQY>p` zy>?oVfe&3@IHRYl0}E-%#D<|;i3|w!(GrXo z7bp@m!e}B0l&2oy3~VomGD6oQcNO==8DPWBgi zP*eUAsVvlaan9`OjwaR}9pmFi*t*N4bf~Tf&p$9%sDtBmz&?0W3_#^KvYJGhz^;le z6`ad8RXjqySB_0_RFiH5*IoRBWiAO}eU93PD>B?-^iLC$b(*5lFm z6|!dllts4(&qTI>;6}oMOlc(+hdSEeYPeJZqg3eg-=n1Dp6SU-x=ubcrR~s`eN>`Cb zE=w%LH*u(|;G={PobwS|%w6C%GCi?Xtp1Pc%b4-e6Rxg^3>5y@>bA)Lq0zm}BrL^& zBWkB}4&pc>jH*iKBMA4l_z`Bpp!R!(x`SaU!fJjIJv9t)=|>SHlS*DaZ2h939P{uN z8f;Z0qp>Mo2mbBu|L?LcI|w51E<4ZtUK9fQEJoZ>&<3t0!tZw$I7VT4bq3Kf(2r`^ z!z2Yfi|FF$f-7+ai`9iMltLsDiqPm+P-B;-v*z7$GBLenRC2-_qwzxY@S&ihf7COp zS~UXN;kmyKhM3f(wo=ZfNc78-!E`Y%UR&%Mn)LB5{|}J{7sj5qt=q4nmZe| zkSR)6i_$Yjhw&+YxhTwcU}&Zy-x4BvXCZKfJd$d@t5N>z;N5aID6W)ETh=&cs>%tW zwVlasB7M9$9fz-7k}nTu1^y)*iQ<3AIjNx@`qlFrziN~OJ)f!+<=g-BWQRHEb&>dM zy2!R%3Eu=ij;0ftH~@yTvXjfF4*_9}V5(4591?<%xEoJWgw$i{#;nn`P&8U>luWS{ z)BA;vSXq=fCNr9QCAZ_WVfeY)>2WCPEp^0qTZT~KDAU{vGZV(G8!}JCHh|q7$=^%R z=IB(&6B_YWj7L0Y!lJL|4pC`eiIrsawE|PM%E&nANB6}s(tX;LH3VGT&ADfTLn{j3 zZ1sChnK|cypieOJSgO^XJw*3Gch9h;*r#1+4Xk3Vbi_2Ibfmo&g`1^ts}7VF!n+~l z^XoYit-9Oe7bgh2B1(7vDq)Xy&4LjLdLAWfcv8SO5FxJo}v(MMZZ>a zY#S5tJ4*dQ4vNMqQZqSJ5t{9lq>jXO!yuU}O?2R=o_@@deqrzmoYkmT7%r!?;_`GR z++Clk$&|@lr@J~5h4%q{q;ybw8&$+xZ8@74uMC@E*@84)yfrMptA4q}jOCX>il^}q z6YGMKNnr%{^JI56g36_vZQ%- zJ%{(Tk*|Y9i6(gDuN%GG-C#yYesinrDjxCA5G_KR0BEIAmvCaCK{YwAWljnZv{qc- zUpvB?%v>#!NX!mFg(dWE`19@*@52#7cI|THOR)k-KwU}Ht?rB_t2^7{2K4ZL+23CO zP2B-~p$C2-Da0#rDm|SBhGfBCdE$Bcam6Tv1|S3zjIj|_st=sNsXc~mnrJc3^O}xh zE)==u@I(HruRPCk(NkYFE-vC1m4k$Bj!S)yz`ls)C(*)=V1)Q|2ly=hmF_E4V z1^Cs~-Sv#CV;Ot;hjCp|#sC%y&av|;9t>Vq0_%3e@2W4=FddK9XUC2RY z4aN3xU&#+aeS$!E6k!ajpZJ@}e!VN(i6|?4=Y4hKm?DUilq|eE$Jf+NZ@CdQqAKDO zfC1Epq#ltJwYr(g4bFVT7@kd=Ki|W9xoOA!@QD5Is&_A2@F^Bq(0ORv#1#~faxS7h zU=kFomAUcBNn%x}Mm^rY0JJa~HeUCEqb@ryhHVZMEF%}cGAoxu5P^R>olOQ-R|r%! zk!!fcLA@?|o_}!YV?^>B>H9ExZTD)H&?MDbMEsd zsM&H6Clh=Iv5poI2%bj??2tg>W^Jzyyb|<)XHUI3=Ye5$&z;Ymu*YeQD(2>A0@Z8_ z7P~EwhkG^{W>0Jt@j#382wr!y&H@>$uZ^6;L%=7PkE}p&L6B=FgFR2%-TNh&+!olM zv;qQbQOSceR~Bzjnl)8{FU7>YKzefMfV=y&Zj!3V_yc{6#)L3Q^p3t_L?@C1nt-MT z_$TUgjV`F+9;^>+$BeZ3*CB8}lN8@9)*aJ~yTD_^v@4iVYL7mpN({B7ny*d8ijxBJx2sqgq-aXH~B;ApD#aZl9aN zh};M*w;haAMsiJv)h8Q7Un8f{#9Wba6L_kE)<9XgXOjm#`B~$`QlHqRa7gwCd{{}` z*6^eyUWp340fOO6Q&aN6YO{g4Fi-3VTI*%)&dc-}*1MWYB$Nr4ej8*zNn~>cz1!`~ zt8<-6VWn5>*!e27Ic=C}6XiBCm(ZAr5^XC^&@P((;h{gy^g+i-9y+V)*#n z97pRis!C3d?l`yTq?8c^8Y!Xhm-!zS;JKCQnG|IN$WGv4iBX={mY#!UQI@b*OCqU~ z6&lu2;YrQ{{2gOGN!mvOCxK?KvxWr-$~MfvjP({?sf5Q;Qwo}}B}Vf#uC9`RJ{;%s z3HGsP2mwu#(k(F_dQAci^z(x%TUm~ibO}37VJP7xik7&pkc;kxl&Z)8ZkJ&1zv2%H z^t{*L4E({fGO)MuEh5yXI#$v&+eM{{ZJ(eP_bZtD;EA(PM=PV*;NbU`4JQxDD$V4K z*s0d31Orl$2O;QyVn#AEdDXva@csy5L9BR!?DkZ~jRLS4?BWi@qI@u~SdBhl?jn;( zYzs~*z1BKHSvkc@GVx9FhQJaA@Y^a3zE!*}32ChfNSaE?%%VF>7mLeVzLxS#C3e+p z5fl6Z4S*(ag%V?)Ujq$2)-BmgTAJDIRQ{DLs)Z0KVFb~2?{ihdsN9Dj$d10?d;(XF zF%jwxYnr60#hQdv4-N=|AAQ^Jb)BE2)LJeO2)6}#Ph9Pznu2~m3)__5mFUc>V?fan zggRr1?S*}WfBUF91WUOpv=Ha5lld%C^wh#m)Q7%=2bQ&k?>W)#%3X*%w z@MW$Zjl5?kvc|7CdtS8aQ7{ab7FZXUS&fE*KWm6@L%r9sN>FPB0oR8`?ct-HI^TiO z4~WI2*;*K#p7$_(jy8nt(df*kx|Y6faMwb_|iz0m=uaPJe{ z@gGSZ;qq`a0|ibp%nKfCA_AW@N+c9Y`sJ!b5>7PBJe)oKnr7U?QtpZ_6;&VOIs?K5 zoyQq7BH2>g_?T*y8V`wESo#yT_HJBQP*PNB$axh+nfMrVjauheQPa1hy&C#;y%JHo=YPx34 ziu#dpCYudnhC=ARF12_Xss59hJ~HB8)@EhM#c)b#9fYYN{VBiH7cW)aQXem{hA~#p zhj0)6w^qCLe1Y>?P4f9ObuaQ)*1|6hKuCAsz!SH7L!t|P#eAHp@SMushQcTrq^r(R z>OG)j(b7UW-KMmbP=96gH?_b)6PTK9ms$p8h6>9}4MT`BhQcbgnbQDCyJ~o1k)hq^Z+X znchbbP5FX1p{cl5>eSHP!THu*TV$C~$t2dX7DO_2>%^_zF&McT;_XxkGR>n$MsiCl zsb6<;HQQaeP946|i=-8mG{19)y^Lb0T_z&eFQ{azPKchX5jdrd8!I75 zFR{Fw;n{8g8(ikpmXNa>z*lzkmQLry)E%VJ%qqVdBU$TWqr-{)vx18yZ;ySe;tEy1 z_ao6Do3<>2=;mHjjgA$mQtWBcTp^YeA&HU>%>jNXS}d$2{>@ql{O16HjlMnWO%S~& zmqcPii|gZ!(0)&YlYGELIeudq`_wg#JW9=Lx`rD}2#9v>NTcIj2<)s5a!l#E9$s6; z54AKLpUweX8vdBz(w+4$imVQf#30cJ*#Z-ZW}Uqnc$xV}VN>sD1*SVW8oz5%$HRNS zNB;9m!JHS&s@lf8FXh3!;aD~vLM(kP0Zy$H6;%-uiBNO;R$amq;^{`dQ3INp>G9D< zb81DRasWgxbqs>{8e=f2Y!8&DR;;2y1csi|9c0|6u+O;XrA$6~Vv&b$PD5XdS?K#$ z8OCLs;HS&!fdj~Kw5WYP7!^tn~58cGc3=ZmxF9^*k}lU5-q zLT#{#8NF64;f2R6Z)NG&O_V6BKUc=mUV1Q8q)-!2$aVaX-dNRu)e_s2Fvd)BRI zz^od<*0A`GARu@@y64yqE+R?|yJLX&$vCISpL^!OHTrMfV>B>ubXzV7nTGIMP~tBFYYfWyEpn~cbQ0vbY%pcV^A zMq@{9jjp~BF4{ynv6`ElfszJGDyutE_pc6X8%*U4Wwf4&N%e8x2o7^rsp{nsZXRK zpf(baa-HyhRCVVKU489n8hJ9oK+i-qs>O4a0dz$ou4jE$vs2%R8FVu2?tE68I>!*g zH@Rjvl`7p8fa%iptl`$4?Q{+A$97LHOq37FT;vlywdHa5sFuCoO8X?^kExoi;=e5f zfx_W4&Pa9uQXWk?-|?&b{&GAc~-fdQK$qhN3uLTr+8!Bugc-1c&(hNTFDp;t_7gBFbCd+NCk># zvdBWtY$>~Y;Z-5^GBF%EcAe=L>}7QJG4lzs_H7$J`P5@c2l9zlqrzC_$7*q``MWqo zm{#6yf+nicFh`qmCg#6{V&P5BL6Ma>8-5hVUoo@wAa7j3Wg^EweV9Ggz2cbIWdXig zGBX*SBWDdw)W_DQy1bO5gP<+3gCPn;@A$jBC$}2@3wOgU_?EYgi{u=S9WB&UMu{&E zbq-#|nm{J8wu60DU`3Ahe;-aJ(|70XR5Eu~SnRmWSty#72t6Qu-5S#>eSVV%l^Qa+ zGvVHGJW<`adZ|hYk`lq~@I~2G-(4ZgJdu^M6sH_VpEN@XhN$;f5&yhxu!Pw?4_=jx zcIYB&F=eh}6OR}?a8IJwlU4DiQX)6;U28M|G94j}<6+0|)JRxsq1e}Cp;#|uxWlg? zs!9*4zZPc5;{14Azpxg|@S_`a2{z{3Q_&O+!Y}I-w`FrFUK8PAz>S5;o}}aCDrXf6 z`kT(J4LT-q-!vQkHWWl|-jYpL4jnTXQd2YcfR9| zWR_3OtP-E*$VJ+GF&?k`>Uu`rWuydlLqD5{^|{ye!1BiCku3tPjoU$YK=Y5N-#~>$ zj03D)&liBNf)1+O6O|a?kEu&b3F$T?XxUgdKtt)!>yE9R2bfN2&H`pH7~0130pCuv zz=AXj*NRdd28-@A!-D3g)%gC^+0-Ih%>_z{NW0b$KX$t{OxH>gc+8m zxf$%JX9*6hoaYaH?LAP@I~8E>EnP3ydw^U(!o)2bv;xUr=esh{U=js#V+o}@W3_lp zpJ_$bp*giliFEjfWO0rI1ZEeuEwH#cT{rk1kwI-r#5v(`bd8eFYkR#hPJQ=aR z7r9TyF~lO)>h*WJT}$2E$llMIhImF&4pMYGf8{Oo<0L!)r599~zs6>4*N)3dq&_zm z{0PDFZA}sRljY8WE3~}u%$ez>qz2rgN#RL_jt&gX8g1s1>Rw0;>Z^zKB@vlKKg~PM zbdIB#V+JtKSpajKe!;|AOW7o#xx<8w*P*0db213>5UFj(NLaC1S}Z%jeFDwM zwX$*n(Ye$>nKoCBWug>!8j@<_!&~sBTuB9E@XJOcSwS36<^$ovGi!HZJybG2vf(p`@s^YrOX&q(zRKMNW1gspat?Ml1lAfGqx#g0XzxX~@Eg z8L`#DE$TX32&iN8iY(Dfs$r`~fP>!Ddr!nw61zf$bZiF^`FFIpBpUmf*t*zNkqD68 zHSsF`#q<&6EhisLEM@+Y!w0D68@4gmo(bw+#E{+~ZRp-HqM^=Z=p9s=zcZ0tRr!Kxuv$qjm zeev}6#aO*0_qfZe7u_(h?kF)Dr#Vf8(*VfgoixTB^hTE)=0zuJwZ+)z(h-8!2D!>^$SK5J(1u&XH zjmOkbJD-AO2hQlkn8EV>%eHBU_JpCDZb5W3zx;{TdO{AYU5Bcn47>){3x7`%nJwCp z@YX@`C~CW#V`C7jy0#lsYLWP^7Csmv&8)Y(#vvrkq*B zoK8-t+m%gP_x;h{Og^txhq#+PHvlWn;m<*iuH@Wz&G3|-`PsfDA&=UWs!_So{vM@H zL!ik$Vf%&|Y1IB^5g;!un_kQP`noJ0(~6ekzKe_Y0JYaQowSH!rZmnVL1?7MTg zWZL$+Hg;WqqDr*mKs=$Xt|R$i1B6D6%#4=W#qV?x>*dS`$hh^OnHirlhZaRDHYHgm zP}vi?w9PdnpEjgx&e3E`yZj^ujI5FzJENFKdWl<5>i-B=Rjy!igzI*I9U5#EYlr}8 zK$gEF32Li&-QfHiyL#QoBjy)-*i5@7;Sg%d_~2}Le%R+6eQM>tUQ-z}*>mFl*=xJ{ z+?QHqK1^yB3sm^MCd<#D1C8`q)&d==O1swED3zY;x{~`~R_t-?rcURNdi#1Sft>Pq zv)G$lrMM6m`n6HSq$mZA7Ai85nJQ&u=Ufm=IA(;yZyLog*H%7TIe&G|SFt&wrPOk+ za*7(PSOKlW%-ys|FScgd7Bhx`+d%z>aE-G?g!Zi<15iR{VmAnsIlN9uE@l5m44wrcbr8}~*%isj2EANoX6V9a(&=l`^)a1q;l9N~ z*T5=!4LdX+%DnHy+{B0-J1%=Tl0L>-(^pIULho?T@Jh}RHC9?$q*_+@K3cyEy$eoK z&1LDOebTCQ#;Dy3Y`K2X-tyf`z4klD@7Ns)la4^PyM!A#yu=mzyo-Eis|IOJQ3g!g zjo9sYW>*F0<+#fD^nnVqxv~ASZAL_djFLhu8m;N%s=Lbu6n$;^y8JRIe=*K;PbZ)d zXrx^2*)B4Meowvq&Ecf0h4kHCPAn71l3dQkw7chdtqTiR;fiW&0zIi>Qp#9ZNiWPj zW5{gZ)%MT#Gs6xYHIb zo9+B8pyK_eqrE@PlTX1aX-_ZGSqJ6^1TLknCGX;Wq4#ul6d%UEx>=dC`@Z-DzH%ie zTk5P+>78Hm?q}sFNO_w!l*}Q=O*oa*<2x9+o06u-6)Ozztn`u< zHzKj3Iha&u3LY1M#k=L4;`2FXTXzXRns!`=_w*8NT#Ww$*{PLXsw8v#u&*xZAXr+% zQat<6KKOBd?`y(zBG=GTL5K!ooDwOm-$pEPnYHP5&hdy1_@l2h2Zt}Z=*J7L_*gY@ zUbPNgWd}{|3b{AcnYx5Xtita$u2vcnKvSq4^4~#m6+K?uoxdk@ zZeoe1k9e~x#JszO`Mc6c90y>j{U^nMJdVp=C|#9ST~8Rtdore+jzs~xwiioqw3A|( z@e^`O%D>k-$>&WxL5D-{fU=DZuLpQ71O@Eq6~ORficoccB9| zq0f5d`bTA+7M*ETrRUD)-?hVLG&3odjS4t8#orKk$V!QMzOV{=DA>*8`&2-V0DfLZ zRRa7r-h351Gnp%jE__N0*Sk{;CJ-M9aQs0+-~BY)SN&>4mbO7_J`%{P7Eld6LIR%{^(o`O|b{K9}yVGDi zOy=eG?_qIi5&nF_g($E!FnK|BZY~;%N>%dSDe<;3=eEu-gIE_24(Jo1fiKa9Am#{D zjfMbn?vGuWm~K>BNu}o7_H4z9Toc7Z3ZOQdCcTDbEvlhpls})9&7K0+I)Dx?=?ni; z>PCCW%kw<#e*=`|dC}+2 z)y5`S>8!0c#$@big;TD}jE9LIm2osDBRU`hb}ItqmX^Lp(vH7R1(Rm|6vctzPG9#d zPUopJkC8;UksYRYu^6A8-IUoUfXauyo;QVVLGv7!1`lSyWlr06Da^f3*HnPu)-2vx zc>=A9(|kM`_tz(kj!7xu8!uNmW^3DVTk_e8@!|`$T7u#yIg8)F2whR~n??0Q4RL#6^P8b#X~2$CqWQ(N%%T zS&(^VHeQMDa>8q#bi9dFc{}jDSSOHf=v}))FiUyAwy1Zj*?#eAx!lkB)Y@I`VRqdh zN|8Fcf0(*V2-iNu z<=4h3SZ&zu=cnbo8aJah5)rp)vSjcd#6}Pb2E9SfYV0i9m`5R={W2mwj8dS0(9l~M z4zKajR=JSmO@Nddz2rfwssHOtb-6pD@AEFnt7B^uUZFZR!>L3zto=s0pJ#fv$&E{k zWoQzinMp#{5yjZL34cu)ku%x%$%Ef59_?mdflKHWII`%*tI8vDrpp1cCUNY*u53*y zgwgMG^v*uj^N9#Oa4MKFo$Jd{|MXA)Qk?0Xx$x{`-P)pcqlORL#eaD{Aq#Sh%8bWn zEjdKJh<|0^R=OkA`6kAV&BaU{jSPuSm#~OWYTahr8G0}A5?EJlWsWQi|F+ch6UAG% zN!F9|ad23S_NWQ7;IkTvkMrnJOoNOyDBd+l?Y6G;Hp(i~brMAdE>zN=D2#YaxO4a9V}|mu*`)@y}Yb~?Z0Tr zbvOGJzzGP3NX;co=-io(^W3?bj^NbUb5Cy~j`xbE&TgQE=V`*T&uu&b-=U)DFH}y% zH)y%!h3?=IjX?%~KL0gbre5bjja|#%UA5!roH5Z`TPC4dpgv!Y%~F@0PNc`EIF)|0FHtQ)|!~c@qiB0wo;F% z&d*r<{vw1}1RU>#=(biiIAu+QfF1+k$#kZNdJk1at(Cy~62c}mFo9On7I1l67wtXs zP%k+(2+LvDi5+Xy^{wKq;bhpHs2|q$*7ts~F(e4aa$a$@8fzcR!s^&+`%4AH49KwD zN`^{n)jb-SYTr(Vf^YZ`H{Md}3;h&L>NF|oZrWy8I=@yn%0f6i5AWS_7v0ls5odHR zMgA@)fr_-g9FR!oEMsT0JWjO}>*APr#&)Dqh?|R}ZV11gYN`&iu&fZ*Twm)p{s9m)$3M;FbqKGwtj@WfS6}7vZgu% zkPP0*zqS^=hJEw;`52v(No^XX>U(#vS@<2Pxn#V1Pz^HB+pNIX=WIA8_y*Q6>4ONq z$^P#>IN+&EdJ|QAq)CzDryUXOZ4<10y3m~ZYO-!uTs+a!i(FeRaLKi_mHKcUWuwbf z;OL-T_Et}QV@Ui@M2#4%3e!|XW-5k-3M`6Lf>e}ix^Xe(A?OXby4^%7lsev4)D=EA z1S-TQ)BSZ_f2N8)AHI+^Sc&cG0IZ~|OZkjcPTZxjcgCqV1h1K?xwbr&8A9tud-)eE zH&+V-BjnTh$0Rf2QM;P^h37Bya5<_nMBO*!nQsjlx25OrR??=k?q%%K^rgH?H@2J) z4-Tg3P`PI9a3XDQ`Pm5KjxA#+R!@|bMlpUyEaphivul-TEfVu9MyiK)i6WapA>rRW zU2J<2TbYbEe#(SY%31VPlqqlHeYBW0P_(=1eP3AQfVNRC_xR;kpV;7SpA2rKUdC3l zo~vK*-F!P0*Kca4ij2GU%2+jz9SqxICauPm1pvFcg9p26C#T-gdnH?A_u80v)jsFEMCCkShjE{fGaVnEesZWL?J*7sbz>PO*0?CU+KXs~xaGZw5cn2|d6cudS?9@h zgPN7&JDGlmr(}W}+j>^onTxG|k7|t-kZ9UbA!CrN_?tbm@6c{#DB67<8S4uTjZ&w_ zOOxq3TJ2!CY=D>DDWQhP`qqN;tFG*TQ~+O6vmD397(85$*Q>i@qeYH_ zc8V&&Y$-9>AR#v+AC_d(yIAfgVu5jIV2MJmc>oWAAkyi6jvB$P#;Kb9smIz+V%%hFB0Sr?+{Pi^V=vk1mGlC%w76#)WOprD@y=ox4&dsGI=ha^SB(oc zQ~6EUChHbA?r4AN>wUwV$cLvLaP4DtJQ*{*bF-_-W^|4dndh}}GZ;48ia{c3vhO_x_AFH5uHN;^Kl&Pfw6_L-|T2cA> z-#vNu+;d)4qShA5Mkhtmo>VfPf4Zp6Gl@K#?`*m+`zE}Nqd#^5G`)fEYbO63*T_N@ zERr=2dVdY`N%u|UeYYcXK%4F+8}B+++51Z)TjZU3eU^7`!DjWJB>j;GhJy{=v{-n`Oo28gpzV6!`fruLI@2}b5OutiG@Rp)Edvc zo$)8IW_GQqoH@PpdlMipFU+rtJWereW(;)My6ccj4hQM&&8~%ES6jH`qVr0;Kiumm zs4h;!JqnWDP8;cf=XR5WX^~>m4{X}f3G}>!1D>~vjt|Ef7syI$vz)2Assb3)>WA%t z7~PhS%1+;jqymv6v)PH&E4RsvoVFiWlkoRogp8*~aQdO^QwUf3`8@jEe4y59&z5q7 zm}~st1;n>pK92sy3%W9uehfV4dhTy(811sgDZ7v%k)8a}Qls+YyV@qw;mM!ds5?7I zCRFI-cKtBhMQ=PUj@vq%`h+iUUn(&_-KePz$d0XA#mSlY3$_i|6hX{Oa5~*P z7P_Shv(j|%n{eOecjMmm3)?B(`$8UMG#L7 zaBmN_9p(}Fprvog1X{Gv^AjM+;7wyF+Y}I|P9{SiSO+fgJU%hhFukf0hv5NFJ8we} zN=&BmQC^S;Fli7%bwIPNvX<@w z3lmY3e)R&EQn*sf2xY9RQHsrmRMwQ1!3%xD?k$?`WYEWBf|e3{_){B+Djx$TqmBrf zXNRfhp%=}FZ$B=0Nh2?*^o@szHJWQD(DEyeSgSeq&u{0?X5O4INg0F z4uJGc`&|$1*b^?b)c_-@6hOnT z5dCd@hZbJSdblVvr!s2}QaLBwfZA?athBNa`-jGAyLRmX!!(jzD#NS5Hn~1!;k(g1 zoQHsdUJNClqgcu?vTa;Y<#qg2Z_5@p1I0ktt^4LWCVtm(T{%U27(4|n7-W_8_wPSrQ)?#f#GS-7^aWr ztQnsCVy)Rp>Ul|CqPZI*jf;+LnY9gzBqHz#cKOOTfc}XzeVz@9zZ&j0b%|NuYP3Ua zn9AKURnt@%&7c05HUG&xs~sl0HaQ4dvYo*s@DjxKG7qN@NlD>>5I1%#>`MI)wS$iq zarh_ZejKi6eudogL|DGD-?=6Okay%e%C+OMhE^|!yE9f=r&OK^{|gd{z1F%TbOs4; zOKz(j1NBzP&E6Z5tss)9-AO4tFaPAH#rdb6f&R|u|LX^i=ivvM`kph3bqzY0&Zj;% zyel;X!fh*xgQKID<{2?Jv`Q_f^tl#@o=EEDre!nngU)N%QeCjJk8Q<%00{JUYaX7n zDgOmzI%5xL4wqYlCAJG6Ws&`5zG%>(ef>y8O~IhvmlE4T`P-X3sJ&Z_{kI%2E6UI^ zSeCe`MG8+oU~i)tMvw%5htk?LBEEQc>6j^2&ujgeL``^pS9brzdVxc_B*U3BFikr1 z%tL>m7+b{^G;_%=2x2NE|FY%ilarA8ji(kl9&iHGQEchB-ECvQ8E}M~3~&R48GM;Y zS65f3tBbCqt~ymzo$7SoPsyMNjS$LMT!awGjT?*07_dxeBIIt3_)rd?@+UgKWcGTV zwf0{7RJolQ=}HN;JvkZN|TBp1H(-@>ipNTNN_c#r|9KdhgkDo8zYKH|@on z2b2D}qQ`$dd#>&8x0ht_zbkr!YC7w;&thWdF5zRty4fwJ{o%9cX6?bSKO6M>?YW{2 zW9X~B+3Z{~nD*a%_T1XqrSQM>+?xC@4D(+YWK!+){}&(Lh{Ig6l|QpJ-aaUL!)g`? z)~kl~*0g`+oDg!O^V28JU4LdasharXK{aXn)4JL2@1MKA@zgVy81M^~cu((&eH9t5#dAnIFUR@j&JN4arpn@ILxE1 z!f#KHznd5BpvIrg;;1ZcP8WxD@$g^6<83kP|K;tXot~cjAw0CW-3*G+>B&cJ_y*R{ z!w0t>z8!|!sTYUx?Qg>0XQwBBl>gicf8RSj`M55c@QIUmS}gvfFycJ?W^3_f7;twm zK0Uq@{(150`gn7#xUu-Wk%14x?;hTg8TkbjgD|g2n9S+Pr$W`R82iQdUxhD)ae9lx zo~-e~sA%gzm_Oge3O+6Qn=rs(TZ}5~giNX_@mw#=xmUD{dn1gC3IAGX^Zi$U`L)d9 zu(wv+JU#h9J`ont?3BeYd~t#`y))u8F>WhM$Y$Ms|JC=0_@e%WR3R}r%GToZi!G=Z zw(-tbo_MF&Ufezid?U|3QC=OD#Ym>s-Lx>-u)!SlT~2in7V%9n0ENT*UnDYcPxt2s zGRe2*Rbq!Q%=cf#v4%p=zzN&cxY&94_6WcDZD5(5>Ol7APJB`+`u$g7tUuqy4jf^J z-VWn~jrQl{h4d+|yoZ^#fw5$;<1ZRro3fEm>-6MKZv|r)yNkQR$*0F*zlLD~^;+Or zZdu?OA#t-4e%zCdl$FZ(VJ3k>zs?653Pr<&F-S4RQ(<<$4I_lj9E3ez+%qDMPLIC@ z56eS57Q--ji2=f7PX2{E7I}K(+WPJ&3?csxG-`GR{Zd3H4o7$^JS)W7J3T%D8wlIf z*^Y!AT=8vwbvBk|f?`{8U;@$S+@|~#8~MXSe++-@F764{d0=|N%%9nY$bQ`cL%&<; z>23r0=5owVkMA~}!^l_DbV&kP5zje@!G{J_t&F}+p|Ln>cGjM`G7jd%jCIC2f%pR9f)wcmal#drD->e)_&m8gDr7?YU|AXP zaEt}3gm`Nnl+MQb#f=Sp5F&o>;az3G@DTp?v8-DtHURU5|9;mxO3mspbLuN<%pQd6 zNaz0a`VURxK`P!M=R`&;bq^sw+p&nVE%|z*Crl>1JyvbD`cbMTQn|Hn$madN4kr-P zm30K^7WUweBkrXhC?~BTQr3!}83B24p#Lk|w=kK##RJm)__KpR+dxy<_m3J(Q9gTo zucZ=KI`3B^AMcOOJg`CLeBP|uRCg%SxsqAdQEml>IIsgDtT@TUl1TJX(0!jAh?((? zs+etgcZa0xLEPQymt4XSEMmhyyj6i$f*mzm1Tj1nN(oWI-YRWY%zAJ2tZ(Ab1$xO; zlahrjUm*;hsXK&v>fH6n-+`vzb}hpCI=&o-A_bZq`Db8;*Mh{F(87@6Uk+-px%k?k z9@djdzqr}2XS4n^_z1;zzqm1;wt=X!WMwVbp^a$spqVa1SNvWG1v@M-G(`T|%1Qq$ zpEM?Vep1b6{R_q=vVV8DY%q_QghKr>H#z)wWIQc)3^Z?`)E8p8JiHs`uoq_en?@w- zk&y6KkKzOeAUyQqLGf}JWU_L8qkc2SbYx~h=$@YZ-)N!W=&#sf`OcOo5{MltU=vPf zY?7KeUIy(4WBL`Yo}u~R7Z=$gJLU~RJucuaWy5gyk*DM zq^O($z8)udd0jU7xQ(KnZ|L+O%O8rdE|zkjW0VnrB(U5mDn&5kZ!I<@{4q*$HqIYn zJV>Fygr$hldvmoJ7C~aDjfJ`6%+vgw@|=b_J_z5wLjfLm<>Z4}q?r&mNXKmvh~bA{ zz>I*AL%Eg_>l;oy2#0%Bc1HdXPPIx!?Dif;5^8?esAd#{@csz4YcnY2rEo^$!P`NZ|M6Ol?;!h#(KKmyRV;M!oi^qhPYXHi!C zuFCmlXAT<$hDx0PGhTLFPn!ARo%=LU#KOfX7}9CeGxfyd zs6x?+q34CHj(ih+Q!Y#Av-swJizRZN$5*IBsh-JZ+M;~Vgtzj(om}CoR@C(t3?V*? z1DXr=ApV3pG&mYF$K$~khb{8K#cS(luNCa13rVJM_^VnsyHSvYGxr{SlVW4->iU0T zT-&3+{_1@%YhXq~*9DtEPRu^dbx1kyu(bpI1BY2$bHPI>4oLKz3(|221Ai{MUCym2 zL2iGTygsS+L9-(of{J_r(VV%9vlplQVo=Sh=i)$PPT2wRA|CN!MTt`B0AnsS6e&0yWCY1Vcg zrH!ynO9!%0<*R-)GPOOQ{6P|XyH0pbM~P8SnvfG0R!Ho(oi?35-ikq}_F_BbDdh4t zdfc6iKldu0kbEtI=)4j5L>xoG3(VR6w)5OKL=$MJP^sLTP_f!(N53E{Zp!(oYSj;d zkbYejoby8_C3LKkM$gkCwmrt66Tuz~$BR2^!6)*Ii|vUIitbl%Z*`5qWd3$!4%Cs` znLTRV!;!F?@n{Ja54-xI=t&|*7+SXp9;2Sd?T9Oi9x%MC#d($YoZF)d*#_W4H3W0f z5zA;HppJ>mw#L)9TH!!=tYdZe1SxC9hK0$#xIOovAAQzGeIT$TOwOQSRhGk?DMiAH zb_4jg2Y-l!YLvhte;Z*bFU0_NKx=~ywqU{rvK$_qsmY!XR91pxLHQEoSAkF}X?g;~ zn9U%pJr&^;9Lc)lk~&ok2~AFdMD*a0fKy@M5df5mpB8|s9gORhcJ}6YI3I1*6&!&5 z@G7hm0^9=tZ!ZQugetnczJA3?xKWK=Q)L;PGVu(*7MEKHkRdl7hO;f?Abu}I9Y%9T zjBP%$vpDMM2;0~J5eH^CiFuX8$dh^&hm2amaT_8O0dIxw!>CiD87r*FbY`L+tAYF}gzRW7Wckblsv0L!GfFXT6=u z0UIsu26tTg zBg`rojY5Bs9*UrC-C~cPF|RYNQ*WOVhDudH}J* zuwaB?_`4m%4XXqD!f-AQBTmV~TYb?B?+Frg@&}tC3>wGs22vP5tqD4ymElo!YV3aC%d%?=gxM>SpTy;Q;dX{ z#j7F{EN+WwUyst+curLBD^=ST&)2=(x|xj;ido!IernaQ=`B8)tB276J1;*`7B7x} zSxvWt89wSy_xi&jN0`kQ|K9599}%hQc->;wj2L(tMVaguDD1}gyQt8eun`YvqWnS3 zVpG=iRl-l-ZS_eR@;74S0~B=L{EQAR%>FIBp!!JFo}49Y@N23eDVHMCmTr-h_~O_e zIsk?m50-`mCI2EeS8z37TpU#*C&Gdvj_v~**rk!iRS`W<4+b$LPAtspY}{sk0AqrY zxhM?t)5&xFl%NPB%)-t+_ACX4V`u~$C4SRTcmTd5u>vnv2+PNn{cJE7p%M=2CJzq{ zMG)UB@5qPBFmC>Vc%X@)cP%5*;K$4f)49laH74&Klp40eI8%TEgRxDK;9>-Q1oKv_{!Bi4fdQNW;c?8gHRR7`2{Q(& zShVK5pvuV~6(M}vtye9%+2W`*n51hlMyKH_b|(c=mkg#ri?`p=X_Bu40!}Odvc`qLSnzGYfpPp(0dK*y2Cd$WI5uL|I8O9;o2Gi68X|*=pj#N63con299L<018Wf*l>m|?7^!tdR#2x(WU(T4e3+>h zNG5`L>>z5oLWEN?)v{I57}ppCU&+Qx**QD@?4+Ec6w?nvNKqvrndBWE&V4pmLwOS( zQzXy@<$0pOH7$R#rACqZ1wqdU2^v9G%awxv>Q&(?Fl=_RCcxI^MHyP`ClSC33n}7} zAF?@D|LH`XbC6SnPb+X)GpKFT2wo+LKx`h^B3(?;b{OMKsq{uNI-YuZy<|R*7bSV< zfqG&<)VCdI94QOOGOuAEoVobtd6_KW0XZ*@EV(0D&QlD;4w+7;DSFA%S_>9p%ETks z72{SLYwLQpm*Xdae?%LJRlQL@DQSBzk9X>x?RWA3=~FX&1wWh~j^kmA{6zHAg_!hd zI(rg#w;-!!3P4g1RiV)wCtFaxsQN~5H_#%37<`t4Dk4tk68%#J|pDS%!bvcO!<~rD{5;RM-(wPbsTq81bHep2`M6ZE)k#e@Lx&L zM}Sj9ndvB5ss;7Tzm<+mw7xW)8C5oz2l*h9ltFIHSEWgsqOgXdB1_{tIOA%E(o*%* z>I80JFb-r}Zkrl_F~%%H{~}L}9#5wFe2Gtfr@s<(UX1Q=EnW{7X1Tw+c06vqL1>rF&`)wr!vI>iTI@qg+!@i_(j)Ln+Yf3>0gK5N*GT7v! zR!JTd*tb81Gxe`#XuBh%P|-HRfiQ6d&k9z=t1s>UR|_bwhwk zH;TwstLJiY$8uPP3{EZnjXb1S1*kj}0E5CnWXETLrt^asm57tp9T>>&Wl)^RGL1vb zXeI}HS;7pM7OfCTwGmHVc#=Tp0%*aFd+Fa2*!hi?N1sBIx^WJ^xOlFYrON+aR>mFs!ku2%% zfm#xbyu*(Dq_Lb~A;N5~dCy}#Qrzz|&7n=nkrlr8N4+byOHGG#LbxaFuqDYtl3GG5 zB8Xk)ID>T{IOPYysyR{#nHdjRUTaK5!B$%or<>HNc&*r-om_u?JbHka*Vm)gkAH#} z{6hEV4f77Yy#SB_q5a&gynMAYl7&>nHPXQCT-g>G)xd8N_k=WK?u5vp<#aqHYD_$5 zD!*h>8RXnq!aXp}2Q|`rmqTJ#*VROMa(#DnNqGMEF+dIfBAoEmY53sR9wJ$w*%YP{l(qrAa@XAEQXnC9XF&jBh&5d zQ&-nl5kn1Vf*3$M?T`-4p#9cA51W9t^W0%bqZ6h`KyT{pQ-uQg>RYo5Kl-d=+ z?thSFPcn}m#+uo0ot;O*p@0#SGSYH&Cb4>~$-Va3a~C(R?vAw9h%<(y-Ima`nJyW! zy>wcj+cvJoqq2sYt;|mnLkhXcNY>CiBU*>1M3{>s{>L{-v@5j2NO-5DXRUaF$xB>x zSmTF{#;LMeD3|%@$fH4F@2qMPKB&vgnHV`z8&soG19282Cjii&F8-vEAmGW_1mqAu zP*@}^dVijZxw3CYvn&fJc6URS8Fq7m@PuMH8k?{ciaDL8Km%z&Tw>{z?^!})KA*)W zqihskRVKeo6+V7V!)i?Pm$S=Cb@s5G**JdD>OAbvYe~I0857Bfk;}Lru*O&@pr_jy z4Vl2MY{xumDS?|wI2q@`G4B&st_l!fyvu_S&kXQZO9gs_>T~Dn^3yWbcoSt1!PP@7 zd#I^F9%k4|q8MEFCr)jbin#FgAdV!_N#j^Y0vDuBQP0cJ z(>x*J22Upm#BA)O^AXc+Bxlr|-LurhnI&{#P(;pYL+sWXU!WJ$Ed>LEdv+w5W5SR@ z!zylLUi6nE`7MzTSTo{i%GnOID6`Z8#{(S<@tSPS#f^0ZuvX_EQcP2Hli&H#D;-`( zjEuo+eEbj1j#dh^ilIvO*}$@pe8o;Q;NGhhz#9rGO?UM>1^huRE6! z=D|`FFVCw~8g9uU>dAk!-gGnDAQyroW6&R?$2Jx38fsN+T%TL0^~G{RGyyzvYv%uN znK>m2IZ;4|lV44%i{XsLY0+B(?VF`!V`{-JmBH$P8}BtJ;SN$PRgNVIL$FEeb)xPd zPGg>hRw93DkqFA+Mhm47Qtr@S^8;-c;m*EZH#^m2JnbtvUq9Gx`ux3^I3ulpz>X&{ zbfpW>vHOcW8-6Mhayc$_ZGEIJm6)fRha)AC$>vcD*a6D-B{?+^u`&fh-G^eaKrMX% zk%try5HCkl`H~Lt>d1A6)7LR-Bc1L5U?Q$ z5rg)v6a-->DVn`I%Co6yy|7GPQ!(gNx}sB>!@jPkD}D`@LPEQteRgY!NX~MwH}$k9twJcWM_@nq$%medRor?XTvV{;iLb9n>94kKbF# zGHUK=e+o5;<^1^%*l8=ZtA>yZW$%Uw;3#_CROTbDaQd;JIh&VY+n^JJyP5|)fZwof z%D`lXMwvB%+|^^(~PR z(icn%Fx-|bD=aA=Rl-%4V9^L76ury5-u(E%L{Y-3&h`|3EiFs|EXeU`;u@k*V-bkN z0@-KD_kKeviCCbqyi1xNE$Y|jYIEu%`bko*zAyhR&0E3?TEvoZpW^~5WYj}8G&eDM~f4fpRF~qNckj+2RI~vc{WmQ2W?|B?nI*^E9?@6 zn2nK8;)d=fx(_t^Wy+@T{RHCV8M-v&ngY+aLf}jV^e9u;35{Y$-$GxT!*7VK9>hy} z_%<_wQu<_$H)npO93P318V-rcZxL@9ye~KAdDX=d*pCKDKIKGIi(?z3%zJcb zQp$^ubvVh49sqHq+RS7I(o3`rK#Mxp?7M#b+~TZIR5odq0jeDffK)u%K0QB>)J7&9 z=+lqzzcq*O5!;5dMRX0li$s)_v4z59&VEq!B5>Gn$~5Z7UufFN*?=K+CQXMjLyl#@(kD7PpgLoZ zZaA7C`|!__Hw^OZh-a_)4*jvF2`SzX7>O1U4nye!PJTtpaGwYIQo)RiFsqVh^k!XQ zYF}-YeMkFvx#3e})ViGrrpsYaKW@TVjSBQZle9zYi4c$NJ|(k1U;Wxr+@$!vh>Z_Q>(ULX}<*-#)v8(W`%hc%vnVij#YjM@zM&Nq)LL z8aLa;i`8)0KhWrZswcSJu;gPI&({7Va;m{CnO$&dt=T%&b;_00o0RaWtb}bGEitM1 z#TzfZ^io;enAYvMDPHK0r#t;H&FwJFQhkqxQZm@Rf?h`_SsTmTKIr6Cz-GwI=xFZ+ z_4A$w!b=yJqb3D8lC6|bry*;GX6SYZ zZ=Ua{ntgby5D`r`j#W7 z#tML>EQ4UQgqiOPNgpXI!PhB7`Vw208gf*}6;TMbUgD#cU2|`)d0AOv*bDPnTkZ8P zzEI63Qd_m%FE+>1dOWOWP$&YN36*zX?d(bn-zv7Wa44F~H{dm(m)~pERNm*5eCbV$ zB(ob(mu!vp=&%Irr>|UfE|p7Ih;=}UsN~|&RDMd>{?4sT6G0i3H zcBVSX-`YFmYgev+ZQbQi+(0#?cp%*lft@C{>Z|x}TCz5CKF9i#6jVY#uT|mR-4qf) z=vy2I4rrOs0?|*!di(QTUn^yqKFVPz8DhBc2J&(?Nm%vLxN;4Fs;(a~3=H2*L(@1@ zH1@?M`nw`){}ltQLV~E4wG9DKScYgd`awd8#wGi}N*h$3KM|`5GS$o$%{9h6bMl+F zdAo^OXmHw6diI%W_{EjS(Zv##iDuQfV@P(LP1pAzZLk3cOps_$dK=BUo(4J}A!C_l zYgueZYQN-NY+PQMS8v=YnCeOs*@UeHv&%ojvAf^Xr0w` zmf^9P+NUa}p^TJ)07IhRv>T(l@2dnN|9YcJvHGdTUOrS~6=afdnQtsh$H@tmj^`Pp(EYx4S;biignQA9M1tsdfjlrB-U^3XtXNh{UFx!P5Q5B^== z-`TSUKOn&GNC>iVRa0KIpAzuS+^9)iV%OIXw%MNneI6HoN{UFkVE8t|=-G(~{^NS` zrsr1X29Wwt%X|V{(8`xh|J39Ck`Q{H6 zA-_8Ty4&d)=X#N4l_?R%WEoo3pn^10|2ohvZAb*;lCvOT5Hlv(mdn|i3=z_|Sstrj| z0+%YBxveU1-a?aw){F17rLl7F`Kqb=!{UW%Ybt;KeKnZ&n?b*B4ew#vxTBjVYLv$> zO2^zPs1(@s&ZUSA=@q)m2%JGofX z7tej7%S4`OA@J?u%4PjcysaQUJCi_!Jac(NA6k>fxdK-JX-YA-Xvq%|#~3dDWJ)1c zmv(y~*e)Y;lkK}+B|VMMztr0Z)ddmJ9RNsWDCpXwc5Z?=)?J{R|)-2%4lVFBP!QSt9LL zuy#{$O4n`M&2Ct$_hx;?#w~4fP;JqyPcbfE*diYhFiuN%&W5*)-rbVCc=-1F?6%Px zurbm}v}jbZWV)a}bsdYHJhSS^hj%+ITwb2<_O%U*oH|qUiGFx@oF@;1b1a?nOc1>p(?(@U8ef1#$t2w{mbE}zg=XJfTjkPu43^|O>@C6HzbZKc3uj_S6Q*3x(v z@cXX|msx%gD;Y$hL8&c4TN4ap+kqfXJ+hoIZ<;D>(k{LZl>B<_!kJDohr`tto$LxD z@)lao9gTjRWmUwAWB0;-AmxN9cBMYd7|e=iw5Zechy%(H)DH$NA59Ef5MGSyc=q|6v}`8zT0Y z{9=`Mp7)jR1P`nq+lLu*x9I*Cm~{)`Q+}Fg9vk;NQR7P~Ombk!%#7u`qu{c%@JU_d zGK>79Iy%4Cg=G(`Z&46fp1_CrwP=@XZr^9fLapOp(E(C^8UDJq_t#(jKZO%A8KAKM zUvQa8bJwNiUy7-meX_}OxL}86h~wggabH^3Xk#y3&Ehzxe`D>3Q-U_z$r|a=-w;Jn zh>;DX_?AaaHP4x+%703QwyBt`@l@nDp}Zk-Dc{L^1Nmgn=-=~F)ApxL)z;&t8Wx+w z@qBw$JlBTD{?>MEHzLEm&yCi2T6pt2v|%%k?PKP2p>bonIVsi>ri1T!6>-9gFOH{5 z5WF+g#Ie-Jq|^d1^jC2y>?*1OQE92TIb2^;*t%XQnW?c>{38KxCJG~_I-wSfM=W_3 zT0TKKS3*7&)CzO*6;S2+uG{(=^JdH9!}v=tmjXOp-b@_aV|#m(f|6Z-{C{12;_6I zS=%$)^k*L1S4y10V+zp1N>zwySJcJDbM9K%{O zcELoI8WzWfuwCUxVU@h^?gOdL!o#y8^z%omEqkWAx=>u-v*Okm#Uhv?=)C3bY<%;I znC0UV|4_pf1-nbpZ@et0kCys9WA)vN&7t%23hOW!O9{u1m<2~n{Z-tkv{x9hO2xg7 z7Ad&M?pmAO{UELz`--N*P1ntUtu5*Jq#KITc`Po4b8*IvN3rojR#;5+F;Hi|ADfPd;ewj78quz8_OVj)(%{T2 z6QEpSe&xk19um|p5(8;A4BHGWsd->d2dygavjmSN-i?XL-7X$1ambAh?Yb%p_04QY ztj~|FZ=yZGg6ga}_lDH&T@At)7mDb(VxmBPF*z-j|lRac(wJO1cF$1x=AFk#a~wv8r~8!uPzyX8}4$=*y8mM3Of zYY-@m1&UYWf96samgGv_+C#G}q=Dxh0RJ%FiLG$S2K8YXa;ngm=2h!Jz}f@UoZ42R z%F2D#&upoaf^XWTdjyE4hGVghq7Iif#pWq>(;H+v>@qEx6vSZ_DipchqL+&cK`x2* zPUj1cbUoz74Uy~g%Xx?2O-w%q7uL)5D_4J*5|-?x8KugKEDWw3TN3PsA)-(82cGetALK~2W zL)Spw736=yLZA1W{7xLZKuPt~VXZeLAkBWpz6Z4is;wJ8t6kaT!C|d>2ddO2WvxSF zaj<3>9Wqzn@tFv{&qi+ERwUz1RTfxhRi_aM6?q1a$ra5aV%KdAnY#676Cig>LKSN( z_+i$7obq~}V7*|aCT>?ZX$zs3jJW;Ca*lZoiQ?cO2!T&2-e0r z0&`-zW7=wB>r9TV@iuq!=9t7$$<7?S?mfEcK8E!l8vibRX{kLBZk%;JDdW{n-MeD_ zo61)#!30}T?dc6ycN|N`zE}80qMx$Gu4~w<#GA+5&gZA|DewD22}i`)H!f>ufTb&H zboN$N&!`?=cc=SI32~!3;89A4)>pxK_k6h^z?F4qvjKFA>;!mfSLX33IkU%v-xa$S zJL}~Y=XrULuK=Lx7EJ%$N?TRF$a?m4$qMj)R{FLOBIsMmWBRDugw1!4g=DE^tVYP4 zPtxce%wIIFeF3vxX3`bavT)fAHaajg^Rx=o!m*tO)Y;W5uk>fLx~X}QV9II9a&uUt zN)#IwU$<8p0D3@$zZwic#JpP>WC1)z8;JMEc0^wYTvH9(YDy`zg2-?WK;AMP_n4Wi zPP5NIch!*k5o#67N3kjuV~sl25w|5#XH6q(s5=-G8L?dNw0luOYw3oPR^u-Ni0lBdM^4 zV>Y$yk27d})h)#GJy#}4JJHlmDvRaqU+&gNfnONfU14o?ZydMl65ZwGF}L0N6KcAB zH`mEj!O}In))zCdneT<@uW!-d+$YRiyd|O3L-Tm7v4&?V7v3CdM-K+d&TgHbRUbN! zqg#1TWGuGO@vY(#ZcW=6YDaqv#nQnRr4)}U0kh~Wn;YG3mQ%SUj<{lc!$I=f*Q3>w zkk{?`L00X`SP#3r=Z6p5T}XDA2?n6^4Hkc%e_=j+vv|Fo_N&naSK_RmT2w!& zR_$YJBeVGDxhqsR+OkbT(4QVru~bjyn$2qpRU97WcmO z9SzPguY;9{_lWhc$0x37zghRz)B}->*fUZXaFcHM9y*-*j}cXN&8}n94r(qj6n_&z ztUQ5HoX$VQlo<8&t!CC;Ztt@uyp@G**wgK`8;kHB?1E00@dOcBoc2MbaGfii!fk)@ zoBcW4xMh>dhI~}&YP+jKRF-I8)PG2=UKdoSo958D$iTf87)c4?xr<`kAmeSKh<=K z1%lt|6=S~dZgvSJ)PuH?@b$?ag3zaY^AbZLqIWK!Koo9j6B1V~eG5R{Q8>fITvpJ- za4Iq8AKKk9qCvB4e26>u6DN$aD`^368toy(q(Vmn=IydY0M%sWn84%{n8g6?rOMax<_as|nCc z-7&jYtC8`sM={VuN<*Wd+|tf(*3;g6G#L-8skRitF;OI!gRc-GYsEiw`5}?k>u$Z9 zDQ4+dB~us{mqv3hH3c%t;hM}!J+taaw>~bnVt)Q^rzP78vMGK`x!6|)cnREC=92mm z9bxU!&|)4Z95QP02f(#;Fz>B8Pt#4`5MQ%DV*4L9laUfpkceca*q@?#_#1VwN+ ze}Xtqip^U+ro0}!0!;vIm#LB`bu8P(%<4z?}A6W7VjLAWYeGEc4Qm8e84&U;x6 zqsZ6mi^MH6an9S7T@inFXOP0`cELe#qRpDP5HBis^#+!>(QR1B(oy%-c$;6>h3o1m z3kC*SYiDy2QeVu|+9BqG6(CBZbtsZJD6P0@p7zntTNQ_Wl$m!PX<@hlkjea6=&j)m zQpuoX6ffmm#f!xq<~@qWkjRzyQZ#a@Jw=B`tc$FaRdTyiGKzcM>s8V%ARTS!Z)Cg2 zl<_}S+66&foja2lf|Q5p&RDQR4*TZcZx%lNZR!9#CG`J#}mfi+p4jB*%shs+hR5`C1pwV!nBNWya*7Ppw6&M zcXeH@6gD(6yB?CUu!Xgm`l@s0^?rOsE2PfEw(McaR?iXSwdh-eYnh2-K2r zE6>t>qwdreuiBor1dAMjbT8GQJspKDYYQ}7|dXmx^Emc(S--BY(J}|WMGmnZmidU+psd?3jyRjnJINgJy+dI_T3Yp_KtqiL$ zd^?3}V*qK{ON)Jlt>un80_ZB}>X= zx>uQGP4bvzuE5<-1e`qbnK7CfNX+0xAA`rG91TSQyq8k#x53g=)|C3xUD#=*qu6C_ zdhV+Y&`luh67v;MT!8Fukrlx;twwcIzuBKw;_{7qz41`)D}nWdik&^Ndi2hgJ6W29 zok!miyc0sRM*=w)-|UO!d4BWfmoF@9WZq%cO%l;~jpb~~O1iZu^2&LiiJp4~ZM=Q+ zuy;YNi>R>Bq<4$;r(!gZn~bf_4q|%)B3NO;?X5@+UONa<;~bx%4@A@f)VnCpRAG~-R2vltTT#AZ(AFEoU%0%xW0X88ndEdufOq0=NV%e zR^TLE#xy-Z9tR&Kk*Aq`77x)_sD>@NJs=^m=>X`3H1-F(CjNFLr|nRrH412+AMf?2 zmbWj5>CS-`T)DgFJD1MGTXq+J(6n?ltBkuO-&*B`}RL`hza3b43zVm<1?+VxheutaYgnAyYo zIiezdn%7-)dZ4Xv0P>Ted6QIWm|P-hIuBt=x3#N|Sh(28-~vc})iLzpy{e3MtgMVv zbzMxdm?B$EW%4d>n}aADI^rhKTW{HMmz_Tv-%OBeH27?0xH}j~{0czK#~D_*n|L?t zI-_^Y`2>^HDy?(xV^j#Isn4LIB5XCG>ZmcpPY>-N_J!0gB3h4fbzQS541g9z^S_&VyMWv1y%cfWIt+Hj3%x%9P-B?-4zxqT&>gdmwLTKHwk(v?Kta%t+oShS||-Wd@-2T zqvBPe=gYBuPdC982F@#wG7GHr27+Pv4Y`^`wX-;yEcq8_G|}yJGk(k!02ay`p>;mJ z`l-d_KJX_fhNrBUMXy#Nej4m(Hda%vTyc#BlFs;ay3It>I7M{k!S{4^d(bbPi+y|A zpC96NvSRyV4|HW%vNVV6^s z7IkIg>e5tVfxhc@1Y&DOY8>*)lihV_Ts&UgqpCg^N7?Nat$4H`+{O>{dkKBZ%&B$d zJhgigZq-?1fnU5-^4Jd}u0Z3&U;3JE09~5+V|r0{FI9s1s#o?3Po0Og4~K^uHNSUB z^}EJWwDjL!)(FU(P?KN*3>Xkkvxn5($$lVIr5MWN9w`QQ7fJiA8b2tuPQfty4+*v{Yy- zAGcVt(?QI*hH_;}tg94MiO}%F5ZJ`P4@K)~ z{zUti%#An^_r}f2ZgLi|MY6jp^M1sQj}s^2Uii^YIY}0S>8z-$*MGRNw*JFpP~~;M zsD`iqaNhjpm2*G*(ZwHJ7&Y!=?xWT0^%J9}*?#TRsrTQ1f9?I#YxQ(^YUBL*^QU&` zGbb+oAW1Ha23eo};{Mtc&17)#AF6Rxzh7NAg@58#<)FzDde|$2-_DE0>nASPRWqoX zSFY`D4^AXG{`LBaX0X$oqKE%ol8>_KY|y;U13PhwUp6VKaWWlDUOzEwb|-_`XfS9_ zB#nE9d^MlVP9&r0;5Vg{ue&CM!$29`Tuyxb~YUR4}5sTKjxIq{6eqp?Bo#lQ0gnY~WHkGfrpY6M`xi8;olJRKym>#%%Ql$Ei1wCr9yq%O8eRp}k z8tKP-{NHCc-6z}+-Jb`4sgm;hfBTOcdD2^c<9^nRXyCW#i}T&2T0Tmq{GE{-=8Y;D zEgxn{ljZJ@){&8k6NWnfu#q z_X*k?H$XR~hZVi?>9@R3dpS+$;9lt-Q7pfj`$f9W5;9SVnz(;fwA&&z^Ho_;fR6d8lYlunSJdgw1s8_DRJHQn;t^&}ci| zi0_wf=a=_M4Be=8dj5-UhxTc~KgttYz>%Jed^Csb(wCNxQku{=B4adFn%Cm+;A>ja z+p>=$)kf}$NaWU%%cJE1O(si*?v;27eZQg)e4ejeIJJG`X@3Ww;m5nZ{jR}=Y}3o> zQQz+sB*1$mt)Ke`@7`UvDAQ*jl(J?rP7;stsLtHFIax@Pvu94mA8C@@x6*=>&85qL2}Kgl;6%-t+`*j<;-Y(p8kQy?;b0=OM~1mx*kFDk7d;LOZ6k} zNwl&hZM)l_SGP{4Uc$rI^03&2ZYpok1jlsr{T_Bte(X;Ax0P(Ud+>Mkx!)(7uWhU) zy7nu3JwAN;h}Dg#(wS2oHyf|}Ml7`bC20^*Q(;sPpOU^&B~DGdCI6}-kqGbeN8l0E z=n>DrVZ%qfin7uc)TlelNqrxi5y%jmGWBT+EjYMRv)*LRY24`Ech}t(y#{ zV+^ziZh;dm^ z+9b80EQVr7VJ0+hO!#q?vuU^Rc=`;s zft6~i=AYG65EgSH8hRZmvad>cw3x3_l)$W3)jX9&pnb0ku5$3V-+ki#|1WrHB-L;jXX1^}VJ3t2UH-S<-Et!x&=%3iepZjFlKxrt%hGdXLZX%Ba_U22R7Mxvn)OfxT0>nsSFg`Pf9WMr{xp)Xg66R`tqpYciJ5z z%k?#V22PrrZhJ`NuWjpxc|Ce`;ISys@N_1>RS{1i_HK*Si|{ANkD%d`?j{@TuzpCS znvE^Z!aJ?}c;`J}B=mdQOdR=M<`#GPtq#w34A+0M z{Pz%^<<7*in85p7ORhR?Q}QI}SHVIUKM9+BOFWB~9`^=>Md-KA>`t8M-fviEH2iW} zy3z7c2JiP+-E|cnX7HJ1=kP9Z(8UOcN4BJehJM8<+FtAV8!ooqBu(49`1dK<{%7|x zV@v(cQDo!-(Om=_7=Bj7zZY`=Z)L)}G3GI<_n*z3kkOKKeXU2%Gs%uS2yDTySfp9+ zV&&UoNxk-E`3!EBeK(!?ujeWq7)g%s%7=VaaQOC|2YiXolg1Oq0q^(xp(F zHYhAqB!r@8p$nT4hvEDX`t*Zb;~rXTrwQ2t$h6ce&=A^5rbui)f_Cf(q17Xz@L*JA z9NdrE4wh(eZ@(_B##T9kQd+$O`iqTW?M>brf*M>JLZ@)8) zjSd-Wzv$G^Sv^iET_dql9l=V2!2!~~j7>Sq8$FMF0>nFlj6in-4Ee9`XpZ#>t~Gtx zdA~PR!uS!;!=w?gjC~GT*e4exg6z{rjgd|s1P32^_R6*kX?6y%z}R}H%XvO7a(D4B z#ZI#2ELS+5x$Pn1)O_x`h@^`%p$|p(!<>_*- z0fYnznz^5D`*ZdpNYG_WLcsx6Q{rgg)VURqU?+GE;#cAhJuHDSZ>w=cN8nXY}8ddP}ACt57SYFgCB*LMS z?EH2_4@SXJu%bxOJeg`-@g*IUfeS^-zuqg@k^i<)pjdFJhZ;D!VBtP6k$&brN;50@ z^EggEI1?@Ic9ft=XDs2gH7-C1u^J}SB)dEX;#k_=>EJnCK`*4ZfYn zkfE2^ZA(Rc@(EEF06~E67KY|lXwL@`H0~iw>e+QQ+_Izr543=>Rpb0G zeaVy+0Gk~3yY>4qL?{BQyNQg=@^;yR@1b$?mScP~jiH)F8!J`!BCEtz1gZ_}oVOX` z<6H)XQ~4b-WvIxS(NTFW_P(J^RL?;D0mzh4i=^ulk27Pt0v0RYe!Nq(IN?EVypM7X ztDk;K5BkKdjMFmHto2Q}lrAKj4(F3%#$S3b8)g-f2c*XDSIN%uUSl`FhkNctz&z&y zHk%;?=d3?xkm6tut~^;s0bIyw)EFKBp}0&c`(ZWfAnmClOON}wypdmvOYAo(J+fH7(!3=Lgu$_5#*6H!xBq=Qux-H=B)m zkZbBLj<9oupy5-+xl4A%3XTKap`kNUSyAAXhCOSgKzuT8ss|tEu{FpP-gEQ_dO=B+ zit}sEAi`gF+w%uW`MJM-3iZJ!suBEkzt*>_0Hy6UE0=q7gKU%<53)v{DT=760yQG? z1{U55js%%j>`so4z(ZtV8zvgyc>Bj_kD|2cX#|hsvKv!A4NUnM`^{0N1SLMj{(GN%2mJLKLTRi1+*(tP zpkV00eL0O444_p?O83ZV4gLw%N9Mhd5Nf|A?Xi3Z1eejq-kbyIncLAZK{EJtJg2vH zg-)mEutJp2@nCMM;Zg)~@<2@XnBikqCNiwbP3NWX0k&e}C8w-OmDBDvFFz-WG^~dh zu<|DyR*m+9UUPSsV=z*qESL-=WNgBal$<=fr{R1&9|5a1KigyXKg!a2)pm?~=jjO) zh^d8Ius31-Lu*gj3{9(w|5*9-k>`J-c9@0E2B8~)PPM*8Z>m;a8}!aedD9hCMHH&46I@QNHB z{NIW``t&pZA=<^wjdb&*A{0*1GSpg4 zdaD!sSI1>)x5R$0YmNBfyaiqJJz|D_K~Jx*mutzpkc!rTa)H161W3%>+K$V1Zhie^ zyy+qSr%iT8@!e4|DYlbK*<@mUp)~flD|!JA65y_;@QYRQq-l*H=pk})$D5*&NR=FW znt5$cpA0DqH)~>}tQ;c}cuB}v?ua51eWVH0@al-K6lDGH`=iMILe303opfuje%H%Se1fy&CEg^`$D?u)O{;la?P))L`uf8km?dVBr zo1s2Q-EyWFgRp6;KDh`;^N@XU^Zl+AMh-pj5=TS&$nXtX-Av?ot7JNmw<7phJTW$@ zQ^F|3^h_iWa^Ihk&(lnSZu0=xIldV}>${>kN<2&Uf!@$%+WJnt4DkZqp;y;S0YJP< zQYGT9Nd7Kp;TXzhP)tqIl!QRRq?Uj*bv8CL*6eqNEf$Z7n4cNXi&w9T%A_@TzAh_0Hvv=7eb!(_xZr66m%F#b*tRTU%cY|r^pd}91ZS^_U z5nCkCs07x+^mqvH_E*M>tdxJNP%zj^wHCS0=7Go4TI*xQ{MUpB$Z*`zy;~yM(YR8A zZ@hw5i6VG7p~h^cKGrARK(0ANT3?C3V0kE4F7V9=po->TOOH1uE_7DNpfM;UnY7xE zl-=Pm`RBj>>8}a@Va|t*--#j=c$b-Gfq8+top^pFh(VIx(72Y(A7}NTq#7?Gx0K=2 zuLWl>aJ<;F_LLOy&|5SBt18W?!^bgXCR(iwj^{8eh#WZr7ROJgxJo%RAwkhom|bj_ zPp^~M-L3=Ql)U?mbEnr+>`=pW73?N9$}i~~MD+b}|NU&*PkvHQdxKdjKvRUD2XA24 zW06w`2Pcn?@)*fk{E(tEay_q*45c1TlSEzv1h7ZWk3S0Bwk$r?Vy=bB+5ETB$URo+}jq_ zW({5IHFBsF`~q^cZD4~`GP&5)S7}qtff%#ngabPkc;e2kQcJ)#p`}&X2sy%>hKCe7 zyW7r_##XEzDLR%Q2Qq6x$ka1(8kUb!Hh8QPsI9?U%pwPb@TtcaqL~>MBrB(p($)RapWWmMsL3R-p5=eP zCNW|T87Wpsn^@#a{Og93g6^!5)q8r=IgVG{LyF`|&A%W_k=9SxW!voBzQM+iQ=8%< z(^9=#Pn%g;&zq4?1S(b9y<{%&6jPWmU-oW^40H9pSdTUBPQgqk=}6Xkp$d*;uGfS>*)P=t@gaP!Riiq%*Itb_m1 zVh;r?oQ`Fc)FYk^c0DDpsWb@|WR^sWJEO^%9Pg`V+yS9*PSA`~*Mip4BrDG3F35&D zE42pziVw-(es?Ri>^s41XaX}So^TU*FDtXk#gECa21V5yObNQC0umNXSvsBpt(h~- zVm;2TudT1ICkk!;d&=o;w!zy$9Qj0?Sv%`KiJY-HV4{lI?53o}+!rB!h!HejR8$f! zh%LhU_87eD5vMt)|8N+ywJy(jNwXtQKZOTDc+19lUa^-YmoX@PJXXh2ph;Nq;bITr zwN6RII>^B#VHB;ZjX<&uQMRq^hLD`aN>nI5~mhd z34@Q=Sqc`O3ld_LP7ZBlsnlQ2)p_vg5oHMl>M;CUr{1QM!7TYzF_{!D_P#V2^ad=w ze@|X3DoX&~mA);yO z8K8miTydE}Onr}Sx)`0aQQaJw3b#n#@TqdHDI6U}76$Jp|5#7Qsf>fQ*0Y;H%jF;{ zc@5eFJ1D*n1Rg)STutHw%5yl!K zMJ0+dn`HUF85v{7+|)C<2oSkJ>MA2h@T&+(7q%;b5X-&z^358HC#N<=Sre(`*BT{?}-n1r^w<>3ICv{{CD2MuJ7Va$(z~k z46nQP+}FM1i~E=i#$vbfLI7YmCa9vY2AFZI99Y84yQss0a*&~i2!nMe~(^QOwI#x?@9d7hG#eaJY_$!eDE#_A=Q6DVba zaKI`Ulz?jYGOoMzq#825VxlI#vda4oLiHlXDXl+Te~w@1n2JZ8^Bbc`ClA;eyVUNx z8=LHk5-|13B!h;_8TWDiGW-RQIzW1465q9s_gD;-gCWUMEZlzMWcE0Hw~$bQQ1@Y` z5c)>CRp{>sdZ#aOh7J^a(J>^#AWV($wbNV))25_zs-qEhSSIX!1-c@N7zK6WqpMpY zC8tvGf{Zo?@~rTs0#f|E;Hh&&NI(#qS|&R3U`Wtem>L!eeL9qs=QD%*z-Ma62&rB1 zu1&>0`q~e~wDj?9va+B!@CPk$A$*uUuU42v#0ff+(GS7!bWm%ao}cBNU-H$t(w&@f zs#_5{pF~DZb>69lh7KgL$QUrR(7rGoq>o?Im1eMri|wV#oI^S83gCk&P>4aKbvmQ& zll+4^NlCE7gFjb)hlCLx%A{ecFPA5jl8~S<2z($GF_oJ zBf$yxE;OaXSiO&h%XcS_<4c4j#$s%oJ6$?0An!P11m)hYeM(4zonK!s0bA9TM022S zp|lA-7M9HK+hdO=;Ooxdkuka^tR94gKmF;NPK5$)Uv4GAUrE?028@GmiYk=*8TbL; zRo(^$y3g7fH{_JZLT-hSpO*KwF)NAV$dIrwGSPkh$|OQ9p^nOxaAdmtv-|&To;lQP zrnS)HQAqMh@D&Ot!8;=s+2PawBPl)`mIIkJwfo}wz~q}6ZLy=vhpdc0E+i7~gHuXl z)?yF?7oO(@89QIm8Vd2kNdOE}{lhr}vNN~^8|S4zgs>5cs+&T!2?~|wMX@zZ7xOG? zel!j0f%iO71ww50d5Q>85UQCeo3RW?T_{_-hr^)qm@&J~2|dW#6=?ZFa}xp|zGpqk zlt^?1Kpqd#N(iMj)(f)^ZWOnR7{1csARw**HW$kInIOMFMzvpKVRBE8)Pl&UK?6*Z ziy0>&;X&3J+YxMvH}_7!ZA~On_u9_|JX~r8zy&!VN!=?Wd(WzaN(EGkZ6d>Gyx9zl z!Y3XjJItAyQXFjXe^QPfY*y3n*5+6Z{+?x6dN14PFC(+YT$@v{J)!L5y~rz~4FfH+4^iEw^8SrD+JuJ7LRd>m zRnC7$8xD=42v>>_KykDE5|d=s;tfHj!9DaU;S+dHoTo>j4+h996WHt#PtnIA+Qes1 z(PO0|niyA$dI}g;tzWjGd?!X`%IxkO?U}jx{j226rT#EQdH>Q^m0g)P zwVLnwsa-tPzjhoreWB(g_uZrPIC_r0uN<&dX^0oDb;aU1QV~XZMo~VS{_8LQTp-Q} zNg*wr0E#~$T9}K|*83=b-(u3-6Cn#L$r<-B0vUC?@xN{_eL%S021B_nypqXv&@mfEdhi&96JbRSJ9hG-mV|Bzv>oPp7e1?IA*Gq>-G||>Z zZH?M`k4FG~OYtc6y;*xnCb~fHg5@{ded`9G2|CV0s}6Nwf^HL=O}iPb92!42cy>G! zaf@XDrF4*>L+_kBDwpvTJucl7h=^e5hBmDyK*a4}w&HY;Jh(+muTc*vwUu5N1=kPw z3d{+^m)@(75WI;xL0Dxr;Ug(2ne5__vm~RzP22L@{ZJL4^lD4k;!SE?prlFS+9&V0 z6HK9PGOpB<$?p4g-Pg`{ZVx+A(xS<#nIf!j4hGvVim$%oPx^kWP~!2kkrD7SEP$%C zqXSr5rYu4$9b>rUF(#Z(JW0lfSqmgVqcZa}JP|VXAdiNwNOya|*;D0hCH26$P0rhM ze1ADB2NNG^o;imsNtaKzv3C0GItZ-`2EV%KaxgcS-7^2Co>r7}fxxm8-40y0)=!$m zlT*#)m$n0A+vZT!hUAwJF3^v(%#eI{=tAbvfgC;O*pN5wzaT>bx3EQ`|7Z)OA(zu; zwS*}wv=a^X3EL$XpvrbV|E%==NN7xY`lPsQgd9^yqiKz`Tl^ORQ7Cf8ilKFY0q19& z@8QUQ!bsPx;30FV$*9!`kcghn4!!s6UYfiyAI@hDa*IF9^54z}v*g_(&$B6!lG}<< z+YuNDS6JR!k-10qjbyC9e26HEplUMpcU>ghxh>OT;6^}uky^i*;|1W4fiWWVO6IJv zgf4F}HCM4f1wuUpnc7lXGf3h5d2eXJvNH<##vFkzQXvtqPxFf5br#W7zX{EJRR4eF zff30Hu&3b5{f(-f6ChHVhxO}1{WenXjH3J$_4d+heg)toB(N*vjnI?GovcXkyjF*7ohf0WbtL?ED^xMR8!E)M<9&fV3_R-?KrBo zfW#Wpj*5-UBfZLtQF>qt`sh#sD`EZ51r*rz)v5c;QgBPLpLVZOju1g8RKlrB+4Sa? zMAs9nT^$ZnGO%$vFNM)WkjcRlrSfp>sr~CDMDt>Y_*|$1TkZ*=dcu@UPbkss2K=y8 z_9#C|ZR_%&Sxeqxj7Z~o!JzMoQ^%9gVo46gwnympNLC?$W7bAWREGYvfOBCvJ? z7O?GAO_!9GxtdLjtjbbf#)z!uJmc3gHgaZteOy{f_>oNam#$>f>27jmFq_4w!8Fs} zf^IKtI)pVQDfFN~US1>G#79E&u~j5JhVh27p|okbBu$$RyRp7@e&bw;c*<;K7vFT^ z>C5M02$X~HWI_J?Fg|i^l4(q{Qgp=aBRNiYn9_Q8*F>R2qQ0e9nUP5A2h~D8r!@;)MgGO*?!;VmJ><5 ztbnbp%vn!N6eodqUr4kNHEpq#w=gRGxu(Ka+6{kgz)OCi;4^5x^Bh*#OzDp{|t;J*L zq&&H@>q401t+nKrMLw<iibba#SE; zz-;&))ZNQ>^CNvF{EW69lL&%hglR;9AyrvwYD0CA?M^r0UIW{b4rSXu@fC0F&N^0e z#vrOmr&KL2v|Acqju)^#&h7hl4e&!}#I7KL@6VO@{MUQDICms1!zo28lVMwD z=Qz*-H!vu_dZciKI7pPTR84SXp?KYHnY6^aV%G4XemEjeJ^QQAS=l;U|?7#$TabQlg_-KimCl%bA&Zi!UP?pus76_^?Aq=q~k zZny(Qu(7`G>n|-S=2%tx_NX|5BpaE_j zoRw1OL#FR2{fY0AmUQX{b>_~`sJZ#{hm1`L9FRr>2ZIycx~zU2DL!SQRTV6TtWaRC zB7Gfub)_Tm^Q*e<&j{8U__*K-$_4P9w=Mbcs@sYzAI)cjrkU9glxEZlgta1~O9Q+y zSriolXj?ggQu0RW#Z06Zy4KN|t2ZW--72~4&R9_m(pJ-MyF6u46+nm0z$IL!N+^?i z3_h_;O1uxsRnQZkqt*Dld-|vGH+=g$)QeeILN!suR40cBS>{z*Sg4jz()G{Ql1tM% z>ucpHzS%j}(IEMUs-SCT2Faztq<;TJ(aG!HU~vjfEH2}atXh5H7f(j}x>hKgbIbSE zpc+iGN%H1ym6b(4Qx+lNdZ5A^GM3pqlK7DgRZVSZpjlwksql}=&ZG$s&L3&554DFO zA)1%@*k7Y}2o8Wsy5JzGUlicY1)3vjA?kh|@sX{+LMr^S>3@?Re-2cqd%nIbpXge- zvqKl}s@w2cyj0@&()4!}s?{|$-I*002PVK_5*{NR_^KflG|}vjuMCU)=22+&DTN2f za4hdPG4T|Np7G0$iiEx0w*Nw{B5*EN>RAoBc56LsP{SRqdtMEH5*Sw;tfDEa_Wn3h zr)Y<@;NsX~Qo|}Xl|LwVihy-nwKk#p$%g(D{C5fMH_vN7-w_uTNm|_rBGaWpfy-KV zXdijeAzI%rbP1xqX!*t_VhB)RLLf<+%xWLa zipz<{7LP7fVwwS??C;*71&xYX+STWJ1BI8ah4f9|Cl^n^>hovPw8)SdRwrKqs0` z>V{&dH~=zyo0PsF1t*h>q51qgC!nwlMvlafc)N2}m46@<$c_X%xpC4`d{qrI5nsGl zwAbP-w>{5HW9_(g-qn@x1VCq{ZCO|iBYxl9>Z%&4^$H~xn<%7Ngq{X1UIsHmaajE3 zkTg@yTJD=1WAP;kf;mTknxPh;ab%PjbwtACr8JSYgBJGq)FY6#Z>ktWA@x+&n=$DKt}43?!{@Y0aWL4${CASS>$Z zLFr^IJ>}eARpT26!c`V$BmNyFLXC*hZ$G5@KH)n07bQD6Blt-+qOX^3Vk zOoX9X!U+8(t;Q-^>0azxfVg9!*{Gdf;ABRrAK|BDpd#~Kkdy$b(Eq?Y{I>PYujR35 z19$XU{$_V2eky+?O=`huVU--K3+bWz3Y6aTe{s_aFy;MzyWd`sjPp zvo3NBgs^&4si1T!4osY3F|YKF0{Y_VGG^*Fyj&gko#x;#A!<byqhHo!Z;mzDI!`-Y{n` zbR=SEOk5L8v9;~1ZDJ$RQAkN}Cp2@TDaT}ZG1OIxYjw~Xwv*m#uMhMzlv*kye8-9C z0wb*p;iR|i93%s?K@o_ISXk1d=ny%=-HAclHUopqv7tRDi&LuQ9#n#D(OmiH3Uq+ZT)#L^9&x z62B=VH)6GpMleRrWu*THlS$E6(LdC7eY|ygC6!$cGsCmzo;N`}Kuo<7sd(t@Tl!x( z%|d=iyRgK}#Ni!d`3$9!r?6~3!v7wRGzNa2-1{~fC-y6)xaqS3g$ zILMiH>F-iQ(~vG#453HRkUpgudV?5rqsbzQt?i^JsEzg*iP}?0eDg?Z%#@0-+7nX} z$lq0ZNyVVnvTC|jZ!P(y7B{9Hbs5?)o=0r1Z+K?ftmgC*BJqX_D)$WJl(}ZVa%*9}~((8{OrP z7IoD+ZYC2E-6N)VZUEy8QL=!ZT!iC8JunNx4kLMPyz=(-6=u^B5MwE$9qYWdg>M^p zrgxBD!8L0Vy9~1l)r|YLwgtM3DzoTj4g(j81Xh|%n)o&q0nz(IF*47NvAj%Eyf>+b z#Y%rwAAcSx$Trt6jR?>I^3Yt&ZR3p2tYZ}mNA2g*>x){q*fU%qaTHK?IfhOg$1KW@*^R}KN3fQz%Xbo{aLSjDHX80 zVT^9${MOl5hy?yx8!7tR@BT%*)!)^CTkj$;2WH_%2fmTm(L7)vAtKpvljD-ZODH@J z7jYODVYPr*X&MGU>p35TGjJ*UCV{@iA&7#0+U4OU`gK3h3(Wy?k1bt*?-`LhDyGZ* z&_70ANOj_N8YJIVWdy0`uq&zokiDf#bEz1anYN=^3|7}&!P*r=u16AF=*+8Wi&Bkj zMmw|agkAb$?Il}VY72ealcP3<#vY?PKXKp8+yDnkrRFxup^Qm#0q;3Q|C4D}<;5(o zJ;i!!o$sbF++UBl=w1;utknhT1@47gDN&iqJ*T02wJ*OVOhYbZ5Ew)n+C>ehTMIX; z2b6;18|sN0&ZS@c4n(s%xL+FZXjDdXr-_QY!x1H5HTZlGNsA#Q6nS| zCp*7~!k6_6GVkz8+m)?#HRg&M_?wFLE)x?q7=&0ZcNmZ60_q-df@Vp$dI;A? zpfM~46meXUVzE_HNT>o2B>zJwEGoX}H_R0*JIL`0>qwd&IZ1eDn5EL8`xnxk_#OC_ zd@*#&y&L~&kkR!T$MimjKzpo%dnW#`<1f|yIjpHthG|!s&W}#{U+7T`)q0vO?P?A# zjawrd`J*H-YD4yC5@0!Vhk{@@!5{6Q58*=BHS^SxstGyIvCweVqoT)W>92)|*m7vQ ziArr$SEIY{_as{{X@!;qa_R@YBo4!UxhCzNEb1cJ$)weEDEWa=A}cTIk6nE7P(kSx zup|(5-E&f=;1I8%q@+Up5qXTtp z_5GXKqUa}YG|iyu)zf-D97)du=?g`EU?GdX5NtLyzajS`zAg(oX~ugZNN86qK$dN(j^aLBJ~ClT?II&Oln60ZG+AeYfQ zZ8RqmjLH}~{OAUU%BLXUdLX{kTge6CV@1PB0p3~;e5IgT4?f6gzEy_aw@7CMOpdNj z!6yX`H`W zklu#Ia)x~$NZ*03fhDcQ-V!0$*&W;v#N~LLn|WMF`4r6fa?dyU#_?jO4}`r~Bd#j%u-n+|M^$|Z$Oa0^L5>KqT|wIIlZlJ zT}QkmHIw(WLF{T1{Nl3MTw`PiB_c+dWfst z=Ns`Z*vzzm>^=D=@gw%pTG#1Fu+#`V9kDsPhZIS-8DCtqipDgJgkF&R%dIdordTSm zMsJ(=Fp*1u+P4KsdVq$F%ea8^hD(Q~5{-22bou9Y0M=XX7cEXDD5W+$KzvzcrS-r4 z4B(044-Xw{q6{+KW0tRJ=%hskAyl^4c`L2cdk*lQmV6t4J@WiJR7}N*6!WyT?hM=p zGH|R^FZ7Fr|HNqCjEa18;$oMc?E-N-p1-l~Ua%%N-fF`Q@mDkj!5A5*`9o|j&SJYy z%&MrRwpvCWJT+I;s@H&Umhmnz?W{IPh~%okjx`o43mJP&t@t83_sVc9Ec=ChIJDt9 zRV@cHwdS~!S#v^^vne@$6=hAFE?G-{uKcafiwGy}n=9f7Yo^;2s=)*<>z4D^$VSo1 zeXa>Ad&S}ohea@b9BslYmXeWN7+>CPHfP;B-5yDN3lVQ%-`8xoX$VR+qYgDuS#Rrcf6%x%3CUah3-n z9$hi6W!Fgs&eVJ8p@Zv$>Ml}`qc5d@e-rsDrhS7DoRqR0s&}TD?N~s63)G}26Jc)9 zVa(n34OU2s9JQ9}?kTj`x1pNqmE~Sm8 z^s(cX7-8L-nR7KkAcLgrbL-#5G%UX)^4!|uZ@>G0-h2@pA=xq~9;aX3g7`<+M0@hs z6`ptCTIRNAP`DD9FD)|TTzw~=wyAd;wIkeE#&FB(QDQU^3gU84vr5eC-Bxj8lg0cD zLLx?L^WzSe;txnIk!NzPX~|s2;W3`sQQQBsdQ>Gpon=`rP@g+4+*md$`n3+Hz$JNB z4yFvHf2&S!DLuVQ4jn!FB%%kQKXXSLSZM_ixh@f{76Bltt`DF&lb5XVw>@PEN7cOK zgeU!SqE}neRot{F2i$1zNj2H*5#=eXEZG-qH_BD(N}P>%_r8cG-UP&rVN+JT!-dT z%@FE!QBoq6=(VM(h{IQ`KM`sfpI<%4X*S{zTohFgBF#42GLr%#~X@(5TIw$rkeUp0Sf-nzuVSP$LT2!!aU|*BwGj>8+Px3*N0uw{?L$^j1 zpGq1c;b=Ybr!-t3n&RAXjqjorSB=o^?E5_;@_RUxMluDYA=ha7S{>U0YU8BuI?f=g zy~kH#-H9XxZ_5Cc#V?KM_55#co%DA9tx->+0ATHqSBRYV ztxB2K7~LE5nNv0sYI^DE{e|`UTjSCfVUhmXJnjAUak(kLno^X6eU8cp z7EIe)-{iwgFFM^(zp{qa7Z;n^#`rAU*NQUvi3`oE!E{$SK0D0&jo@Oxi&QA!r)`Uj zxtRpIXl$+9ar!>E&-}%9H&}CeT*WgOK-&m%>s~Bpvl8L}1z+=)wNdcE$qAV$0Y~}T zBmo7$z0dT7M$m=XLtx_S5=dtfM9lQ2DvjXyXYD&7qQ8s$q7sL;Hla85#Ax68NM!* za)Ibbg0ZMPxL@qb{UGLkyB+Ed%NdiZ^P=hVXV*0dBB|_?-~S$-Ba~b9C`bg*?+ru(w+2Vo|TUYB|qRu3%ud z*w1C)O*)mv_kDVi0XD>EqTx1j@DVO z;z_0}>uWida=N%5uz(;)XvJ$UGd5WppjW}^m3|f!hiOeItWRz8xVmz%bz7(#MsnCf zs13-w1Sz8eHUm{g&FaD_bOJLHlIx9WP4Q~7_^H9NUzaspDMPpB#fP@+pB zf-&mbau!&vh>xYVSk6~a70Ll`@%eTCOdBs|XGw=FYSb|mV_@4`Y4Q%KTTga3W-na8 za<`JDiVAT3B{l&^jLyBi@y1`GPHmdOr6?j#K3oZCO`v4FRNJl|Xl*Iw-BKYP`c80i zj9A?PrkBy8T{pw-+*L&_5j)=zn^b5&fkh|DzG!9CZjw?MvF@+LD}RJ$98%l#TxZ@o z3%+`UmIM59_NsWLCx_DB=uXw9uvnxJR1_!C8I+=DfKpo!M876QhW%E-?q`JQI8r%5asDf>&n_I{*Fy0wy_ta z?z6mGnbLBfrzqlJX3ng?ay9_V?jRqZOg2Tn=eN?psn1bM?sHK+$*NK+CqQjy854|J z9~gVW`CZ|Ou(pcQs4_zIz@Sg!7A;|@5dO&GK9n{d+|3;aF7W=%&}O>$n_F=o2%*PI zZvo@K%0s!PUD|Q=3E-BzHJ4FR;d_+SL`S8Gsj+F1hCHbi!Y#ZC(_pHX?P_N{F7J*E z6_0X-xUPR$g{ih;{2wigJ#@~MTFW5TL+;>aUTLMHV|Lo2-HK-(+NSX01wuz!N*lI|6JTUG! z`v{j_u-W)`0Ud(paJ-S~(-@FFBgb1&{n6H-HjElr0=e6<4<2Gy}Wl-n%*7H}bXv>Kf-DN5aF5v~2I1SD(aKd)4(Q=R;FZo2(oGNF@ zfO|D$bYzq|l@)Vh{G?QfUor(+`dM*yg0xo|_@pBWQ594|K~JsD6?Y<*79I91r?&AZ z;dB~hXBO~WU0bd+p#*w1^Rh~`_YM8g^WJ&At8TurHykLj z=0Phff-KBAGR1n)T_Yx}3*GwxtV&zDT$q>v5w!3W_!&JE{Ti0}3wwn2I>8VTaicfb z4#eL#Ssw1I^oL=CAK6GqE+tyFugLXOnzb_`Y1&b9KI(GTs~e;iLrt1K)V@BH@cWC* z1WM;CW}!M)S4J{H7&XL`y*%V)o>acpHiB7kO8m{WrY1E^+=Ta1e*~4FmyCy%F}+B& zvzRo$vmNa*L|%`U-(}F{SZH%8DUq@%Cbr`5 z*cVB*O6rkTtCtN1Z3HPF4L}Z-f(g$gvyGbz&mWH4Ld6GhEqU|VJ%4;cT;eP;$e_oZ z;Sy)y@$sGitrJeU-AEYxj9Ot}U@*%`U`@QLTH(G%UYwRvx|QBYUyYpr&X{~&_?Un& zw&uiv*|c_dp>o7I2-TkEo+hx)N;cR(+Wk8;|*AR$b-08@otG~C8ukF9!m&J zrMGP9dxv~n*egFe_AqY7bbd3%UF|m_@XjtXI{$H~(iqFjt*}>4q~|ZHvT=?udt>~* z&Gq$7A$A&ScMl+qw$t6l;qAP?EoF7oQsA?M`E zFGqEMkXlbKZFQMU{0)h%e7Z$DIRqiUTPfd&kW9=00wW1u%pc=fc?d*5O>~-ko^Xn(gn^z$!pbiU8gb9TQ z)s|FkDokrbX`y>LG?v-|K_B~Bu$?QC@^82*F*6+_wOC+Wszf04?@|V@eA82 zbK~8ByG=e-j}0|_U)gxv-3xcB`HRD_k|re75OP}hc19mWjE$A zx$VOe#WycfU*7Qj8h7Q&g_tzxFKGA5$8(FQ-7@>;aaxw0Wz(ofov`sJig_Zg3Nyqx z&+H4|c;8m?zsH~el8QO>?a&rzDQ<(ZkgGD#kFRJ^VL)G5ZCHgAiqwQ%?w}Bbng)tZ z(7=tF9beY|3q;KgwUYtfJ{eqbqmta?o)A)u^A<6a=tRW#0rUKkG(J)g+wje{@Oap> zimIX5xr;8Z^l7mpdSO`#A0^4Sx=#Iuzf^X^VUTmCYH*fwo&`-MPcX&FM^!)3j>QqY zmTj`5F+zixHm8d_8br0AZ+i~mR!C=XmYNsRz!K8G#?a;EoA!+-U<@kR}R(gnx=m=*L-nUyP}ncN-veiG0U;Rv(Xgh3e6EA71I^ z&Q8Lj7QMaNZAkh|&~cfVTgIMOHqYmorm|A@2dRx)U$1bx%pC(-s}Z%#Yo^TM5eLC} zS_&2ORmyr>kaS8cRyqoHF@JSk!pveL(^25h>*{+bh-#u}_KQMaKh44(T{zXN`@8h# zs3|8GfAF7BO9KQH02T-c03nQ%R$h>;UNk%a0G7D`03ZMW08d3iP*X2sZ*FvDZgg`m zQ)OdxX>V>YFfuVNcxZHOY_)w`j~v&L=DUAIE`fnbAl+nBSIW9Tq+rV{k)x3~n%!9} z7Fn06OmtONIV-Ex?I#O@AsB|>;c5j#&~l{~!R1mCAxoqos2heKisqC5MEjR)#1|3g z#L3ETdKWNYQ)G8l=DEa)%NJk7dH$un*)-c7H_K{XzwpEDtqVWQ#`SPMs_MxLKU}r{ z_M>Ni_|l6%c)o1uWAxE_`NEm9Z5Pj-KmX1C*W<{>+&de~@L* zm*Zl@f1$s&RXZKO_|NrDJ%6Wu{=EECel;7nMaB>N(fH@9YWIaRSLSs)uG=47-(QT+ zWJCGa3uoH#UVEM&{^M*|7R_?pzJP(9Iggi3t9mDE#?u$hEZhC*cv+6e?U}5lXXsal z%jKD@Y{vig!kMkD^Yp*?xh?)3J?8)8A&X)%{%`W(?eLiMHuL8P^U;1boEA%3uwgN+ z2F>`1GrW-7ou58==Ediii=qxcE{jDwZmN1T-aGT+_NC{~^KW}UgT>rF^Ws~_N8e=2 zjZAKq@WvN}F`zqaq5FSlR(0gr0YdHJ)QmyeqHVpuHBym(E&`tZG3wteZT zC-UsAwy3A${p@NrosOG4n;jp0+-CKptkz%9_aFWKFYm6hWmT71dwh6MWe@)y|0$1; zJ{V?K%4%3l=6Uw;#`;z^T7OR?EsKiwvpPQf(=Z#XzoIYx^_L&&V}~U_uL%EIAJVHH z{r>pqlVLVpe?~t){BlJqN%PAX?729 z@W5^jvzqp$%64gxRaTe9DjOUhenTI?2xQNO1-}Dt+*=5k> z_X>J4_Li6OK7DzYma%Qt-_pY${XSc+@3vdnTl5sRqA;_rj?U2HYK?B+Lt1t$46h&N@C&Yms_;`|MMD2!wO4S@J}DmmuVelG^X(!k0`SmbD>Avud{0t zyrPmB433X}%WHIC`%aIhmwZg?!&7^|uw znUHMWsh6mr8zo2`c>BQzdxn7H7Zc_rC(=5+LJmf^vl!Z z!>@-tfTOSR34hvnA!!0%V8_4WkKSAGL;v#bkd;Z$D9iC*-cx;&mHf@E?7EC^QWdoc z4}Xt7JYxkw%l`q56F;+Uq@_KmWl3uh)m?hwzQ}3~!KPUs{wdozKKgD$t*k#^(dr)5 zxyW)>7yHl(ydMQWiIzLO2+K9WI`DVsjIIy(hWi0Pg8eLMJ%@Rx*-d` z%HLj*t^ddae0Vpmyp06H8l(s(m4?q-v6cOl{&AE4{yB*pjzdi+jfOohR7>(X!0Dhp z!+&af1L=%AtA34R^QK3q(O<2#|rQfu}!8? z(iX6EelxW1h@1sw<&`WR*EW0%c^~Y}13p`Hm}XgBwe(9<4}&?6xmrJ9C9;*heth`d zg2j@o2$rkm$FXFPD9%XGkM0yu7Tvnle!zf+u`+PKtY*9j&@H&yS-qy|8%HEFu zz%Lig`a!$?qN-2T6mQt4@Etv9BqIkr!c`PN(jA!dcde|T861<1=D8D`VWvV9Gd%BwfE$2*e7{-+wh{TY{|pS z%|4N2$QMoXOH5ZUfG?>jxDU1-gW_*wJm1 zlL^Lbn-Yy*+wkdsR|N5f8X&Tpc8+(UHED05sYuhXsbB?C!zqetfNbD7d9ZGV$WY6l zsO?}MAN__@rffTDZoE)Vnv6!~t3zIrzFK5^G-I7BpRlj_uaLp8aOPgfYmbk<+&lzw z+UZv+3IjG86aPTBj%{gf2K4-h93I;#QcVZ!zhEz-ZRZEmnhodEDf#d+^n?ZY_gGqJ#yy=HjAuass6OsVf})L!p~O)A5u03@(dZPog14= z%|`E<9QtqE6lFLwm}7O+M7Blt@V*%gqd5*{O+_Bf%i_i3vFihQ3O0Be(ATY*1KCwO zA!d^oWfeu|RAu|0qPkE))`MTJKWEi&bT4e1nzim8`TaX##yKxnmHrk!E))@Y0y!qA zv4boPFFgKUHqR9?tmJBsm|`4@pbiUIeFL3Q1>a63cY) znVHHbY)1$=^g-KOyvCE2_~ay!`!rAbW0ySH0r^vOdcPZTL~ujB&8Q~GfW4oyKlnwh z#zbbAJWP~0t?I=K*$(-8*s8Pg@$m1~EF<|iuyv&!#pHlGy>V_UyBv*#YR(-Bm*5mZ z6lf{f+YKs{q>i+}EuC?AH@0h)hWjU}nU}IF?4$83anRTFQvQRE=Y(A$emuJhke!)W z{Q-7(Z_ICi;=g#|Le7|s{2E@x&?X)nEd0(pKYaY5!#9lO-o~-&u@5X&yySNF`F#Nd z*gn5~;o{R5va@PH#dOe?(a$gt`VYA``0F+VQ-XK?LGBb^m=s(anT%U_{3K~9*ym&E} zeG>S?k}r)oS(2P5>9YrNJroz>y%F`7r%8v)s`jp<6#Pa4S2Esv8?90 z8X}9%%^(}~5sh6`=vnzyIx%*K;RlK8NUY+!ym}nGV})6(sPD;FY3OAQ@L~GL@>n+ElL3xcxxA1 z*{ka>X6px&>H5K-GH*(4=#x(;$Wo({OCdKU;KzyKZ$ zok$Epjc9a#hP)G`F>egn@xBYUFvMas%mqBnsl<4EY&&sN;!q683}Kb<$Zv+~4!OvO zHhT$^1c;dzgnbC}?GOcH*1NQex*I=f#-r@j`Tlf#s(*LQ^pxos(QO#OE+4KE=ug}5 zelZ>-5Xj-ZnSgZ=bS%|L0qx1UEj4y?hw|-k1UqJ#IZz08cg5p5Jj&A$xSTV@(c(`z z9vZ)4@yzX=kY5yMIIxk35;0GDCb1nv#kqwc688O8FwrEGWDHzTK0k_PU(;I7?`051u%LIQ7;$83oY`jGy9c-2yoGQYI-8JrBUl z$#<@53Dg=oDx??w!)f~M3IIsf#%(SWjVrVpjWlGxWw%N^JlPtL94E^uE)rDUdr7>` zE0Op%GXc*vf|Hd9_+jE#m#_jMs%B_49w`+?KOi41!y*hNi?Nkm$ImQ9>0Y6xjd2lZ z*vjFI5NuI1@UfEl>MI2+mB3uq38OUZn}W(!-@7@oQ0tNgk0$)F(rGo!b zuMbuZkZIYB4uCQvPa~eE&PmNHd&KH4;)seOC#P=4IU4a`C2hEZbs))EGWuv{bjAj+ z?LdTEDtadQZXh}(^F#%9hC+zO!!SThI{HgAheK9izoEyoOYusvTaA|h<<#ir05tJR zF?8y|YsBmE>6l_VAgzwWp^GH*vJ;kwfWktpMna^v)2%U2N5TDfKeKG6FCh{Xy1Ct}+vq3m$zzc!MLr+9EBt{?*JA8Pg z`cw>q#8M`YSHy!CYteml$U~`6#MhMAZ_7D;X(^cmBm~?UGbg7yjBi8E%qFsln6Ce5 z-Z`TnP9SWtdVB#sse;S|w|XOM3P>9><@|<(2w`59048;3u!w4T*oM9Ftm|0d0U@>X z4M0#HJMcVGXzW_o$R0#&(eFySeVW(iqe9*mdxNSyoNp)oIn7a4yB3g5F!<9fWsvpY zg?*-SduJbCxuYs{N?uePEN=$1lEIy7y@$PyL3qg&x?m@`=g}&^^!P`g2#oG3hAK8N z$yXnJSvYhfSj-f83&Ufj^EI#K4O^`|RYW0bAjzh;4M6&!1xGM`dp{moiZJj?|E!l- zyID#{RjC*5zDaK^rPx)HouiwgMF8&!r(h}ge{{ciHTb0V!CV~-MjZ@>B3?S}Ofvd) z&x6|PrOMLcTtR{q98nh>JAe=-iM?2NYC_uRKzX))ut%QP?$+*KfBC=h2^=zmr^P#q zu7FT1g44smfgDjrGLAm11njxJZ$7!id2k!xTQD5VIB+gU1E?cH$0Jqt#d92`-SN5)=vD-q_O@9sM%giYCk z1G$Y5-GgMh{7NUgzZG*0Oitm44-!7a0GuHh-Cq6cm~x!VNqzVlzKP<0igtwYvLrI# zkAF%rw%V@{Y_zE=IP41I$|}dF3xjQ#`0NUuGOkb=b@s z(1@`uO=1#g{<@76x>9#gJ!c_DBK3oicS9;&_D8=rH$Sn3N!ftKZqx}0L6A0lG|7@% zgn|&;$1TCR(A2N7;$)$d1CwU%1n4EXaH9@}KqBA7iElT2Tx0_sPKo7TT9WogmF?+% zSsDha2rp1WC_zKm%w2VMNq>$+?~Pz76_TOVXLskLtqjC(PB6p2IW*8FP4zkc@rHjc zxI8HeIXj9r&m^vw?7!?&Vk-v{mi2NN4WO0HRs)`ZHi9+C&a#N@V~vq@4H+F5WH3~# zOs=W;xDoS5E?^f+Z>kgW=$X6G`M6A8QcfOLQ!QI&u8zjpE34fx@CHA^O*xb-w}db@ zd5l8dEhtBR5}7M;Q-BD8t)bzSW$tluu?<^nYF?4SK{SFJ#5V4M<~{?txeF{E47(4H zblaGWhf53zp>dsVtP=Oap?p3_aC{?HRkViRhog295|k)s+i*jj#DAZOht)|P^`v}r z=N;4gjH<5QLy3^8A>Uvm2~l=SHr?qBFIZECj^vd9Jgw%k?;&fzv3Xz6AgY&{uDQmn z>X#XNMDPn0DBvz7Wf6C`cFr z!kP<}j$E>qxyBOnId86m_yi8WQTzL;{620_eXKD{Kl+caFwBweB)f6}78HNmap#}o zbNX5oKNh2vCA9{2ksdd_K1#??-y$P(4IVx!-rtXlZWZDJh+pbxKm~q%0pv?a!aQk7WM*Mm{0Q z$RjhAMpTL0?@|UHw_3V-I@rZcPP?W>RI+x3p#R5+;ML}j%rdNG>js#f+B9j{$;@}7 zbUVk;myHwxB>Fq`snh7LOJZcEhDVRgg(*Yi%Uc=GLZ?tjtc~*tlJm=H8OJ&UJ*ad# z;#AN2YR?11#tK-g0wc^+hcLyx6^B$~ix7q-EY9=|t!RJL*-f-G!l}88cl#p99-eA47@s?P`oe|4%fh>i zK@6fx&q$uRko#mzyZ(Fz6CFadg_5+{|K`(MNZp1~h%e?(vABPS$B8eic^9P-TlJ!= z(F&WkC+1GHpq>*$8Bt;3P<+NlS#B{)diE#6C43@()(t?bGuQ~jXB_aJ&QK4Q3W!tO z&aWD(`Oq4?crKpEFS(b5B|S~n$(otM9hiUXx z91lc&Ch@lhb~pQ>|M5H7f1Wox+4X8RULs)->BrlbEX1M;KJE%8vuQ!0 z?fPb{+IAy&jB@LE)jCIxkFPE+|rIyZ}$XY;fXLdqZ;%JSm<;2xbR$OvHN{p-2#pMVCj;GHd zvI;g*i7}tdW#k9el1&+?5r5Zf(H7EX2`*l{D*$HL+;3BSBrwhbMl0#Q8YmT_Ff49GW;5^QyKCtQC2k+?-1G?cNfNybK-!qg@lduc&| ziltp(5|Apxdw4UJg71C~Nq`wHw0xZf^(Hyd|FrSE4!*}Wmn#zJa6_&dzz7ak+>H># z`g_;5fkF&^)-Ca6D!4?nqK_%?V{#Xkpk0Ln=trDgT{RS~FB#Y~-WdZU4Eo=$)r5@L zwS=l+mm_QjvtnA#EpT#`{$vv|ST!|6cI$gWLKs1olr4*u(XjP=m7q?x-1p?=#e6!QXWQFKdWSvR^`-3V z!^+htt`F4OwUFOPzW!5WM)oFM)jPl^IhOrIH7*-Lu!~m4$rJqDC%2`xO;#Ow2w_@H zpit|{oX=?z7M*T<6R8LX!0S$U5ZwGE6y81QonJalbfzk0%*xU{^WLo0X`$ zSr?*tnH;!0yFyF)Z}X;RQIa5(Yf{ZxVYlMq3WyQgVyJ}Wl#Ns2TA=KG>MG_ z)%{G^lL3HaI(8u%X6CuiUcc3X8i%MzQU}7-DiN9{n;d%rgfi;LUDo&RE2msjnVN6w zqS=pO(cFg$clGOLh5|k{5j`U9!0cf3I^KMOM)N+WPg2$)s~}09TH_K|d81ip#R;5t z=H^AHH8?Sd>2S_-C5%do8qcriQ7}m>(e7}$+)gPM+qc!w)D$n5aHM+{2phGxifybC zQi&KDnyBE;nK27B`>7D6(S0K_B4ytD2C&)T+d=;Yt*POfJ*dsC>?ci8536N%rKyHH zNoy_vyOYw~rbvpZ&_BVmq_|Fx1*e$88zXRnW!(`uakV>992UKTw4%^?}18Ihd} zY@g$eAy{*Kyw-nIhdaPaHWAgj4ujCt3}@5Oi-ZAIixOE5e%e%n0eFwmYf2xvvfIA5Wst5Ct6iPas1G$VySwg0P=k;xE$$_L& ze<0{fYp@TT7#M-W8P-KesF{YgX+i}p=0=DXvFXtV+92HwKxpEIOQ&|Xv&yUY65@zw zFP*3!Jr5(KTfB!5Aw{cY_4Ujn3wbp2R611LrSp>XdhG9a`cqP7eo>Uc6gy>^@WYz_T5~0^F)YH70r+GS>bz{&RGv>Ku^NQ|@9+ zE-C2x+jLXl8w+Pm8}HQe5iLXnayU0;XD;Mos6*`D89rJlxwAwJ<1{xW15VoV@Bl6azZb9RJS;tTIK zkD$#K-&er1qs0^pW(68R3w_h&YC`{S+A=%a2h?BD$~0tTI6eW&%Ygm4$E88Icc6I3 z48OM)<$u2F3IFpXgFfWJk@}E6JfPh{OKDYb%2WH6pIduk^&y&rp}BrzxLH~T3pZK0-W*>j;O5xFNy&x83cI375k;%MjkVElSHpJR zkS@JEuIq8z=3#N#^|$)W*ZNcNdD@t+u*J5r$jIC0 zbkXtQ5x?`dHAv`OVp(T9d~7__k&;GZ6YM>pl6-2WRlR<&*r!3#1GuzC89fI{W{&@U zYo5KlQ(Bo! zqj~hn0_%2XrgdPN>>Fu7g>mh%wKmWBWKi*O#_zgVVrhw|O)`<(QIf74{6fkf@NNuC zDt-!evn*P-;z~wILl*~&ACR7wIBypObygl$ov=QrgOhq+h|bbL$wRoXS9YMR9ndEt z_0p|eaw~#&#I5&s5}Q5i(0b#7x^zZS!Q8RCzl*qt^}FlsRv zZpXsAvLm^h9fmbi6DBy58ZzH-Mw2E^+@vTa5-XrM?bJDAf#!z6TXAt>+WZ^(0dIuS zlI~qf>XfzfwTc7!Nk2tZk};t)e0{*~b+K>lE;y~<-~K46(gG5$=tU`wvpEe=YcE|K zDs<)_&xBkKwwR7b&@b(kN-MN9X7-3%YFQf9d-yX;0J-JSGpmloLG@f}k9_VdZB8q! zaRFOm9-vqhZ54_CA?0L1gb}v6OLL={UsnB~8Hrx9e zntg53VdaV_s#enG(YPc)E9V0fkqiBi`!D(0f?XCt@2ETAmP^z{vw#JG;A%R}uFPkP zWy?wRz%{?cXOQ=lX1SulMM_@ac?d;TV!NdE!iWL`I)T+(Foln?{q*x;F+a66rw=cU zQ-EA6!iO6}eVT;Q&Dz3|Ra4Z49Ju@|tMKn?tLcen@)uP@9{*PMulR3=n#O8Onv_Th zZ&wiV04NF>c2N9+uPlK+h}CpU(W5M`xj{v-4wo4VtI!MGUx*NC$*yI)PXjP!DXn37 ztqPNbU7lfriem@q05KrFind8t)d~r*H(o_+i(re~b7v{$?{<~uEI)#Zef2*iEYgi|MnvYbec4{i2b=Fpusck=F zX-&ApfVobwXSbC6%~7ND>YG2i`bL2EEaM+S-*__6FA(%1%`XWli{H5y2xxfu8xj_s z7`L<_{sc4c9BLX|&&&Yiiic0RW?p7pLg*?TEaYnr@Mi?0VV3euA zU*(DTKHo8nPx{5HEAK(pvIs?6%90iHl44ZSEe?o{?*xceX9<_|@7iVgt#Q4q+G=;4 zy;@Dm?9K6VK3%nJbbdzvzgi8OdG*Kgm)=xybBVlummB(g7PJAAI_OfPa zeFMw&gIQmz-ji<``b@L42*OQKm*8MVM?lF(Wr4t^bGa+~xToPtIwlQE=Uk zo58Bt&okzH|LeG5>!sfh2#Jc#EZ)+^mQYa~e(00xJE4<~U^05#3#=~dyG#BvSXdgH zhF)>Lj+RO?P;A9bHul-YCxaMDUq0ciT0d+pMKI0c>1gTw8z<^dZU;?ED^v-Od-s@f zI1r&)TkED$1CZYP&>C&SsQ5Xy!qVEF*&Z7ITBFpN@_3S{j2Dv6J%T&eULmC}nw$g4 z)Ft*+U!F@mOyY~gd=9j=&-!4~LiqdSMlj|{yF-I?D(T9uCa>GI?7lVs?f8vpNs3lM z9E6H%BUG^~D4IP4y+dwI#ET@JG7GNrlf@slt~(M4ifvOP>QS|%y4RN~CRdxVRI?cC zq0t+7Osi}^!^?MQ?U(t_4~7wfbVEYve7wU)KbcUjr>+NOGSY4j80VgOC8FG!R(eD8 zEoj$+S^Nf>t3Tx?O)P#xCbsFy@I^+dVO`~;%Gu8Pt~A6IO{|D6U=m@NvLDZ$tCu@0 zobcF>bVt#7(r^N3i5;yj3BaUl`xkVpS7oQ(Uv;X}nH1oM-Xxl)3GW9l4=y7v)rt^* z?ta|IvduLPh@T2BF`tG6#ZY`(;Kt})C*}UF#c7}K!&4d{xj7FMfX?HF!X{a*zsMS1 z|4BDsmabo|5dO5MvQ*KD-;15a+HXe8i8^sFbtUtF_tSR;;0sdha{=OGId2U>$Ytp! z@O7(Qwm?go;Rh5hK(rYqI*__V)5HNbJwEzhnO%dIEX@55K~pe2T|9+ueWnj!BywVn zkxRah=bNuG832S2JqkIw1JW$s@T-}>%t4eu$m(n5+-+@P=B!anPHjR5KC-6Ke_MIt zAKZBQ+^@qTDnw@HK2gfarbHyOvvq;5qD|{X7?d@Inxo6&DjiC_m%3}A$2pB!vOs~3 z9K+B%fkN>}TNff7!fi!{Nh!2D0jD2Nv>f7&AY3WVOM{OqcEJR@@_fV)< zEW5=F5lF75S-Vh4s@;@{2IB6KZ4)Z?2TFfw3dvp`C;l@pWQz~@(?sI|8n_2((;Pk{)W)je*KG*C1SJzSA zbOmjwF8c-AWofKkKDJX+pXf%LSF%l&P-zQZ*{C$S(&@>0+_9bJ}vx4Miy5_u00={c~i{zkUawOMNJj&m!SBeAM0Kg5y)K7T+8xG+-z%*en0F)0o_fWyZ6v4^)xIvB zzJ-DHTXcstKO~WC@g~;kg>jEb=N%vYcfD381da;`hNIFZ0=Q!lO6$uzL#3o%cJY;% zl%>-7rCu4E)Wnuy(4uGGhNBKzg3L3GxO)jd;;DiUR75vNAd(IZh|vv4qgLL)XP6dO zehBDpq*^Vtwu>D)DJR*@p6SppZk~=&pNp3xy9QkTK3J_@;%lO%7Z-WU;gVGM${d-H zXt9#vU|n;coExxDIN`8NKxxSZt$dwYe;Uu~a)h|=vwAroEioYM~WkEjSIrUz_(eK31^-!?*?$Tx^ zobV`O^2z9VXa>oZ8YP#QYx6+&IHS-SJ^s_!Qb=0$^|(wrY4cIjK9%x$&MUu4;#kD~ z9(wmpC<&E%(?{x4h5nIJ205J0(J`tL4!Zo1&iQ9avM~A!~Ij?i6~&rM*+)_`$cN zL;kMz#ocWA$os`AzNm!AnOtZdT!R=DN%v_nlDsAsXri>%oHm|rH2cTB9ZtZ1zcbS; zR%!f9X4tsPI9R}bjeL-TM(I_1L(NOcVx;9gu)8Hwso3F)x8PX=wGb<%*)?}Vhn$N< z^!i%Bc#e+tt7uNA99#);^*VGik#i78>LDrP51YgTCp!Ia303x@C&~K6wc`tc5OeHX zwfK4sjqi=73=6(QYDs0AUT|Ak9LeTe-d`!vC{kMl)H8yxE1DakzCbds z-c?8oZKZ(xlsXF6>&x}Kh(TMDUhKPGNmr|wbwUldl*soZ+-U)ANP$3-d$WQrEp8t= z=s=1FrCciAqQtPo|~~np{n&uA6F_*s`jZG=>yo zz@_3Hv-iwUmiURT&pe*FP8QUaf^=DF*Zpbq6Czvn2fQn}5m1-kXP-qhF)C|BNBE^ETM=TXn1&aw}y8j(ff)$&5(S zh+nhKT~(&O)x*q}jor5G}SDsbuU$;W}S&U-%g ztxbF1FjFdpI8t5`)RANe!=QQLSp<2>Z-?HkNNFOAkt~R%<&hO@7^|DEs?c*V9?^ZF zFY_W;84?J=!tYmqnmxOzc68a->_5Hn!{jA;tD!MJXB*dlK&Zq0A!ikm;<_yR;W?&+ z4mp7wO`!zcpxz11w^zwwxZ=U>3TLCj6^Joko>a@F#hapYB!%Nkx{Q68USKFO*fd@) zD!Zm0ZX9SJJ-z3yNM<)>QZmaK!V+%|j=~Z4+vR@gB!|BA8@;tNyD?lF+3+1Na%HEu za#Ei;DI=EjcsX}QD#dJ2Ei52wAqwqdTItK-&Y9dt^QU!iIBf$#G8cD-mThIC);iyj(sfiuD2d5wu0KTJ{$?@Tb&OLgl#W_ zRSWkEaG^|?5oj_R9^PJbvNlF}HBUPX$_2y8JT!@(PRF5j5q<4xe9MrC#Vv*|kZZOd z?|os5n?x;!t4R|OhZcm;{@C4PXVXeTi3EKYEv4FHT2$RWL&54A)UxtXfi;8qQ26wc zGjN0QiPg}_?-M@2M<28swIA^!1Nqbfnl_d#DL=O6K@1RlyFQq{_{ee+K^MrUN9#^L zLG@4ou786bY^R>s*BrB}H;2`60AgJNz?O#_S9GRzCeq2BT^4mb?JP<0Pme+>(Hp1K zwslBP z6VA3Vgr9cD-gDEX@#bFL&t8Xz+2L^F+2?+2Lzmo6_hy%5CPoz)TA$Z%G-4DbkF?f7 ztw@+1j70s;*vboAJ~nXu!m3%eFI<>yp^OX;qg(je-vAs7Y5KCFouC&zSSscE1|X!b z=-n4&F0DmW;@5T)IIcL#d3$h$q|u_Ld~@Y4>Trbx>AC5B_veh}Auz292Q|n=u;@zM z)3XnaE66!qYLB02oiOoJRi@g@(5WnlAbEQh%a8t=1A{PZwo^* zX@Ts*d6v+m8&m8SdZ!LGUz_9UlaAIHSxhs0t1OxwDf(cG6w3YBE0BJf)}KThK1J61 zX73kMW$}7a^@{v;r7UdW+C0w0%mm)SWjqSqf!Wuy0Re>dG~HxfT)Uf;p%uG<`K zbhYFgEDyh%xn}wvhE?830*v}6s0zX(7_kfYl%OAV1*Jb{WUoymAO-&Rc&mfv_QGL*Xwdh>_j{^DWQdeki%xOshdF^*e-H;nvlk%$s(+ADYCh?^n-h8R+Nx ziC%Ig2uA!GtrTLlyD43wQTM{CjJ)QK#Z-JlY6QvbvT^rTE9Doahlh``&S^DAm!P{- z&7}5@EyE)FY4wXDRBk7!9;c*&n(pf!&@zr!i>D~zocNC^PV06lw{DPV|L$)F;~n8k z)Re_+%{6{kiPNyVvexql=64C)V8NIkw;gn;=(b8pnrntDidK@uAIwAKA!sYsQ1izA z@H$6N5(puzkHKb9IpIQsO$~+_Qq(MnP}c|RyQ#+>ntfU$xHiSQBD}hR4#;RPUib$y z8lI=hF|x_229QFd*-SN^o<#T??iJAsCk*P0ge)J997{XnXnd0U#rkeM>D;+cq6fam zdP94)P4=NsUfn^77SQDgl|NU`tB@mn%|}o$4z*OhiO`}jxC6QMtf=;Rz(s$8!`!oQ zs9TMXJh%pHM&1p1!Hq=8R(95p5b95k-^ThH`}SrxT#f7=SZx;fI*%}SXONKxpQJ>k z5796b{?9zjw{`CELX%#!Y;R9m4q_`4&tj9p;iBAhAGC>A)VP7x9T+x2BUOE|dy;i< z_Y|V(CQc#K@(~~aq>99|6MH^dkHBb+e+aokPa8(^ARjf&( zTpLW0lJMud(=kXcI+4{&GXf7x=P0e`o(_$XvD*vy8!|o%9T|g@;xL;BFEMQx|47jw4Ch zjTg9vcxh)_YY^@_4nj4DV*=0z?86dV!B`M*gib{KDE;lCP z@;*_6Os%l%U~wuHH+RG&)w7OCpepw7TZ8Pc4I2c6Y$^+bEjlYOzTKL!$kTtgxt{ZF zS|UE}vY3I!HdNKZZ)BP3<>?XFNi&r(8GZ}V4LgM$<*e<$qJ_&g zIMP4wXo2)5p&lnCx+H0iz|sG-EQGH!leD8c*OswAq4QC=E?#Hsizj2t^u$xXYaR1p zJHj_zn?O;fj0Q_TyyV(->0!ai2QIFa>Q>=HyT+NDO;mLxp4FqR8HKB$&9c&(1I_E6 zev@>ENSr`=G1;h@)uPgp%^92q?G^5qFa$(x8LwjEY;Bi%6I@(Bq$-#{fB45&FK>X#(zCIEKL{K~$mxv`l(3!>xF(loVNd`6C%y*iY zzTWkCI+YHwtB-SYw9~Gb+q0gTeOyL3TC} ztnBtRd7{jI6x&mCr|)=Y1!x@r+!JptSI$qk^(aXedyLq$*9lWbr;|XC>1}%@eStK3o48W1g7B>5` zxcdrS&vAiIl5)AHI+sm8rk1hWIms?N3w@_s zV>1SGHoHwD?S2&ZEGAWaWF0D5E^TJ>`C?V3)bO|i!qas+oj)EaP01TtUKFwXH!CZExy3;G*U8o3 z#zoP?nNG*($)cNU{3F^squjKkq`o!OQZK^r1$>%I14>0R*FGbc4p9?VDk{NJ*jO<(-M{{>J>0|XQR76=Fc zA&iq&k6^3Fut@*_dg1^8AOHXWPenpdQ!it0ZggdCbaO9LWn*+{Z*DL!GBPfBXmo9C zoqb!69M_TNyMIN3fMI))YF;EtqOA)=%42#Y5*m{u&tNcEWM!2q6J42Es>&>Nzga67 z!ayJ_LMsS@mSZ*vE|-!BTA~I9yD`v1(R!Lc(f%cSBEE=o;$&qv>A`qNvAZhsT;uY^ z7ZESLx>L=P)nu_OoBHLSoZdS1lVnoo&A6X%O9pZHZZX|seL_RQqnu3Wu*;zComle&H8>h64UBFXWumrt~lo%SR>{1-`HWQ*mb zeVGS#;v~OpR@U3eVlsRA#IoI;O_s%E(w<0K_YC=JzFeM2ipAuemrrbMopk>TpWC9} zxySrB9x~6SlmCeipZ1SAsWX3R)QoqNe3mWUg5}w)94#i#o}h(1-TUctCti7JInQeU z<06~4lSNsNCp#xzIdkfzll0rc&+uZNKJm)c;&A`_WLh2`d{HKKad_~DWVF7gUp!fy ze&t6rqw{$Fp8R2+yxXn!+#l`>?fO=gwEVh! zy_dTWB-=%IxPPy9f3Lr*r^(z6>2{gS);E(P+ucguY`Supyp=86Nw-MdAn6zDhi?B5 z53c3OcDeqt!cWb!@VnLHd&%SLhx>bOZqpzBba-&1Ox`Nid-K%&czyfnhD8tfzD}wi z{`6n(=LrvS*15lu<>L>kWZ9JTy|3I)A76ibFH712AAJ0Qd+LH-`bC~phx>nSlWP5S zT_mH!{cqf-x7YXGKW6Lw`Brk(&8Kt&nbb+WzUek!mybueU6ecmelHLle>@af1m0L^27bRweCv0 za8II%t@qsMdrOrjtM%7z9P53*Mu!J~(h89RZxlM<5!ZU2$`)_XS=jw3(4)5Z@`}Fz`lV$0KLj#j7 zrC)vSrqsFDjcAL~WJ!xpFWD{{H*fa~C*Dq-q9^`2J{y_)-CuwAf2MAOE4Nhc{?4R=@)c*=+uXIo;t;EH7~@&-Tr=7 zCOb~VmDT#5n|8-LHO{t@3s`-co;y4b`OP2j88DBao8 zWb&qZic|Rr6UviW!A!KcZXc9eeDmi$`x z7P>(4Dt8z@qa$>yc56YCqDOAicGR?6t*ih|^*oM3As2}TfAGMqY4^@M6Zg4p*KKy2 z&{UdayuL~2wP@^O(jMKQ!}v|&hF2v{F!1Z#iMfvx^En;Ql3wVBcqiXV9)C>B>8`}> zD*0j0op?FzkFQTEH+Gscy#&ixtsl96{;o(C-ni6*P@`O1l}g*$0ed${RD(tH-Qic^xyADY)e!0}wC z>+ecPue|8|GxQ4d=hnKv4?cI|_vM2G7+_c4F$c;-dcZ6%l7=UPadox_9s?q&ZO z)*+=e-}rS~vb>^StRPJ{J~E)Y_Huohmuzl!bkMiy%*0~yzPmdIcaj}9-Uqc2C%Qii znqKQ=a0|IykT$JpVcmRlx({x#AjE23c&9xY9>r(o;04_`B+(Z1%r5**_Q1$JhBWOD zf8x7KZ^$;q(ve>^b9G{yRGT|Way|Twnfa9^)#5Y^)Bv_!KGV8$ew8O%7j%AD`{Sg4 z<-WGQpGC{+zqR>r+8?oR>>G}~lW&tUYwECkBoXc=Z6ibFn^VZ$5F!78J11_DlAVr+ z&Bye5&aZbLW6i@d5=VAivWW5%sOfTtS-2zedz$Mv^qgH5mTo#u4v8hPfF%*>BX^zL z$^D3x|GiyNfg_T0E2wr6i)<~BT0QR-syp`XYi>yIchDU;e6J>NZ`f!!S3B!lyEMpe zR4udxi&+}vb0zQT-Phe({js!G6@Qq7 zx*O`f`4gl#EWuIMuuXk~EKIkhM{JZcrbx{?gGB^6OSziNO0~V*0PPVJu^(pOR{ZOD zQ|yY>Y%;ZMKX!WL?RHK}XMYB%w!kLxs37=nR{Anrry1X-niVbCf`7!BB}LV-NUNv6 z=)IQ2#$M~yDa^@=cQ@V}KMfXaQ@VY0DtT6Owg~9V?nV>f5xOh4mltl4I-YwiMmNm> z6Qtdv3vq{rk(FfWbTpwoZ!fu3`xNTwwo{2^o4Fe;icUpwPIvI&gBprUb+e2%>aHuuP`+i@0iD#E(OlQGhFyIr!cNV2jQCXU+NJ?@7+h$?3wVieBgqGg#U zKc#z48%H8cRxDBhIJu+s!}@2bECv}lz0dHKt2=(OoZ@M>OIK?Koex2N_SC7DmR)~) z&z*Rsaej9N+PP+hx;GoI&|G6d!*8y3@G~?CUn>j$6r9v2KL`;S+{~H*Wk*b02G* z@8Dj%fCO^tF^%p_u-lUy79~xbWI?#C_7KaFC`hWsvSY-44u9xfIpR6*DxVM%$~`}r z6@Z&grAkYNlvQfO0hUNN&w;muycN0rZf7@=uso)q;@C!VK8|<3%xc5r3D&-zhf#@H z{N)}*khpun#ycxE_qM!W96_g>o<__pX}zoUZI7O8(~#T+-6t#gg4=SHpELIQ&9?F2 z$tPrFiv0!nMYvmJjb{ARySwDclKs$bB`=k|vAp2MGHaI3HXWB;mCPrLcNS$moz%;h zPL{8v?idVZZ{)fqQKvtJ#e(q- zISl=^bb~zeqVWOU0heFH$-{irC8eigAqZoEpbeJ+prAMB&(k;k@Y@B9Ho6Iyo6%&J zI@@4TF5A+nj`1XUy<1J3#Clkg#NnM~I7HOCa7!9P3D6(9SLVXfFDJci)&; zPj$)2O!ixeFZ0=G>3Y*CUg@d%Gs%<>W0xqnZ;gj_1nScfF)|q`hqU(w)(JC@nYgoY zw`4qvK6bs75y){=hcpG|(iZNR)8{@d1ugWOu|sGI8vryrI;74fW|$0)f?MhDO7;cJ z$$^;g3P_v}d7`fE0fCq-T3XihZg+0*t=WIb_8&Pz+awRgqmBVjy7hm~+2Hzpjob74 zDxRxx^|q2X%#(Pj>LOztYE5sGH55Z>bA)2txW&57w=&Yq;hyl>aWdz?tMamDzb=3T zu^@onWzk<{y7!N-Hv(GSc2}0*P^akL7hii5>3IAxBuCD;>n@7|w_|YShO964cvdCU zbc?~!;>1WhJ<@BJ|fS&wUoJ?%eFSce6ydqGL*k z7w&6o10$Pb468pQv{{F>q~+wN$TD5vRgP>#v8G~y5FW>d)v-I0i`fSFRIyW$_hg>Z zX??`EBog+3qOmfiXdU2*tvCHH2YiL60bOI>o(_4j&R~iTae$u0>t8bBw*uVZ?&Myr zs2wh~#GO)+Jx&eQdes4T;Yz9}K*(bG)FM*Gz&@DUl@^lk19n1bMX&}IR5LCpkX$x{ z`8=g09rdbr$Pq&JCY5vLrMH zcNoXC8?9FW+hwIVtGGKXnl5 z7j8Yv!S$%he9`1hp1b8(WaF}N9Eq|t!$X! z&apK_n{t)IFEdtL+u}L8TXHGC)GfwMnp}2H>;=M-;l^Me>FD!7PoLhddgF06q#MV1 ze!=U&QkWoDj@LGVt^HPzn?|bRl1#ly!6=$DInN6lb+1Xn5$W zSBpvVODEHs$~hkR0)oprnx5r}$o+Q#%_se7RPFL z!RQRyGiOAeXmbl#{2y>Q%26-VQ`@9e;7n@_gKr@F?*y$RS8bro&2qt$Ag$BWWL3;}QJf7!QK`pn`Wpqp86wJg zJYy%%S3uv`?K}8PeFrvC!u>^<-(OnZ_gJaP+Kl+LG0xH9nlPG468rXUD$yJcXY`movO&-y44Bf{-M9jZr!J1a#)a-&2zwfJi?oJ$-gYS(Xv~-ljRe4jaoMi=S#SEI1_=8H|Ok( z%50WQ@@BcaY$w(7U*S!&gVeGbqHVwOW_jtCw4qIvEt6k0v+?1ZijCVgY$f_BQF~Bv!{|($|6%QO_>~!SbeMg*du&+@b6}>>4tp( zl)LBzCE8}U40yD}_ze#sXZxOoSgtqO?e?62EgNqFBCC`HF%>=Q7V;4wy@BWDdb5nP zYzT`W2IUvsNaM_VxwQER)t{_8YW|a+MA0AS!u)Nn!_Ue1J1-$i5=bJ1U=Qn^rq!6S zC84u7a7YyW#hKfpzzUg^pb_No68vfLI}t*|M{KF+gNm;$Xn{ol>S$|#gOmK_4JAvS zVhnJ}frnp)VR!BY8(KG#5BzC9GD1V~tc36Up79QGsD>Sq5!q98#Ijm~fBY2iC`suM zfF%~si>F{)O3+%uD|}nXR3~LXcMRJ*;wWv)Odoc%-A~8Gq^!uNPX2MX?~EFM3FpVa zt$-^$o7&%33My_FhQA~cE%EP|EUg128rEDW$Ihklq_C^s`2I7EYtWf}JsaAaWvq(=C^zGTwGBz$~lB!6Z=| z#gjt@6wYra%huUp?oaX`-g2(Za(A|J7F33C79B$#{uwusR2&K8VDJJNM>K?AdrNfY zY+z{GjrE8k-SZ(q;<45FWKop@TzDImSAP3&|558B2p*XtTPLYHHh{gO;uTt?Bx(6C zWQ*Byl#Si-pS+h`n(UN$qpFIIy)$ZtF$-2Y(~=w-Qa7xV)sek}ZTKiVR_Xi(k!j*r za&WPety*SG_P9-iojtaR8_c+X+Hf07rv=(~IJ|6(Ei8?V5VN=y|5>KkBTjPkfCcrY z4s1yOvJn;3o_v$s8<0a%{>4{(n&{R4#x~`L@g9KL}r6$IPs+n)(Epg1+=7V0RBx)=ha{YGkBk2 z311x!J%k+-qa;}Nu|W*1>#NR?XX#CIbw+g|;`Ai!t@U>-Iz%e~D}ruWtNXzRm*0@n z!`!YtQZeeT`)M^9+*BS`I!FF;BtouEX31--awWo&c_On;;_p1Ep=*79E4t7Y;#BCa zP><#Fb_kG&m`hIeaUjt%u{?(*M2^Z>w zC-^gfz^vsD*huzSG<-_&xe*XSb>W?qI#xJ1v*}I9&6p|7b`8NmSY-yOg5IN(#wIA; zi!S(%zg{jfw_zIjb`QtV>C5Nzsdi21E{IM1<=$>sR9G>Hk4oe_3gZvs=26sSlOIIp z#Iw)5APGPU)xy4ERvt86^(t9~$c-VfGFJ!_9DT1T&AoH$VD))4?xWu$05o4{rfjH; zH9ou>%9F5Tk4Wq*V9k=`*i&&y_%)s%zbEoEancQhXy!lgeHDwEZ2pc-$R(pIPNKPW zWg#Uz0^?pp;E+)(BH;zNe2CbwB!u7-YA}D!+vO|BB+Dvzu{x|&B4TU@Ki&83JY)KcFc$+6SgAv9 zN^{8}+I$8d!SVW0;#L!n5W`chx<^A{@L@n?bP&ms@Y_x@DLuydPrv>rNlG<`uunC6 z{4uoUFBi2l|1M^eeA~$cmfz-1mNb&TL_UBKfl0dL8u~zF-_efc?$VkqS z3&m#mR`S!U9QBY8YA2WmDa7m085kDxB6O)rwg{b3G9*u5tDME3J4@`M`@7Ai6PBuo z=E%^`$yiO`@2gD7R`L|qfX8)7?^mgh8=I! zvRF$(Q3Gllq&!?`wxaJ;mWNz3Ldotp{*!R(-2bDjpK(jt`F~FU@G9PI^XkYcp|}Oh z%_Dew_R6LH&KZ>4^CLj*s|`^S7ZLEYL`(|Ht6gz^k7C#6B+6QdVG2WRq30b!)3|X1 zh9`p?EO9+CiaXOR-Uchr%j!TF$$!b>3;o%p~eZ~q44USCqMww@|SB?{?@ zD%OlFSbLh_#XfE)8RY|n*bweRLa`;Mwsdf1MA@)hx9e_ zWlUsT%Wv3dpyU?$`xp6AniA-ry>f!iFRbD+gpX#sk~wek+&DzZU^*@Az=B7$LHY_n z=zA;;B+}GNmwO1$SPiWzoZz0#89590MOoRypnK1M)h4D92LxkRW}mLnNAdlNBCx-5 zhkUM}nb)Wm`wxMB0}Cn2D3%s{FP|$CoEQjs4|!zH^YQra_TL!R@R?|osKez$1eW(g zmFSQ+1{u-~`Ghpz3-Vt*i=5bLaLKGOO014xY-M8A=|~)n_JIaAJY{n;!y) zziUuFg^w3&Edi<~a7sK^o0m%Rj*zu%QD!7j^B5?~@BaBHLv)j{vQjrbWD-5W=f37e zJu<1r$grMSzR)cvm#+B02S0h&eedY-E#|AF<{dTBocqf>NHIOgc0n)NPa0EhDlU#p2?jV~Lz$QaO-Y**mPN5u}0#sEz&sgBk?I50NC za!2qlZSI&wfKi77Oh#jf8x~h=Vy}d>GRSPlTQ`8oGzvk43^vBZhF_`}ZFc;*yR67X zs&w9(7@adQ0|0PIKIsCA7$!gyBEcd29$BYa`H9Um3XkGgc z@LV7v&dNC^*A#I;_!|;)9I%d+&`BG`d5<4Qfalf7Uldd(`b=!0u43SB>$uPU3+3mQ z%QpL0V|)3W!r)iyEhKUNVAv<7MBkjB#p@=frA+qko1#uGHq&YPq>S1tdDAk`4@{S{ z>rBSM21iDOH0+iEdvUWOVB~#il3&2Rk535$3Kbo8DY?b#X$tDm zo5*w>18_U3!y=1=QwT#-kLP3~+P#}_gqetRFdANi5Ok!gkqLy7&A$^cbS}C5t0gXasr0fyIqM9)vFn9nu zTVzz^z7B}Y4>{%V%BlVx6X(qfeU*hXTuCcR_(DP}mxGfKk*x%0mrNJ^2^EPjOj=;# z4%`%_$FM_RqKVX_JnXWbz$2l(Yl?I)2P3TE95-Q@^8hqcXh+ofU zW!;p^BqR_94*OUx8#K8xu=d#KpdSf$BEp6PwkQ6zvfY@IlKi%rEGOPD{fbxN0RnVR zg@TwzF%Bu*C`+lK!EJ=eeZ?sLlz4A6{DQ$Ar;h(zPy110q$v-^zimymUUtJ&1Ogl5 zFg1c3CUOk56hY-fxkt&JVO~m|5t%L?%M)ryR07_ab(a(tIYp5zFV!mOddTWpIK>t| z^h7YJ!y#AYtiLC=&dOSlblg$H?-x!c3L|MHLYpekNR0~-rnE7jqX2H^0re?_S_&Qi?5V96{m-%}zG^OUu=fZwlWay1lIV8zs1H$+_#E`% zks*unSLigD@9!gMnzi0R4fuQIE{#~X=x!GV%I`6$2DBjQ>xC933Lvj4Y*-2!ZH-m5yeX}Rm&MjbBJ z$t*@WS<1l0kq03zml7En5(!LUMf*@Sn5TpEgWDc&7JYeZ7psaQub%rYgB6W)O=Y>1 z9_4p?j0zSBs@j4$L^flNP*U|4BTSt9_MwlWGYQk&~+YAfb&v^(W=$Fjs$vHku#{GJHJyX<-ISf<~u2jSn;s4)6Nmm!6B^w;n0Zc{HRx=u1+hJ7x42Li6RGQhgOqVPBj`U{ zvQ%&t4dw#lh^khqK0j`o-wwJ+=SxhG377^5Kty!ZkgsVm{_PlH;$@O+v?akfZ|DEzXP zYl;oMu63Wq{`F94$&3)uf!`2xH|ds=j%$8B-(580GH>1c{yPhC)cL`p2qkFI zlz~B(FPi1Np?Zs%{;*w?PN`H)O-UZ?nI=`%r22J0EiwEuM6lW5w>~Y!LaXWp2!n;F zoGvK9HRWWf78xYqilVbPok|?S#X>kCLKgXgbI9Du1~#XFLz7^Q>Z5D4C{!6oxr<1c+;K z;^x6}83Eyl80nM|{Rgbfo!X?qQFcDPqD*FDjgX9@GPP1gj?2rK!Cfx_ zK;!~*;BZCN8`Z$u4&|}<#?x`+)K^=eCCUqu`d3J%x8=Mw7a3w?<@_|Z=!qNNB zC=7LL*BnTbmLowgWC@GT2v%?9OI;CQ@&s@pxH+0Jp;5vIS<(+Pe_KmG8GjzNWZB>` zc@i$5Nx3hkNAn9zUo5tsIA7k4SBtVl==;TNvC0-sfg^e0QntHDej14Vylm&5ll0OQ z{5E!pB(cJV0az&pEF6#xRiQ9h$H1y2N(STzJ)V9hM5GY(%cBxFhCeAwH&B^JVvY3U zn1;C-430By$P1yL@JS& z-dJLTN|}ZffXgI$k{OZlwoy=xjH`AF8E65X3-nFCdv56B`I(UzzR5V_DjX=x#Jgxq z7xzDnhsrARH{-qv@g(5DgXheTCVKUgY*;d0wMAA;sGOM^(qts$YRmBUOYuyuMP@lT z3twi>fLeyIyV)#lDdpJi=$em^l`FzZl4E=A5u)9>IH~KB157Iu#KcW8Nx>}k+Xa`F zqwFGqfC+2x;jckTbI-35mniF`S`2wUbS*|;$FV4h>p0oz2EBKND2tOPA!e3z-FM+K9dSl^u`h#2lN7!3w8nTu3`s)ihg2u<5ebpX(DEMq}h zEc9$)pTD66*f~=N$x}p}w1t;p_b7N1a};@5wB;L$cX0o}SR9!x6#*RajchvNQT3mU zqaraMuU|HCoaGOD5SRv2GLxT&5ci%ocM}#X6-`ywk{pR+U!%($9FVwPFo|}#Qk;fu zUFfJc2KWDx;$lc2>))eVY7HMekU*9oz+%Hm!patIiE-@Jp4#BgM$6e-5$i52HIJ40 z3Tm}&V;da{3mlJaLV+KFv{^Ah5fIA@jk=R)xXI}YDXV~7N?WSO8ZHY>sFA=*s)0!# zcNmJHq?RzmCkycqaMS%&iA-^m>KgEms63iIcD9!fJT&mCKvpAq%&l5`M~Gabki=IW z_&~X*S~D#ql(ccuE#C>`upS1`dyZ){cfl-rrs3a~$2DRjOX_31Wm~k!0m=;fI}l?x z;%Ih7Oc{A1zbj=XNxdXL0uafOBfHT%CJcGN1&^BT7DC@Dx0IKO zh*3mKISgH9g~EkugzRElKm=`vLiILT|7&HO?VEx(!njTZCUNo1UQ7<8fXcSDeDTze zV>((CgJR*NF)^RUYJj2v=2!@x`XpN^szT*NIH4DuvnSU@c>csI|08k#cPuMjd+D;z zSbGwn)~}?4p6ZIzSwv_xs=y}|X+n{nUT-wdZ)dBEcZ?6#4_c&wulB2g;r2L9aV|lq z_)VUy?SMyhMaf5^eWk2swu5J^14+;lsfFA{c9Wb?0LMW4L@ISzAwEsM{l3*vN&W=~ zPbKvR*aXuee2()Y(<;x9bL8fub%wj~(!I-VE7cr&Lakf@M+(gwzKbB`7m**?M|X*B zRw!2sMNuUM>i*oLKoO79tqr^tr{v=9&2f*z4N{4Os!^9sp)0Kw+b-BO&U{M=taVha zkXGouX68HvG903mDmWj#6JupCDH0nN-^_B}k*{gr06OB{+O-13=)s1>%Xd|3{>>$` z;!rX59{dEb^qm}8H6W7)ai?KZyg_!7jxW4UP}h8ia?LG5YbEXX!RD#2O@1uB{&Loq zO`Xk>Urn0nA|p3TYh=gVt&^vFt*hgt<5mIzx8mJp`zJaK#B(7PtF^I|jR6@Lp@{0Y z84d_zNeoyLpu1da&jL2$wXu-cn@-=5RqGwvtDIQ&`ub54${+|)S12ba9AfK-w3&_q zMnKfQG|DBWf$83bFQeBF^%FU^GcAye@bxC7R8w71MLzg$nG{h&?uM8HiX3QGAJzRP z*%Go*pUC$=V*%$LWaD2b*cCOz(Mv1&aHLx*q78Eqi3idVCA6SMx$ubc+`|{Nf9=Y5 zSrfQ%M-Egm-%`a%<9$DL&+?WFMm&CSURRgwY`Kzc1%!@z++tb8# zwUYUa$$}bDYR^9`_+45H9JUJfGP=^Pytwt{7v%R|hXod6VOaOodasLfJi~27dK={; zv+X4WZbKLL;5ie!BCD$ zP(cYZqEsXi+Qk1rBUNYTd(MnDK;t=>y7(4S#9qqwVN16NKhWl7))AyhEV^ZK@z-ys zM@i1te*O9tZy4C7@1aV$CDT~PkW>VbdF2&BO>ka4Gotx?p%S7tuGw^OOb$JF>I_GP zdh1DXFCleG^&;Dv0&AfaAWbtrnLQ{o#QsM!D@GIq5|+Y`2L7#?rTo}-s}mpENL%K? zal-jR_;p&{N!+;O4JSjvT&h1VGS-9U(Emgf5PEAs9I44=S}Hceq5YFCRg1-HJ;mYC(IpJ;LA(N+33w0--|# z!Vh>exFYD7MrI3C{7p(R=fQ_3<%$sA-QWC>dr&X+V_Na>ir|eo(}Fq_;9G_tKCQ;t669}#N`TpjqwB~ z&~a!36@V7rASK~eO7;is%g9-bAW2F86)nx`RL#);IS3fOZmo>iI+|NHFOGpY0h zwnkqed9f^g6zukSE%tD*vP4~`8FKRF0Ms7Yj4TYm`syRu+pR*bWn~wU7b5EZuzj)N zJ=IU5jKmylnhRTfZ2zJ49KR|a)3d9p?65X){+SsIgU<@(OxQ}0Q~;g zZ9-JUuZ{|fj#K-!D>U0Z+|=b3aYI7M5W85x=|o`$d$*)jIWsq+FPZ!&gq!T_R!AE} ze$!qHJ6D#g{P2xwBdj~I`&!P@=ZD|LrF+=)$(>PIv?8&HwNE$nndx~XS(y3{NibL z;D=~9Fe*?LE9L%454;3|JEi<3OfSGUy}`1QWIwxKDpArK_qr$&x{?N&r7cD1+eG@8 zo3K_bVUCD}VRBYR}QD@)B`<;jL59Z^TeT?23XJvJ$zX_cie8DPHh6&$0#~q42bAhFF zkBIfVN}XSAZ%Z2*nDzMn@B@$CszFkGumuf)LCBXv~2K*2PK00AZW96*3wr?3wX=uOGS%t33hAoU>+IDeA^d%WkwHTPxl3tvqoe*14(99B1&YnNZ|}x$IJZPxI(~)H*mTvLsn@m5E4}kBOF3}D zuBt1UgRUF({&D&B+wMiuU7brzU2$%kZDPvfH8K4dU zkSS9e6XYI;6XcOWbpsmI#X(gi=F@ZIdTO&w>>ZNp@($F6Qg58N)ti8?2q3r(*~ptIehW9cPHe$Z<@X{3tBz{XlFLKk z3Md{g`Wpv!xI=}`mXL9TQ#9>Iy1AoSd$g*)DUqe(1zS-vst3`ZfEpzFBHu-x$;q7i zd6WXeO$9w5-44nKC-eE#*7e1+1)Y6(E4F!B?jbGLZRY)CCmSUWt zXh#YAPQ+>#7uRJv7K=@p3^>XvC3#q|PzTyHEQDQ0DcS7{wEF0|jAnhmv2*wpzrf%9 z{m!g?JS)>3c?}~Y)|>dq9{W=2dR%Xci)S`A53T9Rpr$RS z;=>G-FBSR6Y)fM&v-Rqcnu?Vc8lFrtkZ=4wl(KC?vjR(LKQzI29X=qwUUh{ zq1kAHTxUMYgz651X-pw1by<9)wi~q-oO`-FO14$!?hH_d{v0tVT(nyAIhpE`UuaNB zen}mS(qFLnD>>$kOkKJEi!~0+g0#38I2UK@6r0K2p${*itkAlN$5^x)ume{=ImwZH zV$#pV9US4ncmfnEy3)mPh|Xh6U=x?Xm5&sJWys{GOHNG#;5*~$+#GMn9xIq_vi{pY zH5N0NJ^Z}>0@>_^jMEdnuIJ99LL7?`@A6J0RY#d)3^lc-2Zu0S8|z)iSrpp^)1zZf zUu2m!ujR0!MLf5b@Z41;x8#+DlMLo3e4RI-al-i9R4d;M`OAu+4m&+KZzIarBsQva z_7!a4hG>FZ%BE{}a%b3L|81|D&Js7pKI8p%lmkW#H9nHGlYpcJ88(?T;N(9jFlwq$ z!4gGF6)npFOquGgo@=+gl_^G#*)Q4@+Z(SX;mVKu=V$wyu7Saf+EHx9vH_&aERr9h zlpUFr-34JFZO4M*j_WU3+9z3N^=$z!y3%B#{Q^D1 zS_S|qQ@hmY6S*2!cFWrcrQD9w59I@eLhMq8Y|0dA)h98lsF@r_mB-Ibo~x&0Azju= zk@2qqN$HO>^tDj#p=jg0p(R+^)=X!$4RYUNjfD-T_LHBc>64Kg`MA1TJ^9YLv6vDh z^a`_Mz(bQ{i*p)}xknVTX`Rn}W|Jm;UGA*z^+_38p|UA}_vl4^j80{-I+83y|HE*z z_M>ywlK#wM!~T{t8lxQ?N;C>>_tHyNr6FM&GR@`x3GlM0NHR z3UW6+!ULD=guk$%Em{UHxNm?ot{+=N9Z*E{226`wissv%m3V{881VX+10PmHaFu#G zSIM5r$dj7CZ|mt|mw8yoHkh-v*N_U{7}zBa7WnY0!=Xc|)hY34$TQIem zg|qy2YB_N1(X#3e)8LX<%(OmrGvXsH&k{;!8hWTM4{?sWNA&Lx6Ix#QxM*@5*dY~dW`^d zQLSz#9KkG|Hz=lk<`}*rp2kah@mViLLa+2n zsdsiMW&5aQhG*@UbCa7FmcJ3G;!>^2uSCB2yr7_~e<^kCHRdtShk4&b0vl~1xCa>D^ZkMKxv=)9labQ1>tvN_!lNv7tXA>1U>I zymAz7#1RF@>enP>u#RZ|rJo{cN*5rJP5)?r)pE}eaSC3!Q=iNhZyVim^wS$MPQc#@ zX7c6H<2uG{AI0nmVgQ6aA7Phn`s}dC*`a@5I_C2A3g>0u|5*i?@pal7w}P_|(k8A< zeORq|{)XFe7_HyoO4cS{pbv=>+o-3NwXHOiw++F8Jyn6CCX8S@u@N^>^oS~{j9iBZ ziQIv()d6*@!Jb&P+mu^oVV(Y5y>(R>^?p!`hW&QnxDJFW=^5-7{df_spw&r0O*`|b z*tdh78>8^8pwtMUl4CHdvC!qve^@Au5Kk;wrcVmD88k`l@&2zE&25d)-@&-@Peq5s z_{he$%`SNKTI9jTw3;Mre2}r?MW1Wlk8B_l@wb7mooLhhf_W~_KgGWunWo^XDdNe;Olpt3ju3MDsj~Okz6QzH%zbVD zuLdLcAd;6`L9PlDy%d@K7f(8E$)9W(|36!aAhTD9Iv;`@I+Fmygs>ILv{hgUim~2r zE4X{?LnfMyH+PDjyWU0V2%GV+#BfC3&0glJ#_{vwxDb!128iZp6PShm=GNv^M*TPIUqfdGaRJ>OYsIDb}NNnQ(s``eD96(Iz+s>nq-%xn=UkOaK-q zw|rJ{rC?=3u3bo(M5XQShm=e1*Nd^4ik&dqx|o&TAJR8P+=Nm-lD^i zRq?1uf)9uSAPydEHk6JxY)zKY7imT#Vj)W(T+O_so6P!Hpk(qBY`xgZC)EA%~MSmXen-AE|fjh?6<7!HrN;|?@t zKo|3e(}BJ>9acp%AG@d4dy%TdwVq>izp4Py&5}@d(eiBOY5le6`;x;WHfoPaJuci9 zVG`gd4N898pa?3z7{8S|qscf0j>mTOqN+19>_fQAC%Vg*1R!;hJG*b!z*xyDjX04K zG+p=6q{`6PM@F?ZHdT=$1M&yKqv4u;0=&iPp@}CRC&;-cwn6M)&QBxRIkButLJu=B zu!o)?b;>XQh2J4ZzSCzPm{fC%MBVLniR@RLJV{Q&D>v#Vk`#ogJE3iT$T37%dx4`7 z&>kaF){eUy$M$ikZlpqhS>VF>nLI(levr^Q*R0u9<}Q8cPGDM!<&9 zYz!f}A&bfzHnp`eskPmxGG>8PgU98mZnBS%)Kk~6Wfe515`}dC{cxev-P*~hnTQ*; z*u()}k7Y#G{j9zd!VB(6 zhqE@Yw}`R-8(s{iFEV{Ba#3BlPxVY~wS%6c@Og0WOh&)d0*kjYS3J2c@TJ5!?$ur|ee z=~G%wb-3FmxE?_MR2irivI zNJdi?tJ$0Gw$|P&G7y$ld-ch^oM#d>t}YlcI3mMf`YuYe{>x+^<}v`$4pj^UDlT3t z9x(_MDvL9>)XNQqfx19Bgk%gZX(%-Cb-cS?9;{`^Y4zk!!hu`ztc zI*k&QrN+?Z=8b}f7JJz8zm93XQq0q?>0^ZL`MmSyZ?pZ2wjpeld{brhpakxDi2Aw| zfvCZI3i}vFdW_kcKrRYR+g#|Tetr-nz)H{Ul`GRP0ne9Mo}9tTN~Z>tD1gpUjzoB< zaDtygZ4aAOruT79BG{!@jMb>+-k2#@&puPTB_Ib)PBWdAy&AFO*24zo_s5Sxc5mB% zNok5#Nm?RVA3*&RW)Kk@OJ)%S-5=CizI`Fu4bp?k!NioI@fQOB@%r&v-c}{~8HCWwdi-DW!Hwzk$?(Z=8 zroCX<8_5`(cE;N2ydMZ{dk3qgn%D#wCGshS0^)C!9Fi>oier)a#MO^e&G6V2B{U<5 zD64Z5vIFmw?Vl>Fkn`{##Dg$<&va>@#7}WEYO{rd8TRi<0i3~wYelwIt|bT|zhkxr zwrK&U$zNsJtk1$cYI>_&sJ+0P;hscP-fiV*yz@>PNR(q}^7HgX>VegYGD9|+SEF#W zPK;}69J4*zsDb%I%oACfJ>#Un2UwFD-`-mz<#kj?iChOh`oL7`jp0Sg>?mYm>z6J! zVI+5rH|oc|g5qfOHXT{t=%(}o+^sS@Qj&bI5tfR48&P{D&UrwYR3}8`NUh1x>AQ5d z73P>|NsL2TQ$A-a_ypHIZ8TOA4su2h90Eisb*3pE+UNb=T8z9fZx2?U@>>8ZNI~6^ zg3P*=1#O|w(bby3uSEycDWaLS41tvgh)KYOOs#{Uze#I}1isMjU-Zt#pnsaGWKaTI zPaWBbaOsMvMgih13cx0H2gMW=8>h?91$@VTEjBE*)J8N}3SA=Jn~Y-^yYqqs$7W+s} zDv6nr{}&6kMabs(R;>qJ^)q&4CCZ-{oM;tt-xdKTkS*(sbB}OZHAV8f?TO$F%IE}T>*kv7v1kRZU z(z4izNU-;Jc^~~O1>E{H4rqU}rQuzAU%@xTYVRAxHl@&|I`&?h+2dxn4mF`0Z|UZA zPI9U>1pBm82z^rGR9ErWn)VCg8q9>1gXYNp;D^{niIsuaV6IE>G(9$rF+{rC;Pp@y!$jo{7chVVZZ*~%wu*f3m(+QKCsp7; zuKw^dR1xynAjXS8$k`l|Snh%UEG_ChJW|j?L99IjglY0!lId$U3TG-AY^1J;W^9=+ zT1slxlzNrlYF{e&7>Rm@y88_|g`kcE!fg)^lJ-b7c-zKJA#u9KrM6dJtQw$8f=5#Y zm!WG`{MSKGt4n&pUkyX%Uabzni`SN?;g_)Rahbg?yqdJbyjd{RYR!66+xbbaA)hp= zvPv+9&agH{2g#@AP;_rb@FS%P6ENcB^p}J4$qI@>k~_y*w~s$XOVF`Lg=IqmpS8}* zqDGBGHY@M{Y7+Bc@8;!F6+-Gn`I5aP?Iq~?!*r-hDHIB6DRM12myBtpg#iUGq~ScR zVpVhD>~x9TLJYL3N80kTal-=rHLInu*^Y-;Zm(UY3Xkho?zpznOL07fCIGHFfpvaL z`YXgEWHS%ha1ZAJDwYj7m^FCjNbnn00+4|!Q@S!~dV711V;b9ceCqLBGiJ5)z0t17j6p>^&HUKY886M_3Pt+&qq*pk${{s;xNg@J5Jjj_TS96Nt7B>f3jZ zgGE_Y^Cz&>bGqO~95koWawfJ)_-ngkc~Gp2g>Y-5N2xo)XR`LUBo2P3hrgW*j5&wK zb44Q!rl35}p+ZzSjka1fVCL#qppT#kxwD3?MYZQRu@Jt4#wtIQp3%i*L>4*LJ$SBA zO-N5?rPfKYQIW_KzEm|&N6aVWuiM>ZGJztC;8|YWiN(JR{x0zvNo$RYvObAmO|$|} z*`sJ6TfEAQ-I!-5+alfKIeI)L-O2Ds*oIW}%hE?}6pZKG{c>k>AG|mUax0pw*Vzc= zs_5Jiu3<<0rM?^sqQdFzEvUuss-TDO1e8{{M-8KHi6coS^m#{knWSoewXa--0!@i zObdPW282!hsqnXhIy zB@_86Hi0Jb-F3wqQYP9d4oA1+X~0}J-Kocv&e}2w(y?gnJlsC3Pq_rn<3DBU1(8c8 z+4?hoCD>^FMM2kL$Ql1FJw|qzA;vcCJHhO!&11TlyxR^xe|;dZz%xA)OdH{70n9T& zF^ofV^8Dr8ANImB;7=9H0_uj1JM|T*Vptc=M45V&Q@uGcVTKJYI-jT$hMkVPwm;+o zO$$Kw?>y^VD1Solzq~9E3pepT1}#-fZ)rkU-@N75C%{na%wpE zLnP^1@CcA3P}ya0BeI#Fl-UbTl$rx3B>hmG6?1E^Y&U{Ps=8`eXDJl*d*8@rT!nV( zsMcq!IUCBSA9sbioKHU2EC0(YHP`}vK4V_$i21+2iTm#IPXDG0N)kJq%ofmYdVFRr zRxla$c00dE$DP~zeO$dio+{lwSSj}0<aF7OzDb{V&4hK9<+#zmW=5XJ%OY>toRF3WB9m;=eDiW1w~fG+kJ}o-%foKGX=A=flN7CPtAmWMp6Pg0g?rV z0Xugo^|uzt_5Zylxy9=fNvO;3t-{{weOdCwR%gQT%!pX)YhcLEA-_fH)p5b~2={5I z&OT*y{q9ld*lNen{Bb_eplEj|P^e_=Cmo7ifcI-MD6m~(F`J>U7Of*EVLKD&qHnr+4e5V*!)bN~bKV$~MfD(n{iKn~_Cm z-*(|HvNZvuX3UQZrO;=O70^;&uw7+*ocQK3L$Eqos&(wwkGTj_N!p>v-EF;tBfqE5 zr#7nZ-Di7_K*FT^N%IFkNb;5^_Bz)0sX#iR4nq2c2YDB}?;F*|D`;GLz>Iq#y%jXO z+E=pYF$$Yt=fAPIE3og=wr1XD9O$P_;A!s|@mj@nXN8^oEO(~qI&$_*dqmTiju^7x zIOTLqcyC&Ocf|~)wmDh>6JFlv$wOhXXRMWk+B`L>H-D!ud&vF6!LOrP9rW{tUStMsnG&;ToWrkksz0~jg8cha0_C@Z?K;lpa=h60b?k+q4oOym zMjr?tZ(Yxa&ZwJBYeO4>L!VyIN(GFs5~kXPlg9=dxy2@BF6}~PYIgYWuvyq@pJa|r z)`0Y6eJy);wPYZn;OpjQA6wTgvR82|N3p}XTAqJ5ZsU>O+jt$B3IN-I zu#uBTIoK>08)ldXk}naoxkGxsJiW)M?slS1!hOpuJppe2?6Q?aZk1zXD;j3-(4HN4 z-x%<$FJ2Qg{BZhiBdr3OS$zVMt5~zy0_pkRwz6)2nX=xRYIR8(h4uU+!K|eEf0?cDy<-pnnX`bETzUbM0%i z*sLOHWnUg9b*Bh$HFQ<4rv7^^+>c5AA*gl7_gM5RT0p-byxX8FJ;RMC8K3maAA>?^%$m5o{n zrPF4dqT}K1;{VNn#mzzwo~!K5lHg1JiFuA>y|(31^qG6)^x*Lq5W>sb8K{J1-k8*r zoN3;@y+z^j$C_>2AO8<)abFWy$!&~PNL{^-C7cdCwcM#{)uMGi8|UGIy^JeaLU_Sm zkDjBPjK$mwUwENm^fuR`@3jb08OXl(~FQA)@g)T(k1 z-+CKA6R)V4#<)tcu%nAkHB3?!p%R@%_A-L^7G`h zf&LRy6mJokU-{hRvPzWa89Jp&4#GKWv>$Jgh_&=Iq?zGx)joL8qxr)*n34WNS1l@y z92-N>ySedFY#$@X)xpY`{2<=5LA#6mTJG#`Y88egQg*2ZwH}+SpA(EdwsWdepIhe_ z;a7nVIJQW}JH)B8=Ke04Y{v(asnAb{HI*ob&>Y8 zumj~;DDJMRr)(&&_cx@9bTdYBA?-RzOqcMs>lT%p;vpS8QFs97zWJtC;iH8YYMaU?n@-QFevs+GH ztasBpju8jL=QtjOez!Kcm$A3P>#R{Tv&ZPL02Wceab%Cb5O2@hHzi#Mo)Gf=TegMc zIFV3Z%clMFnKQ9w0?t$~zs9U{9>848)oH)AjrEuiCo^8O1l;$ZY>Jl&Iw!E(vd?52 zWYR0&v@j)%Ol7WGBgGgK8D(CP3%;bRjlEdS#hPG;>+#xi5As48KXai4ZLkPZvOn3= z4&UWYA*Ee}_7CAQtbflJ-KWPDuIOyPf8_5Z3ER=H_2X0b*1{pWhT=sU#$mZA1iiJk z)k1u2UdMaZ9hP}thYf^^6P|?s8b;R>6kw>TCBH(g3yBdRsBwW{q%Cd6{Gs|kq=b6X zr(s$hE6eq+jeF=7(1E;pEhRlIF_gq6q-qtujbowPrO&(L>HoA)Gt%3@Yf5n9&Jt_H(98XT14WMTa-k4HG4RGD193zemZEd9C-3H9_N{TtFl!wx(#jws`K5oSJI74t2d&<^3ROL(h_ zNcp~p<2WVz*|*f9vMadh9KkfZEHo~fy-|F@`n*H0QxZ2GuO5xv8avBm&9`T>nCr0T zXsW7T{V%tkEc*^&fz4)+`BqmUMhyXJ?!eBW}U($F~8?vUR$5E_OZBfx%H;V*P|gUSe)6P(zAnh03dr)Vyf~ zneTQF*`6cr9QjM+zwTXvx#U4|ha3nvGNW?R{T5UfIAw;62} zz>>X;C-aNZ@i?@PBSO^LF0Tvp9ft9EtCGk{XF}6mQJHHHS0F>K;&(J{A*2f-I^s`=1J^4 zdU15XOWV68ACBNpbtYy9A=D_i9gpanT7y{84c&q%YaDPlMznCuL?1KG{<9M}Eu4tc zAWI%~cigS?Dr$U$6Yv)lQZfv&k3)MovbZQ{E7`xRtb+>#H$>7zM87bEYhjii8q1pI zf|9Ik@Q4+GtgU~Lw;?DC-Z@8m2U?5Abk%Ao&B*%^&V#C$?5{QVy-dP0JMH@w;X zRYGfmtMU|k5(%NK{#1-d_b1t!zRLQ$BloO{CaVFA$A8%bH#&7W_V~1KOXEpEQRsQ? z#*)6NeDi#edoM)dw05y9e-1Hx+C}d?+(%I&nBFTx<2!o`(*>f7)kGv#r8(1W>==pH znSvlEv6kgAW}P}>KY2YUXs&s;&E!%B!xA>S8;Q;xF%TG0LGT!*CFd@$lQA0khVUT+ z-f_etX_fbL-1jY~wHS*@O|{*RUpatV;~^eLHUQffNLB9TUz%QDj=}_pqc$!@)Us6c zWs2-ZhF!~7*rlaRvC*4qtKqo=7mW8OCRC7|wr15Cuh>W|JO&DBW6*;HmJ+9=nMMEI zQKs1U#=>$&1fb8(NewL6(4!bq84l&D4BjJepf;fRLJl2o^DDxRivjtKvD1J&b0vs9 z>=}@G#=#bSE(*#`UyC!lzeZ5ah|3Ra##w>2;_q<1%*~I5)*g+opbY+wsB!T(+gcho z$A8_9@4HUHZ{w~o^AkUeo{GqfN*wq|yFgpAg`Y@%*P;W=gSdwzl4SyLh-Z6X{(>*2 z3}ovf>Zr(&^=d-i{1H=O{aQs#h8jU;0FuXNYf+8|jjXYQv?jNr`~Tu$dQ-f5n*WHc zIo{{I;~GfRL!1w5D5LRtADtYzav6!S4;nMlMkO#*BhXCYePleH%s1(9h2=al39-jV z(lxCGAoPoh*z$-poQ-EMFD6${Fs2@bvJudu4Bcc>9$*gtrT}$jokHK1n`Wc5r^AL! z#-BDzGag-^kA`xWBXSRO+S@J=2t4_cd_jZoGAhDp_lwp06+_L;{$x09@a~(rW^Vv}mT5s99*JJtG04JS(ZSiyl=Cdq`ZSwS_VAEDO=Rpo&LPK;$NdxeZUyrT^%WOu`dm89ZBKkwaAyjO*b8JxuY{MoWvbQD)_oGls zkVNyv2UXm&$)ByhrTrvlZk1IZD}=2FOnWABle`QD5vR#AJ3p#7|Px||1E)x}hv_vo6(v{<&beA&IwW&IoJ zw4Ho!22BKA9b6D~FYSh?8N7(xsmTJJc&sdY-&Z61_hyM#fA0F;g77_cq*iec$U*|BF+RBPPH?4XF&YzeBzsZ;Oxu4?ljG6L)-NTXh<=tO7_4{SXYYpk;g0Dz-|-s-}-MvN=ME##v?QtZTGl@>SYQnWvlR`1)2HJsl5nIUz$9&x~u?;Z`bBKW#TUl+o#NF`>aTJBr z6DSM!pP>22!2^7IZuJ3QHXcQ1Jdahp92{gK`*4{9dNQ}L9Z=+3D~Cc>qX27RSwggc z;Ch zB3CsY{cFydpJ4$PgnU?Ohm~wmnSY}z&{HSzoN|Z$G$O`K{h)^Nu5OKl4jH8`|DvxZX3ODO;YcEp zP&~OAD;|=P4Q>%D0|gu+O4jvaWJb+P1B0AXUGjw)b?w|)Y{_2`NIF4oN=3n`p|2Xv z`ME=EFhVJ`RIxZw7sQ8B$c^X4O%F;x6mrFwmd9j?XTn4N?Ogtt4qS=?k5eoU&s6i{ z+$)&WQ-Cxt`k47)td%t?n<%xSk^Nyq6V*qZ62!oMiuW&Vs#3d<6$crTM5o?@^+01- z3U5{7@Y)j*U+X;?gGfHltF9d^Hou;S3n_RjtjvzlVNF7uzW6DNeWddlX9y5Fm}o~5 z&tU?cad5?%^nRnidO@?ani7W{(t4zQ+1K$a(yZLnrC<{ux-h-A97U*%)-x*KYIy8_ zF}ckRA>=XwfCb`3wH+FWhp#b&fN|x!5)35hK50sd$3#K}XnWLc(Lw1eIRnU+f_fJG zxODPo8DpF`6+4=6YF@0>EHpg|P%qCiFX4;9Ty?Rb+1h5~z(0n`Vj@x`EP0n`sALut zRarh!58@z?I3tbOr1Xi>wQD{s6esZmS;z=i)^!MSTnk0i!Muf|#Ox0|a)C|yQlo0* z8fl)k&;IG3zOWS9L(snM{OLd6UAnpWI>V%sZ;~&`ek}A}qK$4YY4DGL%^?#wjA}tF zS3970TWgv&LpjD=VE31*wV_YqGq*GM&L1>0D^S@=bwy3IY8hPv2nGL;!ycG6kh%WH zL^*wv5b(|AUONf^urp1UL*MIfBSXDj`Usw}4I0b3O=#!}hP zoBV~tatr3FvcaBeonKD&;q$#CnkF)!%XAIPFCIl_kZ<|!;R;tSk(R)f(Kq&0mMd5O zLG4t#Ch5Ve8{Lb<^i*fd_M64UrrHw0G}!7)hp<>Qu8;A=VmWqGnBTL=%I!#})*%KM-RceZnSXaz9ko{LVnoG6-jv@Hzsgr{`a0dvtA#?$+7 zw5vJ#mj8`)udMYODovG73i-kRMTPl4HjaF__rGOinGRVkNle zJuaP@@f+Q_NAdm-JKf*#Z_Nex8TObyocPe_=}9b$Y?DSQuT zIEDc$t>QUdj_Gq)3XKeG) zt5+j`KS92%R~H}Ws*+;NZVF%g3YECbLQ)d=Ps=6XED-iPMmKYp&!=KocIX~v<;_$h zC9jX!fl-b9@!zo`nvv%!gNWO8MS zj(y59r(c?kGR%puac+WoKr2Nyk7|#`8XcJuEK3*^W8=miZ}Ou!hLekTlfv$^hb;1F zgFzYyUc$j)ksCu84?k5pc*kaR)ZUFTY&FgQ#?Ql;OlIlO8Oi-C%@=FJeDeww&qMOY ztk@jik)PGQKz@zsf`hxPt1&U_Mz5S=6s*`;zcz7#zUGIJ#643CK;7qOGuMP%-EN^n zfxpw?+-BsgDW{FSRU@xPjSQgDbf9_dGyLg5LPv?|?w-_Zhf!h75VPPjRo5PYA0^G2 z%@4+TOtyn#KlxMi{9qyFd)-VM2F3@RQzQ}(v2=%zRcHP%6(vF-AD7r+0-$1)D9^3$h_)#Q=PR-Y;R-P78bH-AznUkXN=8!4*AE zchFO&j1=M};AL^=MEDX~>@KPgV?L6fV7jkZRrBVe7a>WOH;3!X-HfQkPi@L2@NXvT zg?RMVaCRq#|6@PXUM#v>W=xetq|o@8gBKuxw*;cLt2wt8Xgdz!gh^WFwaTWRm+zwoUSciLSab1hjMAz1Tw61m zYWQY?awg+d*NPMsvgJ_qvyL*g*078IF$*uptJvc-5cLBwt5BzAcS>1ErToM#QdJ^S zCle?hMXQ107|crE7#s4|! zIvo0_*PvGLw!R5&J|@rBeR0wFva{|vH2USX6^2S+44Y@6dPsAx#U0-U&jS%k)c$j8 zF;t2qwvZ}nFQSa|O$k>_?#*;A3G@0}Os5gpIL8H&FAS^o#|-s{)aLt@m%@|=W&dKx zE7NM$hFT0S3iYIPN>@bkI@F226CFipbzH0k=Js3iWi7n4dum)(cXqhb2p(>0)68*% z%?e=CU^B3dfq%ZtI0k{;i@e&8r)RkBmD^I1kk8+~D-l>IYZ0ooQ1O)uj0j1r$;*4}9PB`~Rr1D1<8;1ftnFPLtpJYD7`E(mSJ$eeK3@P@H ze+s9XePv>r!(%)pTIxC&nK3}N%ah|zQ=1GQrIDnu&C+lQ>{PK`ZK0#_@hZ_UX2B>w z9}H3Yx*>Bt78G9XvrBbd2$lms9n`Y<(o{G-F=?AlQH-_f+e@+2F{_O^Xy8(!UdAHE z6#1>&;*z2~62-?5tb_@u9GAdO5s2$HkP|TzdiK@8gr_5)62~eT?OHF($k<}ktH%Jh*G_TH(7N)V*tqm~*1-7_x)XAwm?kpiE)kFQeO9hHy;f$AVsj!fHTcDArrO$)-X|SFIAy zgT;k(^M)=gzc}T71@1(Fq7ocWj|XMxRWQa~RwDYieJF{%`u}c&2Wh?os*D{!k_7oTj24Y`fvUbzroF8GV(rt)$=j zGWER1iILu#H}v-Let<4t_?+)}hfw)o2~(8^<1zx{6hXlmfVrg$op*HcZSMDiy}6?_ zQ@6`3b7Lu`{LW}}RARhW!Ppc760Z8pw3_e3xl`dt*W6Fm21b4vCc~}$j!idK%C8H7 zXawP*o?RN=rDBF>BJ&hT>Pz*UA>`O&6;`EkSr+-oJnRMNDqwSpfNcKlUig#;`{@=` zFcLJBLA$*N?JLZW9z(bsM?+2>^>0C~cMT7dGO5dJLS3yNS zQ`mZH2d0XT$*ifUnBJVp#dGC$K!~W(;A69pLs*ON7O~c?83#9=z*DOjT9jW0-SwL#I=<<&F7wiuujboFsDB z7PG>v*N(v)f4D`B;R3Cs900;k6JdWZJ2XX}@cBmC+SG{kWCb?YQd?XnM%}&aEwt&3 zQic^vTh+E%$M$K5joTI){2Tfvr%%y#xCUS+% zs2_;lRQ>;HG4~1sm#;?oM3J4qD=jl1MRRP};aD^DI4Qa(wkDAF1)izQaeROnafkKW zse?!0FPZOjf6vnOb4`{D_E2ue;?>|FT?SV;us&Y$0=3o(9L625bm^x1fSwQ6d|+>mWc#f(Tm7gs%by3LYf4A>;` z!7TS`RuFV7g9O!N*qH6ZPvW_GjJ4<|?)vN-QS%J{}Xc;NGsaX8!Swdn1zKO;VFylN)2$sHx3#5PjceRh#esqB&J zsf6v`5$s(YBKxQrplo{YvEpS^Yyz9J^*)V6rG9yP-l&0$rRR!=O(I$WrKKLJ*RgDp zaJ#YrZJ6FB?y(`})I4ACo5~LOMXg4qMIvz0zkEB|lSvl`TaRM+wle@#=cY{O;@o;a zJUJ5*Ar0X(d1GFR@yZmJ_#0b;?>H3KKZv{u?hQTA+G1G0b|R`JnN2pTZy?a<;IWlV zmC*$>oNAC1c2X>tB;;4^rOq);bcT{f*R76mR%SASJ2VMu5#4f42Dj|mAf@T$p&7%} zqGf)qvCYbpx}T{Ul6+?+$rOymZbljU{(vzAx)4$ZAf)0e*>?YoxpI6_2(yN}>vUa8 zJXr9=B!MQCy;|Em#9F>?0LEl!7n|pI)dy)kd1Hn%nkO2&?x>U- z!ZRCO=lDmvtxJpLh}(D1jVD$yDIDI&(Q&j^{*r8f>Eiqz@1#5b zz}T`)&VIRuvYW;KyKr2Ry!SrGAV(Y zRNynp5eu*n!ZoFKir01wPbd?-b2Ik6R28W95~%tZtp^b>1sL5qe0rsUc$CS<93GBy zm>fQh<&y#%L<|Af&{KpHgQhYMu1=xk91B;Aft4*POxUC=&nlX_roRQEmo9uONGP{p zlp?p-^hmEy1e|L6RUz&vSZUdzn6&%)Nz0^j69M8*izsn2Y^$lx@pYOgkoelGFo6*a~<*llj=i%To zPCBuajU@)g?1rIm*8*6C^?kHK-d&gMU$fXfGy?- z&R5?IC4&&^Jo-~<8>zn}53Sej(D8z5FeOqE&TSZXdLm(mv-l#62tQu#Al?I0z zn$_Yv*MZd)ddXs5yeAE8@P~$*p z!#n(M9QR)?iY7Sop;;5C*o6f)jag3ITk29o(1{EfWA>r$!+E2BP*o)aeQSF#C?wKL zctqNzhT6STGA&I<21d2xp}3Ra38@Gd ztPg;l=MonvONEx@X02&TfZeVQ{4?jSKj5*)#d^S!`LDIcR4DV7X7jx>bL&;~NqT&o z3Cxe-lA<1#b#W{C{G{jI?Iw2V+zOQPtKsTc!GGZ5hFeZ`o80vke2))UHf+3WIadR- z2^k|`vCXWwBgwLFMj*Zf5c0mla@@jHIiv% z&Fr=5ZfT}`G4tM zQ0dLBo^`6!Mnxf|1UI?zz|X=xrnGMSE_BD&zk8x;5UPs+FVF<7uz}^Zo%SUieeWBY zC6}TcTNSGuCOe`m=^*WbD2m;CWPIu+%*nUl z>UPAkYr(+2!VQPJdJ%yEQ8&3?;^*SyGavnuUch+MUQ7@Ey2yN*vBwXQghm)Y<}Fvf zC{&6!(lPqm4Q+T-TI;hwoWcx~qa7|YTOOK|jXQB%13#96kT#8tAJm~g$(H{@?3q%Q zoG6DnhNG2hp2Ah~wiz)^p4=MyXc1Q4*EB%yr2V^sg6=got#YM#-EPJh0H#|zVw@Cw z^Zno#W{W|!IT>Zsx9I;z#ou#B_-o6%S+fZ1axq>rtMNH^@R0lB(r)*b1uv}=r{aF% zq+)xG1=u5z!-TEj9AcHTnc)ASb7=}mcr7gT-R>?{E{Jfx^G5+Vw8+(TkIeY*T~xcF zUe#q$s|%P*IYAO1tA^I4(v#QYleq??{yt9$W*v46%1a4bIHnOHX z|4^9%6c-=`Pf$U4mwB}ZT5%~8@#CX8m$5s6)VkOB#l+~O?{(Uq$u);1&}z@|db^7- zBn1fUmAY2-KB$hde(2h%KBBO$oDsnUk}jOd*wXTb9#M~5kO(;ra7rfY2=qD=VO1`{ z-1_DeAzRdGz5>VH2OJ6h?KoQSfpA~IWF??eze`w!wXlH(fndTr?i*`J({X2`oTK%5 zqoyKBq;xMs?SmHV>gt1pNWX2BK|=f^*3dw3qf!9AsJCq zqF=rE9K|#?GGhq;Hr_fYZFVnIa!pD}2n$st=!quAazxzgHp5SruTbSGo*F2{aLtn=D7T+d!BS9KJvHu^zk4rxDZ}@pE;_J zwf7jHW1E)ugowy)hSQ>s&NW2IyQS$>u!T%zRC4*K3Aq8g0mKSgKM#L8@d8Y?*t=E3 zodg$je64rpD%D3|IjI?PY0L?~rqa>b zr=738rqVX18lXtReTKku22Wo&=-j+zd5@V^H>M%_D$$JFr@h?0M#%MVm0-*LWO$hq zPe0$teqBxG(iVm6>-#@VjLREskF-Ih3}x zXC*r{A5)zMh>es;$OIU@_}OeUYPeL#^<3iL3yWW>Jo04P*q!u!?EOJE++QiI@2xa> zaCKA%(iT|JYQ~dhzScn=Ic!r|j$1iNyBMD6bqQVink?+qHl`4*8AVd6+ZPWV-{^3a zWD+%He?Ng&I=z+Txii&=ID|>Y&#J=N?MEBuZigqsj8&fPx^_!ecZ=o5h0s6-#?WSi zeN5|v*!n6@+H!_IU)@4I*Y#?s98H_vs>ZClT`V*f)+@{8s?yJ-^laM`HdekU4iF5} ziJdNrW?C1M>7ba&?YG^=YF-p=mpzBnGdjdkbZt=;E!M_CfZAPwH14-g0toTYzK<$Qhlu!W9>y6 zm{_w3bq0{k;Sz3Rm2OM2XG`9qV4IW~OToTUAwv6%m?q1Uj)PL>Ad>jNZaWj404*Y* zy++)DQn+^78@pS4>D^CXxr(T)G93HkDs87EJaj4Y#0i!gD8fWg8i-r2A0a2MoOQYR z?{jb~e-{F^N8uZcym)bXCx65bkdBjI{rGsW@|7uHoKdV6 zl1Ju?>(+QK5J9Nh?wKR5fd27{Xqz{iicIGp{ zS}$z)g)|Os+0EB#IEgZqR@=HphpNt^-krRKAUiF1- zayQ$AKEk$Az@o*MmRbkbjWd+ft5~{zD67z-*54^cK9jl}Z#dJoOa@H3JKH5ta+l7@ z``uk=D}I|kKXlTPcH#b--~a|$eOh!Jdm51HeL==aUg=qCH3`foOx9DcO~4-n(?*PD z-KXmhV`8;;xeDU@0JHP56#K z>;EO;l56bObI*dc!FOJT?|~0{RqFj?8koS*_I$_VP#&1R*bCvF_XSxi9Dh%c5ZX6Y zvtV)#`PQoiw7;Iqs;0?w*E1-QgOf_=6LqXSHh<5dyTQQqH}*pg<&f?IqZKvVbE~bt z#3ylqpOGZzEz~D;>pgZ58_A;h7VWO>#YFf^_mD*I-gv#oAG%W$tLFZkv zfTX{BM{b~Foxqv-)oOROj`a}|J1z;(JmM~@OB&g7yGKe^$F%o&dC#su>1iD*Jd!lo z;z*&7WcNcuEO~L4a@C8QTXj=om%N0Op((LKE-47@B!eD7%$?ASqV-3rixj(--GYwH z?+@+w`cn4-Z-xHxW>=5V+M2+~a80LBc?P8tF{CN8BWbU+h?9m#()zYS@O>SLl4ji3 z026m>g{yG96Yo3_Wzf}9TnIK8)T6d|)9iQX)DY*DsIb)<+iv-=wQk31g=XGz*W*Ez zxh9GsRhFaO(69iEx7sMk7g1aHG+jlxsEU7hpKrMkEF3c5cZCo8xO*k z`NSQ;9TnWFJ$R-N(@vzZhKd%FKsrlYQMhf= z^~9I{&&-0S2xdnw5mKonyMJKXUt3POc2!CWlA=1FziRhfOQp#vi0IE4cpI+6U7G<+&JA1X{1O`r|3%> zJDq=0N9FEla@vNwaG~LW7})1dZ%&7M{NJ*zCog>G{{v7<0|XQR76=FcA&iq&!YXLP zGd}X&qtrmL#yu5M<&1)+!=A&dB0D6$9_ z50>R?hy}zPA z|K<;G`^TKrnP2Ev!@XoMN#}0C2I(a4&qimC(L!!FetP!U#S8OkTKXSn>9iir@^U!Z zJ$CW*=?f?6x1FECVs0P1_~x_2&+?>xcKB7&&z~KBSSQ2PoicN)Rk@!Y+^dtpvxB?( zpp)75#h=g+r;U-k)ELQdR!s-#^w`BWLlyW!l(v9NFa_hp$>Dn!LeRX%wtz7ox z0e$`bWU$&FB$H}&2d_W;C{6aZlFPhI19~ehCM`kfUimexZtk{ziN&R#EE3w4EU8!f zRnm7utmu;@6xU}fH{K_IqJQ{_5B~WeTGDz}VUGN49>>Z(y3W#q26%&i>mCt}%5Br( z2g!1g(?|~KSvLmmS#I+3Tosr*_~>W6w0pGc?md1qyrlHI?*}T|PrpfN2ObVGKdfT) zos<8W?nvRDYL?9`h}#_ZW60mY4VuKFpH|5@*CBjglL&rMl2m`1CqMlDmVXJY{vX|w z%GE*c26lMc{cN1Oxsq`6)a*w|GH3KQCppO_H?2W(*~#0Wmt^T4Z3G?5r{DbN`$_rK z&9PkFsr;B|1;NcMm~RnO8g+e)ru zDa(vc$a3}AeUyfF)$OAU3pWmL9HhzFFkcM`H{g%e&=kC9}%>9&} z+)Ob?(jD(EFh^EGGZHy>ddWP|ntnUrley)d|CcM+4?4LS?e@1cYRH$}^X2M0EXvwP z$qN6sAAbLt>@d{Ky9>9!^VPmnb$uuSr(j>NX61a4Ee2VS^?boH<{rK8ynzbhZR`#U zV)^8QBH4av``ktud&AidZzJ7GKTamPS=rP5GL|wqFkVR9v<^tSeuU4mI!>{YxjV@` z*+IsN+w25O>40?;1cWr(*C`gTg4j3(d#`Y2k^aLr$(@=sNq0%9;{?;<44o*_Kv#cr z-*xNOCrea7J+d-#&pmJ!begSLU+wF7=t!?QfPXTJzJVwoZAajf1gBX!8$yAxkviPt_S&uv}UU> z-RRw8B0W98Nq~7f{8$FU;|{8Tse3RxXC=;p?m2cN;>jn z#U}8Bu_NNPyXAzB^JvSBf0MLdHR_9Z%PEaNK;`k~l045B>dP9_5e>?1id+19wDl|) zJay-SZ6)ux5!yHcpWY?mCfT8HyJ;7yJndseW60BQ*YP{V|AknRYjoKM9g~Gq3@oN} zXvjO+C*x3#Nqc=*s>ch@%Q;R3ITB_23H);sgomXnQ(kL6jl9?)HtP^Qys)Mhe#TBg z2#vh2;aod+7_ZYJi=~9;NlrKEvRHSugC^(9y^_2`t_oftQU{Hc(NULGv_h>v)9u4N zDEJZYj0RcvqJK$9QLOGd!J4oS4;2|EM81VR&jS~#$$7hqFwoDq&lU^Djs^4CEnAkWFMbHaz%kyQ+PVjO(IXHon|Z9iOfG2tX3eUiM$YUv_*Z@gzTk z%t`-7?RuRwhnJFVl@itsa(X1l9KuQ!2*4R!^NVp>cT!fRTk8$75gkrv5LjKShH)oB zEVXO}jQ(Xe!@lz!3wR25N`gv)k4wh0NIk$9BhRs0c9V`+DF?qy_j*C(dE+RSqy>De zh|P*nx9D(1$7(BigJywvkhGYHK7Gzjg&xL$Z8=W&Bs6payS;5ChokFEBT2HEEZ_l9 zdx6(IIGEzt~V84tF8 zk*d$;#4wXV^V&;H1Gkcw>@M%tl3(a_7z0+Bvz~k=1rl&_Fpvmx!hX%<$pZ?7u6iI4 z{spjZlCN7iOQ`%6>kIUC4s?j(IzVXqdum;R>gDfPk&+3hy6ig#bxfDS8#aTFNc-KPI5(v_Blr0 zPp+ip+-*3$_4|Qf*??PSbi{TS;_fT#Ku#uX{X$Y&21&8I1yIJlj*JNB0ORIrzwQ37p9%AL$$?Ubm5QnY!{n=LndAS;0bTe7D{ zn3%CWfJG2?c55MPvq;0M(+!>T>nbagD}%SP(MTpU;4tPw-dNF}9lLlbb%r@f%VF}i zo5bkC$^4=ba*vLGr6$HH42n)uT{rq0q8+xf19BedXMI?hJoQNNXA%Nkha-_(PK*95 zkJM}osjxdl0x~60{ei6c+__*?_1{6yYp*4h2WOA1@DGnIY z#dgbB(^<(pFHpTVWfp20h+CpFN1_ks`uzpJnlL#CRq(w$z+fOMMc)E2@d2Q)DTQoz zr;-|Q;~XybpvEIdcnq`Vr1~yCIAp|V87w3p0Sqo6jk|D7oSPvSF^OhL(~sn~*GSuI z?u7jXMv-A=8*8Eoi6D*Gbn%BuWQ;Y{CI^BIgWV1h2{v8^BiJOc1c5SS$hsc~7O^TB z_6DF=cqqjimyq@EF>Qf=YI3}dtjdmrezf$O5+c`q%5Ov#jbU+7>#9lk0L6f_q`VSypxl6smLeyxe&!2vOt5vD-9AtH_v6@JTu)5B6wdZxX(-I+!B1Skj9JPL#u% z2%MnE1^MUlY!|-=)5);m2l0tUoYrdvaSGSY@E^BRf`v{h7&CmF)E)T4*2oK4>D)Wr%D*O0XgyP(U#8fqF&)64p(DNmIlm-gH^n_9}^cYR%FPA6&P%2M9TC=kol*rv$Ci7rn+iPS7>U zF?%lUge4X~_XiU;(c^?PpOBF8r|?rnU&SxcL?!z%F_%hnJ{I;}6WBB83#%#vO3?{@ca%D=T(_E$Q+9m41#Ns>dlG4MG6UHGl!3UDisMS8IfL#)WlS1?DV z2p%Ntj#EF^qs~_P^KFALY!C&FTDw%ub91E zjznW}rsP_a^CR*yXPt(T4g8-Nx<3X{0PM)5s#hkg=@( zT69|z)x`8}N#;2XuTsAeEL)54S&EE85nygK1P#%=fp|_aA%H?lB)wI71_DOGr_$*5 zMzXW|JIfEbZy!7D`JgAJs!9A%(3!9;nPm! z|3;R{{UPU@qkx_Tycv6_NNp)BFT0u_@l> zOguS?R)%#$t>;$`P7St+&*8O}(z0Enm9$1smt`5nF+2umJU*O)o;fGSv)@=Et4O-O z$fxRfZRuI~a4hY_;G80CJJB-%%%Bn>R2p$EaqtA+Qs6ES;b@#Y8Rr%b|9mvD_??a! z^ZE1}pE0wSY$&?`4Wr)^H>ZgpAnp6GWQxO9@;Zeg69reqnW#bp1pk3v0#y06k&EpD z$b3CZnMBArxpq9u`xxoZk{;$Z;dYPX2u41z~L%~Wyl5?D$+r~Yd=RqjvG zIEV|uR;4+B3h5Rm72i*i*WN_S;;h*-$b(^Fb*tG|oR)OQ2XP3A#Amr$b9`S;J>ku? zFy9VhKc#SH!;S4$Oi1VKbd5wAos#qFp@B}Qz81&>zscuST}?;HcvKCtQIXH<+1_u( z{0QVRl%?KHDLzSU;%J>X3PsC9`5kn7Ck&6BGsub{7#jjxG&E|^>D_WoY1ALnF5ZQN zen{b_(|~1z6=D)l?ZA)U%S**R>nzph!o|;2yYz*=3mKh&IMsR7eR8x`&_-e*5+cDp zD2*Vh|9H&N*PLm;Do+IOjzdi5UlM4A=Zc;jNPhe_lHOv~U6ft!=K7?xwi;N=6IOqt zopE~#NnojlTJtgu1dG(h!)crcpsiSjVI=e`uD(3z7+5q28@#6fJLz zC8II}QHEh|Y(QY6CjVp%D;P^YnS9hKo9G-DqF0dJCm?e`AjY+U7Uy`(jpaVxHTE^Iq_Dl<5`E%M-VoYa)#NB8uq)HZPH=m!UdEcW%YuXl` zUbj1Aa;X%i%BW4sZYNu?>Y=0$6iuAFM{yZvg1MSe$i*F}ftkvAX+6D-+W2aeE|Bz% zhKvn&8QaIH2=SeeT#|(lc3cFhcf^kCd}q=`Lqc6rO;$uAtc*d%FG1Ut!@-aB&J$@n zPlmz!K@GjXhba0Jc5rS%!0whlAi@VGKv^S1e@se^f}_&U$r@V_lwc#^`jMoNLJxR+UmkG1?M=;Yiv5jUP+sI@3 z6BpKD#Nf#*A_~4xSCAM_0641<3?kyeSn4{+VLGa^tRwmeDd>bx3^_-6l%$fh;67k! z(#=vgAk36Cq&C($k+Q)OND`qd1dbBb5t!(nxo<>&Kx&$?AM)V$7la|7Px?;eMI%xo zLGmIuEoyo+jYD4E$VF z_%RMrbI>mw4bF>@jZF7El}T+laCb)1X!rW80^KjknOq>#<^StV8!e77EDetfg8Ra$ zo#LcCU?_wpLnj(Y4ge%fSzkoxJv@}{AhCY%9h3_?i4DrDMWK^)h&NvT?DyhIG@G5$ zTCV~T1(Q{(wk;0jzT*G=@cX~KA>9C=s9$$h{|)Es^csbp>^4srky^sxK)sbbFjRRT zApE;isr^zUE`wS}S+U^FBkz|g;iC|fNn`g2H2EN+;WD9uBf(Dtylj!@Oc_X06V!~o z-MjBBpprekmxgGVt{y!za9LAg>PnCUJ!@5oI_Z7)P(3SdC3|cR2V6K5b6X>u$i^_x zavFeEIj)p;x$m(o&f)SIhBN>DfLR^ZhwyAGNvs=2@e7{n3Qw~3EL$mcO)EKFXHOMJ z@YL2Ic-ApOeOa8Zj@&A=1K@n#L`$%{pCY>VCk3{@j4_0SlB1?p3Cz!dX=#fEKfzte-h1) zl5cw0FJ}2p^6PZA%y$B#bh7%pRt=-(X2OLJ*jy@%=J^k|apE?!CEk{lP8{^|4zrXu-F!UrXapdnNOzkaz=3_f(@oy)-|*gpWhT z4!tNRB$}L5*M#X-pG2`iBy~c#y^*&{%>qE2Ybu{a6oNA5Z?qB|eF^udhVuyc+Sj=? z^2p3NLv2rZSWj!pm7Tx#wF&nh2uE0-7ElHk2A+>zkoT0$oiR{XOQt^+iYaK8{CLf0 zkwv#;{vK~hMcK40Cpvx91t%(TlrjvieT?TsbnH#5+UW5RJa#nvVZYi|i^}vLmt*e- zt2Bh@Uljy=8Y?b{n9GQiPG!B$6(cN-zei|aF)VtY+0 z!g>ZLj%=_!`Q(}q#Ka*TQHQ$I>fh65nlQ(@?%Rbq4PB((e2~@IUNx^r2w@5fY&e;RxzOR~>O@WL{_KVe6s)24}0B-%iTIiBGA>yot0%dWpB0?%z zl9Zo>hzbZjJG_MA^@-9rpg(HhV&Y8Co$EPA`xZ6|@VsTDLbw$i*w>*OEoXFxuM{=M z-UpGaA6OIZNVgt+tU>mhHlFI~H>pAyCvo;96=6D!oICdti#tW4KI2eZ2&{WC*?1$F zmT}3{`n{nEMNr=?4f2O<3QW#CRjeB8Vk0Vkc;VThzNi}wMwHyAnLsML?p#~Xs0(uL z3#PG)s^El^C~a;`m!6VKOhXleGov1p2>e61@?);2Bqj?}gFnqR5m^%9*@QH762vzQ z)%H=V9gKmaT?X(xXH*&oDg4=}Z|Lgt)$O2KZKX;ceslfKBiZAPOwh8nIOYcfS&VAwkHNMXm(XIcADz=Su- z+yJM)Up7kQ;yh}Lta+ey@pzx*;9gf^*^gl(^rV7>J%6R*_N5M!;`g_bHzA9nxdC~w z^R1lIkp0jM|Gqfe>x|$qFGfx|537=kS{lINgo9|QqbHPztidhYPo&S=hyZ;lV6~~G zJZ?QK)K9{vvQ_f1e#-m9t2h@BmE~Nn+(2c1m($tAY2R^Lp4jS~)oanLG-M|9wZn^( zL6A#DSp)L`NS++i$YeNJ`jRMgpuq~spo0BOZenEV}itf;`}h^ zvRn)c7u%{?VNf65p3>KD9JNM)uxy^M7Q)F-NYMR!&1`&HnjX;nP-|5h?<2%OOX8R@ zE_JkCg%0y&Xa~A*q5mK|cCoXkXNSyo$ldlSCwNZ6A$qT+$hZ(uEo9fuC)f7MbUM$6 zR20Rc`Q+wEG}D3sFi)iIHG%k6O!_9+FIVD)?& zpl3f!(RG6zGYX?>6V;tLeRfUO<@lBKgutqt|1vP8izJ9|@!AQ}l#t{LC!HKapx5~Y z|Gw}xhFEeMrHi)m{ibywbVor0|U#No9XpT$!ZJn4|&FDiD^kt;fHYq5)*62I7 zV$Q=AD(LEQ>iZwH^}pa(i1e0HLZ<9rF{^>?^K)vN6!kCxwJ4NP)Ji<==(K2F#KB@r zO}3b%<>C5jGGg#)E;Vwa{30|}=2Y_9Ve#3p#H(+jGvUj4&1XN@U5-qi6y)ix(X7aA zgg=QoWO-r=dDhWmAt_7gFT_roS*bAY+oGJ^BYX4_)(_%E-*0-^(()j*zzy}n-7cRZ z9MtUa$Fwg}s#&_H;$YwIHQWRpVcijDlBPZAJzW8{PnvnM^PdG`{Q|jyyS-RcVt1== zibyoy!(xQcQQJ~Groy*x8AoU8Bv4CEG;>2 z_nB%z7m%uR&V>`AH|jvKi^?1{Hm;l=e+A&6C*GJRg4j}wN>WL;>tkd^=S8NP zW!FCU@5|zazfe0ztZ@IIFvSggR12<{9A>KuUeeg&!e%_ma!iy5^<6`VC-RZ zxcX*7U+gKg66n%Y!)yvE&Y}};jSSgqtH%H~Rn;_0$-~@z!8sJ+xpTd9=bj7JfsuZ$ zIOIm4kAsFl`+qcXMIr!HK<(PW&2;myk~=1IquSpe#=id?_ZN95dwN)9c=b;8l`)&hEvEhZf3!Q9LtGktXp|3H@Oz;h~`|9 z4MAAdb-p-zlb2NRes95Tuz)Eu$%k`I9x5`OMO(adHszuNdhFhXsD@rqBf~JEuYk+p zqQ7rb4CDsqXOd7&xpu7l3!=S|KKT&TkN@tp%k{LbN3(f4nMA1LB@|WE@P*#A&00cp zaZe)&!n16@D3PK}I;HH?i50-4=#`JPLc&sAY>^8=i;%G6zGV(Nih8=ZsoAl~yHwUS zR4{OhxvnLGz_;rZOfPkI$b6Xt{FvwwLs|X49-9Z98RM|G!hJKeVneqSit&lfz^~9# zB#9^k(WAnqX47xn7(l9IBX3X}Oh{29QF3bEPSP|;x`&$F&^D|Ma)q{r9c}_I z8rxh2&hGDV%S<6L+3s}GYv)?mE_!ayzs-i#G9Q>00cX!{AUodW7CCdIos6pcpp+W@ zzOQJYN&O}-imIPaM#=B;i90>X??$8HX!ctzfo;;zE&J3LsQ4RK*b(=gKdP8axS!0Q zFh+5!#WC`biloh8EMo$()ICfjgeWQN8@JDnE1w2jLv}j{>%{kaQWp|c0a`Vxn4Xrh zPMQ^?A?7AH|6z$%19ZL~)DgtNg=0!sv9?^H8R48bXBM`?uoEeQ+DhIImpF7DZ|rdp z21(jRiD-LH;&b2zOvedM*B=v3Ow7Rl=lU08Cqv)%c6!S<2Z9UbMs(m^BPCvTR4LeG zdQfiMSJ|fc7z-fqi%*#IPBxpkxKkvG&4tGxO+8*XqS;YPz4TK#LSZ9| z>+v%$zOe42g^4(VX7N7EOQ)WH>4oPaXAlS4XS3Fh)2`6*)7wXnwXuZ9|K&0N?9}r= z>mKtp1c#{WuS{bV-*i8qPRa4m7WeGBf%Mo$5Z)W`I}TAyTLJbT*)FtWRTt&6$^dAw z;wm^A(>XVVhz=cdr#g{yBfJL3h$$z0$%3)o76p-xhLT+KOAxUI`)PY=BPzK`<=Vbp zU|$2xO}S7Y~F%?>`yal!;Ur-uN|9NkBzE` zZglt)lkvKmYi-m*OsW%Q8g6{CUqodU%w()4IQWkWm#oHWhQ7@XGvtuIozt~?!{nFM ztRC&b4;Ifvth%7`%18aX%x!eO?aLwuu; z>G{z%Qd(N7e9;$9%Yp97)lr0m%rb6ZGIxIv`5D5}^)2TW;7iJ$cHdh2S%SMccP-Tk z6mu|YF11nCn>jw`W=*PQa6C9I>N`kcsZ#W(+PvJF+Dzmz%QlBke39zyf&AR{z0f zGBm!IqFy1>kdJ2jj7&4Bi(3i7oLpSDWS?_mWh|aLuv(1KR>e&aGQclntgJK3mTtn; zl@f?iM1A%J#e&?nojz;sNK!viinH{_%5=cM1OB6eCnYl3o)oZfOk|4O{M_|{^VK6{hk;N~ z2;>Y9llwuYBWrl@xY~GXo*n)_y{)W_5rK6!(>F)$a;6Q$t*tEAct-dPZOrSVVw&ZX zN$y1Hm$P(U;xB12Dof|qznzv&r%zHhTE6~A7}p@u+Bfq>dA4kf8Ai6~=TomTTW1sv z>jR>h0iO?LO7AYTU{@M7MHd;Z;}GJ4H8dr`b(dgOai}*Y7_JwkzQ{OocsrM>8_$g* zN2KA^hgA!zVvSc!79ObI+Uzs)d=!L_`_N4okwNLWP-ckTY8_aNpQC(3g%3>_m?J4n zzekC0G1>RcM;WU#CuV}E866?0u@SY!(tYf_#iaq^!d6nOPCC%)N60O&MgtG&-nk>f zU}kuPdJ3-QXepNn#EoKo>73rgTp_AUF+?B7DwbU-K1+PQY|Fm5z!d4YvRMFsU;qWU ze?r*v_wI)7bszhYT11C0>KH03kc37oDCq{(3tXjBb2)P@6%LJ=YK!ulKE)<|Cb zLtNePL0AX^Dc8y1m9}b-^!7M2?t`+P;zf{3l2Y%Sy_uLhkL+oMFzQ9dg5%0Hu<#>c zH3rN-m2_FCRrTddghPv)puJpby_oZWi)Xon%rt;bTTt}BT?UHxcq?J z=wkIH-5jaxU(-DXA6}-K(=epMM!S93kCZQ}`Xu*#kI0eeukKRarCi1Pkn-0HM45N0 zaGnNy;n3Ym2vyf-?44(*ry#$2bIMi87f~U9h|C&dHBi5dgvEZ%{0J|53eQ3QBgTnB+y6qwp zwUvn>0Fy9AsyFI_9)_qlT&zN~CtL54DoQjHXPTR3AGgh+lpCjwSp4wuQIgxS*Tj-V zYhQeJ;^!)&YXWRdLDBVD1o!dz>Bo~rdnVNDaPF47Ezs(V!jA>Gbtyr(ku)YRX~u() zy$tQ!GQBVXg-dK0j>##H%j@iNB}C|^$;@AHI0s=2_VcC-hvoND+Y4A z>|Qpnl<%1f$)%c+;e2y3fdMzUI})mqVF8GIX%6_B4pC917)qexTRRmt;IdbY+2*!4 zFK;^?h-=oV>>P(iz-1&Kf5atPjaCGc06)@WLne;Be`(7Z;;vrDy~wg$&S_{}9eEV{ z%$JMsn4KFwtbDpt_KS0?Gedq8Tn+|S%5J>JBrToRGCmADTO9{~-3T2*t^0>ZC^$*G zLMzS@G{_0e>kO4%SG#fr;z6JtGPBm#<<%&OXvO$2{n!!~Mo}bC%X6)VQbNM`+W?0X8f1 zaMeuf2&_qF*)nY@utZ7&&Bblr%_ebPN#3FUGp3Y;%^QejT+yl*NyI+oRn+f?E3q0E zbOy(bTgkM1yKPgnUW~?kC!p`T5j+jkbIA&mxdm%psS5vfT8!q&o9TPAQRz(QTh)6b z(3PBoX;Z_VU<6X);6a3S*ZG)Y#`w-1gj1z1{8`H}!(3zYmiS29D zG2G)c-PB=xgL)pATjxAROM$ASyh^@Lffp8i%}wZ0n11ReXEI(r8i4yv?5|yz<~nX% z#hDEhj{cZt-yRMR0=s?cxt{H$B+UnLe)=FdIwiTkCkzO40ZQYZL4+Hvg$T7k&%*sS ztTLiz&K^3Zu5v_bendFx8_+T=(-W>KvZA54(17oXZecSZw%cSG7}=C34YPDSJgQ$J^N5pkPq3KU*( z5we;^>rWbc0AoO$zZ4x!6VLE-#2&{sO(i|b71qn*iUK8stKZWmh8$?7^vmxs zvR9lR>kGch)V6XlS2U21>ibXI3n3o4!#YnXyNz>?Zm^|Xn2pXoewPqi?n_Z1>BT+fT-my@(CM>9`o2ap7GB5np1)q2l`yQbZ{xnrDw#F^e;Oz#K2 z?}K;uNLr*`XU_T;^=MY6ljN7~O?5t+A-nz??pMM`{(Se{k1#c&3YTCHyB9uO(D#44 z@qE4}WCR6SsU~*pUyCp?E2-A{eMaxKUAGTVTe8r2Jelmp!pz6WBAg z&QbR{X;A2|nYuTynjmT&zNYbgT&)@S{m5hmb;C}9tCHy@zAB9ipR_=L8o(PjwQ9HqpR|KK>C>|NbHjDLhx-x(X4 zSLE8i7(xi0$c)nu!ykjIne9%IkxDng{t?h2bzBN5AG+t-J%$=F;V&{vKJn7YFK8_x zCx|`>>oFI~Sy&axo{-dNi+U2NXZ{*2-zVN)WxzKvYGD$@m0Jw?3gp^1;}MWNzIg;u zzPWR`rxR2bwMl8IY!9o(h~iXYoN>e%HPYqokK%B}vu8De6CfN&sF0Ao6nLllXo4pY%!?g(cmFtkDiT%$WyOMKK=m}`=e#G<&&v_}0=*Sd5x z#EyDQG!vq6Ij-r;*3}C<0!jjA7rI*z5!?yBI@`UNcqTPiI}Du5)h0h4CNw4~G*o<} zU0nS(269CKGHM(iM%avFtg>LH8ryZc=q=UTfB@z6bxhniAihU()0V`gJE43(R2AI` zh~r)6Ap8TQLaU+PxE>R)_$-}^!{mrpudvtLfW&oelD14<|t7VNZhgCvn#{@9jpZ>pNdl_Ny-qt<1*w2H%mW zUbo$d1Qy|Tq7hiZSZ%@P4Ez3vB8D@UbmAFW9QbRvc3Bk*FEjAZfyqeeNey4xyLM4e zIBG@#U_lr%Vb11tTu1{(yh(mp?)XqJl!o%&)$4U`=En7vp&W7NOGuH1Axk?*YNqKc zei`>(vsLU275=Iym3cZSHohS|J-RKkZUoPfPGEMx{Yi zg%Zvt;DpTFb{7ZwrbUZerowsjQ?KpiVkBonB=W}ySUu9A64f!`M3+R8cc5&QX;cee z$+S-m?0;M=qf{XH$9>}|*>=sF63S>%#4h-{UQw<5I&1$xY>#uJeE3WPR&DPHFBh<`JVbYeRG2YxRgO0KekGi#jbQqdj}q zg*XI33Pl5>(pY?445)?LE#JhmwPJo4%CZqy8>G6JEsPzm-ru zfHZrWN>6u~ID!K{q!QAezqO{Nk!-tuD$c;ME4V3%RO5t;!Ymh^q#MWSh?~54dG$(o z4>y{2+-!*{%;BwLuj6y+5x-dmV}Cum1#Ft-W>=+dQd+p0$ZLu|6@N$b?r^~`Za7=8 z7n-t8zSFgQl02zbU!q8EplF8vTO#qbU-YDs?{a$(A7&xtrVM{2|;p&Qq#gy{)F9Y=Od`3mJr zriM5S78x*HIiiiyS}mAZEVLYiNeAI-nKP_vzE>dT%nPS>#@a6IV*^$MrLy!M`2B@^ zz%t+9dz2hC+$r!~B70Cm8jUu!SQg{w?rIYBQRKbD-lGKXE=>L`!nQh^6DSdAr#2NENRNzV? z<})3)YsQ^+eRnpaJnU;cLD;6d1e2zAMsg|Fe(7szq`Ha9R4Ad-tR2$sHI_BQp(O(b zwOkn}*Y%jNhgPo$B|9nsHv?%Ts^N;zplQZ`QqOMA-i11sC@PHF7h0yT>4}E*=pz9v zuvTOAPr}_RT99+FUvY(PG^}Ahom9hWu$V{sk0fu!)bjhK-fGSeqBI2MMf@>ssot#0 zA(0AIS+R4atU_P)tfX^bnPec+g3Cdci=4Y3Xwfx$jbdPXk$NuTrVnEMWj{y{D%Z$= z$*JUT%W-t*Po0rveJii)d4Dk*XVU(&N?t98v(bChO1&J7^AUaUdygfV9U!RuUt2EU z#f#1Zf!+VJn(eT_BSevgWgL0Q^{<$8#(;~ccG*B=tIx+rEqIfWDD=}=<)ZMJ6NOq^ zF*1N*fV6=pyq7>c#EM&nV$)@fUXo5G`V#gA$&x)Tqj+{kL1f1T>D>Pq@ngtR;KjZg z18MN8v~wAt@C@iC>mT;zR_(>p*O#fg@!-Q7vO|WGbemsduA9z5q7t_ zp~kNpIxA>kVy+?c*qB(_=!W>{xZ~v@DH2mJ2D2pNrac)}tXo!RpZzLkr8!yqjzsic?gS`l%J|c3*;y#S{!dJ7d09J#N3%so5F+;{N(n=WUlj4_=&mXWSA^ccfzLQQr~ zd*jv1Q|+7^q7&b=5D{0zwCL!x*Lj*+N|kQ~Y2Cxz?iLd{zDR$~QY{MB3mlxLHTQq@ z8aKAeqHVwE`=fOPI}N{`UH>?9;$>CPoT^jdNrIN__?++LY=|v|s>@cc)Ys*2WODE! zZQQ~6(kX>CHbAWFTFGAa?Z!~xb|s&@mo9cjBWeLijWn-iqfwS}PoKM}!PP4+KeA~1 z9dn0*wmzko5OdZC}jhV!W7*&5xXsBB*c>IUJEf45UmH zauvokz3+9ZNx3{5jdqA+R-`r6YR0!ekq};~$~rC6a4ntm@#Q|FwQzs_C|GCL&;<_T z9`c|=`RkddfrU95wz=}1O4FbAB1-NyK^#K2 z2eiC;v!dq?4n-dltiiW~Zg!?*jU>pz#>;K4F={C2sa&3>cbt#uJ`K$K$41Q%*bT<1 z6-skyVeCNou9HS8ljfC&U5A;Cf$xSOrJx|f#TS|Q0>;+KwwHZ##})uPtk$%<%UVSu zX=J{3LTDxL%o{>yh|Oq$W^0bOnhaX z^77_CQ;dcJ=Czs^G}*N>6w0 zZHhWbTrv-+R ztH)5AQKMbUO&Eey66s$stuI?Quxm%%*(s2RSGV9ZRPg82^SIf|u>%pk=`VB)&JKwq zL*)D-2DIVb`Zm9)+Gz#$biVw}%igB~F(10tMwh74FhTf{1^$#|YNy|P6GFND8;5{Y z8`q)(KsX;aY36be%e%Qrm%G`|;6w-XEiI%$TKp-!=9F%T28fbs z7k~0!P)h>@6aW?o2mm3BlU9IX@)Y}2000{U0RSKX002)#LQqpLV{dMBWo~qHFH>b> zbZKvHFfcMTE_i5kZEUrDZI2z*wdVKxD{7FU*izB7-*|@z8xjW$!^OTNb4ORBIxn0m z^{J{uojS+ve1fqebcGP{cu<506E_~NV~FJ#6EW^qln=+3PxntWzhw4W&sux0U8lO+ zj5JbW?Cx{wW$(4u>$9Hq{LikG(_}er=0#n-@Y53;n?Fs))vz8F)#QbrF4}hc&YpeZiOZKSZ(KgLQ8$w(PCWC>Gf!Nh&ph_xKP1WX`8XTV zU)*2YqMeRk{HJQGsxMd1KY@SZSLL|P61v#q<98Ru@`cCF)m1yL+Q%<#&&H1>L;UN7 z$J+6g_6fT9bICBzn)$eWfgkL#C-`R5qS{KD@$`kq=I!=$JkQ7D_OYaO*O0Fc=kv#s zycxgq!ebj7Pq_bu&u!4}+-3eBE;7p|W2IKh5fw`hdJH#PI8IvU**N>t14;Ty^G{RU5)B0mG4#g{@z{pU-zGD z!=(NGFZ+9+yMK=M_das}%*S>3gu8a0Of&b_)_u50+J{%mB(L{(zZ)i#!hI<7pPdw| z9rx}1y<6K!Tez=1yyiaECR=&Ea<88(_jm8K^a$Vod=N!Rn6tj(dpYhxe{0EB9absogJI{zCXA7GRP;yzRcSzxTfTd%e0* zB+dTrJ-TAP+I9bN_xhHve?OV5{_MWw-eI-dCZh!&Bi~3K{%-Yc;r>;)%Qykx&(iu_ z(ZuVgK)5$=3qb8};Jb2GYa$sc)mjo$g@kj~I2$$WvE)b!6!llk|5S&(YFGow%c-rd#d zm5t<_6YGCX_V@lM(ng!IV2uF{g>!`K({7Y}g6~w}X3graZt=b$twig-y0ML|ZRtht z8EJ8E;LiNcVk5c4w;};f+>P8uJCSoMcZ=7Ae>}^bM7UE(T0qyHcK6nHto*LH4WBvT ztdjX^$EmvNdv}PY^s1~Xc^yes_V>P|70y?Gu4Lg@yQz+(#s8v|B^bC5xn;*!b(2Zx z+&@+i=+67QcPoC$y=1u{X>{vIPhCwOUUd?`x?Qto(I<^>&hj1=BF3eWo>AuD)flauT!pYQZOlACP1ZclFza6?3Qk zqspn#8~p4n0}Tm!uvEjG&eRaAA?riyc%3zXI}%l%u_n2RU20iGPMjgl`CXa1?~y6w z1)b`y#tUJ@l@8#$3x4W>=zO|U;{2oSX)!$X_`X3~?w-RLYL%2=*1{3-cYC#-k7s#u zHmkPgY(!XEXJWQrTFl$VUE68#m!{(@ne#!KWLa0q`9(RXr=!+>g^tZjW%ir8Dl*=O zm$T+_;a+?7=Q7;TAFP`NNf0gP^F`-9o^onvoK2?V=btEEOxNL-ajpPlvv=^xP_&=^DC7CEvc5W%$X>bn06v~fO ztvj~nSmO!UqFZC?U%Jf5*wQ&6W8-c}Ud)MS&YVsoea`aJ7A%vZSi0KE31S%;V%9VI zfmuaAq$d56Eror_9N7%du1_Ym*cy8}ftnkV%;$xBT(C^FiL z#+so3BBf|lscj4tvoI1EElrMcf#m@yFur;X|-n8}iBYmHWA6L19lJNa`18C<;_8fDZK6l)m8mAY* z!Gfc*gq7u^?4Fn9!f9&Ot*WVhjKmuxyXpf6n)%1N2PY2lzoaXuuO;snXdju&YJV7+@GJax%(q|Ygfi4Kh0Lb z3+^7tJ*smgovqp7!?gE7r7kDLyYB#&8K2D6%}TAhb70&B&C1hBao2UXj5m3aMNVVd5!pN|-9BX%zcpNpD=Y*l zoOMJS6fOMl-XHMQcNgw;_}N)boPBlc{lj~orx4?oT>fB7@St>o0jWW^Zg*QqhI@4m zsz}Xm<#2M?+~3$f#6;5~xQG&)e!C?J;#K|F$@e#SHrBfAX|XI0`P*(ae-AsxG6G{- zaaelj>bcjxgdhgnRcI8$LPCL0IF?g+7g-#{4#7vr{6+HBpGwj0sarX(CVyTx?bx|g ztNVqxnXLv;BX+E1aSPeSC3|JGf4M|~gG1>VY-5OT5(n-v8pAS!nplQBMd$`yFV%e=ZPmN0HA)R*2;Ir>f1)LLSAx z6UC)rB3(+(yL*&xSP6dYme7eK`2_dKw=TlzOZE1HtmaMlJo4V1X1GzQiDB=YUr9r8 zHYT%NHO;4mH}p?Fl_IQ{l!4LuvgaHfQ%oIu1fq@khWPG)bkvakU}eTufCQaF_L5)! zYAGg!qX4I+{2quizrsZr9@+@$_Q#wfy6fcNQ8aVRZff#;C zVlkKg35ZpJ6-bb0Oj!!9qw7yP$)*;WYmdmgmCi2AzRA z(zro?#cw}!@%)e<=b*R!8QB^##Vio4h>o;wA{v~14)(l%UY zvHP=VDY6cnPlUO48~erf2JQ1(tG^} zlvkW`RL-7&`g$MoAFZbMAoA>c=KMhNzHC3~Gi;vu*+@+B5w@V8IYUuoYWT^GMI7oE zo1d5^g>$TG5h_ZNP9-mW3%Z*f-y52dM6iiSi~?7ACD^CWaY8>U*6tS~b;>wmd0_IF zCL8P`iN9)UiySxJ*_w}}b0b19WK6!~lv#fU=e~2w#3c(>?Es74P0mR=VqS1=PVC$@ z_SqvpQj|Cp-$K;I1?R-SGMyH4pTP9mp5vI7Q+_zaedm18Y}d1VyX7dK4+hQ;CyS8& zriW`Nhr@1(>M1H|aDGP>Y<8p~e5D*W^IBB4&mp^AsQ5|q?{|ExL$?d=c*$0PL>#Uh zdC)$CDZ$wnnnXC;2 zg;FGPxtyM4YjvBGC6r2ov|@L#f>RD^mRzZz$BU~NqST_oi8`JceAzbSpDAUEZR3S; zC;9Iwo=q;tQK{E4ZqfJ{(9v)=A;U>FtY&p`j$9t|D#%o>?w9fDhSxyflIv2g$K;nd zMLuHtm?EU6r;>vqURTLq^eMZ*>zDNcy0=fMl0; zhoZx{pmPGX3qD+_PkETC$|haa2?t~Vi#HkoZrDqK7;dYQJ# zw9v+jOIMom;>oqNBp0g%Z#_Bs6{+FJfh6!jKFcvCYb7z+vb#Pr1gW7n&YDG4SoENc1@yqk-yq-<7?YZRetq(K|sa=%7 zS|9ndb#@EzTlR|8e-Ia=mC9F%YP;s;TJ_{`<{K%6f3c8ni#H&ufNE7&7AO`@#oq|7 zX04^M%s4H1A^PkQeEqlG=eDIb^G(&sc=ldCE23N}yW)J41MaZD_dhhfK)GF(jI2;q zOXuOJ$21~t@?jN6vam|9UY%k_tHv_;XY>8tzmh&7(Hlv^T&e+|BKqW*u_vC>(4J3D z=@eIy4OuNn8IDNVL3Wr(Ta@LNL+2tfXi6OZak}#5uw|SXu_$6%F zZK0VC2A>38`=#@FCVaemk9JBQBu$Ns9}D{cX#%?YOkf0adh?-MyKf6kpdGbumwbu` z*(YSBLSVe)0EJawGNGeDdXkRr%_9TEkaN+aRfhaas4Htsm`4eqj4hOVEHcen$mF{6 z!sagGAdF;~t7GnPmLwItlah1cK+xviq@crzZb?cxpWr(LEAJ!C<{qsyfFJsNNgfof zdIncXw#g(eDO(ThPHDXb$ zagc@_MRNBg6IIDNN%c|P_e6*M&v+)bgI6@s(TtDQrU{tHdL6;olfRpL{ zMmxHGn*1tjs(D*C??@?+cC6RdXJyuA!+PP42tU=)y7L_4hS*d`3LdgWF9Rl10m>f~EBp~5=adU>oFOn_Q7Wl&gW&nn z>C=!o=L8OypAg|VPh&uT9<@uzgmelUHsZxC_IGawbWb>K*i(;C+els)1*37R`{d1; zSR#Eo3g}H3AO8|hA=Zc=0O?lx5(miLw4tr>r{PRQ)k-Kl=iE?1Z^>5c;qUmk;NlnC zta_(*Q5NmOIkz_MAB0t4ABjHQdmboBQMf2{F5ezkbDRw9{5%tB#|rj88Qst(#VFwe zCop=zbMARAXVa;-pl~@tF(RNSj9aD^FkdKtTe1rzlu#EEu9>Hynu^aU<;j%{2o_eN zY{ez2fk*VkLe8nE$*CrlcV?_A&-;Y9ale53I!Miot7<$d#?#)Fjg2(l;ti9<5WOhL zGIA3UNbJBRnAVx>PK?8>6!=o#mPmHUM)-`pf6Y7aZ&tJKE;z%& zcSFoz5_2AMgTT%$6FY%B3eM3S*spuCOj5{acfqL)kE!tnfbwG!^3ys~bxV_uwx}pI znQ%9b#SppBbKN8FWRH@IbnLwYoU`Ue=*v+SpmbAqNJiZho@_4*_@N>fyupLs&j5w+ zTE`GndT~Fb2%73s|(|>e0ZDJf2Zg^oXMSUaqXM*HELY}d&Lk6zJ-)} zxE_Far41aoXhB`LsmEdy$PhsnulmwNaB%IV{1ZLzLExuTCwv8#t4{*buJt@n&(JE3DRp&S)S#(+TebZT}K+fS)pt|P~% zlx?l3X2#I1{`N>NzZYrbA_Qt}cAsE-MFen78DgxtvYgY9{_uETN;AsAy}elHbvJR~ z)@7&C)E}T%ER1w`?+*PtvT&DfEf8=dzkKbLm&6Mw7nu~ZrBQ`bWW7sUDJtu#g>$oN zj7oaBIsE*Rf}B4XXZuPu8fVLT(U{sgg5=%@5j`b%qtw25sKriMy^1g*cIGSkj)^Z8 zQNjpyT?6xKILL+*8L^@xJH3KMzm*_!5 zhDrX?X-;`^Gx`otPPx}8F zJrd*~Z#?xFNt<35%TdTe?NX{uajlYs46z!PtmQM#&ht9% z?;uI-smo2#{~_k1v`5C-nnREI#TxmQDC(po`~(N`x-1>USXvl4PZ2~~ZWRS;Vko)Q z)S|AbqQl03Z1P=wCqh$Codcg-G#yEHEjq{!(QxES&p9?g=>{meH8j)Pzx?GdH(Ye) z6b;!MSjx6wlQQ6hy2Kg7T*cYK2W)GW)Wj*n&}3_s?KCcAXl6g)?|KwAB0PRG`#B4l z4tWCl{>M(`QsYbyS{gkmbZ$IaM9+&b%Ydk0h@V zS{F^dS@i%N^QANZl1dPL(3`s50G9seO*S7lDHb@^^|JKzu&N;V1NxQF3}qXcv^g3% zFDet%B=sX{7PuPq{gHDyrKeGR)w#_5tZ_C?iwt~573%L315&4@dyw9wB#hI+x?XQg zB;8IMburV7qNwq=3Hug)%3&&y#*#nOtnY`k7Yv7l$NDuN(Q8G=U^o+1Q-;}DOsov_ zdDJ%m(K?rpr*pE_Qbu95EY62?byMaJXCfi@ycDa`zgbVLac*sj59M=+eUuD^HM z1x;8ba&(#d>xe@>x5jT5&7`QvX&90*ZCOyXrx%;c_+>ggWT{!kZr0lRpV!uZ;Et)5 z?-FH3b5eay#O@za|9pep6IEjbFyo{Ptw{|03_5QMFtvdCjG!*irXtW6w(Ba5VvTjR zN1meFyBRI1$T1EkSD1WOYMb7lG^w+c^kj=|)rvimY+&5nxuW=%kn~wgxdy~1tuPD1 ziIZnK5!+!AnA4k!Z3VD|g6le(hA#2&8h|0@sbNdGlFQmmFe&y`L?hD|zLRnUMJ#}p znxrRAqy=7i4@~4a+6OwhjQ5ueRI6UrT${DWYLkC2zX3q?ptLyN8E)$AR*A zxw}x{0zwULT&f+B65a7uz}YGl(uG1klGMfvX??Zn5mG)~w+ZQsXp_&;y-=zb7J^Qj z9h@ul5gC)u(YKT0tf^~)5MM61J^4#Q^!&;FWLj{ojnOdFyZC#6Zu)>~&@@02k;QfY zm;NRJFL?vbf4S)y8?^W_HO)|S!zBcdHOlymB1fLyncC$m$qc?)R~hv}Bo{9i??`C} z`|>QHa-(9YYdu{QBe$O?!5G!YO>~gF^ru14Sj#PNHFx=Bs{ zVYr|)qA{dbUMIBwG413!JQ=YV;flj!2$eXp0V|!f)*VI z<7AN3q|D%fiys$uBTyVvT(mRY#q8g=p|R2CL@40-`z z%*KnkPB4?*{HYGWRCh5!m*HX7V0%y@{ES0TGvy!(Q?>=x!0g$ExYFGkRqu+6U-DS& z4xsa%0uo&Ln2?an-QKjeIp2RI>KF!{O=ufFuAv{d2IkzX>0FqL6jkM`n+o$Hl)`U8 z9K|I?foF`%gYmv#!=lGP$)Qe0&eauBL|lG_;{B#A2pA!qeSr}?Os#1LgzC^2#3sZ*ON2UBHS064iRoyMs~LfB$nMg%IFePGB^ z$tA1UVOVzj?$kCL#rkYiD=+~3$B3?C$m9faI^3{P3~7|R5tQh6cdNjj(JXugJKinDu@?TViv9?genke zMW)aYkLq4`VIxCfYR055{8Mz07E*e354EsRw6)@syRl}+hvHxt+5uRl2H2q}K6$`F zffHz-hj+9@j^G>7*LQn8^f#NL8jff4_+?Gkc&$>H%)ccS2J-@uOa=NoZ74kJ&GCAbnI{+%BNCI2b7Up zCfup{EOZa>LWySP?1azHm^hw0(MLzZuCRF>P`XuC68ZxIBv#NjwmH-40yCVO0B@rc zdT%I+W?04Dp^4&&zK30G5K~aeOH%gq6~ra12}n;2EzV%5eV?4Yb)ErVffU^}7T;{4 z^ds?!$_gd{DLLBZBFq;hD}H$~v?q~A%6TE}HL{IL)=p!E=c{jQ9m8&ec5iteP4P6q z)+F~%39DF`e@^LQsT9Xb1_F~!SN6Ip4;Y90rFQVzP?H@PUb&$y#FLdnKtXnK&Js*l zo^a+UJTJBb&g# zakUiv&5+Y<@vJ{Yya{0r1|0ae`)|a&i z7L9(#9&NPGe0VIg0dUrQbh9$G|75v;_&eQ1aie_N8+8GJ(yT2!XDMK(om^(V?0ma+ z7k7UkM8fGv(MAcENIF>pypJfUs0Hz6VeT@|M5BBpHIpkY=o zm{CS3i0ebGzBOQgCHcX4gl*|zrj`6gUSG;NBWef}E5HaLZe8q#yN7v0R%x{gy7PTM zv1Z}0Zdx#~FgZpVi+_IH<0OQH%`?TC5_pI(>L{}g7ZQ!965EW>-27<%3#a;}laBMV zLsk|I_=CNvGHN+S0<0-#uhS5DGf;$G5qC9KaME)o2m(gA@{@==+bx*zMGxvBcr)Lg zX9UR0%8DG^vYr?7c~Oq(@ATtpvY67(lF2k1H15Ce)YHQKXEd(bdQKRDR+^l`yEfE( zRDskq>a{xj3FuZ?n}xm**ec-mVe?rQA9Z)q7BT1($kF{kN39fDtJ@`Da(t-7 z=m?^Tkn`FRquj`TMb+Ot$ZxhSrX%uBhH&kKvZ`+--m2$WGT)vq$Mcp}I-62&+M-OF z#h`A+DKCAEji^yz4BZYAwD75}(KD`io$d)ZysM=96h&2!sQrCDUbsM`Dk{`ADK5}X zTqEQRjpGM;mw_p9XQnm{@?zpKq~9grKo5Pc@BpZ4T-7E57CCUxn!t?C)#hco5bn-AK+Z-g&34 zys7rhk_W%gT=D`=yxB{P$bDi*83gVYB;*__ihZt7-d$>OM#_d+Os08=&@gGfxG3{tDv zw8H^_S|Z}Kw0TSc%P83wVI52^XM+hUJdRtM3Z#0qgC<#Lfcn(k#qD`JE;HwRw~Hnl z|0tRfJynJU0}LZ3ani#+^VF#`qJ7xsIB^DlYife)3@1*a zsP0j>_-%wpC&%5$mOq9ZEr3Vhn@XjCTVk~_+IQQ#`wub!Y~c)?+&HCdDZTaFHMf(a zIp5Z2*zr#Vf|=ORE6tNXp-@c0qch$6zQ-`MDDeW)>ztAY@7>R04sRFbVDgi={+sz+ z)6p_viBX1q#bF4?s0L!;EvLyM=}^KN3*fsSL9SSr3(#Avm+2}z@$|-%C(q~#^2rry z_-HwKXBD_)`ck8Gj{#jw0Y$kNxoaSg0X5sbH1;eQaqQM&CP#E5Ar_;aq;fem2lb82YQeM?ZB?B~gc*k1wbvN6t$nQ~<(-BYSep^Py@l%6Tqx;3YD} zu2I%&PH)3F44!i%E%cqf(~E6AbSHCK9zRrF`!(uzt?o+VS{uz_FHpWJY`=~WlEOs@ z7s?f z#%mLUB`%9vkBsfam*LNG5`rPLm83{&M)h|%hDDvAiAxjca0ga93N6{n>D*l$)-4lx zfdG7=7{4xrm#YKcODRB{>Umbc&*~(~yIrk=6(cyw^FklNk(K@6YND71HO9%{OA&j# zE!w2oy2dI(Uc2$$U$U$VFN`qT14?EOxwEMakiggvHm_Hjf6%p0O(#B zp2XiH4(8(lw%oz1dsKU5g$|zsl&R~NhOHQ(l;iAB6(tm8h)$oM5fQuK>>#-k{icSG zq%5Gj_qo!;@kuXerLLCsbh#i{!HG1n|2&x{%Z=p^@BN!+6%}*GyNM!@?5V`5xinrf zp*3WKR3SfV2%7QEw)DysTZE2zR!B`$X|Mx(##HzbuKN)QbUb4N)teGx%`Rj%dVi#l zqA!PgEBQbj17@X$w3GTtXsB!u*$l&lTa=ZZCclsHFoXyeme}$;!1BUAM`iKXB6H={ zlp596lQ?*@8@&d&y4EJKcuyL|KSn?xkIUk7Wsz{e{aK}y|FpX+MJ!eX4OCi~LNlF2 zU6mzeCR7l5R7BT?P@g4xVsTBf^D%#=rmPMt+6$Dt@hMN9&@!YLi#jv3?I}W-$K4__ zkD>|Sj*xXF-YK9{lxkCKJ~g(EI)NuxQ04P}nL16E;o9o_E2W1y0D+)1%<;<2$P`U8 zg0#piW&;p{FRrNUXL@edMU9|Al@z=Lv|u799Wb&Url6!_I4`17X|F+%!VDxM6leN( z@8`rDHI#IJa!i$j``YmXox`^m)1|pQRjUt=11|OrEb4&u!;S=obxTxh0fJMY&bhbs z7*&bl_#!C%XGNpQB!blrdT2w-cHpc&lICgHjAzAYG0l>9qBXOvifs5th;5_(?&D59 zno&^zdJh#}t&7m*fnt4UMt!hB9kPh&ge3t$Kv=?A;Iw=INTjiW3Ya#}5OXcg20}7X zRSohfR+uv1W)|T_zZmAlq2zqLG5m=b18W-2)?m<9Vt6g~k-4FB9K-I;Y(7q@3iNJhhEs?hI;>aN9GO!Pp`3*Y z<*6r=V~8hsA&rU*4RpWb0z;a-LR^Z;`D{Gg8c&b+@8x-Y--8y!uUKGs9G77{;1iHvLTBwIG)rrFuQn3VAyF*JIK2@UZGzbJq2!{q2gFj;=;7Pz-K|60CE>{) zwk{!>5pEYvWN>Fg#G%F2`;OJwcz(XAU8S1zigv^cb*GnvVa{$b;C!VL_8$1z zq1U(c;l6+qjVrq;U|Srzc&>&NKn`8sl;gPox$wo?keP}7v}2cmty&*YMn1YSL*#+t zSrA8*;s71N#D|c$(=vR>VvuY#X-xwU2^&F>ljDYY3R2ol8c|ek4vfueHst#itFdj*kdSiR)baa1oNZlZ`+MfvNKt z5%=tY^04|whRV`ZM^+taV#mM&P`0R2|2HMPxnBy$udNYB5o$!GfofV{lED>h6-v@v zQvE`T!g{-)MDQ`b_`H(El42dfh4R${Z>S%5cLeuSg3?8$Q6q?ba&EJj606EmGQ+Bt zl~RPhj;M*<&9xQx!}ONYmN!eTL@|~EwiOkE1csT(X2egVH3ph61t#QGmbMSx3H1yI zz$e1Y2pP~9G6^oqpj4*d?7-b&P*;{r?DR>q5ifZf9vK)^GMUt*>0&@hXEAG*7M}Ej%71(gy*XkzDa$)mYdx0EI0k~ z$TSG&hU&#}f^pgN&SQ9OfA2mbBHb-2@iH)+Qk+DP_zUPA}mAh2>G8vZJ@mt?eVK^_< zMh-rxJT zZJtWjCr}o>l^*Jim%gHP)zcOi!klyq=I`Syk(O%CAzO4$zpTEy;83kSiV5h=7;mCX z_mTU_DodN)I!J^xF;H|vgfo#iX(6skAlU|wMfm7obyIu$lmzN?KTBCqCu>CW&DMM74c!tf>iBTKLc_KRX01~`n%CHe}g$yhkSdxZurr+<#runLc_Q!gx z$42B(=;C$5=Ob*wF`A=F`_5ZBcY<>~?b>8Bs53d%wZR5Vj_b08Ilf--?|P5!QkLJP zbFKKR($L^8UCEGvcc1Ec zWptUi5B~E;@~dJ>lj2A->WJ@yM{v22CV82-7v@E~O?(Fzigz9v?{v|$)`#g+0JOv| zihuryS)^~q2>ms zFyonHcU$R3AZ(3@c{E^1=gl4pOV7rWVp`7#eLP$=OSc}~pR@sneCP#g|51y`_M@%U zAJZLTzGdP0*{StZ4)%45XKE$_7!E88#i=F>E`&_j{KP|-!&DmLo4ZK^w`mk;6ixIe zd#KV@eA?-0=fM1!+w{I)V^5r_Qy!VE>Elxm2 z3{;93)T+0^iOIvA+yrT=3_0r=E+{z?K90S_QuYRX0ES{9&E2>e59Q|b%vE;~1n(l9 zk~WKGckx=&o@=}k63W2Eo>cImGomt+>C0iqpqd(Sw>T7s0jV&s9FhtQHZbDBkB+!# zegkg5MMTk5ZNI-p%i`YlyA#QaD zr#x%{JLX(eX~k|z4v^K+AXD?9-|YmpN)K&Xx%*`FH`!u7%qwD^ONKg?Whk{Wt9~QV ziKK&fg}Y4=_N{h~OWBXn?)y9;r3i?}N2*ULZ$xD`o&u2ocB4QYN}X{0iFCy&1JV0%8Vi_v&4Bz-+N!vpP7bfMXNycpHdfYWBrAc-og|zdzaC-ezSf8@V*-dIAy=^G?X!EXH^~n8v z#AuR23ggi>hubO*9Sknb*OH!j+WD8E375IuA{je$O3*NGwp|$D93S2C{(|f=^g$qL z=B*SC2!eT2cgpw8z_~_ebstw^)M2h5^nd}!AUBu~n2)>Amkyox8=@-`{g_ZJpoeDs-4L#KdTH$9Quk=Y7qu^6Bk+S9Zgy4)D z$+0(pQRF~S%Ev6vjBe#o^HLdR#i>DPp1B_VZ28tS3>!c_TTx zS)1Ig5=2N~8^Z-u^p&MT>G3HTOO#KZE+`a`lYNk(&EhG41rn9qh;9B9lb zqW!p>AcGs3N=-XWrY4c91XM;_kpo4L)T4)3Qw05H-L^$FdHiBN9wl#PGZ#+(h@PSA z?xs8LJ=~Kq&nM_e4rR@ZtpqZx%Go`O1}$zOY%p`tOyrdNnISTl%TT(nvFD}Q=4z(> zNsLKDtx3JHgSOLp9W> zKWquR9EM@Ha8!pZClYS0?i0`uq|QLQ^UJU0R6I2ahg&8ofN9|o%b*~!8Kiwq(;ptx z%q^^=toBRA-rgyUlK5aD{saOU{>cVMI^a%5y1=k&4S1dbDOlm;CY^MUu)Z>^tGX=a zEieiI_OqUN=Bb~=>DR;ht@`M{gJ{_y>Plwa6OkS&tmk6r09+IT1lsljt9{h4Qe zB7szN!=Vn4pu!TpoXAE5;x?GkP%>D8RND-xG0-neeYX>hG$3Ch6bH+Q?*o#}ZKU@A zrBaz67j8f*TSIu%9UM2Pd&xxG@=_Z+k3TXSD7^%+_#T*ZSRZH* z^M9F?KdBI!c!^qU%j*b=oXu1$h8_Hx;wYa;&*%c2NT2rSnwRT2a2AptHHj6@sc4T&lyDakVv!nfX2wEd2!&~Fo;_U23NoSe*Hb4> zes5&=@D5+(Ta72DgJi`)m~cWx`X})*ng+p%KjCh%rb|9T^hpFc-Mg+}N_NL7eC?$A zMd7W@H3|GLX{h}GhA!3&RXK6okwsa94@rzmn%sm~xu5xEk9$SKE z0NH0R$D(ChF=v&-0KVf>JYm8%7)UBCT;d?fKOvKW=p2HKc*0Hy`*;MFdcCKxu_Zuv z+kkUx8=fn*aLKcpmGx;I*r2Rsc`>B4=DU5^U{ zNE6UKQV_GstiVt&UI-`C1HtwYaeZ)-V`hHF_k|Ybp1hRiIe97@b7O#J3VCe+u$l0| zHX}dt*w4 z14-H~wy%@zLLw6o#jd;D`6x@QfI3kQL8F(ZOBHR0%%!FveQ%t+zp*{YVG=_T8B?Yj z$pA4!e*w2jPPA=P(4jVC(U~}R(x_3`i7atqXSM4Z1d(Oy^rrm?xXqcda|mzfP>pad z7fc{nvy|IluASOw5H2#G^V3>4av3-V+B3c$L2QPHdb!>`){xcWI40;`?{Yw91Z7zN6c&BJ1{v& zVx=~u=w6pXR0K1Rrt&dkVxxF8%C|?Z1ipvpT*8T?Bg_NSV!xuPHW%AwJZ_U$>qS## zQ)E33$Z=6p(We|>ch(y);BLejQOfLy68~bm$Gz;}q+n1H2?Gw=in&DbD3~0sK_MB- zF|Ogpxv6{s8wt(WOR)^7$#hdAvcnAbW*2KkX@8j&GQI3Dnp(Zk57cDkk1 zL0|#HMbAVAUklrT3ko+ONBXF#+6YGCMICA(13iy=*I>bI2Vc3u;GhG(WOw&J(N4Zr zkE`VMY%I+x?02_ZAKO4W-^eupNoVQZExHXgGn;Z)1FF*7bWo~(o{*oTZsLa5#?>}q z*tjj6AhO(+K>aH$m~Qx( zB^NVRIyblR&X$skOuq58a7V8(gk~3wEaIgAyoc#piI=r5sdjQTnVm@&2 zYPk@i9d%L)@dF!X}D9zTQyE;d43%; z-65j4MQ{%1V2h}+M}nStKcONT4ax=z8xRI=Wuiri4oj%mksC&(p%9SCNQby6YlDyV zARR7~FO3A!U2qBtQDQ_(rxg4Y4cG*t*-_hyC7w5Bm*$+d@T_U5{qc;H=oJwJn7th?|<8)eDrX5MODL z%P)(;M|_-V`8Lj}SXoNdDM`C@ptPDW=fhwb80mSbttib`glJM=ma z$@zeXnaIi~52JAtoZ=&Ygpo7a7G~Nu^^gHzgmKR>A*|d=nWT=!@n2T$xT(giyhD_@ z<0RV<9Hn6|cskNOEwfBbt43r;ndA&}*6~1Ks~UJ)DMMO(HCa1Fy`%OB+IGFo5+TTX zIu)FcEI?Y|(Y7&|$$*P-F2sq{S(l~Tu-C@Z>2~U^3kCs6pH0x{zbcyXNGJA6i>Do* z8X<^0=AC?{2N)Q5!C)74b`f_2@bpTVG#W!j%!D{i%zdQHVe7oP@Ras-&J_1FjtCc{ zb-8ouXJd4WIhP&ob>4eVGai>crQ%3jrbLRtuXAb>{|f#(Pp`tM;T*NPZ7Jh=AK->I z`8Wji>=%`U)>`v0ApornGM``pkY|rrJZ02oAm%+XP(vIcu}~^ukVn3m(Ce@uzQdof z283^gA7-EDyVzfbp&y|dYMZp+OGU2M6^Y{ek`|qMibOo<4JQNT4mMq|jHz*qnc|2y zq6O$77UhECoo&zc86FpME6)oMzE&ZBmN3XsTYPqVm#J9i}ksHV0u)W{voI1w25tx4P zBB&fov@F;vZf}V0+d(y#eT8}~wcaOF2Gsw(&;9^45Z$7jtPkg{d&Xf6OU#HTfl$SV}u8&|?~>vM%Z-FS_U;7(dS3h=x@<;j7@UeRuxbk{tvAstvZNR4q`RIIGgTQS!jc_af%a;BV`ytKF_utHA9 zNLWT2`L&Pk#E&n1>a>#u^IU)u1C25OYT8uR)o_{XkCZr@r)7BW*JdGku%1q*|6Hpi z$=rztQ+B_eEvnJD@u1mD{HDxJd(Kz^#FGC7#UL`BXr?iQ6L4c}$;G+WEZ954#8L?n zAY3>>@3aWxQHKAfipoJjpv+cc!~4jN2^WLiMp2JI?o#w&e~xrNvTvyXlT zlJG0f`KHGYB{NDc{QGTrQt^6t76WZb=8N4SQjZxcZ{h(58|`Nvdb*D86Ab*>b~oG3kTy&;u?IfTLsm zDN;j#wByNFBP#lJi5LCM?Xd0yKO+0k8{%okDjN}$vtZ z8Wmd1nJp75ipQ6nUs$9z$3jQ47auJyvp+TE>H$gD=h|79sWOe?Y1otj4a#L*g0Pb* zCw!(*igwau?K8TzUP~WiBIMO>;d^;BQW#pT;U4p@rkGQ)@7ysWMu!0#{2Al)Bd(!! z4%kr*?#WSy8aFAQVMIdEi3<*fcf4U94hdv4qAv#(6f-J>hf`t}IBY=LmE$UIhM>De`kkcMNFBk6{gzQX)*crmJOTF+2X8Vj0#N ziNwK}qCG~?Zw$K|?e9LA$=_)bVAW;TSVnO#$i4*r#~Vc$FwMRB2h^qHz0f9rJ`~c? zb4z0y96>kF{m3vs@}u(nt?$Rr+|LJjcHB(H+dsVb>D(#VYLQI|4=saX+G3cT&4%r` zDe7rG+5QoP3DV8XhZ?u=Po$!(&2u3m#2q22?O^s2aoUv6!ZljBKby^{L{81U8a02NcDWZP}L)24l;jq*kT*~ zFlWOzk!X?0uw&eVnYu_eftRT=-dQU|4yLN?oxnAfz~hAyF08~pdZJX z=BMV>ef&)C8hehkY!Py_C{7#bqWSzfl_#F?ktGFS&x?Y2@y&&WWPFzFDUBq_CW&4g z17^Xy!SjW`D^uCFwT%k%&!c>ZtQV7P%i^rBOW#ZI_3+SZtu(S1#A0L|1lx?#zvz}( zTL`5wNgX1)>tAN7`OL5JJB~Fy!bpTzfzqVb*5KfroJnjCOR%TW0`2#bi~Wqs5SK!e zj?5mYc~DMhAuthfn5T5wH2(bPw8*(GWS^6nGSY@#;qADnSC9JlK6Qo zhtDz}nNc~C`QhV+!nH7hW&R^ZUkG!&GyM7L_V96fF;)w8Q;q9&arMXS#6h#86g!OQ z03#O6@r_We9?tUTFnimggAC>vDP_-(5lH{{G4Y!R`xCcO{e<8`s z(2s=x1rP}a48qZ%09zssK6>1`Zq~hYz6ua)_;w5uTpskbkl3R3)XMpQGEh`22g14X zd6ZDQEba2;)7YQNg)2Uqi`R7b`fobC} zFHUMup-t@#aH(nKfR>|K=#AhCD)36&Dl+}svp#JbXd z2_bd5OSHgv{4Dg(2#{DnqUhjXk!i$)o;fI$bDby-PnGNb?(IZ(3>TbFp%9SglY6Q= zBEtY~*w6FrWa(Jo{m{dHikP@!7q8%<`tH{}HPQ5urU!sTH7lyZCEn7LKLO-aeTYFw z{$66jOakM7>0dd- zXKN8E9b$$YApOs2>8NPRIdPl2GcdjF?rfCE-&^DK59D_6r@Vo~=QwOF2pZ{j?!%2_ z^^s=mBLDl|YtSsQH#Q8Qk(@O0Ej(`?T_k^(vJ?E|lV^V7 zLDMdvl+v8#x`MyDX_Qu)oN)3Uh94?0+jvuJUA?J3wf3=+R^ig6jyn${4%DBjeDOor zdh|>NApHVqCW0c$L+f6N2d33q4p=!Ce~;HVT5K-oV%6+g2k1ihsr9S&4LhUXgwu$m zqdkD=_Jt%dJ;a=`9RiC%)s%C4m=hcYLvecrD!1QCMsA&y*CtdX)S(0(CsfuZ7Wp}P z`+n>Ip&FPHDbti$i9+Wic7vPjgR=!gU45NRLMzKT6-+fD0m$lSp#V>%XAtg#>p`>F z_cKCN99r-VU}NhKSiY|~VH0;3N7JI$W?4VHwmu({R5<02on1>K9MdB-NRuD@Z1Pf- z{8N=J+PrRx`FNC^E$T^=&GK!y$Zr+HoPwR7*G)T?WcHM}t%w|Q9X1kt8y}cPjD4S& zfR^=?N|Ta<5yYD9^UVc95m9;E{Yp@nqYnAe4HRuHmbUrGL=E>}5YTDL>5GuKB+JYp^YI{@*= z2TiYqq$<)yrq3AR(#5FD$9O%cd-oO@Qfr<%LvEM+`IclcQ23jK3%8&62lCw?^6fRK zNS7M8o5bEyb1%a*yR=C0u>u#y0YqGb(Rezoi&4_ltve8nHlb>HUu7-w3`1u5zITN= zG0Yr0V@~ z%C%}lFVgAzi43N1Q>C${hy@-Jvnj)kX1dKwJ;*Xp|8&dVOvR&52I!Lne^ftFBpgqf zbC1V(F~bjzs>r5y!le?<&Y_^cZ23gkhdjAthcJmI5(DTV@7`f=q04R|F8ZiI0K4S^ zGbsi;BcriZCq!VRh0p^k01~6$Njp^ZB61oO&Rz&0(nm=l2&M|h6$D2ap`~h#SIIZ> z&h#16LSS)*a#+OYKW4qA^`4niPi`JhLCp|A+e$7%%`JiTz)5N8WWYV^^)yQN^`~<} zYRQkZiN|7DAZLFETjb8mgK*+FE^c7lnaRXN8C-#cj&Pg6sw&Vec35bG#RYmfTe?Gj zw%Hzz&2V6C42}Z``z)Rh-$xS-&S^u{Dy5$ekJus9gItCBvh1uxSOWObpB4Vg z($x}j)5ve}MIO?yJ1HxbMddW?BDF;-{FM$exA|cVsc*yfVN6KC3R!*J{>o95xc z1&aw>Z6n^WdU&$_JX-+vbLNkoCGpgiRT1qVtkhGBUWl4BPi{QDxw++AbN6NJq9#Ns zgU8eq9k`e61Yn;7S+vwb7EKqx;> z6e*?}LmiREBHxeB{(romJ(uXT7K~Ie?oVj*FwZduw{cF&df*O*Cp@noFIPk@cnQi& zSg|AQ*;AWz$O%qti9-&i7Y>sXjCX5*30~3qhPR+0Ek}+#qs_^h!K%438H!empr-2t zF32m1=Hs$xn6)W^oPg1FP4xbD>B5+tMk^)imPytxaNn%4$m?P#{rJ63V|6DR)=56O zH5|$GOp?=s_*_uV%@1VSic{Q>_Lx0I04g>H1K0GA_NDDK5sSk6ekWcjN$j((fRFt) ztkS;le&6$np3m8HyAiaeFGBkqfrKv@eU1--X?V)O2pQ!r+~W~C_ExzzU^FrpmcGP3 zv)?L4b!#g*YiWfvNZCmf6vi5du1^);6n3eC3*lEO8f=f|QHoCBqzCpQX3R6>$dGE0bw*D{E0T1i% z|L3e|#{9Bz_jV``o)SDo?Fq)bR@8{n6bhrJ;@&i37%1O|$FVaBFN6s|A_Yp5iG>_w zej*818poHDe;#K%R6e5KZ?ml|A8S7Tq(Z_uVXq9!$PI|MKa_q{UoVP=-&o5T(-CSv z6&Kzf@LoDens8Z4q6(@RU91GrxTpOT54%Xdc_(;ujq85Lm17J+)}~Mafz(n zB{(S}4gj!F)k-K))!#Q1=q)$2Oxea^n#odgUgo_$-Tnk4G<3P&DlXTZU|Y=B@&1lZAu>gZ)|0L)%^{(S6iEUCs}FrPfG2vjiWO(?wdpAMDYtjcYjTO4E`MOV zRslr-Oa@JS}c_LR8w){h-yO)WCwzQvKqAB%|VC}yK4{TsFIe{VbWS@buOi_nuE1ia21tnN%N zQdL^9?$H|69n#L=J2v9{GTZ3v<_hAe22^01J3y5x#S6!~(Q@Ses+!cGZ{ z1YwZ~kF4(t>+gXT0I{&a%g|9TtG?po^>s3 zCtE6hQLSa@n z7QR3WraFWddx12~4}O25iielCO_LbH%=tA&+>T0n(7ztt98VHXCP z@y7zOJ=>qYry4A_)z!qExzQq|ifyzV28bx4&jWBwE23w3JSgFU0vc2`(1-rKeXiUA zTrro%t}veXi-nXg2X5m_J=sj~c@W!(>EKM0i|u%pkE`TWr*MB!FQy}Cx>QENj}u6a!dDO}|-Bx2y5I$RuK9r9rpn`wDei{1&Fc4W5o2O%-)G zLTR$1muwh~3Z>Z*hX6t480Y2m=Hn-b!`Yp0lU(6^kW<5VV4dw%oL9es z_qBV=JrkbICOdNuxw`$ITQUG=_2*cXc=D|gOA3WVo*anb>wL-s7S_9xw)n`X{4FJ^ z%7u5KFnR|3Fg$0CU;osm&+(IGkQzKOcmZ78DTA5^;03A0vAfnr=y{PQ5j#`evD3DX z7-c8yMQqB{%rmJM6~)O$(0`^NY%4){;AK7H$wV?xD$MMun`DkH6>y=l$|?z3-_m(i z9Sositd8kLddiGi*XHBk%L>6N5f+~#@tf-<%sw&B$t9#ZQP9tZKkPLVfpSHj`;k0* zO}6NPh+p7tCG?4!ne0;P6&5+z!Vat{Vq#)HVcmY)!i69Stf~M3nH0}ZoA*fs&JojE z(z1Vjcn}WyGxOC16v1s2U4J%IW+aT9qHzm|ow;-Mhxh()iC%W>6GWEFMv0L%JI8bc z!k-ikZx#wf`h!u>7&XPcA3EG=@22`DkQu-{CL}qk=EGujM1m5ROkU^7Kz;u(I7ijk zcShTX!@+OgNPNyiof2hm@;o?(!)L9c22e==m|I)aDftTzEBbE_rEcVv7YgJ?>plu6 z5_S^RJv&VN={A{?Y#oV$S9JO$Tn^3i_5{cWjb&68)83`?$&+#E$$)%kye-*;Q0-?& zzxz4EAOrN2&u~S+_)Zqj-VZj@4405r=RrN%rvK(`IeqaT{x48V0|XQR76=FcA&iq& zfmQcH>nH#K@pS+IAOHXWPenpdQ!it0ZggdCbaO9LWn*+{Z*DL!GBz%FXmo9Cy?t$q z99Nd+_x=@uU}zhnODfs2WVNipFVOB;TiY}Cn1y9nq9W6oL1jdwGb2k?^T~~9Ok;#w zc#JV_(JB|hE42%?Ej30}H2onp`ZRx{{7d$n=bUrzxsj=|cRwuHk}50n#=YmB*XO+C zm4Do=C)v($Hm};|m7i~Jocnn;Y|3^}HKSL4zUbcn#igJB4r`Bi+A^?!!ubaKfQ9M8}4>zdGTLn<+zy5hutgK z*qO6<*raNu3%AXgQys$;Pwc`>&kY*f>l7#rJLS?`WC- zhef8vX!yV6&6{DFvv%?;TkT*kD<{RA2v!!8YHK!p;S3XUv-j$YXRcnEPm3nJJT9i) za8@;g;qIBM=U=>XmVdkUJs{@hnXB)f9Q{4pTHa~xy=TXpSAWL4nD!oasrRtKteuv{ zl$Owso*donvhw8UAlo`QdeCK0Zk-%`y~uV>j=!vk`X|S~&+3!oFS@L=XWCo3YI(oe z$iiN-W_f2XYsSm38hXp}QI&P$<(+1njf*PVS>D0l`qI|P@h$r7>remkU%#b~JpBv( zg4W6PiSuHSy?8O3&~qBUV$Pe~#}5ZtxqO&yzIZO{X4T2@N3@@lfPmj$^Sm0$4}|^2URv%-l?fOoM^pOM4UIsZ(bJ1TLoyYy$lH`Vel=+4GZ_bdG7Pg%JjGSlytkDJj( z_8LCDJzhRyx)AZUmWOoMqr(mx7|~YmE@&V8v;*2FZ#Eo??n?GOW=bt|D-Hkj+XX+f z(U8eWAD9xs{SwL^yy>NoUuJ1_Xkt^+UaFx${MPmaGXlKtlN7d>P7U1J}ht=_EC zkI}kJpOndZMBbuP5m}FK^M=96Bw{81MVHf;s`2t*Pq|?EH@(Z6<)h3BI{5u&`RL!P zhFNtwZoBEY=!ilmN8gvq!%X;(=ox(d<(NNMWE0#a?WEXU(lx)|PO6e0OiOP;@S73u zu6uHW-ZOzXUn82$hyQhhckr#S=aXA<%OF3~TW%U`m5m`xCWEUa+PHFdDynHv?L>99 z=*Cq!CgrqFVO71?F0v9^k-*J!B!U|%gYObezZHJX@!-Ilj_Yt_I*nf22Mc;zH{&Z$ z^+4`;NEnC3ML3M)_V^R1k9J8!n3IILN2r93AyspxAbpZ_vLn?XuM8B5|yDuxNZF@#cNn;)IDh&Sp3T{qQ9#Pk(MgxC$*=_+jW9?`1cdw;K&>t$^UYnCDJ2`sDyvuLSRp^*3Z8j@b1hb(B z)>%Dl)@{Trk_dP=UO>7((Mu6y$EyBodkd}=)KEJ!W))LrueC$+z_N=MFM{H`^y1WP z#g1?h34E3g&FGgE^f<6eHi+ zRIE=>*-Uvg?_cm8^DkMPA&uSBzdU72+OeoH%RDHQ$ix+i!BfVO+l|cn0Sgp=w9s>G z_8bt=fCF+_a{kEYm3swrrGJl>52qrZ$^*Cz_A-Rs9WsO)YGjAd>$A@&@zuAX7;db^2y6EJxbUwfpeB<^FhlhT1(=0kE!bSu@ zUmY`FLivBjB;gz7m2LaXcxv5cRbr0cnjPd@7g9XAHLTgI-LI7HbQAls`X>cDK#jAn zL2iR<7(ELzU8Fzj0JK2GWF^;})yLZVuH`(-hh;9DLOwBbU#GXVjhg_OzaR(d zAQc4mIQBaeuJ8c!5X@Nr>;vHHjtX37s(8;pFlVIEmon(hO84< zW6m0&gJu1q1SM{VxP<+#B6a)dlAq!?*p|9=ka|Qn8`*oo)qn>$fVjy!h~bYqy?zLv zu$A#}+%!z+K(r8FqAUW}SZT_19}&@*Ne`QBS7ep>i$v>G1+N6{3f05v;7f#8Vux^N zMI*DDNz7cyPE&SK9*En91PON-dDI503~!MI&zVC>FjO^E&79nl#(ZBmP^^tZDAIqV z*kw^K;tvi)GhB< zjXtLt7YmUwRRq0gA;(?uEpbFmGS?7imx0{13&8`?EjZH+iXIfY#%=wBxF4)MHnQj5 z#`*Ay8CWb-fY9bZUO4v;zszRKztaCK6^-}{2rq@xA&qidrZ~k=finvUOMm$AkFwPt zKD@p0{Ap};O_?|eUXq|hh()hVnrXo{aI%}?M zR^saMkTMVa02%7wiqrC6XM6Pc1sM+Vu!(TXN5XQyt4-I?Uxypn8!hOr-aHvSR;g{_ z>ryP({V2#9wnI%ShFxPLA`)Vu=B zh6O_9I?pF{nTd(+!jc^ZU2aMru+LV}7%mja%K!sK>U04tLac_=q&1%ttKzkW;)- zw@rQs7-5SqV=VHX2a0qGGeG;R#)Uqtmye+tKhEWnHPoTge~uvRKx0PrQe}q&{b`4T z%8l&F9~{{w41zzYQ3iWJh)^oEuneszpEq!w=#NUa$Z}31v3xX|?Cmb^&q#BLa{{Hs z5#oZi72j+j7xF-)lUR7r+TpvZCM|Q#GbF|LdjQnP=POK=T-2<27`(AqHZ^V%8eE*twKX6t`c`3Dgbd|B_Jc;%Aew{ zV7Eov1O626^q^GF5O7g*syTg4v6F|U^hsszh$ud}QIpyX>qqMztVu5F4ss*jDbrVk zC+POq$YA8;2hFN^M+z|;46`>DJ43TJ<{p`Wa(IFoZTS6zB{&fL1p~MZ(Pwd>x0bn( z&8cKzziqf#V!0qNi^3rp+Z>S(a9RnT>fFfSfG~CsM;eJrG);a0b|2rwc!BzzA2qt= z4;DkmE76cP{OiD+6oMoti2&eHIPeZ>cY(KrP+Ouhp?D&G$}t29$?uF}3kx?z@YE<_ zk2h)u*5*+5%9>0s5WDr?G17sMgKT|CE| zoUk`7xDYGmX0+I2z7-uNM<AMg+=ooN-BXYiNGO4UM$e+ zLPZcWz)OAG4E}WD3z1dJF3`sck})Wf7*3&q5>A0)Zk_Qp_?hqK;|2JeIaP5Zrt+7H zX|R?YaJPd2*YC8}cyBMx! zE*YD~XeEl1?P>t`CI?ux7-tSn=?;oLg-%m6j^lD>%)1CPzppL8Lu_g(j>N^nJ=Maf z1BN3>*btklI;Vesa;jl?@`s|2ChMIjqBU85rJ0uCq3%0oW>KoWt1r)G)L6qjHh?!) zxMNf_PD2OuOzj#>6Ujcg1Ix$CjLtJw|IttY{SYa+Jq=&d2)g%Zzzh0B5t|*$O)#w` z(3S|>GApopGXvj(YGB3C3*>q6Tu~QI8=Z;+0jR%bd`V`b1DdKj(ZCa4-~t|&975O( zLBCHPGzb~O`r)ZbnuPf8Fk_^IZ5kYon;~$8XG8@5CIA|OogYZ#bl8i0M3n17biFg) z$#v(e_c&u6J~BIJXnk_T$$~MlaL3pg?pPeOMuHg0dvUZj6~DKM5d|A4aGJ_HqM9Uy z=ovd4XIA8nK^w->^f~JCHtW*8(fq?|<0ZcMfUKwn2F^1Tu@;O)r zL`8i`KExX&4GAKb;HaQE`|Eoqoem<55tSvYD(j~b9RTq3$B1Ghd z7B1%G_^0FWgOxl3L!D}{VDIG>4QZEw-IhAE1_Kgle`bT z;+|*dv0jo7kzPHS#{ZVr=beiHXufVP2>~CeUC!2}MUmJW&5G%`DlTX3EPJP|huLq& zd-JNDw4;jNnY}Tbm$PcxRc$lR+V``!tEMWt#cY_p)()!SJbSyK5MgVN{vI{e`+J;* z`V~KDIOmLCKVi6T8*k#K#s2Q7BXl`aD?pb5D-swHI-KtbzDpF@m^~v+sL3o6lZOxj zCM0j?-vXN`-XR49K&QYUn=id|LDJY7hEJHf7Lq)Q=1R8~@}Du(&6;@X-J9-miass-T2)N}ftPjyf}q5m081Z;~oE zhrLF$Qiu~#Ksmtg zFJ7=T){{S|ll^K#E&?q;zU*7W;o|zR8Mni2@tEKPqqwUR&gM9)<>THhg<~BWoPgHb zj55@4RwJA&l?8@a8W9;BgDX8pNe`}pKF8^8DFJ*ShJtie5`vH^=d8Pgj`3Bn2(Riin`sW?YPo9V zT6q|vQVuU_gulM1C6Au3Kw4Am$g7TgTt1#YXp3U0;AV zp^jN5l4yG2koV6@ycSPU?@94IBzUmpRjz`WMg1Y~^bkV9o(IR>hIRj$|8iapCs;mE zU$+#@UoFTwra_oyocL-pKE15<|4-eXr~L$wi4@R9bTUZwSB?53ie?BNB~Tb!EvP}s zl@;t_WdB4u;Jx9j9u8+4*{_n^S_ARkeCgb|+}>hEM^R%}ieTZIqi%=~fER-BB8dRh zmP6ApaCH26qg6SQNDNO{?xVsA$sJl=!zM0fW1XrHJ9PMpUDl{T)vBgElH@S^4HXx& z>gKd;_^U;tjhH9Y?=lDX!1G`5p;+@)F*)j034T~83NAswM9WjY?_hHt3aBTQD@Eoc zR}PS@2j56Z8Q}&&CbpONRmEwIByw`>X~Vph0D~j%=+(lKvrY^<5Ku{Ug{lYV6?la$ zj<8DAKq?-}-txNHqEc?GCD9^^=~)&rPq6S1dd?E^xEgIHh19N%r6zr~8gp%Z9;kKU zoCHTwMIFj{Aw~?SpggZCShclMWrL)y&&LM(fkj{vxcFYM9A0-tjS?vjE8%4>l}LRa zQlovJDfa-KLid)ZRKLcMB()#WVX8QcVv;gQ#h3WNr&A>Orqk3czz)XZnkZ7=_KEnepYSF($2GKX@&L#;GbbFW$xs;S;)oWv#1<4}$;jxR#?f-gc% zVxUEI`z&|V_aGF&lZ@D@j@&z5XSh34(3Xp673~92fB5i^38*OLM=)5N)b%C5bmBiR z0--%}aq*@6r$-o&F-|K)PX)`UcfuRoX6dQJ29sSW(m|h>{poi2$Unsc6%-A*Ge&B` zva61iqf)>d(p^|Wl0hLAlLUBY?!UBg{*qK$NflqZea+%K0<)WSvkMd!jLyN#sKtc@ zt6CAP`R`UluEhhSFQ(!(D(EOB^-0=CLJHOe0onm)7L_rlRx|O!r}Eod!b^aW&4Bay zZVT0t>Yvp87yd|1OJ6~19@{JQ5;@1dgs_gGW24YUob|a@Qb}q6!fv6X0oq&&$c$sf zqd@lk<%g0*VH5|IvR@;GYS+@hP14S?y>N{1j}YfxtIBp#Eausp#jKmR!*ZKlIZ{>u zPSPDO57OK)$%E}mJQr~s0ty(Vwx={*%0BA#n_BN6*k%>;kj$mbpUnQ_wq7*lVp4^? zlpx<|=JH;d+rBTul453;B<>}(oOFnxS3B>z7SzW+XiS{Dwr5l2w|85OGp_WRLYn?3Fk*>8;zK|7i!If1dTCt2pVS=(t>fFM%TN0xp z10f2PnQ)Qfr>KoGxJioq=Lj^nOb@ZxNA^_o7{D=q6#aInL)$a=9lBw${2L0d9u#u= zdinTA@T+JJF1?T^$O>Xy-BF5Ow&VSt#E{1*Www_x@P6f6x}yuej@G>;wKLa<3YK| zr=0cT#TTSBQKAkx|Ak9=@SM5Wv3Fv=)pap;vnVISg(PdXv_?-`%}}GIF7#UktCeRg zu$UD5dC9bDISN!3PB%tI`LC6)_%SfiYM1p2Ury1k+VCE}X7W>1tF7CGQ)Ijqr_9Xf zV@8b)sa!cT;FMQ6zFss<-Um^i`~l`kNg6zNh_Dr9v1-=BIFA^is;FiSBfUdn0oW0> z9EZaxXCa()MX-@)mWPQa#Z@Ol4v~Y-x}gr69yoF7rE|IW07RO!U(sU><^Z&dYM%Y3 zn0Ld)4EpFd#M#qan=Z6Az_pB779UmLaxdQ72_d)wFxXY%L2!tYHc(3~Wv^rj_(k-) z$yB`Mle938VMi{h zO0utpw5}&lOdCqoORN~}HE=jON}(1P7;q|C&$|QU!avH9hMyufA`%6qT&#>#y6^D1 zcN%m0gQw~{1(}7>7dHcpI};=U<&+Z3iEyZ0h+P!ua~J;tHjsC9D|jfGc2F=djzTU+ zHDB_H5^O0i14-7G%*1>UYwJkwI-;r?kT@@xT`ZMMt*vvexs=uO!FCt2t1To&deuSC zS;^7_rq?ZCg{6ghM{8O+p3hUwTl)SQUig;C^nUP25nng1JkGU21lUqDu{~bWVC`E~ zT2?)*XwR&0U1OjW@7l#f{SgYj;-_|9uRVudI>O~ewxRcGUjTHY(Kb9T3VXEc z8-nPud`lpr9(fxIlGZwyt_@Z~=C%umgRjlez+v2Jk{OUtQTwYDwq{1!UD8fRaPQ{r z`vu&3rqriZ;153DpiObCNL?nUNw2irAg;J9DtZxi;~Vb-FPzIaxh$I`9w4mt7o-Id z;msPO3xcW@h()t}R4?y!Y1Oh+=!vH_kypY11l0fmcomsE9~*voKWFP)k*Y1Lp4L-H zmAQl`D1hyjU)4!c1A@JU9!rQD_e{@ui>FyB%cG|C_^xADD)$+qEV!SAb7rd;*|U3yOWT7&n+}pSy97w2}=?&s9w__aklDW7b^h8cm8A zICB_>35-z^{cVXrAA-zAO6lnE7g{IS1Q-Pts z(j9(MO{;;ivmNk<5C7;lKTywaU%>UpKYVywQcT%9zW|Lua=)jJY3K1dnN%Ts3Q6zjc`5Udn%0f%JvZ+}YOPc= zarU`yn0#5L;fJCPp4kYbw4BIX5Ms3N@fY`h8%2{f-L}nm8lK70R#CrB=y`JQS!#m;YJr zKh^1&Cw4XIe-xAzE$#@fBita87UW{R}*y9sU|c++5-nIeg0~?u=pLFa{N^i|vx@oyUPDc(h16 z3dQ<`m0@6#bD~nw3KfiDa8u{%u;LK_cO^HoGOHo+D}C>|Lqh ziy0J!O&#*Al@E+82_(>5wn+o(TlNMlSY!Q~QBErw*Qt-(w@mh?IqhgA&aL1rh1j3t zh+RG@(DiAq)iySP3h=tcn|Z2f6&DKn(-em9Za2S&0S~RHIA!chZXxOCiKh|*kC2Bi|4;-p?Uo%4gdPVGD8WcxrJ zR~{a5jn5Oi?=}p_Mho}EXY{4y=-^!Gk6s~OoembXn+iP}*6AAc5fB6wSl=)xO%u|S zbQp}y8q_cjT1dKGyW+<*T_}mS&iy!UG7cC>f*THDmdLEu8X0JkZR;ty4==p<0xgG1 z;r&J0a*9j2B>c3LG>H3NM7nHfL~>E%Cf@bhKj1(%IT()qtn z_UdU>>d4hQ_|QSE^SY#2)Ya9=Lln?#ebIuu%jZBbNl{6FXT8A4A^)DO6~nNvbCYKL z<&Jh*n7?bHDt5wY?Km|^nQo4GBCy`iYjd)-Q3=p0LmPP8J|_}~*9Z=>Zmvu(X_chX z*Qgapegb}rCmi;J_UqNzpaTS*!lMRo* zeIR4-j=wbBZ&rC`#;IR>49v~WD8WRau&Z!@$2h7Ah47MDCJ|OK6j;#T8H$ij8E|BB zoNHaaAtDwp62nOv$)S^05m}D8wX`>T3jNbJ7S>H|ZGyfi)j%mF9ipPO1dQrfRY062 zH=%dg=o^0&nI$*YxhZMcq}8igegTpgQ$r1)m7R1}hgD67$%?6Yl8m~`+}S&`M8s3?NoUACo!Y*~d8m=U3nT&5y*$Mp-|fFBImDhf;z|%V^(77!}|91&G$U(JlQPubg*wYtYosFkq8 zGKfq+9^k%j_$cs$-r$#%)_$d6~G*g4N$#fd$kD^6A{1zkf!l1-3 zuf=d{8nT0sF2N^_?t z0u@P6|~_Rmf{o>gj6OxtPK&Z~I<{FVyr|J@buD1^6G(h}ZUKUvh@ zpQAP^A!z+7bF=mEu3VFPYt|A5w{}iW1#u|zSo|yrj(~RYpR1FNU4rRE$J>XIfdjNo zAZI3?out$wWE7_!t|>kYxv((TH}p3KGVZ~Pgq5<1)Y2Z9%y2h+AWiYFe%8%{NInwB z;lwmeFz7uG-<9$7No*rZf1>Qf>BwueEg}x_kHuL&y&6f2Ydh7O$<(kua;)=eUAfPC zuEiH%YDV2Lj8ms4X-{60$+jX#uO){6zmHAz`LsXPL`h z-W3q%3eO7gDV6@N9MhL+T2Fi&0plm`(5q6Knr4$?*mFx@4AVMN(HzZ^%l&W+6%!#S zzUbjg){AdA9Hw}?iIvGntUL*AeH`oncy~c7HeT9dBfpCP`V!w*s<|>%F5HJ?LJqAO z8+LT3Wv}vI?JX08dBV)fcnlA7XreQ*IycR%Q8z)Y#i_kEAdnkkylyt9pZX);oMQa8 zJnXb@g~wgGiTJ|lJ89SOgD4y6rHN67M=F9#m&`8TY+DZz0kRgH;qlN`?p5eG%pJ}7 z6)ru6Q0Df0v^_c2v!Tm;T`<1vs}xBu=3!&yJgKn_ixvTmGU( zvClJdcL;BE6m*^ygW0elW@?6c)(+=HpwUoE`{<{3-VKRl!#HdnIoKpB4)sJmx`#d* zCj4%Z?Xpgk*b2p|4Kh1Zm%-4N8(2{3)iz~jwv10Z4YR19O&?cD6dE77SO~t3UPZhS ztGk6_;W8Ni4K=F>RCu0zTSzGgX{80X$G2$H?%RV_ItMA-Z9@aVOzgJ&6uq{nTq7`) ze&-4vAk}OC7rv}voQiiK3CN{}+S_15FMG`~ZnW0gI#ZVhNUAz5^kLi!*rU%hY$>vt zjQVh*Xc=fJR@QJW49G&1W7yffJ;*fbEjF@$u^Q4)kvYb&B(4+V!R6AkV&BGv((Pi+ z@bgtI>b}208(PtCj}%s{)yv^*Ppu-sIRQ~8hJ>ZaODU-mDP>KXW^|jJIZqUB^7S54 zB`z5WlzXLBrtUkL#wa&iepmFI6RD?SCR1%GmkDWcahMF;Osbme#C351isA(V2*SeU zX$gk9<%m8JNNVGruUeMsd;R(kH(Ww}{7?!Q6S=n%P-sv^Y*S|vgm2@(C7`KcFLeC! zOm=*|fvAQ!)QDSp`NYhLx=*+=Y}ujF`DWetjAQ_dG+%I!lxR+au=t6Lrr;YX>?==P zZFv}8x$<>CHn!f+!0<&$Kk6NaSi$*b?#bz`IN z{29@rN&Q?}{OPOvR++B}@tpg@8H~6M)${Ugg-4~eqt~><%OO5hI|t`YhwT1HBZ*lZ zLjiBE8$2nxbNL;y>UU{DoVwHEhPuYOv>q=7Y4or=(zRtOEM&P))_rkHS6Hu^O>cVR znswPkr5Ed1T$NF8TB!~AOsdObmy{oJiRw??BOUFbbzdkNzli@sjqd>iC=nUhgBrBCr2!DoozeN}% z0iEI_E5(vo7Az4K$A+Q(L@f>D=Yv*p0hEnQG;g2~2%|r_o3K#|b`ZWUtQj$Oj|u7; zjci`fk(m0x4IKx<-$aV9Chh9U)t~(zP)h>@6aW?o2mm3BlU4_ZX?npw003#f001BW z002)#LQqpLV{dMBWo~qHFH>b>bZKvHFfcMVE_i5kZEU@LZI2vPmge{V6*2zOASLA& zpc}dkBiqop8*G@i7kag7ts*1C8KKIINHQbKRsCt0)(DLd0;?B|5R00!*YX&!7%(kF zc@ZDd&8Pkoo?o)(Jm;Ky&yCC~o6+t{2-{Ve5%=ZX^YWbMoO}B3cc+tVr<^b9wt4QS zC$~=gG%K5;9o5bFxt}h(D^EQ0)4zZIC#S29K1LsH7SA24x^DK17KZ}H!F{2h5YNeV_mu19p{JtGApWlz9_rrFtB6C@v=$XY-jUw^4zgS zw>K#lRath&vW}jiUo94kV_7vXuRM2bYwI}u7eBYfzoWe%zA7qh$xKd$mwSI+BZRPG*o{?yZ_kMnOg zeg=zq^4RnLu%utzzg9oE_s40rU9I+utgC+b_XqbrZpK;h;NGn~8|Cw>bz{#uUY&gY zCp^koZ!pjF1~Zzsvm&1zd;b3W`rQWyx0cy-^=(eCSZ2+AdgIAwo_=$2X|)K4*o6!>1b5^<9&K{wYrln_p)wv$9{XJsj|~`Z%{wS4CgfA z$zJx`a;Gk@o<3ebKggPj9?vu9x!x$U;e&%4O;*!us|WY)WYY)tKJ2n$`QYBQCR@;| zRQ#ilYJFEztv=!5d`W-90O?Eb7TGxxG1}AY1+3VX%qLsqdo=4$>0S6x^3WZ64*&d5 zwA!ohviXC9FX?ahudS}{WfS_HjHBainbC-EPqSimHyhWh{j8fmxcAN=>u42p5Ua20 zyQMv(pfTOT!{5r9)hBz|n@jo@J>=UNe)>o3LbW>R;wmh7N^i1AbgS!Aoh*&!YYd8( zsKr-5ENBSyudVEIMU$gR@XuFw2bq16-#MlMyrXMD`}pAC`)<>^?(m0)v;;J@>&va| zKmPH5o}qRA>uq{c97>1P4<8%+$3K27FVl_OUES_5#9Jg3v^yjWtM9f>ADtvW zc;i{M@SNJ!en)?OaPK|(*F2|9DpogW6CjNb?tKO+A_@4DEjtVS4V%91>zlM(H~8a! zsv&B$S~4YFq_M6UJ?j%a6ntn%w*SnJxI;3>>VuxdCv03VWqodT0}QyK@hcj&uAY^j~yDW1e@HRK(i(igu{`K?%`9DL6wh6hO__?%bxF28kkgFk|& z(106Ky!y5&)^9=oZcHw}rkz`TP1=~A8278TK^=VG@L3=YNe54q<`4h=x3`vlf=8YQ zQ(nJqhh!e?+%8CpbpKDDGO0YD*CvZ6o`puPvrA;)t}cel`Q9LG7oUGpQwKL?Xz$UF zc=W^7=k$Nxjv4Jk&If!iyHJlNc{5sUu@==6h^a?42(7zA$GxK;e#f%@$r4-3+or}~ zE4x4%4&NO3wPpFk<3x>5Af&7P=>X3se<2&klmDA`QRh|mMmZW^ZQIcxNES`vZ63z; zhQBt&xhCC2CpxRzeCzaL*?zn|I-**7{V*LcPF?8teZ(8kaySg@sI2`^UPhEv|iS9nWbCKqa1Y}1CG z8P4-6pJuPrwM^aV|tvh;bHwLeF)Px3Dx9c((epzOi9H z=x;O(TA*gkTAMZ87i_i;Sh#5RB6<8%vT48u{yKhYc zi@xk2O|T<8)^QDkO9uodjwhr`25pg;(Gez(m&m%PAt9A}@9jqSS{Aos2XCo6E{mJ9 zhHPo0gL%-S63^aN_QL90>{X|34zKe^^wez<_pq+P4GP;N{)KK6JPz3?nojT$Xf|C{ zw)&KjSrSOz{rB;Q{OUytC`hl2t0)Ed?Y5b0eiwT??~qeTtIUhPzZ6|gKmCH=`vYc~ z%N#!RT4Y)ecT)K*{OzqA+VY+(&UPgu5j%AMHl1GD{d@lm)Wwt5WP+6x%n4nE`Kvd@-}cI_>4 zY{NN@-~E`i4Cz%q^&MNYu41!F2Rjq3K|VWahw~RMZFDcsmic&6NFNuHamZ;HMNgLbTFaa3D75QXd#DfjD33pe2-veRCv((34k9Lvyn z_O>3kL8PuKpJ|eZFLN7e;(N=J!z_ck^zzyFG+A8)3pX@{4YyMqVs<|Dk=YObzRbiK zCwEKEJSjUqdE?dHf=~MAA)JP(CExp-?03KW^#B9?rU+mF88qH$DAb|q6WLOHyUOd0 zt~UG!UIfIFqR+bdlJ(SO9Q~jxNv3X^>o3N=NH+xICZmX@*vAR|lGY4HkD{5fVSoGHA4y3r*tEKcf>)2- z0y*;X7&_M!_7Bur@z1)|=Tk8-Q(2y1b$C&}EL0$M{}+&9*(I^%FS9d#nbkB!cCYiK ziZ!jmThYRdwxR)ID8WN$#uD$2+F)S9a!V}8mP@34E>7|%q`NMW>EfLoKpOR(9n07} zPaIBj#ONV!dT0q=0=+b>4`jkZI?))2kHza_|DKGt#l+a8m+L1wGFkY*U`_sRsKTjM zU**yD(Joi1q@}xSH_V1tR0;C>@ z9d}V+MPl&8C_(7N8uJ6l2jkUAN4w2l>2}5HS&pl^2W-_hXnnQtIO=Lo`Kt(G1zfrJ z9^4x~|ElOJ_8&XE9IjTan%5tqurs2;Nq7IVsuJ=%!f?pB9OdNKgM5R^G&*;UntJpXNAf-nB3}tc%J4RvWIWsuF5%n_mLc3 zibz>73ptmKT4s_37#f}#LveqO@Wh%3vE$7)Kouzb$MwBnAN?)$7v7!*BlK`#6JMGS zm;@+_$BEf-Ct(J#ub?xeARZ57#~BZeA0#A!2+J2^P@>v3>v3jbib zm0gU{+3JAQ)}m;aO-Ih(qMMX+nnu;r!f`%@gjNWh=BkF>=0h%LV!~K2k!`A!1XH3UT9{t@Bs` zjv&alc z?FBFOu6Ub#oN$=g-}^w;<4=iFXTPEUaaw4A=DYxE?Zwi!>~unGSn@@;I!Ky^6rB6k zOmM!ZLuSLlf2{6y(E7SjbB*tK!ee_AYxi?iJt+stV`WqYXI08pz17FU0L+JCRXXQL zKpyu^Ct}LNu}OYL<%IUTSuV0Gbb#mW9+Cx*>!=GHo+;Ewrv?sI2fovGg%r&~j2$Ak zLY9Rs9R&s~8Y1wc)s4OEOfxDMA(xP|FQ;deBQo$v3`T6=p$a|p(2l_dH`QlQ7YiVlQFt0LcYsOIugicp6j|_p05<& zV%O}Vd4vP;FD1@7^>d3i;aAAY=Swwlb+((E-aRFttwwlmC3W3~6qR${;bT6*ALE-A z&72Wq{>9On@`9pMa^ll~7tw{xDkw=F-o(pOkfI>1bhsa5UGDJ#1&Hjk4Xo|zZY`cE z3IEyL0_j2WB&7XZ-eep3yT&|f(yRdDcy%i1B32g^4yo0$$POWsb0%m@PH-XumQO^} zp$CKP#d*G%E*FE;*Hwg;y`bEVq{Uku?35q6_soVYZR9WP+uBYArE|ge<*Ljsm($s# z%-Sp2#k^b2%j~~#oHqqDQdGYnr)2fDU^Z`A&~!PXv%lA<#HsJN1T0&Y0h(LZgqNTV z#ub_o*rhBb`QI{kPnmlzWz5VLVh!DiqaWT#c2uzRLp<*zr&KT zm?0q&ZF+RDBMUYpXX|#-j`tqbik$PRmxUU~8G08c!+dhU2pcxl@`Ws|U+}&<^DoKW zo^jRCIFe~J1^u%C21OJ4n20V(USneDXaTm-$4>~csI$SJoFT5O(EFcS30I+2S_PQwABDqdGNkb!@Z25yBW zHjssv*h(JH-@AiH?x@9na{cdx)aTcA@GKb6CdH(*GYynW z4ut;pmVmKd-AP#E%!y?3`Kf85Pe&2O4=I;Q!$LM{h)a+x#EFVrvecbxEcxt!&;Hin zQ82Ve16$&P&hwCu0=vmZYEPG;_UvTHMs7@Nh9D>SQd`-}RUlG56r>)ci96c<&vIoZ zDd;tmtebHIKtlj*=n|`r2e!_>RsWmq*#L_zj){+lH+Z)3Y`#`!?4uBN#0iSIQn`;IuaN#!O>FZDJmsBmZ}oBYVJpPEHB}S5ltp+$po`4r(TBifDxfF=cP<(_`*vbXM zuU-1cOc}47kg_1kC}8-BEUP4IRX{wDYP9*KR|bkWRE88i?07VQq1j3&$-<{jt+`N! zMl*6WLTrsW{e{X}M_>>;EL-7_w&+7?;?+RiFeV&Om+BSrBa6WH>fffi z$GW$Y$p$wJ9>6W}F8I_BL^W2}^J_RNY(V(OIhcfZ@_;!`fit!cTIU?$z(8z?{^ zEMSYccpbZeWa6{Qogj1#49G0FpD1Ob=iqZZdHE{? zPCLk){etrx*QcuNwJ0U>0ro9!;B*h!sLmiujd9)<2=LoYI$rYzq9*B3lVdw5VU%BjXE6P}J=m$x_53mqJtV>?_Zq3a3a=M&Ci5ezr%#O+DKA5?6#* z?2CR*2f00-_gHsPNJFyBVlGL^0L%bjI_8CdA7e6NETE7!d+Mn{bci0&OE8s^miFc9 zxJu&Vt&Psw>*b=W#{wjAiUKK^e3G577hOBw;~$@!mp>{^@q&QolCgI+89uhL(nkp{ z@8*)MNEqT;Srir=PATg$-gDjxS?We1Wy`R(P0H63r6O^N&r`80m>|qJf`PRpgy-!Q zc{h@Yg&XF}uD;}<{VR^$jl}ar8k9|jXF66QBmlCx0zrZ_q&(J;3yE7h;SCCG%y2C2 zjwF7?0i22Wd*5id;u=o@=Taiin(RyDCQnKYozNkkI-#jFI2Fign+|{}j1OWUV!LYj zkBPc8v_KI~U>8V_kg!F=v^d`(YnnXT;*!=Cjsn0SRU|1omZmckMrz6VM(7U^Jy|n> z2-qQY;dN4zXznmJl}!ftdQy!m)l{Dtf1C{Wl>V}aHB&nKOGVppftTvwspQ2AgPp@F zw3?rZ%jSLQgrTDWe}{@88iJ}9ibQ`wqI)Am^r4JweP)hPt9D9M^wFhU**UL0OxOWz z4B3)dsUIAk37@X`y_0)2WadR{QljL$GEh0?l3V-#P^ssR`P8`! zIMqOmBd0($A47PNZ6(Z`j{{7>3doM0reILb*DGt6^MF+y8sL8`q!|`mHYFbk#;#|@ zoW=URL$T@E>cOa*DKH`sKIMU7aBQ%Bfj?wWD>x*R8i_fnn&)3|3hS`SgOr{O{9)pF z04$x4SfqH?V;BK*cIr8rOZX~7N$}l3Uc$&lYqSZ=TUc&Wd@w_)j0m#dhS1m}a615^ zUKg!-|9ve^jyzwqRj5|~7HY(w8AuV-M|I#$2^_AJUS`*5QEp1Vn=rdc;AW5wG);J9 z;{(M+&P=Y%%Te~*{Za@mY1ii5ZH zdOokqt|lSv+U$jLmXrDUHU0WZ-PBz<*~_lX+bO>F>bxG;4f$%^9pq7+v$HH%keuCR zEPUL}l}cr}nkFrK(6QzR&lw32)M<&f4=36wRbtXFtAwt<){GMm#v;Lxop&V^!TF7D zPFnqR*~Nhz&!~`bJmcsWRvzl178oW)XAG?pz#zs-G5aJ>;xZtJucoav-?0zyI+B)S z913X5m__Q(N`M(UJjBX}YaK>%5vNFHE+uY=?9CKf6kxIy;(!8m9A`wl6*c?09PK3F z#>jW9c9nQ5volA5=|?4T=6r2WY)Cv0_! zs43}HSZM7nA93DwR!LZ0IjJ@hN2?Sofg(v-MTS~Lq`7 zwKgKTCsmS*A(KYA2&;a}SgbH7s0`lIN_2>gSPeX0uv<=(4k#L8AdH$y5xGP&9BQv_ zX!i3RLHxdvBD~0=Q_c+v#!b)4X@=)0!G=TuVoFb)$R7K<$6aHKKvkLYAv0%&qxN`O z`&~NTLaUQZVTX_bR528#ib&4t6k02xQnr@N(2Aw^jUN>vo!s?N;ZX`u0cR|!w%|?F zMaCk$q=Yu42RiXgbGX1uASkehX;%}k2;G{xJ}zvK$mD!Fjh229BbHt|Qc5t7!XkPH zN^$VD2yzwz3C$!*AK9p(bkBCRBk-paHC zf{oZ}KPO7}{7B+oq45Y)(S?Dhp2@Uz&n1rWggWLsPQ z3EU4^W|2t#rNQjyq2FJrn}=L*OMoZzT$VkoA+EI$e+2D zn|kv=t#1oB;o1?Yg1r;^uCa$R$h7SmJu`8}tdWi5JcDACy&N~%b0o-^p7vNYgQk5Sq=_IeQAjxaU~YPlww)!;8vErjN{~aNt7Nrd1BIVQsBDE?Nh1aB z`*1#Aj;pQ}KI{w2;Y3R!z9`gkuqsYeo>FNKamsdr8=#B9oM3GY!g+qj)tzdMF`9q` zm`MvR7Hm9#cl)m>aS72jb_7U_E&i+7+56?4!$_6G}f&}W@^q2~3Spqt3IKyF= z(XG6kiHikY!-qRGSW^Fu9!?RUv}$6qOVWg>l5q2@M!E_*#UrG%PnYlu5^!c9j4=E! zlmROLizhmUwOX&9lN56JiNQV>dPV0Ualsip<3>t}qmOhv8&!l24uJm9_;% zruJUUCl;MQ7Xlnt0hKWK9=YpB&>GX6;^JgFUTK^7y}4di;)@zKR!ZbMjAGUdrDwdr zXXe9}7Irz|a==GLHeX^hjBZzBnHCG{#jybAbMYSva-acXS}Uf0A5>>cI}~CkT`onh zP7MfS3u@~D4`>^KwS`L(Ez&Y+BEek5?yzjuOZj|MHs$<3{_(>FIgPYzb)iM~MsvBj z*Xs}L`nZHV+`d`7*ylo$cG5}H2fB>DIIQ(rvldjHyEVl0Uu#J-hXcn3VT9g> zUq-aUGnB0vOsu+A{}if(w7@SM`Wn)|`h3>r;D}kXH_s)rv;)2hONB>zAmb2_A0|)C zep0Qm)`E0RxLq1nrNH`&flju@q<4n}xZn=>T%GXhb~Ii6FB{t(zQ&9+Uh|s~ly`=0 z=dk?3k2w=ZQ}BiN16Gdfu;thRgW!CwwFAMzCz7^lCp@D|Y>%!4Q<`J1Ovk5EUk0#? zB`}=N1lMfIj~p2e(ugs$E>^;I1NFlRjpz0Gay4Hvsx+mv?)@w_U$Fiprk`pHGD!cL z7q3dvGjy@Vn)o*}m-_0Aj(;XjxP`O>Mr^-CsQQgHNa~~s0NYcA-e^&Pb;6C}LJ+*` zAC|nGOsiq&QiL%aKs}@`mgvVJSUkh?u!!`Ii8ekWTi79j8q1k7ON~(R{15w~plU-} zyFuS4b!E)LBiNuF(CYd9R+D;r>}{ktTa5Q5V_8V!83qFYwhlyvEm8)zNU+$>j((lO zjY-lk;oJFaep=lxH3>oiQ8LS>^LnPq&I}h6Hx(V{0_g!s{kUZO_&1kkWx+W@ww5kq zNH&9<;y~iMR8Gp`$56K}bE3zmmwQEwF&~(s@m=UOd#D>D46hh@q3pAhA{0`F4JxJR z4^o}2;zTr9EirfXeOgX4G6H0e`!bM{l?%)HoZS_(IHFoIPEM=oNmq37zVSSbZS?fVE)-_qJBhDe2;nteB#eTMU&P3Q#2U9}doTK-rK?R+DS# zb!|=9S6|hdB-+>#4ut{L5Bs6psj>2W>2(?e$Y?H(`I|47lbu=%-Ye}70No!0WPk$J zw?$+1q>E4F|7~S2iH8W@kdd5`Ka<3s4V2e*p8FJ|ONPb94qCe9s`;g{AZ9+rkk?HJ zf~|ROo`awaQg4XfR)Y9D&STG%Bvd6=rh{lAAN;aP%kRxHGDkr0Uc*2>9`|ul)3}BRlthVQ_K+! zIvE4h&cJCus(8ZxA2(4q!m;BlfIX;1?I#Bw@zd59OLf~#l8^zKqY@yb9g@X&`CL(f z-kH@mfZeHK0h?`p@L380=V%uk8&U153Norvjo;k6g)+7e2L5!2V=7gC_^TxpCavU9 z*yKXR{q?qxDp?P2t+kd<;&V?!5H(@lrUr;?q@Y4_{@MylvpgtzxxTl7<*fmNn4?49 zD}5*?K$j{2u>sVxPAeX#+C=|4I_)XLcdD+xi{sVj18KK8wm%}{VL#g7xIrJ-&k8}{ z@JAE*uacEfo{Kv<$_|xKsmqmgle8lPBS03-H_wVRJ?{N0S&{;I`cCtDJW0v&xFB$? zMwx}6*M3i%%M0fr$!}{tdgx8aj|yxQa(Q3(77duQx+%RfBvPD`sLKVauGb6Kc&M4sp7fwQ_@cXmyZYxB0*=j;#o-c8@CJlI zUr9^##LoH!Pl72Xd`Gf}wX9pRGXXv*dxxTxJ+Y-RH_c!MM!|P^mil>Pi}dAE_3&ls zK&r}DDLHKuVRAGvM86b-)KVt}C}&3t+%@D)(e;DkZj8(@MDDQb^+=%di{CCHjp zG8=(hgUJbH)4G4=_ikt?;sKpABMO8s@r59Du|04+X7LEv%w+0JN3zzrK9~D`J^;Duk{ihczkpytQOl@KluCCN=vY@Y^oK}^8rXoOCv)^W)1mw zmgHEz(k|;oc4kalQU5^;+M&FhDN*czB4d@Nuqf<$kV3k2|Mmb*Zv#eJAVDza{XHx_ zWVsnvtA9grdE@Ehk{Z=yiqAHvZsb1aQ@~)J`Evi73hr*c6&n9&-yi5$S?_Bh;p_Tm z=Thah!2wFQDD7U!Qm-%2)I56628Xjkx`6B0a5+dkgTBZ{4@~S9ID!``|7XQ-Nrwb2 zNm{#VwXE)iN{04o-{1rHZ_jXADajYZ2l-)NM0I9v>;t}pEydsbzzRFE_#D_JdQkkm zBbJa*?&MUZXCanQYBHpWio#>!yR?k~%N6dfxvN&QP~}Nx?(el_vyEHpgm@eqfJt5+ zOQ3mB7oE_*v$TPBzGK6hP8@L5-28kF)|1YpN0Ul4XH;wcNngLI2sp^?rn{~R?4L>$ zj+)h7#M-a1HlK|de4d=NO6)ivEg8e1qBY_}sXY{AvU0b1gjb^p!5j5tQjw>#+BHZThTm|Rwnu!*e_(r6A9UkHc04!YGr9h&)a@F=}oe;MF) zF%;@mh%jz=f%-DeJNJ2{>sU}cCsI0O0-cJWbr>-WCie0$lx`Gq3L2r|2r4i%t%YWT z{w&OO_}pMpIj(gR>saofe#oCl_+$WS%|Yea8%iU1A?wmmRTx00bq~Mi7(wR>>9%s{ zbn8Lx-~IY`;+JU#T*NT}HB{|zjmsSVFB%L8gPUu%^t{SdR7jb~L*S4Bo}5VWmttKK zr1iL@fy9c-uB@IRa+Z6CXDG_(@=;0eLGb#xagD(whb1DNV=A<8-OvyVl7*O=q(tRt z977XX&Z`3y)}p<{wM?_iuKDZ?ZF#<9(D>-~0A^_e4j?dqIZEOrh=_`iaY1(H0HQT# z%o)IG+ML|i$n{+>6=?0tD4gG1nq+)XJDZqT6^VyjX~I;;%d-BX@jlUtojTvEPp6yx z0G&i@eMxS`Vl1-ywcT}JxIx)Fkk3kY7P!57*ZdP|()qz}AByz}D53Vx+l``A{ z^_%j_l{qQcOGR}xpLc%%d+nUN*=gX8W?V%$p)g<&Q@1N_cU{fDH3;IoMKk{EZS7cE zNe9r4HOcOP>-KUQX9p3OBc z*>E$NYb@b79|2n2(Cki8$RiQrgrLrTPN7heC;;Rz84}L91E8aS3b@n55YtHY?4|YSwr=STHB*HyEniz8!v!$f8@)6gTkS6g+ICVeLK1L;A7^)( z)c~J;q0p>S(jpff8Eil2c3&`JH(55&SE((lqUUV4gm`^`mJr-%w+#1CqXzXkmjpm3G4Q z%6STw%6U`^ngoxMBC?m*LH!;dXp%>~`n6KqV}n zqYH*2V!n|q7Kx&p8$HM?9E(Me4jSmmty3pXY)=ysy54HX5uh}92m8`)8N7_OT>aBB z+)2FD_C7WHc#)>h!uZm>9JllA0+$$1G?fE<9dWGqfNI89`$yM`=riQo2}_t7GNp;&#?-Zm!LZI@|Ga>3hy5%c~Skrj<x;&RNBENcd zGF|=e?hoQl`+HSiugj*1tov{lm64KOhLG~Wto@3tudqiEYByvz z*qxRctV2kJp)q_^J4Lp>A0(6&xRLqBh91GG;egX6vkEN_|D$y+vpQj#6Kj*3@F;J$ z>KJC$M3LuW&4h7J>UTjOsZBS?flSyWw3JSoKBexbC%f%LepS*k16~_g)bFuZzK@F0 zf0jIXOOBk1jR&5!SQ-7$Dr;s7x51SYv4el4^de`t*2wP22KD2TySEGXY^Cj(jM$4a z{p`snd*5kK8}kvP~U>XwV=149pL>{i5U{B-sfHz5Y)q@0#br%iqJGC|f< zj@PKC+SgX`phLGy9x;AvNQ%BUAV+qKpKsD$(dpMPrj0lFM1w0L7ymv8L{+w#4Z|;OQ;;C}picVK(NTpScg}5+Dcilu2_mr^lQ)R-;x66|kyOs&* zSJMX8l1QNQ376_?WgF~=CgZO0bEJz&16Rb@jG7E$f(kTuKS!t$XObcVtg^_l5N?J~ zs@LICxxkNiS1W8@ILnrEqnoDRQp7fFffPp`xrM9c70 zQq_m)DszCwRwjAE2oQeRLyv~qg!?_MmXLymU5(aS{4u}T-PO$R&U{nc zkQNU~{n(6)SL?|0z)kR7CnG#C?DU4KOOlkBn%_!@k2pq>rSQG9fkadh8~HKW_m}he zHB{GnJY8>$F2>s+S6IjzC5<9+lW&f++gEGXmhV_Y za%sKzc3|r#^{OMKCb+%@p*SqItRL98Q-C$z>m;UF>qC=Gko(`(_-83q+L3IOMIe2j zux-&mvrwzZK~{zM9JH4Z?YZFL2D=03^UOOEV%daH>@KCUMy~HAsrf*yHArJF0r7^k zL+{Xo9_v*7R`y$RCFYDG#g(*Mkc_CqX4uJbXx$$T=j^=h@}{YaJY&yCBhNMxe0?ty?V5zP3GB-wfe?`k zRUD>Qkm6tbkeEx0Y~wkekpEDdL4v1itY~eFyWAccUO2MnP9Egl*bZ|5ctD501IF9y@&=z1agu#dPyk+&eV!YHJCDwH#9ovzV%L%Du{iwB z>!Z`80fI^y&%w~5wDhj`boGOv31lAjPj}lhW(C0zM_A=*!!l2;2=t?R^9Ou`#Bir! z%CzvkMg`kLdxzNCM20dE>J}V}*I8QB#u>3ZI-C8@7ct@uW;v*};LP-xI5K)waEI%! zO^t12_j}hk`bo;7HcDSM@jq+@H2{2gGZRbRPXmuUE{RP`t`gP?`L*6Kho)yE&(ile zpGW~y?>fyLsW1y48}w3;-s|y0&~29rk5G~vZ~qQA+Dol2J{}6`6536?0t8!RBp^>5 zP5gXx|C738ieJN8by_Nyik5QegAPz=slp{^-#J~If?2V}Q!gmmKqZwEj$%#Egxhe- zf^Fr7l8;cKafI(Ak(`S&xY8)ngVf=GBd7g<;8XDRL$3Lig{&tuHhy*YN;@AVP*oBs z`+%5%DNVP8`029UI7AlhW!I)CTsEo_vDP5nH=;gNwf@*!2eh)6>6X2UqNL4$h(+2T zTN)YEQfQi+48*R|(qPu3@6syA^10}$xg(MOR4S`q^9$*F*~KJ)Y{FR~or<^ezIKIh zajtBVrXx-Qc~0Az?ye3%?)W-5uN8JIG-do{X17-J{`(#%sEk9yO7?Y@l1{#`F*lj; zB8I_%zoyx%aHW{$Ty4n%rw--YX3SW-->^_$#aP5)Xk;M0ix-8uMzMWip3l%I>_NPq z%_n~@mRGa?+RnGL5m=bo3Bp50LZictpspdL_@{x=m-eAp;N~!ra3~D&k}j?53{gj- zS}U#aBBLMdOWJu0-{br<^;A4-3F82>Ac(>R{Mbz-6QgGkLFyOd9t+>pBFIDme{ zor1!Rsc@fBPV8$cSXK8TELZ36o)jM>r@W@%kkrYmS4(f?r8ErreY56Hi-v1IQB-cZ z9>_2FBjy07Z4l6ZRGN1ce9i!T%JoI)8JcTPFLd(?*e>dCuLT<}6}?sTn|!m8~qqDq5(mpAR7c9-q(uT_m(_24pNfx?ZH=IE#Tz4cyXxEC+Owh>* zB+}k>Y)Sv^L2`w*ThyRV*@qk&$5U<=ViB7P`IICn52NGgaI#{xZ?>C@-pE-3ky}daFT(~+oI+Kf-OwxdBtYs5CzH2h+uI4Apm%dG8VxK3M>sVItGvvuX z3_jkdcOjTQOmDW(i}LiYwBYu4m6kQea5dbIQTcN#@-#x1g4Oj#`=|+tb5nuH#5!8A zNYG-S(`*6{J+Q`_jn=U)p@0G&&&@+Z-L_+ko~T ziXOf=xuKWq*?D<&(ZMS7j*O)#4|)Hj%GB@sRo(sJw{55&2?Z>!jg4_iAEn<|cIs*P zdr7OaVAX2KPu2H<*hc;!nA;Ie#@wAacm>-1v3Z%`_!x;?oxnlj68;?@UAZ7O_Q>qa zJMm+Q8T{awn8>a}#zUwHq30Mb7`nD|J~&i*@dZI46wBkf)LRFI?Sj!sclK_!|tq=ZO{r2 zZzxAPKYO8E6lH@pIv4UsZh*6~-;IkG?VhqtDKHJeetvSDGLlq!c3O|N-)f&#Uxy#a z)<F@a6R$PCd{T7IKxOYpCh(lMH%Qfa$yre3362V?GzXz6{|z7t6dE zkxrm6E@^P#A|zMV&x*+)xJY-}5#~HlAbSmhddY4uqqK-Vtnts-DYUM5T`a2>AzmjTuMH|)IK!op_Iasg{1NCDe#9x|kBZ{QgG=v?Vz;`ehE3_e` zqrmCQ4NV6_!GpYP9ZPCL!)Sg2X0*#8?yjaR9@*j0MI_D)lq7|@8i%5Dz9hZ~V1Ei5Dub19QEG+?rKFgQ3Gtka4 z#K4;4ePvmhr1g9i_>Y@YtumdRa6n>V&$wPTvA5i3x{{7?LJDi&_-@!{Sq6|KKzdCW z@7ha2syYOO&=jHYmsr-dYOf{jCcYw0eJK>@Kv+ z$%q^<=}^a@-!;2W%pAEl~J3-vjCEtdTr(-)2h{q7g_DNq1q2t zt@kr0161Bgg~eA*&z|A%sP}Q0g74K=Z=$GcK|%~xkWQtiO^>=NjGO(n%SCpsZMu2A zlQ%`V$cB4d5=77Bgmt~B&=!#Pp{&PE_UfEe)@YHPnbY2oeXb|+9(`(Uxmm(ecqO2k ztlSa#I^!-S>^rljrU=rmlC;wc^nyc{*0oA7TE=0k|5|&MVq}gp+8xkjd7WP)v48ZV zbqQxl3+e?GvREq1Ki4V4QNQ-Adw}RdyXsrGZHm;48?RRZq%7^s2xljaY>i zFr5fvtxXxDhXw`QYBGL9$+B|*<3#wp;2M6>@TI7Az zga&E4zcLmiqxiE*73lGBEL_{%U;M~k0f$k)A0;9VBtxBzq!snHWj5m|EC!9f@6aW?o2mm3BlU8uxjTpm6 z001l8001BW002)#LQqpLV{dMBWo~qHFH>b>bZKvHFfcMWE_i5kZEU@LYmXe)k>&UK z6}bcqlR&w}mnf2!WJoQKXy4iZ^`-}GG4=#THM=$@yi&Yyw7Czd{Upi5>?at-r zo_pt=cQ)QRw=tbVl^s<@|W<}wr-C+6+`cr>p@qxMA6hG*zk2lM%fqMD6vzI0+^<-(pS8ufK0Nrj|P%*%fvW83Kr;bLb9!`XCaQ0|;~`I>(9@X^04WbKQ|;iHE||M1c6rr55Q-!)ss zcKBUeJifL3u9iO^g&(!m;lU^JuP~nXCPh;{`9l$Y^nv{TZZTedIw}7A%ik1(x4CYH+=NTAD-NnrIlT6tL0b4Z23>& z|DT4R?S@%|b$Rslfd6UatIxO^FFv<(q)2Sy>Eq?Yn)82qvAi9g_2du#`fe{w{qW%H z@awP@x9XxfJh&VFc=UNAAN^hJr-mU6_^j}|W~11|CJyj%JboO;8osl7vqG0S+XOvis%H4m|Gh@^~bcjC&PlgaBky;^Jg|Lo;}}_qa5^8vwV=L z!BbGPjXYW8^><>Sb(@x-?%UGzgN$v3c}$8jd~Y<7b^A^p^N5;C^eMH*+lz3NF_ZAs z+hH0LYO?!?J%nC@Q)8| z8)RE`nW>j;!J=lGFK;j6`UjQol~g+uZK@iKC;j!ZxVpUCm0+11HaUpIMF*>Z-lJyVs41!$lQ#nA|MZ*52DfYr4-wA&v)43H)NO;nW z9)k!&Pk#9LUWuh|Dw>@wd~sKFhkj)Yt?lJ49nr&sFZG8qr5TPJR%)x3Q+KR3cr%(a z*^aGnnsM@U^Hc%Twm^b*s^z_%qMe5ANS>9R5c09T(t1HVH9SmKOPba!yGOW+` z#gIOdhrZwA+i*s7;pK}mk2RKAjD@Vic37qG(QrER-;pYtXJ6gu%q`g2Qz5`%FuYx!a`673>WSJ2 z!WC>q_|S|`2t$O_lyw>x_deHfZmc2@6L~Yw|HqQEB`ns8qrDvnjP7l9!z8-E|)CJ7rijJ{cOVcMkAh%SR*}N133ew9_g+(lARiv z-dJ{51{^jP^N-WB;mfDWn&+w?l-jh^O;q{7gi8JLqx(TV7P3yO?vafCuj}!+4i3Pz z3Z_8JzDWP=_KZ11uuA^$H(TL*;osjhTbIMJ_{SUY>EWKkWB(6-{^ch@N`l!?y%$ak zgihUwFf4KNpj^LebdTWR$U4e<x@O;MbY?O<&JGhk zdF{1RVHxX}u~RQT7xoDoc4Sx-x1G`?#!U=GQ-bV5G*J5X2!M7IsbkxKw&{8!{WRt9pr@_2$ z6xR{-h#yw;88QT|`OO5{>U8hS_rihxwoyMvtV}pkJ{YHN%Djty`HLsFi)JwxkCxxH zbsG+xObQ#LXH<69#~z|a21)J6PED{jQ9KaB;E>iqIQye zPNmHsRPYTys@?qkOoO$UO|hV=_C!jzVB=u8do-usm^mL#1`qMyg_D5=;yT2=PNCrq z#!R!)y8${@aeC6WBtfYb(G3xYJ3Z{xT$VV+xOl3RI8l)mlST7W)@ia#z$%IXzPiaU zfNtpWwnq5j6L)v)fz1{jKpiU9*G4GY!twD(SX{s-`ODI`Y}`-&Ah-!Hf}r zX*4MxjlaIKyt|);5;`uflYAipE5Rx32iv_-T*Z3EADG)A2M~uIF**cWB?CVlTMPzK z{`-l<&tDI8b!1V`_b!Oc;VU~8{S@qTPoD;pe)gQH9%%Z$xDE2c&dDUOvNZo+}=e`=YgQeExv_rzlxEAATNL4!0#33QKI#Keb=y)n*LmHJ9{u&QL$ut zJHk@psfX8pChmCf)iPWUQ{dpy9N>H(z+XQ0f}g`dDe9^>Q76o!j^ z;4mid>UgVpj0#&vjc?K^ursMLHk5^o8Z4}AwR}(-Fcl4{J80#eh)5bE;@&7EIB0Q#wCT!g*IOY}#aF6$wFbteriEHR-$Y+-U@I$92KuE zc1IiHH9F{u$X*(Zh#40bkhPgFQ(tHJ@Oddw+QIK@g#tMWeB$(m%;7p>;H3GV$E*RQ zHsTM4-QT94dU$ZVb*{S`?Uo3A@4D-U4QrA9DOWSX2UVVLBg+1;N_1P{V-4 zdTv{38_%BBqq=TOM7K6w{c)^nyRm#QvB`9e^uFv%SWOY^U6G?f(g5MzJ<1?=2j&Gx z^O}T}LbgeHhIxyx9TRSM#XyOMmnrF&2tNv%DL!3zXV1IZ&LAiN0u03>o}|}{Yl;Vk zV{8$Qj}hF1S^)ikau*u2%e72$IXDDgJU+kA|}#HO19>G#^xwQH(J| zwr&ETezsp+e|(QYv^&Yvb+>E#qf#EK;6H_!t~^X+-|X?ziK=jbn(I^3%En* zCR-9bs%_{lMcj4)oSJ;eY$u|3>8~+=gpe;7FQ`}9;xA=C7t1?AQ`^k)5zNYbA4Rn? z=dWoiuB*s9UCl-nz&bb%phn#YYE+zr`;IK3;3a(mk<=B`5o#?@iQ0B)BFiI-<#eO= z>HjSk8DN7EFjlph{3EhLjXY38XC12J3otkEo_HX4%xi>HipIg3FeC|~9Cj?YIlbgA zN>qwyT4ML0{%XK02`NS*&roINAWGsL$-S~MY2<)lOV92dCauIX5%-FYpEv7C!I|7* zB`i5h@=~J#2pJ@`1QHrEJvlTjNyBgcYJmE20;<&&BsaN)1ngODa$QTE0=QyvU-MjpB7Vd$cHKFn86g zQ3c%*HWVbSS=HtGV4t#DeYxftICWL#@H~Dba6~7OnfN?P3ert9yNj(};caA`p{^r_ zHES)qD!<%`XpekoM`s~t=ZLd>gVMz68W*JQ4{N*rt?>nx@%d_jk;*7+d^Rok>5J!W~Uh~Cevm*m<|Su zIeeVmgp_w5W+D%Pw#S~_t!ImQu_s=Ioe)s#(yLGPu)Td9@4?4MEPUbwrBi60KV!@k z%f?s|fPt7?rgp=DB(Ql)SzGg|iUMBMa5G%q0wf=K>hGZ(7+4e51=|BEtx`N!&YPyj z0rnYF4QimP0I&+4!xlAiJbkur*{Afp?qiCXG&{=^{hcKE=}e~-n!QmDzJ|%2qu$eT z@0CgAKE73Ed0N?n=yr|cF2PgkP7z>5ruUE2B|oQf58|K!nJEzCa7CsfU9j3@v7^N@ z+XL?_=t(h^O}XF8%uFy@Y9j_6+j}`NgJ=q0dGi_>74(}jf2p^kLv)DD0g#^odC^sn z91bXJ)OQFU-(J8(2wjK52j@|}42i_)p2~=1T_UG0&D-*Epzk4Sx4bNv48d{w+9EJ@ zHr3MtCos7Dad8HUmzU!2)JDefzK#mq*y6$8z)8NnV>~}`NGHhB8M}Z!iNZt5G?EAd zx{y2E;rU=9t%iIz#EpG5oZ4$u*-M|ZW6-br6nzqP>Zu%1*?`8FhpRWVkM1ZWG>49nUzEb8+`o`pVh>GbK|3h_Ae zKjHkP!>yw-Y|bS`CC7s#J`V(O#c;yaTzA0_?_5&im4z1r(F}l3Ic)kXD~4kH_#W^r zu@fH2%G{G@q%BH9L{Y zNtpQrwECdg_uXb#M0i&z$T*x4X6WK6qEil3;E5w^-b3-EU89F`0uyXk#uL^^H+K}n z<{&1fin>uvC*{1jvS?cI!M93r4ONcLTWEDYhV=ko*0?1U{;Q*AI2wDOX}}N?bgd+D zOC(K$!+|-RIjv-BV^GUG1RTn+ut-Aw(y7SLWXThBkmUpNz{k#ru7c{yZ3Jp*xNCg# zr{wroeR+(8PT7EAv<~4&c7A&xH48QuzdvL`BYMGQ!`(d!ee&Vq{3LzZMrt|4eRgZ%{7>&zjx>e5G(M-JQ z-cev~hV&`jLtaPu(Xol&_1R<<2jc`pIT%z=UokwUjVX{|r3A|}zZnOauqv47#lmx* zqfU)UeKMeU^fYtAq!T5TvOIK}D?9TS|9I-5K2V1ni`<0G75*m{fN>mPB7;Hfx6n0 ziMcRau%f$JFhj5FC>~CRtYo+jk3JRVv8Uj558S(Ga^1SC(4R!sidf?cRQLwJ_a@fx zltRwe1+|`xX4Q1o6j#dexR<8~HmBpoq+c`KxHfvH_|MbXc2CWd=A$K>=qQ;~x}7<_mcsvI~>{xmOJ>|M+(D9XR#IMYv~NlCBGLT?3jMnCsC79{iOmt ztzL=C^b#S!ni86U8xGr0e z`)hFMPzt7K6XNqDN&+-mkc=P$1Q5OlGVm?&jkY?-VxOBQagR-aP>lv-0Iy~a;RCZP zY|{8o_iS6}um@}OXrS6q7jjP$Y)nj+#ozQ)6J!<&T-!Ok0w5+8KHtaJTQLSbr2{Lp z^DzJVc=>Iw*qeqWir5eh#zO0LlHQmsZwEEJ&kPE2atOq(FFvxGmN4?W`(fT2#m~dG z=n;^EzY}S6A6oeDmk_WHLk&{TTyQZ)K?4J@9Ck{q6({UknDR9;U<`G!eIgIwCdp6b zeIHT<_Z5FoqPA6s^kaRTX_VUKfwp9n%~##2t%f@Hm{ED1jKDi(0^C(eY)*E{6isMAs>D zkH-Zw>Pjee5b$&=G2LV6)=FbQiG>q&g=Z%PyW+MR{4}ZkEY=Nz`L#QfBClNa2mClI za(xP9NloFqLS_gDeEFz!bXJc~?AktlFz`{QD7ed9DG3Mq!S(r^_fEDF6x1`ow}+4v=nDbcb6gLk+Lbo$FyaRcepsnG?1lP%yK2Kp+D7d(Y(- zkbB7dOI-x`1p+cCIFF#n`Mw#^Mfk=xs7{JghRZ~t(=K>IDkof!5hjU2)($z`-7}BL zmsg9JoID*C9d{PHwaZ7`3<7_Kj!M~GJk$J^Mq>>!M4A*}6iA-SDmf#sh{PV@OnVmG zfZk;?Wp^9PbW-5P5har(%k9<}IWA?Wb~2%ymL8VH{_Ehnl!H;P_<5}^#dWYy<~j@^ zV^Zytzqiiof3=>Dr(64%C8-r0qk7Z~M#c1I@p^r81R(wIWP2xy2VP$LjO!8OyBw@U zTq^oyzNtg~@_*@R>1UHHRjf;yJptR4M*V#z_wzOa7NOJs%@>WFpDMZHb4l>PY(pyK zY2XoV6t7ral?8rjAX?)HT9nb)kRqB-729mA8pClgR^<_RzOjR8kCwM0^RzxoF^v~ZVbW4<`9OkG-*TS{W0zr(|Q!3aGaH}+-u&6 zLLtL(^jIQFNLalK5*}kn%O=qcR#Oa#UFONmot6bt)B5Mn_YmWpd7eK>3dqr+Bqmw6 zx(s`+@Kn;%dUHD19^D*`$Dvwg*nW6X(RDrY@UDo3dLyLfa~Kt9RXNy;J55W6Z5V@#2$@A8JR zE*tJmUTutg*oyBS^GKk_t%C>B)A`sQlE)ZFC&hMbrZ&RUG1fhTsA(mOj(XG@8~dBV zD%1rv@Gj|4kO^jE9JSMSc=>LyEk8zU66sX3Ro=X*d&F}+5o5w90s z(W8MzARG|pbKyeKF4&VL(!D2a+9F*lBvz!G7Z&t=hs#JfL#K)Sa&hyFC+UU4><_`#fxkN`(@5IavVH32^gkS$cHEJ}jk zBAE}c0GhR{EOeivFu*zdzD6o&isRva;G^S=D@0^e$^{2pvfWFk5FXJ%3uH z?m^?Z>j)Krg({5nE;GKb*Ue&HyiqR3bpjBvLz#SSYAGec+08K4o6}iSm#T4`vZ;*M zf_PCqxo`#__Vhetnk21?o`2ojrrkAZjuJ;n7%VTXC;7MGJCYhCg9}y<8z9`gE494mVaQ#Bmvd>@eYuGw%2& z#({`@!mH(CR)?7Huj}!4uoA|bR+@zmLvCnS%Q8TRP z-QAK0ZKvb#Cw!6OS!5<_Sma!^2RVIqTg@k3nj~vwW3%zNVt1r0G!1gm#3+IAp~9 zQNsjzwy-g!DbdC%om+>q9lI}>$y{UA7UH6mg+lfN6?^U@f*OcAo*Y2;FYJ%(_iFD@4G zNMd?<6nT8lM0sk?ytJ}#fipk_gA1dK+&fF5xV~kK=Lb>epWE z^3cwF!DDnl=x=(8{Dujznr26@%d+yqeUv|bUl%8{j)dP9Go(FfOoDJ({gc_lg`M?y72;1{6nYadSY0&s3Hu~!XIqK|3mmALR znnGD5mgK>&Pn+TNcmaq3gt1DEJ@dDta$GjUBg{3x#l}om&u|89H|UsE;#>?%sbsmD z+D+|L^@I>W)=K=1SFc+Pd+8!s){u7p3@mA!OI+58lR^lDKut;Xxm8P>S=Gd;<6>C5jWtayFP(V#3|m;T z`{Mu8CYc)FUAU-ds>WyZ#WPKPrJU_bUk!6LvQK9Hdx+*6m)>b5wFyS=Zw|HZ+`Go& zL@-b}Hly-m!cwo2{7c6qjbe>n>OWv%Iq~+A_9a zO+b2YhpVP}P$DygE_@eO%H}7QuTg{0Ec*=S)0Hm!5GF~9V3mAg8AwvSsC#kFle*-}l)Y6;cd zjkvWehzJZiK1wr9OW|1njae$ z>6_NZxaMk0zO&Mv7!M4AK?PrsH63oqkZsXv)YtIr3G9lAJ6b zN`ck?j>+${9Ma=k7)w0Gyl5*N5_WMU$B3A3g~KDM{jYau*WT(-c~{MvYw7=1OppZa zDoFN&HmTC|UVfw3O_?i^?5?uRuvTg_aVoE)*ab3m=AxxXUqt~&objK3`M-**(>z;s zH7J;k;x9Mik)cb_xAN*NqSAYGR!0VMqtw?3f_iMT1Se16QfZw!u8m@xucJNJi$l^( zu=ULIZW-4-ioOV@WmntSw5{*sYyo`bh6#ns+4R(k-~@2h@LC*3`lzv`0)2P%i3)M! zqaAIxI@W8dVvh@sKw=#AJz`%ni;y$ZnF5+1CA`gx4w)wk%HAoauVlPO_x8PIl8_bb z_H>VmM*PXgc(;=&=}^r(es*f30>i@sO({pp8H{)?8^hAH{myYfdaDW*vsk6l^YR{; zf1rFHM1$iyg1Or~7~!pQLM-wbu#4K~uG^aQIvJw#FSQ{33gLb6rmDNsL;-27VBQ)R zCzGDIH@u$3TN_`gwo(A@`?v7^K=GQhzVO!K3crt+L;a9pMv@feW)PfY{rh0EoV8Vm zNNfRM&uDLn9Le0~vc>%{#-9$yqj&1@uv6#=65K#xfIbVI)NNU)cx#`@yz5LVhlJvc zoVS5pY;!kjMAz|S6|vBCSG;&2H8YTd-33uEYf)lpL3E<4l}(4MgZZb#I&#c{F>3qb zDb20shqO&o-H^F4$N?lDJoXGO>-$)~(q=W`gU357vG({@%{%F0HaNu9dOX7ph{|V` zqmMhrO3$3GIb(AWc;+mY6aA#wkJO7nvzNY^jDmC4z9#Eu*Rqf_^2oI0ccnX@H0Eoh zDbQ9Bb@}h!eo#)oP=-%iPwJ-I8rv448)# zq@$tG2-sisb$oqv@TT+n+=?O;|@!#5Q4xD(6wtX_<&M*wb)YMYk!>S!=1n`sOl z#(D>s`((}r$>4n#Wot064L{J-E?#k`i7sg}C55-~b}d<|UBQsul&}>mew=V3#OqVhW~-)RyReCF9Kc69uFW(@krt?wt>)#A9qxm7o$X`4A!W;dPFONNKIp6H@~>GWxZrszd?&j_*3SY9b{@=6A6 zO_NT$Tt^yD!BvsWrl)TiVU(1kI3{0`nmhJcaJSlFqSJ+FNE*4Uk9uX^)1o7{dI=!T z&yR|>#QT9h|C8SBMo%VGk z*Tg&nq}}SY1I(~FO|<2Sao^d>^`3C-G|dueFKR7EinNqNUeh6n8;NPwSzRIBPu7dv z=$*OTQ7~=l!FUuK?qNB`#?+M=YGjwVN5^(cTA_sI7Zk3|vnCSUMMiU3aP(CHt~JWS zVIIkfW%ScnXU@`Oc)9s zbL%IVQa+II#Y%{~CecX|MXW@QDcsFea^}1t>yMzBA>TYA=5tdJQH|JyEi6NJ$<(W} z;7bL!vm6emd)=a6)zxt?mq3qe&G@l!YY6eHlw6hHt;SMu2UYYf1Bkmod?o1Ewze)e z^5U}$I88+II8@&n&=U7ilDRuPi2~_tF)`nR<|iP7$Gc*9k+{@gJy<1lI@b`o(#r^s zLHAwyyEX_(C=bXgJIOX>{`|2A>W$U6tmyJ2cCoBGj$zN`$;9GCY*BuoKs`D=pSg7L z^oBk#0}p%;7oUX$8uA7MK=#Vfj;UJS$Q4U|Pik~Vp?st+nS>@fQ2y9j{pc?x ziq09iRK^HRJQc%{5T6EV2v%l|@o)s~G7xRie%QGT33MjSl3}Feh_95K_^xxwdbuuJ z)-yuee5Z7Ad%Vw}mEO?Y(T}pa)vjY;ouo61j}C6G9lC4unEY#A3&H##F5LR_fBWw^ zJ1`DQ6Shdi8I&(uv59Xfr%1yVjHz>j{p!)|YPm9aT}V_Q@OYZ@ z<*L9Z9+Zf;p!}}R09WxU<6&Xv&Xuc=4Ah2bh;&a$dhE}|`;!gZJXX~&^rF2-yzQG!dY!T)8I@k#d@A}yPw;PJ`fOk=r@^9y2z!Vsb_9$5 zrLaTEPatWV@o1{Gf^;@vnI_!aW2NLL+OGE>()0aAW!90)caVt%rG99WJXx8VFMgbH zqGS6tl0=tsjoDA?yo3Bl>^(M-+W03VMGMk2SFkgt`x-XyuK=dIvMWnAXuXb&i~DAk zx$FgxxQ`t`8e?g%^c@fD-Dz{b@)3>~8LjM|CFE$N#7`M);q#JhK~wj-tkVdjN6{V| z>bSciZMWl1im`+1u9B^I@0R$i;#>@Q7XYap`6yg-eD-LKUSS>|YUbdJX3dqF$94g9 z{tjzbT-J+(2CW??h`TWGHNHmVPik^-zel=EV1RO%ri?gUx;07fol^UCWIqFMAlE}w{hW7?E`Z|MCq!D0jcqpWIq1m34&rDBwa-`kZRiQ87Xv_Sqbl+hBua=oz!tDMvvUE3($pxqfBrpr~l6Swxl zNZzhz4K6i*U|~&%_{8M4yA)D{4%=*0;E%h*boE`pS5hDEmVM$GvbGYEk6>=`!(Qp6&qh~O@9JKqn@ z1$9*?uIf2mnaTIQCIedD{|y~_8R=R|1g);u!+75TH2P(` zodVjy%7Pv?d37D%bBro9J7zuLvimc$q|;F^>P*EE=S>#`J;npC%@lb@pzB`kIyLbn zIMRLBiW&~CX4%lE1u7@IqG{lJGj;qz3#&u{98r9zQn}hAP|R`)?p<-61)Y{CuaLOV z?j*Ws?t?|%PN{J*XQ^eEF;hf0##i^Zb|o^%`88CH2Zcb&5$6FNhn}Hdf$#@e^ljur zyDN7U%+XVBx2d54#1Wy-piEux_(_p0z~;0M@}c>{deVH{rudlYsnlaM`gVGm>%sfT zxC1pZvQZp1Ed@<>sTPs(kJl4_7h>M6@rd`uP1|}nDt4yh{mFE;Q`Pgyf8n(R*RQ?N z>!6(}&$zZxlXGSq8?Fb^(EPF+Hku-Swsj zmzmZ|m3@+|;Q4Y9MR$L!OFAoAO#w3fQfd2LvJG{8rn4p!rvfXe~A#`Q5q7|;Pg3YQmCF3CXEV+Z78kwwZpuDdg#KwQRXD)vV zng_Vq3Y8wjMm|mp8*h%;T0T$`^2&B5r}?gU3&;0tWw+fsP0~SV)4HkwSUVo3F6_D0 zEQePjzD$67BfHYdBDqVu>|y?5;MH4wI~C!bF2nHZtO43)_n+LJXkf}lJL+G@?qTR3QqIQG;$>8~ztFfWyM1;v z*%1@5d{Czg0C5znsE$)z0?D}}8uOIsDwu({$?S8ZT_3+nFNk^C#mVsr6s5FZ<-$T6BMn;}_k*&? zZYXdxW3HmzJ|D9|5S2`!iPD$+MdJD7DMriQx(L8ucJcHa`1KVXdb)S!ds%C5i5oq{ z&lb|`CvVx9RnB&D3b?>ONsP*#>Z9B?Rxs9zK#6rC++PYX=u;VWGJ}6` zyP-O`R&N5isFWG=Kq3BKB>7sdY7LB}oMlz|IPL`O1#lY z?V$wT1@P&YpjoB&ro}5RrJLam=b5d_>1U>0c<~WBA}U z4EQ+JW&XDOum~SF_2y*Zm1xsm#`0RRVH1Q33%d}}*1Q+*DbV(8`$XsAu&`9cr5ZQ> zKUA~JSY}kYyko(dYG|2Z_r}_5o?Mw#B@@QT3USF&(R>0rYF^FdO?!9(XUUmbuZ%~7 z;%B3qH)o^$xofArriXUs$h|(Q2P3&7%U`$F=`9lJX%{aT28N=sPPcRd(uDe1<^w-M zfVyp#DC(^vaype~i|ksr9l0yk7)X7mI&WEv;!gV#2J~|@2vm%uJ+!+iTo*BrX;}J_ zwcwg4_7A%!k*+!`))zIuBUt${xL7%yl`Z9#7!FRRlkTRH09GolHO0Z~=x2>pxU+gA ztL5%+fX(3ZW@3UkI9tX?H!%^5N?uIo(h_%K1EeoNGam-$p)?3c+bVZ3N*OP<)7V ze1pb~sJVhWWbt8};GdrQAwxKZ-HQ*??XRhORGiCp1rLJaH>lk4isT<-m#x1T;`m;; z>&)fA)bA}{+62!auY9+hR43k9xvOXpqY$%0$UK6LoB9yM29obCa$nYwm!9BuNnTGT z$qEbu9VULAu5O5X%4?p(n(r6arE70;4!Uj1eaFSTYqV?Dh$JMgWU+gEeLXog!8*0e zhgcrVTWVOA=P2pfleL-+)IB+Dsc?*buHB4je)4;fxlfV`I!*$&_-vng+sHyGm)*G% z7xkB}DOw~_RhivexrB(RCDi2l3JK*XADY^<0f{j?iS zisz||v)S}u3Y)|Z)r`fr%}U`T9?UQMgt!C+xt2At1=E*ermixbeAHY#FV$)qxbUh^ zX8oN{=PtIFM$MKGIqI;+TF!&m_=Ucf_(G$}@w_&kme`NVR}^F^8#Z5zdH+;VxUOxI zgesIN?^ObJR4K~iPNREx%4X@5Lyn#Lvv#O=QFYUuYV)H%#O))!c1s9vB-@Y@EAhRm;zfnL64Sud-jVG!{09n7q{ zOwq5QftZl2^$bPV`-rlVT~FbF@8dCH%eduhAwWOG)HT34qM@IM_GMO`9GH}c@xms% zV3{Jw_NKS$;|z|2o#T;oj$;Z`J?vC9osg_DC{B`HX*W0U!f-7uzp`JvE+s^a z8MQnF?x)jXr<6cy&*uy8@Q&WQh6ThcApE_By9QT&$r8EPjLr4)>cU1+m6g!OjG>6$EJdMYk%?EbK|LK(rD_)8h<2Q4$(yamCD&KRnCyksXZB{RYj zkb7_&kXNaWI_?8@H?G;PD^3P4qEfEWBWpF6m9u!3o4zfN^IT{AjOk51U|5KFILw4; zN1j_pTXN(2SK8h`qW`XR$XX<76s5{SkpV11W(D%Q2Uo5Ujuls8Ci2YM`3vhRD}0-x zm8jE-clIJ@6)Sh)^l6+uf?0JGg^b$eeW~TWEELko@^r_*A+jQ%-@Hm^XP)z?*-b~P zG7MML;23Rmze|vuW1~Uehu?lm9tj_XQbo4r@oBesm;1jfj(StlY)}Rf)JSaE)xOJ4 zAN4Zjq-y4NlMbX}bLpaIj}W3w42eaX%2`V&@4ZN0R7&=-<}~R;@YZm&Li~F$tzi&T~e*W)aszC?JvV z$3QZ>L+0pw`!Z;?2-eF_)^w&D$By2qr}lAD{3?V5;BB#{HxDo2UX#le3chD*Xy3th-fRz%v?tiR8{dWYxT>N*9?bU$YsjEBlg~4)#}ISSi|58>M%k zgW}RNP9gbgsAc)M)@F)ia!l>6TMgEO5y89{Ik<~0c>EsATR}qkV;dVi3AZhHaZJH$ z12H!15L(kom1vR5{Zn=hWep}c#M-4!F@Y{NpciYnB52>WKJy^8zS=r$Jad`0znJgh z>HI=U6%F4OKdDl04%LF(H#Lo{R*RUJ!-k>IIzwwLie6ln7F&OTx06$G^KrwYR($yC zv+Vx8Oz|iHpYjulbde>z9h>bL3(anHTV6V@Fe}++(QK^pMLUB%q=yMfEq7KMjyhwXT^Cm&41t`}j-0lq|cp zB1uc@%oVfZ9c#t8HgA;4o68tmns8SfnYipTX0=IW#PXo`a-OE400iCg%53NkDA< zh5HO~PNn|kNIvIG?~Fuz=Nja!U~G8XPQ_wCQ7$#PNtKR#8aEL?o!S);j$JM;R%u}h zjMxqV3zfES3f^Vd(n;?k-fT_B9w4BRiStR=aWy}s2DE!bI|)3$AA~yH2U_+*7a>fn zjEQT;t-|gJdug;YrGkeA>=G*s6j%%0Tla7~Dk=XMYdaW^jb#!gx=FN79n-6FjS&H!!^%n+S5y|?pQr?M!U5UYG|C!jKD4J76l95hy-$sjnuJWI{p1hU<%xl> ztP!uzB;KDn$KiWXZRJGz-{ZBntl{KAs+ zK&=kb)%B~CpUX;8^`#Z=szmeh*Od8o`kpfI_gOD1jo{P9GMJbcSSL&g=yQgJQK(k7 zmiyh=W(+p3?Ac2-Qrrko(mj+3ci+6}gwc7TOb}6w;movwnr%9lfgDbC2*)2GjZb>3OH{1`)f z#RHQ;RZlAp0M^GVKN45O5M^x-IZ-4fzTQ*qR_WY~8pXj7>bO-unTPQ~?P~?0^nVx| zvxFT!1&|zt4QJs!~R*@v8RiF$e z;!p?ba_bkg$CXbFRYpO#{$;ixGco%c#oyp7Jkh>M8zOtMiYhb+8|zixUlr{58RKV# zHU(a56kdxM6W`8hWvt9W?DFQQ)!oy=iWUuz?c0xxf2`BYFIU4B$*aDUFp)(%_OC2# z*z6WAS&Jlg9+@m3u>A;JF#!xEw!bHrg*>3R`c@70E#5E2se1$#ZFI|h?WKD>PsAOC zj*R;^fkj{2?v2{`k43+Jdr_x<&lkJ&B9`29pW;(Ci>A0s{ikO$mkD}HF-iQGNr-GwG6~A)5Hr13TR5+*o?!H}zrTE0Y zq0Gf@X)5I3X~uY#a8Ic+V$N@x(v46cxO*Xvs{IK9j4Z=smFvGKQJI*+i#_f_;zQ=Y7 z(da7oADIy)nM5vBtjB{~`C>8W3cIZ3n!8jzTiKZ?)-(pi)6@GLMeR(CSCZTa*Yo&e z1vjX<|0n7ym`%#SaIcDHe1iD!7VY}DA$Y$j*)dl z*j6%Q?EXtyIs3AE^7M^Zy1FXh@wTIMkfhskke{EGgSQu>xzN0)L$IrjN~HYFM~zX= zwzZA?k2gZNKCZKxRsG2BRBC8vGTOX>Y}PhK{A$799oY1V^c)Ai8uT(X5yCYv#*VR@2FVi&*Q&Ejn17EKkEWP}- z=R0ilGUZC=lTMAmUaTiN*Skno5dw|37hpWY@35Pf#~FS>$_j*V>reNro@Z7r@O;7B zkTjD1YubRx*I^uS0=u1|w5GpWSjmtlMN)veUrEsf49xMgH%AsQUJUDb?kt?=pFq1k z;E0M$bw!t`}RT#^(TPvv{@x&Cyx zFaNFD$@t~J_`gs~0|XQR76=FcA&iq&JnTd9&@=!5<(vQjAOHXWPenpdQ!it0ZggdC zbaO9LWn*+{Z*DL!GC3}IXmo9Coqb!69LJUByMIM40mBlIYF^s{3H%B5Ddex8ydmj$Xv0>r8$&D&=NH(up7oa6s@QE6Rlse z=X~cx#EGoxqGkbGB)h9JBTk&lcdl{nr#s~^nf1q$qORWf$;piqKS}ykx9%0y;EkV5 zn_s^4>Q8=p{zvEXhCW6gttM|A%bRBO`tjq}uV3G|{_;jW9vnaU+H0>J-{H?3JO863 zIhXgd9{+{@+7!*OfBwH#+f{wNI(J@bOb{sDo7S(n#?hoHMHfiR={v_}Bn`22s&(N=S zCzE4IKJNeWjbj@d$LW9Ja~u3Sdd&aFLq^%4|G(tJC;elNyPcow)V+Dq9cB|EST`FM zopJx=V@$}Ct)HGgcK+OClvV!6c{XbLi=?->msI)UZuMW1i--GrRnqW3l9E4`(&z5YlYE}c4iA1? z4U+NU{#W$JcE0$A{ut$l`}Yd^-TtF_N)P$&&-BBJzBo-LhX-HLljt{1GF;rjFXe;$ z{4eFX-NXF{)1(?q=Z6O$Rqo->c8kM<8&mpo@x;C9+3t6LK0LVBO**{%hW?FRl!phm znxwnf>*nH>FRH&7_RV?;OUcvot@_s$;_9t{&$t0W7nv0}E-|&y926;aj(8}-80*R70hz7K0 z-biDPL*DRaHojhvFcs&qi~lT7oqFX5Fw;AS2j3>0XE$j%`QpxV`R43uqHQg{p`X$r z$uaN-i5BH|dudYA_VwuUdU1!C3jbv~((gC??*0>RyK=byEzxU?lOo=@N9?=*xJi>4 z9}ckq{pCxdf1O;;=(SBw|NZ{MKRxeN7w6-e`26DH34iJEV7EB()33G&-y7GXZZ&+08OJ`Rd6tDJ^sHc?B-LS0~q|WhcAt&iC!AS6BT>k&(mRfNsoTT|G8CcB=5+9Ge=~FZh;@pN@2h&tLXWxbNEA~5B}o@tCGS9C zp%;Dk=kNC9Y`)qc6-ZBKHX<>)ZwSHk`?P`t-*0F)Ut`lX{rBXFjT0wMBoz@L)lUuR zL!;#6nG;M;+C=+Va!}@2t~JSKf7q`kpp#n>%QyZ)-~Y5o&dQ5En9_kHow|f#;}fKn zKjLTZxy@ILhh?%e71A_(LOJVFI)=?+Tu<_%%#K!J#D#R`Dg;kb{ytN^DJmy%!;Ck= zO7#X)B%`N8{dN|2!5s&;HQQIUWbrZKFvP>4MnM{a%{2mMsihbi!OJ#*zXFH!j`aJ zC3az^{)|~mPw$Cni4Ugq-tpq!=>Nn{8_B8DC$`I%nK@Xf?iZl^17i0_pu+>!--}1| zHQK;U(hQ`{l|zmGQA*QF4{p+C3$b}1A9DyXXqjw{7bL6Ceh-dh!Nnr?s*Pk*IGdk= z2YyDYB|e#u^(k3(P9wuc?;_>aV1Ku(LCR*6H{8IwfSpLTuvc$!gm#l>56K)Kd{U^H z86-d7NUm%o?BlDl0Ylo}|1jTV2A1XeUFaA~6KQ`z3 zI;;J&VO6Zx3&B17s_mc{-9zXc_;01CIMG_2#a=_7C95_{s_*tlqi*47-tP8Eqm=2$o#)8PvSW9zw z@NvQa{m9u75el*azabu*uo|zhEHb3D&W}b3{t!ct^P0|CgoyuA5v7j+RS#~lK4yBs zmJ1dV@JpLG__bie5=Jp|WIB0nGHvtjYsb#lgf*t4^OqnMx9Pn1gb?~{+Gyop%_dXV zqsMP`Qfl$JQ#juUr`%5(DDZ{_{`ML`E!K!$zs->HAKv~4I_jrDVIn1}mRQ583S_1r zN`bPcykREIKxSj{k5e!q~@P<=3U7GpcYu3}(Pr3P$*hc^v8oKF;M zbPc3u^#u=QTh0$sNnZwDWtJhOR2O13a|Sm!r+dl7GPYp63BI(IXJi%~>pk0@vKqqM z8Yd+9G~T>Te`9}TpS3${|4rHlf!2-WJw_jmv+lGu;!x31%4lBa^H0414yUY|S-l9u zHjBF@G$WIYW!Ovmdn7FCt`T+c4Mea~?S-eSCuz89BB0ao>byO1Z3p{=TB|lY@FM3xEm7xETU{L{gEI#ys z9hNuZ8WwMPo3j{1_nH?*3gWZE8y7i8q34XT8iT^hITwZFUPCe#VzM}Uuwu%bM={G< z0ovsCsbeb#2+XoAXTonB(6O1#^I8~g!%_svanPD&KzGFi7&yStV~yx>1gY_llO0{7 zXoqI%=y9-|LtVR;ermUlIzy;Vt$?4tnWvy-UOyrG71q_`kFd-Ww|_ zsMe3^u=k%fPMl1Il8F`tkwVCG7lLgxjHu}z6VEmKDV(&L8`jrnq<1=?_QT7CH z6J-Rs31@g)LYkGB^D_pYY-^1!Wrpg87wSHH{p9kr3&6;P*kv~Z`(Aum;@!&5f^>z5 ztSDE}XF$NKXcU^YsK16zdH_8RuKavD&Qi#-N+2=HzOsjKFoYLovcoG?fdKj?52aFG zWItMr7-LUopP?FQDPOa8r8Uwz7~W-W39PmcILgQ5TizcF>9-Az;Q`R$!5?ghs7pw1 z6`CU3z2}}Y^jwA%To}`X$H`_k9A;&7IubSm4So(=vN>%Uj!Y0yL9PQQT?6=wN2}%c z-hTV-)S(F8{r!1z?b*W=pMA`}!Tysffx4S8{s;P;i}&9{L|`UhU0xTTo+wDQ>SC6O z@g#=eKbo`d9m4*Dy~si0=m(-T?nC3nJ?vs(z|8 zkfQQN+ln2$w}|(xr&clppJY&8663WcyJMcA;TNJSZ-~gj3S0nNcv}NP!6G>|ED9sC zzp@)2TV-@M5sU=SHArGAFAyhHBNghntG}rF)NwhV6v5gCdXiu=d7#RPz*`Y)k%jdN z4gRu%p~Gdp;#_%nw!(*4M>`tKLZ2-DA}B!LQz2qw1cDvC0B4r<_zb=y$4{In>ZZ2y zzOt#Tw1UCI8L~23mX)18LV90i4hS}aj99sd{@N}4(}>MzbHv`e&03vuNi>r<9&plB z^hfIbrOT(_+}J2szMa>ZZdtV*v+*uJK;%Y0?qUEEt2n~={k%`yP8RP{o{dNSsww(o zrnW{CQc<$%JHC7xHc`+uq4gq!hm@D(g@~=YEd<3SL7`Pva@KcN0&x-lU9b(JNR?Z4 z#XfWEeA@;Iz9|XxTjQdf^oOagZnk*ZGRqQ|F@S6*6BZ1X)*BOxEA_!a17yx@4aG$x zsbv!?aSS!2L7Ap2(4l=itfu-)s~m2?KVEQ^TPJvdVrzMzDywE8CC^Oo~aBYg19`V3YFvX zXCpfjls5x1kS)EFjfcrK!XD)a8((Rnyk|gihVQZhf6O7SIL`3>hqsd#)Vo$HJ^Q^k znaR(J$*=lF^J1*`ULlcuYIx9Da~JSryRGPJNwQOYw~HMDub5CZF#d(%XyPI}hT}>& ztu19BSVui3g$Cw?^{+Qt@t2Kc@y`zM@p2ub?et5(E#_wW`omGGA>1(nX+D#rX<~s% zpk5b@t;zZ`{f7Se1pyr#cD zwV3Eu;iCOr=wJzbw>Xj>26f2G?A5Jg)rDbyC#!lKXeS7{IW0T&u-C*m9F&cKQjiS} zBaC8pH_Fr`t3A|wl5|+TBK=m2q61@T=q%@yHDVS)t-g+Mpc9DLj~0H@H&q%pHL3lL z$;hyjJ4MS>Yl?J!S)S!MnLaN_rFTxd?BC zLJ0PKhODUyGnjyvaGT`%@Vu zJuO?wC3HFyOZEkfKZg@JAN9F@-#e;%zB0v$kTK)ICU7)QdG(%+J46q6Bga=@yGWH<+4jz*%=qTK|gioa^|6v%iA))ZfZ&lmNVL{!_RzX zVoNQ$Rfu8C`HY{`H3u!6+ABDOeS3*Dy+hFKibuGnl;j+E6V}DMuv%+&ln%Wru=4bY zG@t-t1e6CcC(8Ca!t)%-#vw+>f)Xj_Q!NARuwHs6>=CLAUwex-HmI*Fzr)d5!NoI$ zE%XJ(TEqS%xjgR=hnh*;MnD+QRTA~O2??%Aby3VVzqe2SS=B45&U8G;U6o5n1FG@( zz!55N&k6#%0|>lilO&qWlP%)Ks{Os?ur+LP?IVN8Yu&oxjQMjNYC|4_fGh-b0n8%u zuNkrV_`jaAM9>i793X2$Z2h@#O0+07EHNfwGTOp0ErVkCjKd0a^2o=PGD>bF2NqCO zW%5q4IIFaHEv&e_b3T(?);)wf1a0iqsnW$)N_>sSGU{oVm3e94!6Bj{Tu0`Tf^pnc z&=^OfHJuCS0AKE+^W{tp01@q;T0+t*1e|fcTy{zy1{>@;K;m)XCLhyFINM$)9WitAkei4CJsz#b3OL;~@@jx`U9O(iPm~1l*2}7AbCZE( za>yaznNDgslTWfGp>{c4)*lAe3^kHZPcCs#ECF7g0szZ&?mjw8W%+e7uA3ZyWSAI0!oCRu7yT=)|eCEM;Paj7cSipT}~ zTM{3ahrNxY}pe&k>_~Q2KSzP_3Vk%+L7Ih1ki4@7rH2S0OP=)7 zxF($iGh;>k0>@n@oIq71<7$rDC`q&H9RN1Xl^s?5`fgqf>q$Mz3;J1dB^zYFDylxJ zVI9d%r%O3GsHsljefdvZlKg`yS2&3UjLSvA`v^*CZHup3X>-6uzY(eQsa7;b)j>k*DWqJ0Ne4nO#(&Y&pfxJt2sG@<>xy7eK;v>6@@c^WD-Wsk z*kgrvKG3Kyd7f+8_Znx{^dL^1OqDfczeA}cLP}teFaDL)^nNw)^+Qrt@{L;=Z&y

    `drR-Qjz7jS^V#w97_@o`88a@$=YQ(>!D8A98Pa`pl8Dk^=qo6!O`-c`r z7zNd6;h(}g(0GG;r_i`S|FyBYu#cH98YLzi)~HMM`XW`uGzSpYPJ|np(NxTMs~W8E zz9a3{s#*6bTGFtrK&R_{3E^wBY^+Xd@RC%qwUeG4_fRc_+Ji=NmHCuF)R(U22WQ=r z`r#wBl=8ZKxIZjL#BZEtwZ-c_t_f5pf)|`?Hw!Pe$AA=88p@lTN{jLugnrlklvIcN}nolPU3xIk-7#kIz{b&i6k0StVV)ZNnIr0j7uKx0Yf*fP(g5a zLtVemN=9L;O#~XW1%r#pFW20Wh4pTV9ug&G!XgZ~|64uY_A2k|Y6<9Qau2Dip0+=H z(N?^yn#cX?lhkJh#dzRbxx_a`P5pov6Dprjw#9a0P1vKAW%eN_RM2qgoe$+Pp-oay zD5ySICRq28*6L{Ll(RcHF9SJ2pPh`nD7L34>culnLUDOX8o6Gss%b|PG@+v4i2S097h`X!RTTwS%J8z8qmhr$@*DTiyMBNC^krv1j>Z#E&G8Id} z?@QxKfS8YLqE=8<&j*eg>)wa3+;6i$}(7Ti?Ii+3)hJGvf>?dq@cidsbbW)h7lw;WRW_1 zfhErRMAioTABFn0?Pc1nD*HmRMK`V4r_Vf1jYsnRhkry-d#J2+5b5yXi7k5glY(3p zg-@IhGgBpB2A~=&a$J(LTrml=p}}=0c5%I|c8YF%|KaU*XCy%db&rJRGt@Q-`WZ^Z z@H5T82+AS(+^ej?RG$O&A1er;(FTb>slz@*YjZ8BhgU;$sV9aj(?S$i2oZ~KykSwV zrW9lcv3t?6U8pjVHAgxVnvvx}!$!`?MsgMK)Ha?Sjbb?Fkh%N^aLZAV2OmOBt*VQ- zUrLIN1|V-T1lVa|v=)3uL`n>f*dPwcuU@uwB0aZX>yJA{hV!^m45zHl>Cdd%u4hHl z%~KZp-O$n}pniY`m{ovX!JA7iyHtH;%1t>-T&pV%cp`2dJ1c;7{GBT5R1HB96IXeS zI0kR^3E4Rp#_4fz1`*YO%q`QHSvH~_`uMx>jpcp`S+7t_!u89}dSz!VuwyJPx%(9` zBGF;5(m4j}8(NNXA5uZfP@|t#u5&QztYsPsnpQ##QvEl_S+&lW{)K)zIV4~4tO1PG zzLkyf!)J85T%N~aSr@&7m6wu#oPyIbRcH>6QTtU>Fx|;~hsVLL_R>K!4*lBQ&amhE ztT3jmxhGj+HaKMDn@cYj1g5pEAtNe{@qS)C&##F1rbO$xz^)RwXy~d6K7ww39Lh}K z7_w3vIcFNNK#jBV@d4??Jt~?>;$H&8%cXEjQ~tMf z+tRG0U3UDnQ_#j~a$2-9uj1qhqoJ8yCbd8EoyF(qiR#+6E?amr(_&2wO+cHXPbJ?` zq_N{F^M6z29)58ihHd|}RehyK!*Zh5=`Ox5Txm2vaKzPgYO_K(juT?2mDot$g9;

    $RG^`sgZWmmSs0 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

    P1mjZ!j5n-=;<4~eDc%lat8ZW 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%0DK z=Wa+c>Z$&we8mclYYnOME2}1R_pxB`L6W27tbK)VFI>-0w z)MA)IA)*37h6T3OQGA#7sz5vr&ejL8GIC}HUb?J|_Wo<`lkx&v2oDnz)X3ypOR=MrH^hS22ome~N-fCu8wZ4<%p}2?D z_WSIf*5(aLM!F9gX4S*B=H8ZeE3zL%)PdzYbav51j(7xx*Uy1Sm{(?R5Qi7hQEjF- z#37i;;Bu}PD5h#0q#=I=>M0mhTD0w8fwlV6`T=$U#J}|m+WK3))*Zl^o4S<%%kJD? zV!!!QnFgFvy*b19z`LxRV)~BhShxuGXVu9LB*4X*0-3=c?U7R}PHl907L)Xq>ruC8 zlTdOJbCTZohIFT|2ja=fJX%xjI*DhhN6@lOi;}!U8$O__2k(GmUNp0Q{>gPkoF<}D zWJZHi2fD8qND)9AJrKFFY3sYv&;QJB28Ii9;NAX4icE*};v5GKAF)lmk%h)QYY%&> zh4VRv2kc%T6`Ghj;x2Oi^Rs0HbHd213K=um_Za9|5guu5OSZECTHNtjMXfoWt$zjB z!t6mOtb|BDKSMY9UBj*7x~MshNY1FkQWUdsuqTwZ?{VZUZRq~L{4ia!IY};!z^8T8 zq!0;0VmF1pbE15M*w=xjkJQhB)?>1M0GYa7-46-_>D%L}sp7f2rO0j-Km2o~VRb4z`#EW->7_H0 z99F)Fuv+DM5)&~IYbG8`$*BsZ)-I@tI%F(0C@^MLXHkZGG>-Wz$$(H$6;CFmOTiDvI%!=aW+F9K-3=O zC8vF0&620`MKtQ!H{wcQ5RdsN%!_X7nXGpe5aF-L*W4)W<_^6_U8+Xm~^@g+p9l6+n!^uDxq z&Dy0>C1CF}`bm#DzyYM?U}LDIv{pUJFchNv5J!!ZRpw#v?Op2&gKo&j{fV?-v$b$} zlSWEb-6e@J+w-_AoabdZ9oCOtK21HH$9qbGPP>=nq|+rU8fy)QHxEWWSY`RoB8CW) z{m!>GGcJSEEB4?i^5mPT=|9Bk$P=dox}O-xqWDZhRexvjsYd-(%x3PzER zJBdOJ-e}I3`Wo20TXe8p#Hd64?Y?>P%|88E-El&*3nZ^<{ASp*Za7v3-J zAaZ#+jhH3qVhz!B1xtWpS?Zo0G5+yjG?HT~*AhhHEV0K3=IpC) z6_lv(7}31b(CipX(*I=GKxO?qF5jceLZ97hcXMuaS^=ufS`pa=B0}Ck(J_u4+zikn z0HgQ zvXwBKoUto?YLZ#a%;mZlm^!_jT73i606@3)=;vh(23Fr4qY?R*Lt)8DyovF3-wpLKyZ#ASdx!HMxpW^N0TXD|vkiOXBiu#1YlV0rI7X$I z8R0~^&?P(HszYj*`g+AG1$tq25__sm$GOS5)1IyS z8}0DxK5+J3n^%W|;vlHxcrK12%cx9Vo`NY(%+)m0O|h&?W689+o}gt+>)VKs_d&Lh z0VZTdj99g$#=nA>oj6CC-$XnE1Kki@3GdMFl3{UR4(W7W6WP9nG(_T6H?br;yr(v< zc;r%2aWC}@(X)09d}rX9hAOg&n+VISekM0YI{U;_-MvqovNfsU(MEG0CH4)!JP5{H z3|ssG9B-s{x0nO%rL1|6m(VsBO4lnm*mbGOUO)E=CwdbjMbEv$vd>Br`kT2HN4l?y zZG#w4NPW)?BYOBHgAq%R)l1(Tmv*fnIs18*cAaI$*sP@h(#2@0cl+MIRz1;KG;FDe zxxMMxS(|r=C}!}=WSmP_nl1$M4&m0Fcm zHkVx0RruG%-oLFL<*!UwG*0^K#&_>4j+4)0_DD5*2%0pv)qhf|RyFB&mYOz9ui5ntuIcNHzhoj0~Pa;O&{0vh(^O}0Z@Io zW!3}EhHcpo!=Isrv|?BaO&rwvrPcJ7{kybmOJ7f>8#ZBTGUnI$^c~3`wOQ)j1Ogin zZOrIN(KNzrp2L=AF`VTBsv&M%`CRL#&}d>;0(?tXJ;s9>ksyVQ3E7ykbgkDb9;QyX z)c6;JX@W_ZzeSQQB%Mp3K5;Q~eOO;`+&}2FcW7@65#~8>OmFE^JNTY94sD z>4E3OmgIx#s(3N0cRa26sQJ)-t=agL$&2-IjSvpmi5-Y}lcw6l>`F(mQ6P9@G-VHK zyJ%N+xjE4<6)`op+2c`q5NYAsLoB*8Y>y@VK4cUNkjmZu5UOP}lTLbK_s5lqjlQ=bcZU-@C%uv+ZwwGJYyz!U{KLXv9~28-;`z~W2` zy@r94UJ(L`*#fKzQUs8Fv@o0G0(D8qG9rC^cosi5S|t}z&oOmA^w?qTP}XX+kUQ2q zm&QtPgi$S|BSDlUDIB5Stt`QX!Obu_3v_2?qRWD61>k$a)>6hkbiPIIBZv<13Bvsu#Ibbro4`I%)uV@MXETN45;kcXHp@zq)K-ZX?l zES2YGcR<&XA<pWW__z|-+BRDkw63c2kx<_^eLw^)b zU#AATE~^-a-bHqZhmTLbnCS?j9y_o8HP7jZw(5PNDCquGpQW$aut|Thmog|Ii*Lx6 zRSqKh>)8w6t)nhBSXYsr|K%;bp5_$9c$rkYy|t5_AukRWZ)d{yR|ks@CGS55Uo42t zhATuQ35a`idtEbo8~lCG@!pmT7`Y6|OHFxx519{M`!w)t_jSHa>_)vO;mh6HOSt6& zqMmNlt!Qrjg`@0&-18qxz+{7unvgDia!zLsKCL7d8mFAO-%KT8!(Y5IU7YSR{P4`x z0vYSAJenH!so1y8cWY(|4LSF2Gu#SJ(htisn()sk=2EY3wCs(QJ#+yZXy{@Pr&yJLD-wz>?asg+^U zT`23`IpuhfWw~J3G$2MI2G2nN)6Yx)ZH6%*3BM1!4nI=U#xVU~mNR36HV%D8JWq5o zHWnS6)fx1 zOV){L;Jx?z4V@fa&3T9M;?!{ebsL=35@^pSk`v{hanA^*K8d+mNS z_#gCMvpnbUBFA_sJs9`uyNW5caK3|=Gd8PutU-w(e7tAldazr?sDF-fjiuxSX0wEI zDgsFyTf7>c6Xx$uF88jui!UMQ(dqxbSB0gps=l;-2gc6*AHXNQbKJ(qhRgtS6vu5R z=l*ox#q62-;}_9p7GX$*$;@n4QdaD2VPriBakDJVjXl@XGtR3>Uka*b$s?pm{uf=J#cPSKiin{~|PKy^W-cqEv6nm4NbMC$0AK!w< z=9!s2v-fXn)=HA7G3K|qT?w%p>ARfb(u6DOI4ZRU0)iQWs71@gM>gcQyE2ZyfAbNG znZUHw`fUMqMzvpEifvK?reoX{!{xWWzX0OxaxHp`dF<9N;v~1^a{uwN$x!n057@EDal9Az#t@5X zcS8u?0~ay(btY7!>bZj((-S?LN_AIAyCdbY6|;X`5^P$l3&Iyvncy#b8W>D}>!V{o zHXyhuoAyG)+5Z7Xr%>S+S7GXKrF#MVEryw~zJYGw*K^5ScZZ6F+Z%ej9ZH^s73py+ zbebkOd>H}SWQf?Odp!RQ6v##1)AW?Xv!hR!q~w=1?q9XBbg;%V7}0Ut{LL>eYahFy zd6j?u3*c(^c~nQsBkIes%;3h-uD8pqCU}1@-o(k+2?_2)_PJ}8YU4QTUdOE=3{yMD=1~558Ez3jg2%e5#GuYjz0fG;VmSY9O2dx}`VO=@az!9$wVzIcp z)SZKwy0erFCpC)k=s`q@b8B?QmaXUOg8*BlN#sARZE{l*qG7F~wM|_=_!zY%8P65e zj+w?%(7xFBw>Z&G(M(}K`M_tyvTTDV1ipR&(4BqCjuzQuqt|lg@uhY-((ja!Q*CO> zYap|>Ym}*5q&l#LWRRA6HIWV`SAPqL)#h;>F*Vxaj_^%LD6VhL@s^Y;QxHxeNOOxHPuvbaM`y+peirBV`$-dvEzc#O}IdzA6k^GymI-N zIa*%2^^qz+vkiwpIU_$KHNhc#)kbmzqWzpYq$I(*^<)#CXBM^(@+ zqucRaT(`l6!?OUK;(eFn*RQ7(66YU2Iu6TQYTide3sHF2S*rVma?Y4+i)}EI?uavH z!-nfB8T-+haQAYvAl5ogNSdg1oFf}%;k?>0wuQ1ww|HVAMJh<@nd?s;1Iq=vSvOQC zJL#*r*q?jtlDq6b{*h<$(X!~BRtMRalJ84@5n{G*m)q9vpNT3=hEke&0^%Y{u1PUJ zz)QXq4#)C0wSj(GK<-UO@C$o68(qxZ%0Ia##L7R!<|rIFRbMJ{dRS03GoVK2-s6x` zP|cP6?RuX?HMIUt`$ulD;srqU0#IaP+GO}yy|j3g8iWh%VR+zqPe8wBb2I*t zxna_KXiZnwDb%RE?lgNFj$X2M=|J>Wo<{X-Kun(yXUridi6d+ERdcnEYH_=xc8qF- z+NyzDOhO~AC#f^cU|>FF);7(GE7^H-Tf(khLaj8jgrM5H`=_DNKkbsU?&3sE4dfrw z*~zzEBfY@m?WA9%cxlh|{}5udWv9gD1qXyB=bP9)f2w6B1J*~uI>TGq1uA|Tsl4Vp zN14}p0dSY8P8arBxjYE!OlAM{WW7yhJ-a7fi?)KeV)d!^;hc-Z@?aG&b=N-?g*4~b z*$ctuhPLkSO&h)T+r;r15!~y24aYOLly{i(=u+nq+OyfG#fEK>3~m3B$LseDJr#f! zNAz7<4hDs+x#j8|(};_4c!T<7Iw)?*v*&_cVwe4=&&2w*Pcp}I3XWigFiI#AgtlA8 zNaP~mjZSrs7~?7e@8n6@&nF1DtlTLayqmt$GWK5`>a>i^!(qc=W0T5_GRNtlp6Q#V zpq$sI=x?`dEre&WN_?m=E{XCTNN4Cl6{K8rLhlp}P5&kS1i|c+2`Vzu$CP~8t2qzq zv#$c&gb^T`-L#Qa%g`PzoLC3cUU8KW5BwPjcoU_!6+EHp!-nVsFPmxA;ES7gATxr(}`R znn8U#ioezln^S!Fey(x;N=`2uhYAf009K%IM_y72~%{hU!ic9Tun=0IU+aQH?4VP6W*n0l_+(0yd*dz|tv z#G`ieL5Y072?^k_}~M-nwF z_#y91(u zlghwB=%+Guq_D3x>*~q25R)U=(w$u%pAC4160AGxw-SvrRaO2*1$vDleEdC#wKT48 zTxCx>(nwrnS#aK^3Mya|OnP~Y85+rsIXpE%LM$D5apT8#kVw-By-~Cp=#BXdA@Lj+ zpfYkXT9g53z*jHtQ}N?F|4m>=&$!VTD-;QyWHf{t@fxVnVCzWTMPuYH70xmH3UgJA zT90x;(TF7nk@RcSB~h=r*G|>L_copvlA_iwzlo77#y&U;6>{9)Q<2B+nBekYg1ZF- zSMs}m5J~nUoX$?jtqIy--ZiH(3Jt>CA)b(xn*2H*i(Tmn7ak$%j}MaiBDYyTMFQ^p zknaw@3*Op~YqHJv3H3SJ2yf#Ya?zY5I0*I|L0GHtkzEKsV~R@DZ%_V_${p%k)=g7N z8LGf%9Vd+XPAnPYs@>9 zfJlRtmkR>D23UpWU^kRlae&yfOmdLB*iHEznu~zC;!H<-_6~%ln(-=T+oedIK}Sa( z58sydZDBZ@Vomic6wbQ4;%kJwEJ$p{y#_GzsKu# zSIG7M9=87+P0*`EZ;+L#|DTEA>&2`WK5}q=*)!y>w+`#b3uePplhc&>pv+ksX`9qYU zCQ94Yh;Q`AfOhWrpH*iI7w}GKxEtf6#6cH_ zX_n@()0L>}M-}a&v7=chwCj<`&O^A}tDsYH|)O%G-bgU8Uu$^UQTKRy4q5&hrB74JLi ztTm4Qe+adiI(0n?OrB(!elQ67j}p1{%|ye{@qgrtn;*QsDcRl})~9|unKz+tU#l)( zT@^pnaW@R&TO#QHl^eOHK8TvTtv82CCFz%3&&q1L&p+i8n##X0%6M8cTlqZGOb+Km0oho>KO^ya@_#UuZXO{ht$$f~BA>LX9#k2jG zI5M(MD#)IxoNWa+E7kmZ0njg)8_Rk2PLHQ9y1H5|U)`_-)fJC^<-%j3cXoG}vl#r% z3Jeym%k%ACom19yb{e}70Or}dG_EJ1MiN1KT$*wG76k_LH0a(~9}ND}qYc^v?gtwU zj?B?&PrQ!rq$9^JQ`LT7j(ZM0!Ocy45-o4$s$s~fCk$-T~sg^C@c}}m1d8ZmgKSVlUTa&&E2qv`6 zU{pNi%gt@-KwNiR zU*9c(GOHDkIhLL{jl8ftlXK?zFLp~vL_J@7A?O zHc7qrTaiE%qyhAz=+m&}8x{0$LlX*tlcvlZ!#kTNnZriNJAH5P@ezjd2ej8&>e<0b z1YA_1u$5#w?Zj(ITA-HWJ7dWq+c{|(4*E$f{PkiYka=`6ZJa&cNw|i%Y>9mZ>{*D_ zaj6kt{h|_H`e2g;oD-co!$J-gHQQ4VW}I%8q}FK8#%EYY{6&%x9XUrm(nO5|k1B7a z)h38S^sZuB6$W1tZ=gB zEUZoiPO>Q!R6oy;=sul_;BmxxwGjAWvYpmal!1Lo)t*pTXQbb7K=gPtPP|@pm!s?$ ziw`xUMA-q_pW=T^z%pzFYvOH<4YbFqq>iZ8TV($;)IndiDKHL35N?;~Lv!NK1wlr9 zvWT(^PKO0la-SN%3f1a!Y@`>9Dy! z&YZ>HFBbj|`npJatqo0`xno?;^)(DC1JC(K(fLqC3%|+uyP{r`gGM8lDZ_UJu; z1Mn#Ey`21FIAL#*h66RUCPkMftk=WU{kk@&QWHXCvwgo4CXAH{jis~a8>mt~{!#4) zRrH$pJ7~%eVzY_0)Zq}~G*NGcP z!N+YbdM~|i!!;XcHA;>Fm8pdLAadlsdRDRHEIQSB4WTx4k6s)tn8wJ7Xf2tk1QaD! z+)wt+q11R}7RRN_tTmZ9HNQ*@pfW7uXo=vwHJ>P@JD+S+MMxVV@6zEU-19EA0M+3e zl4z|@8-Ifv*hBHToxf2gftI3$V$Zpa7eL zEZP`1F*Ula+82NgF`EAp4n3yJ7Xe`CURdQKv8byRw<0Uy4q;2ioGkAxdOb zEIa!)4`T#o^v8X4$)F^EavT$w*DH1F^ee}NGagKawR`Pxf-;{(NSuC5_&GCheVu;~ zw{O%<(vHvcDgHezhfslV+?fRele=K$gtcxV5@Y#Yn_o5knp{VjExPq6EhUq0E_qBb zPL{{?h#YI{cc;h1IGZZ-$>?&dHV^VqYO#}omP-r!IIsR(7Z08|VTnX;r(*`MJ0?PrI5ngmpPuIiE$dBh@`ZJe#55vKi?^`(K zo2wl@Tr4`%xhhl!ve!PH!`q_d`z7wvo_u+Ee1WjqM{9cMpy9dt+BpN{DZCAX@!?&( z$!>xHsk=cFi=-&uWMO!vkbUJ3N>U>3u!3Fd1B9XV^NH~JZ{~USGwCH~A`@A#Z+wcS z~gp0ZMS__bv!$AE#0e7$yv;YILW(ZTBh z+UDIpNAf5DX$vNGz8dLAZ~fzL8nqTA)G*}Sm;dkJHP>?fJ7?(Nza7b)ucG=f+y2Oy zelQB6ZWyZTONIne-xVFtpfk=GJyF+(eTNVccmXIn7PtSAF(G-K{Y^2coPVz339(E2 z1yHI7Y`BWuGW`Q~Yk0Eg(0gtjrUbhqof}I%>JhyF@JA%TX8-5kJ?UKk)w!|d|GfO$ z^||#l={e(N7$A)WfPsUBMMOYBhJ}HL`}=L#u-G`%+){8fJeub2xKz?_8nN)Wcs)Wv zv)iI9&dtK-QvdxP91IEA7r<5ti@L@;;d;m114903PvdXU)8GLi zS7+oDhq>n?OGYyTSaz4L*7z8U5UUuV$&J#ziZ4F=G>yuTx{jwtUDYuu9dD<;K2xls zqOEA>;KDOgbfa}y<_mdpvIr?ihoOhzC8{uIVZc-F3rITylf~!{S7xUc-Ly06JF*ER z_szw`W<1z0J2uz{C^N9?om80DmkT66PB1zL*lpMMwn*^Ati4?oa;!=yT>)f}%D`5@ zbh-$rIj_ai)_p>lkMAUyn6r?!1MyA8FF8=1>-_1zjg5AI9inqaLt=R{e&1Oc^(ksU z!s@dxo~e(*LoS>)6&nH8XAdFdXjWSf7f}2RHX4$&XKSmQ8bLbZu|^BlXD>#P-!v!b zv-WD+9+5>6PFwjWJ!{NiT7FE?@?fEpFF4r@TH4YA%%e*{=&idZR$|pwzRwREE%*sn z_+55cLqfX)T%+(2#)LBmSVWp41F|sPwB&hZ(t!LDQ@I$>vDRs zTc+eWYeEOm2sU6og61SMJKarE(VWE@EJ@v+mN@CD5C&`i2C#z%OM+X_#G&j94?iE4 z%$co$CgYNS%*}KrsV2k>dmjmC;TK*;ODzDw@NJdCfYEO`&eXY3qq}B*e{ER7%3sI+ z+*F+mw=GDt%GBo49zWx&0CFEIT3H+yGwwuJoGSVy#P)*@evNKBM%pTV!m)C2Y!@WE zMt5eF5f{CgYoBPhmKu|i8n|h0v6ELr_5zqmsPG7rS}(BI|Asx;ctTje~g*hBR}j5rjth{^7A$Ad1Ne(j&QXX zx2&8DzQ;HGkF^m$J6JJQgcMM&@XdR1oOm{~=iPhmg*mR+uj-BhKY@KS|LEQsK&~lY zGJ0Lpg-UW1!s4aBGr7y|Xw_>HMG{SrnG5YG2hC35$tt_R(|9u9f?YGP=>-LfwHjhK zi#hT_9o&I^bI`jDX0Sxk1M&|RUj5>U5YoY~xroU?2WN8EYWFn?w19R7se@cDTD+~# z7yoJ$^z?S_Caa}0^3)jl?c9#^EvLse+N!aC{+~zGAN!jfLJfBHuhoviV{ekQaxp!8 z?IQc!jlLob;V%7&z-U0_M->HbVjY)bvz9w}%af39(t6w&T$q-BO?_hEoU{1vG;8rh zz&Y#igxIjw8oW|-GkxE%_A2+O@}EolV({9pe&=h`_CF14g}F~if!}`iAM`7|0Qmp- z%N^SjHkTT=#JvC-J^gPs`!&DQ|Ea&{{N_6z+c7TBuBkht zeF6+fSzB6>{Ds<am0yRO za>6brUh4(GK{n&ft!!72{sNf%z()=ogxo&zV|k0B6xU^x4(aeO98)n`+jA|Pt9gqe zqpYY8X(1f^Heo@uh9l{?rvTP8y54DUO+&W^6ht7U^q<`wMj#pFz>UtB=hrNK-q#Q> z9I}O5ed}^PS1yXxLH+SM2P6P+(>wq5ByFEttam5>1@Z3viSTDxhRAA4AGTW! z3u7;R>obtL!DM6ld}*=MCI05qrZv|n6}_nZnAYSa!qg7(_EAUW4i!pI6D2PI$|0Mr zgPx6}GN5}{6egP75S~>FEta(sWOj<&>bgp-(re2d+ysz;9(P;sSP)Nt}!JL$+wxT}+Br6P4wh+)Av;{qeqgJ`WqE4(t^V<%DK)dN4rM@Hx{} zxISF5OZ!LXTcCZVX!ATrdNfdpjt@^iq4T5tVe;Kti*{sptmd2?#{qR8Qk#v!oy2vR?;cf!4m! z^PEukcTl;ISz~)W-ZG%jb%EjV_80K|YT*J(#;^n&d1dT#WtfWKU->_l15C20y?9*c z1?`h~nn{xhMQ1ntTlLYu<@I`1?SW*F04>JYbWj;UKt+jFP12$y2Z?W2hSn?iUjP*Q z_9m>_(Czv6bY8#ilcWz+F0IZ`POjMATf9(DeP-?e+V7yZ0rWqXs6@X2SX&4zJ(^Oh zSjuX4_ZBs(d8$|%7_yM$(P$S6?4bxN+Op;wsb^g8h%`g;U9Vn^W4*h!-23Q8j~y2D?_E8X<^Xz6;xR5f+c=Lhg|wO= zs%_Sr+JGKCC>Iik*|r5QotYA7rHLZnQ`82gDSp83>_h&QDLg(MP0im?pAyU0zg#VD zJ9KJg?XUYw8J1M2u!m3|a}ElA;ZwcJy=?DliYr%3UZ#;MqH~D0jgE`O%VhV7iTD`Gj<=sM7vdYbomdsdiDT%JpQ1r^lnlK*dr^=zS{LA};iaRN@#z0KUouRSh|esW z(@FYS`d!x{N#8dJ!fWpSpbnNH86aU{(~eOS6z!2DWGJn9BxTX_h(%3bC=88X%Y&58 zb*iOvB>hpA3d1ggXbyD~=BaIwgCU04o&+m~5W?y~D=Ck4j)H3a-Dj;lLN$lFxRXHT z3bG$Fa8!tO;7T7uYJ`;aCJyIW@aUL35^Q%DcPz3QK$FlxC`=@8@Vl~*&=#JdUQ=^~ zJHi_oGlQCp8LyA5)TKmh?XRTCEkwoi@(u}=^KV%fEXMP+o;7>pr;2@4+;PNLU}kAr}hiLYU3mCh;F5jx{|4wGRXJ6k1ne9tCPe*9oDU%RbBi@!htiP}(8P#DF2h zvSkU`2XAEG=D7f9H4zuCiC1~wa?}L&tex%+-O;Kjcf|}Q(5ypZ}5T=?*|PO zATEWTnMeh0@|BK$;&k&{Cy0@_^(zUDV%#8JeO%nEnHiIw1m{^sCMWD+{7XC+z=C#J#z=RdYsJZgDKxI~Vf0niYh$f1Ajep_N zSn)%X_NC`&ZubQVrfs2;(dT*n|n zkYh%;jyjtNen5_Dt0l@i5y5U+f4Dr1`@$Z5c`M&0285)IxrgQEJ>%xy`2s+bw_yPb zx2!|D8tR7r*-`t-XP|a*!9A}J7L$S>45~}M(y9d-XF*mpCPb{pT@`c7K~01~{@tS* zF5C&icVKAjI{aua-`f?7L`%A3b3#EdFbk}8#Jhj%OPY4;P-~O{Q-C?i)|F z^hU^PG=E+GxW(mg-)V^&N@UIzYR5NzAMq>Jo9#jX4raZjOEW59hJL&hW`Ge3iLzsQ zeEePWH`VYBiM^6g_NL7gt>CU4Jfx>ru2o}_9 zzhWjnm+7bxT8fIZM#!?R4?pLL+8uiMZm~vfttcxN#tQ-2&&kP#`Ck3 zZe)|Ls(1sxJz8j^=(Izb=k@+>`0kHp!jf8EMwjMsAuDe>xq8NzQc9|kpIZ$3E`_w0 z50U!59h?IGhsjJP~IVF2|yQZFOQ!eLl7?A4l^&eu&SQEXJ`I=P=Z7AlObm|5y2$~7*$6xgn9Ba z*HEZNB6FKIp*~8;sc_O<=-nOO7C%;O?raAiM|GC9oHP5QMV?~Zn zWPCco!YN#dyB}YRa1{bkm%v_Da-A>C1yv?B86^`sd^>TaLOZzS>iiHWBe*yuyXM+_ z*#~hi8t>$+rjKe1GLTduT2+8!q9e;XeNHA@l}6`v96Z__r$2UC{Sbazk~(`rh>!p= zhq7Gl6s!>9g)ntKe(WdH&N%0%XHtJw|R#-#nJy!nL^odJ5=&h3d6lwInqS8L1;meEBHg0#t$0yd`47(2Fc?BPyXU!Z=(e z$%2e?*sS?f`XGpX{>H|);cmDXzItt^@7r*-xa-i_>WMn|FN(^wR2_D7FKUtYbPUd@ zgVc4gL*5U@!FXU1$?Mnc(jDtK|6OGBUz_;K@n1i)9C`2dm$@k=d!fBhVs<+@0^{aD z0Zlc`CQth%A*%U*nVSLp;(6z+$Jhil-q5%a!kcM15b2sQP!tIaA&6T{;t2{i9)xJc z##XokL+L>tOZLC(JpG>GYjW!VU2Ik8S^8W*SP(utPc9rlJQXaOq)x}!FoEq$TTB=D~`8x|H zB7}ES^}@7p%R2s((vVqb0WW|^0=rIRbO^FHd4MDMYJWYE|Mw5;FM!kOG;d&>pt~k_ zFZvQrK`ckkx**dFK*FwavFo3x(rM<$F;jggP$11=WU*g-Qp(~VTuccwPu@lGb25{wss zM-ANSRu=}%q1MO!cOJ7-S?HQQ==-=fl=zUz)uZjdA_%qqhe_sXfxlBjqRaLE6F4sb z(Kg7Jv{$S8!fB=;Q0H}%Q#odmf8wmHB2FWT@h5>1&xZuPj}t%n;>x5>&w(JY4~h_Y z!Hi2yl&7zv2IaF=B3b~Dc~E?r>4S)io;}iE)2n$DbQd)60$4ztNU*Wd_MdYqz@)D4 z+=)P8#6%+|oe}AQ6&X;QS5>XVEwK+5T@-1^gF!9S%Q4a^U;gsm?O$Fgf80gzc}ozz zx?G`Tc2E$C06_vleXE;?jM9xOEv0|n2If|V;z#9js0*r3THH^3olnG(P9@&E6KB&h zt;hRrGtS$jL;8>_Bi%=PB?P1`=dEubVaOuszgipKUheQsCtb>Jv!LPaR`K)4|A4RI z*5z2dT=$R>MT%NuPxn{kaCZiOwS^YH#|k1-*VqEi*b2;rKfcC49lF>Mec!=!SF7O_ zPzJ;@vZb|F<$ZDpRnU)ZVD2hv*~0FZCV#hC059qmkG&Mzz)~ZWpTW{wq#K<3AI4@y ztf;d=){M@w_OLDjk$(XZqKcl0m$&lQF_|r#KG}zF(%8%*8Owe z9NyXdr==#W3OPh2b#SB=q+E9mP@@f)&;9tt(Jm``8>*!Z@P) zoNKlkt8Zx@nyUK z+|0-Q(p^@Q+hqg~@_ZE@VhMapp?Lkf2#Vi$$7Gtzbf;bMpZ^C@kv;!c(~Wj2l&gk> zuj0X&LR8+Xp3FH#pSco6h&zE!SuP6X=o=REAihz4wfv|CnL@r3^Rjg;mu9~r+Vbl4 zbVrPRxRhyLgv=}!-DDG?1%=Y;y_>(#YDp9%(*+vRn2j*c9X!l`W;fMZjI60M#-k(= z9C>{$nA*RKQ-xFQ8e5}WdENg?Q4?Ibqt&>nA?Q`V6zg)zg2?KbIG1NXR4c>~Ey8h& zZ%?-kLeuJxWy?(t;>w>W)5*~~g859E0xo(1Fj*o!b$wSB1neI=wo2ebgW{rNEmbu3 z%dpQP-ING=wHz4`q01wrJA``R%40`^$wrjc6f+^Pt`>i5{3L1$a~amEYCrs2Do^sb zyenJ#&-iDc*K+ZO2{q`G#9NjwD}k=s5H-E2804V$eMibEvz$ z(&O< ztX+sL9R)9lL#6`m_Xv2Z~g~O)=;-v5iJHA?ODDLR|}B0XaP&f;{MlD z(J;?aLTixz5Kv6RI;{E+O6N|v!YX9D?7(LhpC6cL0{LIA$N^uFV_?+!c6G`355AhP z%n5B+d7{bj6&(H<^hm$7nDwT_U5sR3sz-eVal%QxYN!2Fc}zGp|5%9c5*|c92dz-@ zg%}(%U3UuH%Y9@#xVa1Q9XoA{^U{dw$v>iuRNEXDBdwSJgG<%wCd^P8iHyF6SURL! zpP*kQuQ)RxBqDwiXjUVPsSV4k_>Bu~Vh2F87#)h{?OQRElKgpRYf>^@LrJGiwC8c5 z^610rc6x0JF>TvhkvgF9H|V@AKuKq_#DRDXtSx8e9&XKZaedWjTsZm-8mH*e)}@Gp zkv65e9#(dhvzErO(805%r_y}w-P z-;Xd%z}KhLoIndX{Yl$pYvNFGa_bl%Nmj~r);q{qq2n9rj6*j73^gm!MoSLqh)RUx-J z0AEOTy6Q9rHQcZy^fW?3v09@neh5Wj^?)8NUk0an|4hE&_hl09;|jyq<|2TA_`U1M~-*Hxc=-#05@9v7N@?9Zov>jsO8q_v^RV~1@j zT;!x_2SUOmPd8&;D9f;Zs7=@}$tW(~^eX!B05_k%w%SxXFMZr-Qg2Js!? zX3-yfF%dS@<6zk4HT%N+ZD~SlYOACM)rhkmE4U=ir}rqv^gO1ir9PvN70PYr{X~kK zB`-2%>IxzR`ri$AZUG$!D!ppvvO3yD!t!J zsppjD|mUIihw8)eH{p`Q$)#~x?owF`&Q_sp|1v3P?KAvI0let{$ z-C#k6Q-~9ZSnduZZ8nsu8{nADOP{ap(uI!msDjoGlvaK>2zVS$%yra_V&#bw=WEqF zjEj9igQO0nj(W(iiFO1a{L^{?sH$a@dDUqjN_773LWRBdb!w)84N9H1sEZ@}y1USf zBi|C`U%Q}q6ZQ^Y`p~cnN)58gXA*J?QP%1FE{_%<$dwjPeI*(sFn2oV3QbbYSE^x8 zQv`r`nO(EJ!i|AxhW}NyO-IjGpsVyhobcS($pZ;m@$EF0ZKB*KO#br!0&42;`{dg> z$o&GCbF|6t8f`+JkGq)#bRoP#;K02b@AFnVwE9`NrYMQE6;%7t-@})&dx>@p~r;!{< z+>wtRjw_e2V|0w?Q)%BUQ}IVw=;+U{$T}FoBlb4xSOSewNQ$|bFoI0Vw8Q^>aQ=0| zQcB`Rnjzq1rsZ?(lj0Q)g!5nzSswVUwz{|`H-{mFG1dlWiOHP(Y-K`qx)o<#d3dMDCB0`+EQXxj_4!*gZS0&OUx?FS&1Ug>>G8bnc~`4lYkR=+{!X zG_C%c`((qp&L6zTxqxHRLlYJ_;nE!kf)!nCZ zU2tJq|2y?*2-3=N&$(U*32s{2Oez={*AsKWb_HQO99nJgW;yoW2e|AOfA!DDX0l6m zMFgHy{^|hy1truH!Q<`3jb2kH$J@Nry-p4l$cfWBfOQ3J1#KDfw}O^z9JU2}qleWy znQct%VXVj1897MU)DhAl9k8(zrIFV}(oP9~vewS@YY>rbU-uoAleABwJ?Y4m`%Z6h zcT>Ca25as?v(rv@Q)A5AmA5MfZF=6Xrh1!tD`f~4K3GF;YwGsLNZT|fG$zWv9L1;! zI+gFx!$hjMkB-eZbLB)=!Em9jOG{*M9j8yp7BQrB%7PpuGWfQRaoMC3lG_PNKzv(T z+&Ce*((6WhKX+F>PFSk#vFQ*#Vjy)+tPRX?z zV>;op(#>VS+$VWVlS1TG<&jBQwKLQoI5laZ)3?aBYB}gOV`nqXnCb5LL?sF4xk`xz zf$VwrLb5lDLIlf|D*Qo1{y{%d2@`%H!}(j~0v(YMN_#G(f5e8t+a&z7v_Z9pKT
    Wq>&?6}_1e%)bNY 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 qTugGaUP6-V$XtXuh~YsZ;d|ZVNwF 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 literal 0 HcmV?d00001 diff --git "a/epub-book/Nghe\314\243\314\202 Thua\314\243\314\202t Tu\314\233 Duy Ra\314\200nh Ma\314\243ch - Rolf Dobelli.epub" "b/epub-book/Nghe\314\243\314\202 Thua\314\243\314\202t Tu\314\233 Duy Ra\314\200nh Ma\314\243ch - Rolf Dobelli.epub" new file mode 100644 index 0000000000000000000000000000000000000000..6cdf89144ec2b99427213dccce81f93fe7f27b1a GIT binary patch literal 1991813 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ΝpE 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 K4NJ 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⋘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
    #gI-Ny6mcF%XrORM-4GX>Uuhe?C@Rv*J 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 yC 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

    |;y7Z-p>N$au4j;IW`i604*sl{LiUs)O6PLd4qQ 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

    3ec3W^F$`JK?hGRCe57a8C@p9}r)-|%-sc_M&4 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%0D+g02C8kmc3YeK&PK6MZj`w)jT~-!1 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�|-3q<8wu0u}r^ty` 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 z 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

    lIfc0ys5-8_ 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

    X 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�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

    #$6ezKT8L6? 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 s#ADk*VmJ(TK97(S5ARdRe% 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%0AU4U-b2}VGu#-_nwF5T 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

    79SzeCZ<9l8yv5UyF|?+4B4@ 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 i7+bmF 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 z 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�{gm|%(AHa0YjF>s4T#05 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
    DoL!OU-{SFAs~PEB$g62O>QV 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

    e<`6P2QB;ObN&J&nh{c%O@)MigLv3NeZu`8s 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%0A~U~{nYD;RacA`SJGc1F`0r?L|*YI*~ZIGmiYT2 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 GjIPaI!2g37wsz6oEQxlz=8@re1Wmae2 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 V=grp(&2yGc8lw9oUQ$s}z$Q+X+1 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

    =ipQ;oFIV&lM%!ud)nD+>C245(Pbp zfH1YSHHA+EgFBp=&7%U^#R1*GUzNfI)%9+b!(PSUbOmsRFO%c%g6E*JaIZK^5mrBc zk5Z{+ccxE2u3=3pO)XTr1DSi!XWGM=2}5+x!FP$s!RKWx;%qB7zEx8`suv-HcLUY) zAO{8u`lqLYl3IYtdm>lWqwb89YwsXXP#p%Zba{J-9y)`Mn*kuvVlDkMol7f5_c%S_ zr_D(Hn5EJ;#}>i}_O}Tw9S;Cm>MCk{fsq$jqq)8knzBi5iT@a#c>OTewM&gCD}#TG z*^aO=tpD;RK%ujZ46cv#JN$xmjoDDVQ)zQ;2+MRDsx)}6U{1r0HbyhLp!>ACVQ_cW zFf=|(ucu%}#wMmnubLe{1o^73uSb8dskW;Ac&Oo`4Xd?Eo6WwoQuf}sfByY(66wWR z`LM?5%J_a(kmYB3R|RfnY5E*gVBM{EvvA(aId`JG_KCfjT2q@JcBd2AEZKa6Li-P-M{xK`hsPO6os+r@g39Bf$QO!xwCMyN7WtYJ-){XH8 z<96q4uN1v*Udl@o%N)*pG?nP~NGbnH{N3zAWMPtb`|1@^f=O4Q#JHAcy+5RS~ySP!crDb+Z~y(e1bPp<*>n)*q(9GkjHSBP4~bfVsb_(0Hmxehuy zYr6-am1XfcL|o2uMXZc-yMw*cHUfgM<`m(ieXjW{rp&$0N3J%0p%)3nFg_?A!;HKh z08qFA09x&v+M~hryzaD-0ZI0a3|+N~*;WTnF4aa}Co#<@$#tTQ@OzGt4d%D?;iGW2 zWRlwvMKX?l|73{{)M}GQQywKxan;-m3|yr^%v7@c8;FeTE?xP{7(>z~BH|j` zO+mGTQIgK?1z-af4?R;Ily)o`-~^4dB!Nu6GCLa}1OTJ}G@H28dF6}o$1sTce?kJvSm``lUiK>tEo45~$9cMUI7G~iyKNbee! zlF}OMSQMbh%~0}C;@FzJccJm(cuf(U&H)|)u2U&-i%UPM25c!8x+C$VXW~GnKQ93s z)JX#xiPulGS$|8ZJtHRHKg;*E-DrqcGli|1mfxuT!=1gs{hwWi@e7=$C)1KA}fsLl}QCtruC6WAr@H*AkGE%p`^{KOg4eQ$yuy?kTPuvYpwCKCg z4@~RNu5Uer@(0-u$~P68ue2B5Tq(sN*j4NX2k?6BXqDFf767$y+In-wiOsQaYCI(~ zDP-ndP<-1IAiTa=Vl!emz3ZtTl`xdi>X(wcEk|mNAr~7r!>nBt%GIGRiSx4AlRcL7o zJ18*(2w!WpNd3TvyE4t}IkpZk9#0p!lyCLf;h=Xy4ee`7p z*wQj_&4s9s0qwma{rN6fpD4OAugf;S-!4og~I$my8;h3+&gcxM;x+vIx^%m7hbVMT<#CdJeM+@iw{-{zvel`(4k#qA>v)d_1L$*=@J4l)y zDbflxUUjV8WU>}pcC8=rfSHh%$373qVLcEA4!$ik^pgf<;wcbkaikIJBt;>pi_K+M zb?TZUB_gNcIekkb>p3RcA6*zqGPaMAzj~V<$AJIkJxSs`wG=n0df<@jxHYAi&e%D4 zr)IcP3FWqg?=EXW{~2bnB0#wuLSf~ zz$D-WZl1vCnjq7$Tz;y=Mx?&QSy+Cy_dc?<20dFnej;*!7@$hY+Vkl=%ubxiyLe~Y z$~}1SQ#pDEDRv))SxTp^z0uYWDi-KiE6l9^#MC1_nWXOnc01tdf2%@rmFTAQ** z>S~j{ESTs9d%xJ2@do06FFSB@K=U>XjZ{1^%{e97k6f*_5!#prR-oOvB(9=W971YP z$tB34TNhb&KU9s8ZBP^!p!!{%w>EqgGx$kQ(nw@Ix_Bx?)9X(o|A(jLkvQ=yLzb6rm% zt>&~=Z9+8b`_m5M^KL^P$75yIzhhq2Pw=-S^3v=4>aCvbWArEu_ZkxEAVr%Voq7J{ zu-15AMPl#+S-iNXJ%L2|1VfGkn7u>UoT!WH@sM>}(BRN$Uyz{)wiV@f$kH=ZLQx#z zi`|X!>1aG^KAzb=k|E05(^lsN*?M)GB_!i6nzOxY4;3%E>B+P9(ow7*;qNOeN2#iw zAK=Zacuu5O1t4RYXx6RFd` zRNjPfRZZJ?RPjer@rM$}TT{9WS0E}LC~cAKYULbleoJ(o;nTm;zRq4$pz)aBwt$e} zLqkd1*Ms-9&-ckT9{}~*#^~Ap3z8f+Td~RKLIk|$e!Jt1-XKGD_sQ`+9Do|eLM|Xze-qooD--+)Z4~t_l-e`i`$T6VXp<# za0T-(Y!(T9YO)n1?PyeI5MRXEy%?3rva@uuJBKlKf}Pl!(;gSC4d(8z9u<~Y!Zhy| z8jAc^I3o>S*tkWhI5?>F*^@@`@kT45c|0Q}#d&k82U%fT!~KLf2l0@a6;yI06wKY% zHoRi@;B;+vL0d6Io;5hJoz;TZyf@5!D!;r%UvFR*oyn5pS?EK|-=a-v^lKOsMAgI7 zM^RFn<1TDLm#A3jn^jZY#1sB&zaz}IIhHGUUd;Jd z8O<8b$x~*TYd+T=nlvER?n7%+AAB=f8;rEj@$NdSKK!W*U5g?T2~397^h#ACY*<;v ztm`r*d8E%PQ|Nw*X-Iy>D;Y5?zY?D zzQCtZdt$uTshFpv`@Q$ZrC(Y+ss-0rU1j@>pdqD|23nP28zey9z*&o09Zdv$FxTuX z-$M~oS{RQXLVKZeEau-S;O}jnL=5%N>>(Uc4mZRw?`@yQ(W6 z(8@Rqc&#kj7$AJJBs}cs!*wg-?bbN0^qktU5t_mtfARsN$&>Q^i%6^5CqJ<{q`=V^ z*I-f(&eDUmNM+gvEtJn`4k&t|d@#P)9WY`g)7W?amFM;vxHPLBWh3;ae2mLo!qlG8 zEq*2XOG7u}mQF$TIbO2Lp*_M(X_f(Soxj(&a(~L(w(E=F$MQBY9QfaGcjID=zZbu? z{3GDb(^tC`)_GrN0x;3&<9slI#PIJ7^LU-rAbtowD^hhpZY6^EB|XA!iqav6eO@Tb zfoZr>s=49;VUrKDgz9Jj`-qxf_EXmje*y8Mrk~)@{RY^cJIrfPRT_ox4c;);%1?sa zK$09g6OW4J;OGxNYRG3=pt)T?NutC}mBOLQa>7dX*8qU1Gzk6+IY10&CE-+E@_s!9H?VQBsw=H0FOpLm80 z1zrz(T&`l3vP^7HfNo%5{1Q@lMtG5#MEdzhd>Aay-E28h|R$n!anh-Yg zB{fN?(&39`M6jZwU5EG{V01-G`mMt0>m|M|c8n)!exn6+BIWs8Dz!~jAeQU}hY(U7 zXA8$3k$b1b3A;~-pps-~xuLTo!^x!0j> zI7b95HOUUmEjb&OmczosD=9lsnxH4T=SW_a2qGbG=P_XIN=THV@j5IEh$2x`h9I3p z6=}E%7XCsX=1eK;n`{x)mRAxLHPyv%4$%_4eEEBP*|Up9^_1qqej zVVDUSKU!E|Dias-QC(8o9^w~Xizc~|8c(?Lc_g&0A(qTPuShLSjH((dWkC@<`Iy-DY>xgLopLP6#kCXg=sY`FEePjjGtDA-s_z`lYZ*0G71ZgFJxRKFk!q7oT;#p-mwp>7 zjc;avO1w$tIcE}>-1OvmPFX9koMDPNhNvkEU!z=$;Tg}PN0&6?U<)<92a4hJmZzk> z@P4oMo!jD;jM^gj^LpkD^4{Q$P z&QeVpij;n;MzyiU+liHsy1L10aj3Hli<=_nyCPGLIOR$U@i-SD9Bc_u4DXnuyp8>h zx^K`a*-en`mHni2c!L%l1s7>a2CaO2mrn})_ow6#?tWB-em@x^%})K7DUu1iN|^0a z&v*^IS?8K7dO|qnAETkc%U zq%Bvz!s_r+4?rh5?4h3k%?%{G`?*|kO8H}V*QFy^7*?`p=&?(anv(XBhjqJU9z{bw zf?{4<8_d02Sw*#4Af?1?-5-b!MmBMlYYRO~^%Wb?-A4#L4t`xFCK4NfN%z*=0Yy5R?jAz%9=xsKN@`Jb8xhOK|7B9Tmn-n?nyyV(%vBauyJHoR_VAV!V zOfiapCTapHC{$toTI8FfwhJD7_D7;9ajCoZOyN?li@rBYt(oZ(YkE_aU}T)?`-DX# z1D>Oq`YF3bN@5UUU5k(^pP^$|z`}hQ5@lW(@@>gdnLC+9RQH#pVS)7|#MOWE=!~c5p{v1 zsSyiy{w^PLqBZ7@QJEez+*h(I$Mp>{_sY!O* zmSVaU)TC^-D_y7FYh( z2H8s~gTTj>n<=H0Lq`re+Bf}u^-f;fU3o&LW;0((o7FyB6TeWc7J5C^HnYlAi~7cn z06iYfB>)xIz&BERGqz;V-`Us7)4FcT!!GEh(z_qelUTJXFb>CY5-1uO2FHE;XAgf= z>n}tkx__XtLlg`_3p{nF&k&m^QQ_Ka9Lg&6Zfc#TB^O+CXjd>eO&fvp32C-YJU>p1 zh1gXJ|9w50YzMcOf5ZhlQkg&kM&xWZ=w!G&Ia`5A{VKY~GCj(I|DRWl6r%d()EIz#gcC%_214-*zX)YV!)5A-DwfTyVED zqbr}+G6Z!E6dBLYD>?PXPfNtJe*cL?ae$pUMi@v+MK!taUw7Z}1yW86!Rsz***46z z&=s1O60(cN6=+&1$!j^j;#0XkK`w=B+*6{vxM<__vrbK%ryINA z3%W@T{lQ~`Um+0!+4ixz5R9=e2z$5mT<~xX>Pdgr*Q4*FtN-;ve>0~L?&$>HagG3k zavbRoU2CHWDf?4jzrU1KSku+kFP`-(Mz?A{C0_LmV%AYtG9<@RNDf58?|>QBt?Ovz z@4QeI4dlHFI@u`~Hf(Y!=9$WDnp&(ZYo_xCM)&8mqDpIKepJ4!tM^3E1qPeqPu&5H z7bf={O^Sz{OG-$utD9^g`8TS=0Ue&j_Uo>_y^>!`8bjOMvF{dYL(`zfrXiN~R+$5^ z{U5AR1+H(EwjOOV^Nw$G+b1#gqDpeXmHyr;=~778&P;rbWJu29cWUogE&0saXQV`guRzqEaBQJLi^5a(} zs#cuERghtysTkauqxG-i?SYpjoX(j^Oc`=Q$KC|#Yn$4~s8EZ%-$87DD^)2j%9d`; z@psR?-BEL_9E*EU(r;l9!r8;mJT#xloyfg*B5x+=eT3ciD@=?^@bC-@2x4 zr5)_-gR-eU%xdRQmF3RD@k-b|@xzF~g}vLh(e|3U@tuntDJzMBb#WW^>){@pAvz({ ztjjn(61!z1{7ZX&WMi*S-z`WlW=69(H>8L?j&N2mxm;J#du!-rYTL)3pd!MhKbZea#OY8VJj|7EdFrty z73zAp57y!76R3&p;t7>EU=Ms@FIg{6ra#T!78_CUJLG`>CiSL%Z*-Cbt9##3{2rj+ z+AyHN^)EC3?P*+3Au)wFZf-M5sX6ViL!O*Uu8N$RmNw3Z0qNF&XL)VuME3wS_h={1XcvvL!h*E044VN20E-vcwI5zS6HWxm8i9=wo+!ryR%8gvDsZrs(p$0_{44!(3N3}W3 zA9y%?l@Kzm7VyVjusIb~^>e(CcQ?UK=KF?BL7!T`GX;@6b0>#`?R_CrQX?O4l`Gyq z0M|Hv z{L|81HaBaY+auZq_w~fc&PChXv9dBxhZ9rXOEdBcU`Wg@%e{f?Tkk)=1u%!Lp~rv~mQ9KMy*zq~S^uDB6E}D}qbrx?E-(`2b`M^xPtkI`l$}dRtJx z7c63gr0>@bbn@(k%RgMyQ7B+GM_vn*9z=FK0^~Xn=I2whtnP`$xgcY?+xrYWv z&p*riCECTc9H094mX$mJQ)x@r2<5hN#&yPCZnKai!4fmeU1$2lO@S`jfbbu0tCoZY zV!Jsy&Vwa=_MTSzl^Q9*AK-jW=Bz{?jj>~j&$pSiu6CbK45ryx1Mb3pe)ttqP)-VD$a`8E2FYU z-O{YhIAF8q+Z$g0F;>I(E^S{;sTbJ+IJ?Y3n3ZF9{ZaJ;eq7OCl@=r+lNa|gR4{g$ zm6^U$7{JL*3F^r4B}rk^u8Sfc~yh84Q~Xv+NYp6W|}K8$1ooGIFE5{_tg6E4d_=lNRKNo4Se zHttIw^x{jMx;mcHBprO|NRQBj&LF4PyuQoS{iQlms}YQ?@p7uwHOKjR6mdXmP@&FM z%r`WOk#SK18zb79+R@SbQCqR(T)&9tO)n!PPHqFoDwqT)qc(c+mj?J9Qa)@~%F*{{ z6VATZg1xAd5vOwPQ4ZGoxc8oBOaQGa#h1i1okRxXa}OQi^NT|IbvCR(m@V(z>t+xo z^If#{n&{YkuGs6hAc^HiS>*|_w^AAl;m)ik-y!}?I{rn)uXVymp3 zCgC#Wty?hGsCD75E_N7sllKg*?4A~bwjJ|&8ln^P9%}kx(c6M%h_|o3-Dn!^AZwP{ ze*ECGl)Cf+yBqiOTIknH@f|H8KVI*0)3Z>d-pcy3Vjw8joryrJ}Yb50PaDo-or7m(Tv}V zp^&Jh){b?gv=waw1{ZRf=0hZ8a37ZRO$~L#Sy3%_i8nr?To_sw&8T%XRi`` z3jYt}a{Mn)^bOxIQ4JUW3B5B7`@tU38=TzuUvDOY*Tf%yPSP^7@6+oKz%LcXGnAI7 z%1|Kqvv+B#gpqB!zAakaCz6w&BMWq2j8_($dEf{t41ZDlN^2P}`&09Tm6$H}kDwf}u;E%U8_py# zXae0_OVGh{`PaOvj%A8$UyjoVex|VYcnUP!kA8B9WD(y&+tloR0M0iPaLW8v{p5!v zjKH>F#j+W#=aJQXs6(s$UShsxbA*XGqQ&NM^y<}3ti_RuOaN|~Q%d(ik#{z{G0mr} zyI6NIIc^q34yO=~ZpjLEb^R6CyIOba6vY%IU=lBG4(90(Py*c6scPKn8Oov}{s7NQ z`$8IoA9#!W@`Bcvp9Z$~!M%uVi^|=9K)AoOeul`}4-w+< z`XIbI`ehrX0B%dP^v2%R4-6pEkZJ?~^V^>I_*aHF8FBSuWgsxf7!Mu`FD=S96z#HI z&ytsuGc9#)N=w6&mw?~xALRKK!z=aS*k)9j5Q@SQGVa)UK8pyXlc;YdW^Mc#;cKF^ zC4RoBnYIiQ17AXUl1%a{Bou+P#~_exD>UW#o?2;Zp7SiRKG|NqRod*Tp2BZ)*?G_k zY`DPg`3%EF4pvYq5cVZIA)Mcv$fKMaY_rCZwr(ZdEtrBlGB@Ck(oFTPT7g1@TCCzp zU;Ea4?A2I72D!DqZI}l07mM_1*1!W5Cru^y?6xo>N2*oxl-|-&Sf+b2=V)=33#vEF zN#R?0aL;SHBkkfIVZ8NatNNUu1WlE#2eB~2WLD-saQtqH9dGV&Zl!3mLsr6aUXn&G_EJ}HecD#-ld|^RsJliuhN=1B0L%hEglPjAD-IQnsm*A@I=~mnfZR5z zuW-gjaMVb}!rP~=dm|M2Lk^ER6zylP1V*p;@u2NawT(~r`Nk+*#U7=0cdo3sGqSYM z2}B@d(Ljf6faQmR&}+&#;rH$y;j@ehL0FZTyiO7jF|e9WYe=pP844u;XzmgW{7^Sq%*&ZE z(i>oBw3hr8j@-)=Cs^4*N+F0V!N%0p%Hf;N2NF$aS@x|v30aemAdE9#al(=R^LoY) z5~e>($v0cs7QMUAhoUB_hcZrxZAFpp33ssUc2Bk zh~Zqc-p65Rv*VJm{Brlk!^=6?GCm|#xv{`jOtSiX1Cp7G~R0rR$)t(oQZsMww4 z>X5cY^eSUmcpBbg3c8f?=$dtP;V6B&pJ|wi0MkT_xK;GcuwVt+Pz|vlUTn4T^G`K9 z9Q*gf5`z=4L)Jy$Nri!fh$(l5x*oGFXdbj8qe7DD-_pylqg8s*BaNrkOo*K9{T;pY{EnN(Pj^638PbF-3J zpA3M1Goiov&=^^kR6v#?uAqvx>PQb+uKnj9PX z(%tw_$>7nU+=J1kkLo_(xY9m8Q^DfF5vS^p(u^{W*)wPvTqyBAK0H$zFGRHuWWU6u zI$o#+xX+n^U>(wVjEw;W-J)650;+X!9}!$6=q{9L>@?l>7!iNLaytR?%dx;lP2)JV zs?v`%gG9RYqN`zknF=)Bs?Bwg@j>!KCw%Xk_k(ggC_l>?pUS&{H7r-uQ`Kh2_m94} z=dOaUrAK2M@VM$FcyK7)J#pwi`4YxVv=2l6!fz#2b^xw{)i{+3my$eItrta5{(W81 zmHC(tl67cgO_0$bVpSCNf}n>rLRV!~ex%DMOL4nBRYwtKME;;b$YP+KVIXBhr!1o- z%q#!Z_`klB{U>w8u&XKZ_xN9w^EAq)0OeB|Pl*(is20}75UWQ7cLbNk3jvEuG+Ljk zR!4_D!EoQ(D!*=;`I^rdi{wLgx|89f2h6+=aWAB_bMo7)$y zXK>o^vYow^H?}?FKQLoUeM?Jw)*%a%a~io4&!jP*!ktWG;H42q0pYtN`G#!sM2Gp! z!OSex&TD28K2cbbA5|9(7G-UAwXp{;YjbOYU5q`)*G=4%NUk7`W2;jzlLwJ=3%TEN zCRQ5wzYeB&i=x_dcG>Xc}jNSa?$NhQJ2}=(SPHwPC=;Q|V=Nia)`)P+r2~l{tvr zMT5P7ZMh7ep0W|dpx)SN2nAx32xoE9v!Qe7#pq&V(Fy65e-O@q!xl)U3@1nJ*V-Cs z5$AnP$>3@E-R7^Pmy7C(wrnp6kG+ns*W&%0>{INL;dPT|CC^M^H$3%yWvb5a(z=W7 zc}o}H*^$((XbjqgDvP+pVLED*nrH<*co1FYp}9}iO|%h-Gtx5HF52zpv}-_XBWt9M zZO;aRL-IMbEZ*rVOH|)#V?O%^gYYqDpUt#$zQ1BevaHcW<&I|~KFdayrw$u?7vPHMBDI7Fy7X>aIA`P_1P0N4-L+7P z%Jg;3Iug)tO3>NUBpSnmm9`{~R>*o3QI?N5^5{CX@J)`(R6@SKgdJqFJL|m4j2H&D zB<8wSRlJ)+Y5OUbllN}wx8Y8QyH^LDSDuib?pHcZn!#iX=doSRb3XVV0Mqq~&#Cl# zRXptR1AVj(Pc%TvOs!@8>|w^LmMA&HnYBIB{s;VZ)ji6uMDLorWYfzn%tpXqTad_L z*vUSW)j_L}nW-!<0A%fal*SZ`X|fqvLBD@nH0tj^dwBZ`&%ngzqsP|5S-X~iG|#YV z#tTIrY!q2TmT(|j=>qI#06}e$vHZo^`Qkv8B{p%@Aag@tFK?iQtzBE5iZ)8w#lM3> z-j!W#p{${2=_q-4BG88|$yoxIS+Q@gPJg+Xv^`>EWM@jlDoWLvH>`1|lY*Py;U@D< zo|Qst?~i&h_hTf&2P6rS)X*s7_~OzPxZo_!X#k*?d@5@`<}3*M^!dLg_@U~qWB{GI zB`xFTEyn_mQ%Siqc&w>2cCP@`vn_ibDzkutbByI~*$sI@J~~TX_dX2JYrI*SEhE>gw(y7a0EicA;ssp~j2vkR`_v z3P6LZ%3x>^42p4>Qt9gB>wjVlm+zzX$8764f9_HDJ%x{N(rW;O-@rWR-9z&pk+8e^MwjZDRgv);b~ zwF(%Y8eZX)q{Y|p%n5NzNH8BUv$vRTz`KP44u3E4y-iWHMx$K1t{U1O8kbn2KG$gJYH80q;jj!|S7H7HVs-@)BnEx!y*f4f1Bl~& z(YDelJl{DkyL|d7xA+eL#;3f=oRf4YwJfrf{Rc2)TQL+Ih<=|+_2Sv&c-*Ob0!-U; zZTs08Woc+XvUv8S^zIiT+s&~(xyX*AA7-N^M~bR?k6K^r%Pz|`G&H7SH*b@vlaJF8 z>|sSj)n}If){rgNpRc?uzyYuNco})NA)Q)smc+~{MG+tsBhMa*v#yxIt9g$+q?vHK z;N3TQk>bz&S%J&t=BmPMq&PIqqZIh+Jk{~O_YXik>hqVo&1?75%dFGe>fm7G!EI65U65?tZT!i<-jCqb#H@It^5_I zTiPGMNQdr8qYK45mhO7>2vTxbgEU4nCvQWCpPiIW%XYY|ZK5Pty>wh^oICcJ`H2PN z0`JRa&ig+AyG)0l1QSZBs%@CxCZZBmDMw6KzU2-+P~(R=rck}=V!5s3!=C~Y06GFM?n>DpaaBEO)T4X;72w8^OzU3Fsa z8-D;?qEFATCOrifvW(_168C8#ai+y(*&pW46*uN4B%(vctUS`zX&dvzW#sGB)q58C znrT2}bq>zAF`1VPft&o6Fu+Lnc3)!9d2t1=!E~*!3SlX0YW48AfuVAL4MZMPnF?dX z&%tc~fyw6ElEN-FhSyWl5A~uT5h)kqB7LS9?OHe|NugfgFkf%#0E?Y9L7j2uu= zv-mdc9{5@!L)|3~Y5SZN8%!QH>-w?)sxukRy53u{lWI#~Ss_`fYJ9A%GckXl0T<4U zCLYmrn`^deGXu%#7+Y}|zTfgUVNMUv(TYI{-e~DtT6&^V{Rq32yI1%c{$7&ONNMQ! ztje5F!*$aQCpv!4H$^YL1#jhp$jpoT&>3cn; zITbl^c3Z&eOo&Yzwg^qDn@^v}{?LmR7IepA`SpI&b9fF1!7u=AJ&wFcs(O7r7~2q-Dax#p z5(Up`;y0iTf?}A|xem`|!m)P==hC~IQD%42h1i+5Dm45;q$*ssMV8JGI?fY5WJk_) zv`v-BX;rG;6HiWmJUZF@koM@F9HuOiy3x7u4ihR(Y#HTULIU$TW~HqAnV~sj>DHKF z9CoL~f(J+Mb_}=ngie8N&oJE5(qDD!ir+4(f0c&vPAwr{zsmKTOiY{%RXaIqFIGo-~B3zNi}Ert%! zWYmG%tyIMQkiSvAYG|njss;;*2C)H5lxuX*Q=X3B*-|}1`i8ZWM1$=-rP3BoE{?_y z@O~GWOB&Ck&UEAo7+{QwItwK0Wortpab9^)*mcrOFC8O2Ni-6(qgxyC#Y;Kv?g$mg zysZ}XEQ{!Cz`3-!b_^QqN*#6VXmG}>EI>tk~z2+n;j&!d5;nqWvr6%WWv%hcQ*4k{bW8qt(tnSV9+`L*?Xc@^bDW;XGaiWGkfgao5sJ`LFL@Nd$?kru`$aC zO_{fWf9{k%%dj~ z`2=f=q|mM#Qh<%=4up$iVbO8&@=&`TiXQ1L*GbF!T9;*07Ddi;Cp-{$kUR2;KGpEc zT6A?0xO@#tzwiEFUqSg)?Dfn$b9z1q^2>S7S$m*zCZz7S+iVGb2?Rr7ka)y0V*y?( z%FF(?r9L8eHv*Me7LWKcoHJgJd#Ie)nc5;ggb6tmOZ2Cik zr$Wc!6O=R}oW>>n#|H*k3>LACQz@gDl>yLG&2-}yry?-{9t|sgx$Maw`eM?_+ffj& zxDzQugZn7^ij&88rLunjvZDrlgrhI*PkAoL)ReJ$C=tVDs* z@)alCRh!O|vCSz{nQd{vfHeS3TpHKpMpPnrrl9=u`&z}WCq0WT&6NdZ;rY>t&PLEW zgaZ<(u5eOdaNt;Uz+f=zUI9gxtW?mna0R(6L`I3D1ryW}RUh0i+&hmPM1x9BGr zt5RK0aFg@AcJyFIqq;O-tqFLNaV3MLIlcur3d!fxDLuF!z(Fmq3Mxxy zYmTl6x)JNYm(Z11QM&bVwo?*S@Ov4QL}X&J3G*I2o=eeGBK$Hh6D)|^2Z&kW6>BH)Km|c| zXZ;s{01=L)0P|y0-`j?XKwDQYmN2i_#xhCkhL5XApPRudy*k-@ua!8SJ1GJ=iH6RWHsk3P{_)T7M_PIg)b8T)%Z2io z>FIH$%!e_uej5o@X1_DEF|;}Yy>ExHY@Z%lNQPX|)8D=aA|Z;nRp$nJ5qbMLgk9VU zUrgsO`DAB6m8Ke^YCpWDYu4zLP-e(14X-d_l0wVZ&8J8~!OToeqtz|Anwr6OD0fWJ z<&)SRKG?o5iAMqhJwRXw1PCY2j_4-c5DVRw5-V$o+;C#wX6wa$$Vbnphd|07q2haS zCBEbuN@r6tIfmp7pEJ%Gw`gx*N4Tvc7Md;rBCdFg8EY0mb4qaMYYtHP?4EdOFe9rg zw;}Mo=xkc6R2c>)i#QtZX)jv7T6wXvm-Bs>oeL#c184>mSx@Xvm}v8oo`)hheq66{1% zbiSET`^3cE5l{}{w`we~!v5+RJWs>z@OSk&veubATzvJEmczSklo^-zF3Y;d&@V_c zMPGCmV2EHfC!^1_*N?36xn`P#pyQWsz72ugs7z^Gqcd6khAG?cby6UN;69q1MJnH_|Ao2KL#xOFg{EL0B@A?#vW+YDYCcxu+!KzCB^%=@%7bk)MaVnW;WB8Kr z&tsOv>3ihPuDEZUfp?EK5gB=Tjj=N^w}p8hp17>3I#*$G;zVnN>KS$>Pi=QE0^|y4 zS%ddih}yQ|L2O{t{R>)AqfLmIEuJGg6*BN?gxRm8xRSPSC8mS-v%T}9qv#LZq*j>B zUf!BmbP*EgM#8R_O<#4)PW)%j{5|-b*>pvl=&H==4I*?#^aO9cNah9*tZQ{@Du@2Q$yXQlSsus`6A zP6AYxO6ZVl6y&p!kV8T!e#8_mj2vE?-=SV62d4h~rcKO_^3KBoKzmO{H=R;u@iBTU z-&s8V<6wQY+aG{Gb5egzX7Mws_==BwyFY0B_9SM?xO3x&{lsMHl8h18r3rN;SXvTc z{_S#^HbRMnXF=LnY5)TO06+=wtI%EEl8SXyu{9~}g~}BO?UiZi#l@}Y*Y`vp!n+Wy zae}Wqb*s5jPULqhkEt6^(#5t64j{85jK(me4l_!kda??7&bDnh#|a%?@^MgT^G15I zF;E%I{w0&i!2hwHN<^6dHNXp9mC}!Ios?iQkY%q@wi(~FF5e5xTHAF8ZxKN2CQUP0 zp|2uT)Si9Pu&y;-=Wj(MUh8jx&`+j|Wpn7aKA}|bT0K|ih(?E2m{4*|MC70b@3G&M zjo7>5DcB;S@dbW(k;#d&GjKf;Vxi3%@Pf_Zvmoo%&J;4%Tt=Flms?gsGggFJ^%d+_ zGSOuX_v+R00idZyGuFw}s%m$e0{p9WiJ2hs4wMq4?6jzh`uI>uY_V>g>KKbH zdg_!QFT>lIEfuDPTH6?H^pqMdvhc6iXjr5_JeY{f(|BGAk58de0d7>NeuOHwp6m07 zv?86|KC^{ynf9}EK$*~WQWxzSxRi@+6P?gBYIj{DJZ)YJ7AhuJY>;lJ$A+Ue5B+jEJ*0xrw@)qAx(02zaHb3r%^dR=paRJytz)@@D6yWCe_9a zEsHNbzWxC-^(}4MPMGbl@bpSamfC)2z_n^pBcQ-*O{~yYBv08-JX>+5+zc!V=c1ue ziVMg>KBwzrv*QqW!HiyinT%x$|La2hSZbyms8y@TkL3`c0?AHhnRXNjIVI}{Z)LN^ z(RgYuM%*d@03U$m0{!oEg3PtF+zqfT#d*p((ehMK`>jo z+8&r??gzJg!AG&y!|YjgeV?qvYWl3JABYtwchpTEni>k_cJvt4jG66L?fRrcOQJ)< z4qw4ph`SkNdpjlT=GeokYe5*h*|xl>J0mr;TKD64(hFSNstcW-Zg9T5MnkNK2jO=~ z?)eqs=BL7_zekd;RY4>e0^kRaU?wC7=A|VEPBAjxGOpxq_1)7D5gP+pQjWh_u9L^{ z?21z=%}1jZ?RhZz|rg^D_Nb?bKpDjuE;+C<14x;c%-rE1%I6+|FdC18RafK z?I1cKe#MDrSl+JWBZG*Q9^`v@pZIe1gEoGIZ|v{qIqV zm-qSN?@s-O*LtKuo2SEGW=j?D--F9xO#=k%KfPZ`jiD1YohQ8$n4T%839aNckFrZr zSZKyrWOSCDk!h+X3n-VXDgVYoe1St2@GOY>CceAArFTD0E$5 zL?d$~ENC%Fvt?ddqm(ZlJA7kx11Iw8uZCVy>?l>EUP@*_d~}L8&@kumzmV`8 z<+E!0vadlKDJIZ8jO9vLs7KXkkq@xWyl-}Tk+2U{S0&RSZLrb*1~_qbkJE6% zQwD#^SNRxFJaEGr`NQu%wa|-Vf~p?_eJ^QuWY5Hg<`ml@fw#^YE;)EMLr|V|HEhH+ zS82H2FszVQ*73+0IeTNja8VZ`v`eW`dpqV;IXG84)IE~+3fzX^su&^2!+MtE?n1m)DjqX_2zI@WY#jKNDXlqIM)4xm1u8zX)%&=jwFOyh_S)Ft@u>vezQlar z0F^jDfJ~AzQS)1SuD6b&r{p};zM|^2|Dck3=Dj&WSW4SCLTW!MN5dPj>gigs3(H>G zAbQo_(Ax9Cyra23$5hMLm1(_`O*Ge*%kBjw+6_vg+%z)JRjSqo6twpikvGLBJcNKu zJ(rsw7t1-f!tS-|_;`8#7rNJAVn%~qU!{>!YfR-N%aK8r%lLC;{QG}t27_=9FXZda~0E?-D~I!UUR?r%!d?smUZyy)7v8_ z+$t>TR7j4u6L5pRV&n=`R!p`*(XKD3Dzm6j{#M)3rfqyQH2En1zKT}~$LDk+7<>Mn zPL`W24u_`(=9dz|SWJ=tx8mFfcn8)kklLgtoArHjd%pf%N-gG)lPQz8zg?}vB=qCC z*|qW1%ZT&aHaB3sXf||U3HStwNSNzcckCN}AQ|+_+V=?D^`G=W~rf2BhW6es$lHP$c4W||nswyul z$G=6 z$o6s<#3W*QTnSTsy`sI^du1m$QS#taI>9R88 zH2l1@s08{(4!wh|o`iw7XllfQmoUo0c93sP0#I|&Bc8Ra47Pl&WSe5TAqCE9MC`z~AMj-*<h@Y-VRudB{E& zs>+DO2$^VRmB}f2k4r=LbW||gdFeZQab|S1KGM73Sf}`PWzSb!{M=kx&yJH%Fo)_W zr|EPMgJ%^}b0*r$~2z{2LUxZYSrMmkLL@*?m{jX zoTbfBsleYe0t`GIXrNcGmz&^IOs-O=xeE8^d>-z^w!E|!rd)g~24<;Cu`H>o!MmaC znw?qmySs{cq(*7FI1Dxj&q)Inw5S<*Q->Y;$qj|^ueMtdLV3#3S87I$Zep_ysu9O# zD<3+|?WSN4x8v?fNUhTNdl^;b~QLfh#ExZZr((agdkRF{{V18 zKm@<1!J5mnl4f(Qs?^9g(fum=(cW#iUVS6)f_2=WtZ-N9c%DKze>}L5ZEE7$ZHyRix{Gxh(ww#QM}qUY+x?r=H_bkB`xks3?%g z**0s@(g*9z5=5dqd;M6-F(iX^Qqx%k z-^Wq%c+dm(m=91?*y}Wbw8376ydu9OuW2%Ea??QRKK;f>QN=!~xOyyfw5UWc^-12^ zxMGE_d_6?lqAyEp+`JMD8@j6GPsW9Z*y}(^)_9LdMvT0%4I5)%z$B8C%# zk`9GDDeE(gDaUhILuR75xc)ItPiWZ&>N?cOq$x0U*S}_V8BIfLS$8aYL1kft5 zm`P`44-eR|3QCK@IbEKaZ5XQ)l#Z{z-E;ah(&Ka?H+n?(s#Z#~{=?ga+L{7%MGxxX z%o91vv4?6OZ48?KUFWmeb-;{V>R`go?c%c&7qtuoLJS2eW=nNH0!8FVU5|!$8Cr z6s^*?zG=YVW!F<*r;DKy(7nGERCKm#K*APA8;K>1(xzx7U$xm+`?|zj*vOxVDod4j z+X+Ux&k36B-LEF_?35RmGu@%jG$BReDXvU5=IDXn?GR5RN%SV zmJ~I*b;_508ROB`+*L`Pw1-kaKK;IqLG%6ziJQzfZ*OX9S$sF=5e5nxM`+7CGpTY~ zw<+yTJu&9#6G|{87WfJq5Jhp(C z?v5D4xL1Pa$sHdTa>%(#IK*YVl+`}~X@vF3ABZ=BieAs%;}i)KAa=ybf%i4lGi1)> zV(H{96oNd6zPEi={=}G67$0>>ZQI0)N69;AJ{c;ef4r?#I0k|0)JIQD1#NvzCbk?=OuQbej_|T#d5b>ihXvbjuGQFu)PzNqJ(Y zHU^TLYr=Bjb7?>UOoxd*L)VF(jr-R&ojmh~L&0CqFFyHq&)1!8lKa}YZ5QpJO&PI> zmJ$cpC`w60k&SFiBK+PzW7yb0A^7pqU7pg|+?G!$&4}4qoKEby9GxPo_k#tSlk^*e zD{lotm7L1EksN=ZGu%yAkiW(oybie|4UC!YpED6SeYAzUw7lws9@H9$ie3tU)0n9! z(Ilj8bGDc1ORH7Gs>VvxJrVapYP=IAy49(DjA}*>#*rQJqtoC#jxSd0;Krh+p5~et zi0;(sK~q1&?Xy=M{V_6aKUAb03OYg^O#F{yM%SgiJ~>CZ^H?6SqkA=#hs?Fokm^2< z$eK(tTi9=cw*wPqH^*OupSg8Fl>{J3?clr&i2?#O?%ew2ZII3GJn%5hA^jJrs@qk# z+>aEq3Zr2hN|w9Zx)04L%YSzv+WlhTrHAYU$a8wX-iTOSiF=VdrTOECjZ0}_8^Koh z72f@IuIRel@^m~ipE|#vHsw#wVN55q!lK5oofiw3MQ#`a!aIX*hHQ35ulmgh3cF&b zoSWV&OnL&wgne3l>mRvulZM;T=aiYgh^xj}gVEy}^DhdyV?6Gaw3>lh&zx_L)BWqG zyUi;+gx^v#K`=f0!nxNgE|vP0hr7szkF%mqZpQrm1F5IV2j@#v@l(ntJEe-lCn@kz zXlbGR0d%7IUiV#+$h|2O>D9ESLEWk~z&_e2*6fWO!GD21RQ~g5L4zj^XVJo)1kLF+ z>9IqEPl6!kA(tGLw88s-!6>CxHxfT?f5u!9CiyhHJKRDB99Suj8?((p_J1ub%r~Cj z$|$_T4+xs7y^<;27o5yaKQOQ{J`$IvUs}_7tNuEA$!F6=Mr=^hz6`d)tdpf$nCqY@ zN2gC_HOOxr1wkdEjoWHjxOhG!_VD@HGj)4(jvrV&WeNjyVX>}$u;ghPt@%3;)0cr2 zW-ZrDUY`BtJfwuSB#h%Vrvt863s&A;@wQ^G$W|1miWAEFM2uJEIklpv8|WGO|^HjgpIv&WLdNy%h6q zjv?Og-VYkB=3w(SrygHl4}4F=&JCFnda$>$X+z=KjPnjR9@XADm@Mnfak6Kh95Zub zbAuv*)2t;hCmInSN*}wU4)#E};@G%Gw1$Mg8Q(a{Q#sD6d6cbLe(vOIn_=H0hWZCE zWgdaQ<-wi1{$X=i;PP*V^tfTp<4Mmt?^~#|{DvDwwjG_~7JEEiu-P?w#~F4bO* zmNHrwxuDgWG`P|NeSXeKBvv_a{Af{I0{kAd?|cqsEzN;7 ztt)e3=?-Dr^Ym$oZr^OdLvZJ1KX_jcH*~mAydAA=<-7rg2mf-l)S0jKm8ah1$%H^_ zNoQ#AzrC|(++K>8k_wewmIA84IG8E*b$SaJUPJR07qCcm-CT%$o3~O&HfU*9eW)n0#t-2bEMXh+@4mGcr-6Lw(HA%r8IH z3xIN;j(T*K)MuftfIO1VM&)!UY~k17g=Q^K(HF&{0L|6)^Q?a3tZjD&MqB#yt^J?g^6%wn&v~P><1GVj2srOY!qSrSrtDiOs_AB~X}ar^aE`$GAcL5BT6j zLD8t?4zDN^|1J6jU+yH?3(S;{xZ`ZT%7A@LZH3l9fBvFo-&2kY!pw9gzmd9m@eglmH)6_*RiAE!DzpJ`r1#~M`FocJQ<$?Pu*6!9Z9>FkT1J|DT*qdcARC-pC`9Yi$57q4xY zx|nV>DL3}?O3?Xa-KSsk5x4-i9OjR#Ubpv5)(d$4T$k6^J(#?A!h+>Fr)nMafI0$lMU zxf5GvFL%FlT-jmv^7&bLODSGWDeB7HebE0s-wH2a;g8K&hpOu$jjoP%43p=@?3$kNcA>0;83Q*d;ga=sQ&I$ z!vMx@usQ9C#g?LFr+&E1mF}Esbv4Fgjt@2KiIc_iW>+iLg~Ql7%!6O6#+j<8Gb}z+ z)Ok^1fnp!udKJYNgIL@AQS6+)spWVJ>JuslopDTwKA?Mt*(^58DBWmh^__jV2b(IB zLYbu@BYy96<}iSGZ)3y_}w z$FVB^pT?~i%L@Ggq`Wlw`;^41+vmV$qkn4{b94XC4P$SgHwm!ys9O?`9Lm$L-j?T< z;f73d^Xb#xUP63pk_b<9|9bfYUTH<*9W5+wH~~Mh%K}1u+L(x4#4bIs*9mH%s41V{dKPA&EO?2RMep0J zeNO_q;%Vp}^Jsi}=&^SyRwk^n7pT7AQ8u%)y{aXmO}E4`%ZSWGuRq84#JSO=`iZ@qT^FnUt!n4$}zIaYum)H zTm_U^914-Wgo3J<8i7&Q6ed00NxBQSQxe;W!94;<=RH9#E|eS&`!Uw=6R8#E(#&&V zkmhJr*THZ2y^#}lV5O3=wjh4C~bBb8bLj1tLP74Ht+Ki`oEkC|1Apaf42YLWRV!> zqL%2x%w_Rpaz_UM2Q5_fD+j6zSBC{q+4&yP8Vf>T-emT^rT-u!aH$uSB8R6a=l%lt zK72gVQTLR}8m1GjLZ?E-kWu8CVdeBUEqmvRJu8ILmLw;%_${CS=j%TuE-Tl*tZ&tn zZN2@WE38?Ao94CnOiuRq_F*`mj-q~7H)3Juxw-1Wu(_V!yd00G&_8+K1$aI>+KSRb z!jV+ETD;@phFGqI1&{Q~q$o1~^Q_Z{)A~%H^G9lG*(ihW%96{ztCP(Y2WT7lJnG0}4N?AXb~_x^WA=2xeG3|6W)Bf-XHzf%ZwRB5dn%^=%F$yZHB&aJ|7C2r`8I5Zw4on=Mf^86u zi$+8wJ}qzljxRsSGG6ci!Cd7?vB#us%djQTZR=bq29a9pd{jlV`<-d$Po;TMJ)FTi zcIE@#kfUN>X&v^^Xfk^T2VnE>&lTTI!_KivEbo)(B#t#M%kL_hol1ABJJ!{?1*|=J5Az9#y-{J86M&A3)X`#;#7epSU<39t)apy(FoqXm2UA|Y?mD%MqwA+VB=2Y&@F1dCI zBIQFpdFBHzte%Y~?(w_MpBZNF-jR)4=!qGehXFGE?xEJ$39R5%8!gR5Nr_Ve)(x?{II>?vX!x}H zzX>}3HJs^Rw)vyO4S!2*Xauu~qM9tZP!xM1ho_;76e z5?U)lA!PFSJJQ9vW?m-c?#-hCFb}?oz5wnZYM-jvUY&TI$K+xSZ-`#CsS7U&(sGOu zah(P=uZWH!5%U(OQ5os-%W_Y%FGe;uLuB<8kqRC0_8I#*P%X9$BHs5PX`ZO!cX};GzqC>;PXUG4bP61|_^LcZ#x#1uBu_z!tlWfxHOmjd1z!#T&E zq(NkNwr_>ZzUa60&bMFVwh>Pk$b#qBiJJo2Lmn@mc&gjpt%+-$ebq{hMk@Wll)doE z3p!$7i1UxWHQ^EARr__e-=tnh%_5|Aq^5ud^V?WsLC9Wh<04bvBGUEZbvXJ@SUKt% z1rM|w06QNf08vrO`gAC|b5#oOwldHb;*9)|PIWE8B_-Vgv|xZhPy@RGTY`3W_B zkKh;SXUF!nyWvV7CJg{RK*GNi9kwP*8`rigDYsWNx1P_Lel-&*_ArU=ugL7@iD+@h z>2Q)bkvrFBvr-eMoR(GbQ>txaMTm^rUfZ zeQjNyMW9BYfu}Ea!$g(&fYvi~h#ZM1t}}C*RSZ~0J$n1o=QA#|kN_8I!ge_3t`^nt zl+S=>GcY?lg5uIWP1j-UM`R>mIAA+3Ew=hAVs72}8}KW5OW7qxynDufe++jU&=FtB zOnZt*BiXIXcddMF*%08h1@#kiRnj)&@I(-g`Do zR@aM-i_ujPy$c-1ayjngEmbZ09)uh>c$1>u!Q#jjy_xMK)4K`zX%IcAEN{`%jG$p){mjf+ZG0$xAP;ipPrLi#zUCSla$ku&p~dp=}uag{oSAjq8`UriGbkxq%pWsh*wB_vg+tIU^-gZF>BMk(WqBDa6 zmfa>iTrG#z&RbA2kxMy`@+c82jobu1P8>@&PS?YufLcOtB&gcK&r=_!YX&w*qHa8HcIP%$lMDt@x(=k`=Lj(L$S<= zhX10(CZKVBk`cA*28!Rn3x2N?%rh$iKyKR@ns_bOUxZui{C~A~rr&HRXc&)1QQD%d zrM5Ce+A6h|3aW@DwKNrS?X^@toPavACARF@|_ zT$h!m7tV=r2LNjI#l>Tyt^ZK%d!xm_p4}fuj{o*PUYJe6u_|QEPz>8 zf_l5QRf8tgIn_hp@IGr9;NZB7Kr5T;DmCw}9+tl%sB{*pn!#jQCQT-JSqP}EeYEa= zsJIf1xVT7E%yEo~_YkTP3djI0+zPpXw6(KlG-FsQJq_^iCDZLD^~hL>2cG(nSvfU`%tSqX0;`0)r1dUdjEOk5;l zB-Fr({oLX=&ab=AY1|ku2?6azf*awCZj5UZ@{$^msMM<334{!K zzTZIb}3pv1!=|vdAHZ;3JvE|>-88zY{2im&f|i@6 zfV+yIABZ~;KR&r)x1b5h)s4o@blIlpubO>&VWX(bbK$Sn=L8p9y}CawD|%@Sb&^x> zQp~BdAV2?5!5v$k=D6$M@91PBZH(@(>EJ1rhDMJ-y3UV$a9~kWlWSg0xu1#`i)(E< z%3RNyxM4xGOv4JaQp4Yw+4iiAlwbg%%tq3 zX^?h}af0!lNc0t@%*sI(6AzPP7q5oA6&-w1X)>cnPKL&uN)H1BwGT&_#aj=`Jt(=7 z_N}`*-6E|GRu$_@)tp1YIq{C6e(m7s1Zx&Hm1iRAgMoT%^P4Mn$ns{FO-ZsU5TcF^md+wG>?hLSxcR+lS&A+>*G7(@ z08EjC{EfkK(`_kh7jd#bs`<=r>TyDYi@rrFyDPU2xDm%0`xR5h<;o=I*O3U}bg-{z z4#~_ukJ20KG(0STKRah@FnjA7wNpTFCq=`k{k)`FRut~VW=a4)lZ+g*_jv4uXEKa_ zA}KpuO1RXu44jdOw-P1^_7VD5|==C%53E&L9 z=~eJai-9WodZ9|83Y6eHz~HWUks$GGS4letJDK} zH&!~T#<8LQpzHy{L(hp5JleoA58n4z7m zbn8_my8gieUh3i$O2NQ9@VpS2(zm^(i>W7p__x4Ltm0E`hO=o@<;1?t-^zM=P_@68_1rGM565rX#Gm!xuc%1(mzAB1I&aYRi%Vy((ho^yVbC?K zZ;`*5Sq(ikwx_kCva9ITie!Oc`+RirUh}SZ?sXGi;7&Bj{_CuN_dh@aQOhM9ton{i z#_&h6KaZ3<@lnB7MO=3FDQ{HGgS5Ex)i1p;O{fC}_J| z9WqUOr*HKQTV_t|V%e5I#Rqv5*m#6y`4}$fOsnLO#QL47ff(9dU@uL}A*~fL7!jVW zcAM@71TsoIgk19qIa{&3t_G(g?FfXY7+3L#U(N5I&cEbaym-P*B_kko@0L)D>dmE= zCpBu8>b73v!0FKI7PNq&!q@s`Z$Xn|E|t`1f9YfuR)H&Y$IxRew(BC6KLSptpDMBJ z^!oXArni7xYfR{jl7hPPOSrFDZNF@ez!CTw%~gl${zW69qG*MY58DF6sY45(cRBc9;IwMQ&bmH1hj(UU^1BT5d>GL()g-O_R;8vZdB6W+*a`acenFL z?0U5kgDX>MUdA0Cdp!Ae^>*;bX;Rm-eav1UMPi%j^U*XcrlhC9KZ?9zMSEsyabJQb z``CoJk4SiUYrvnspXy8C<*HN3Guur6q#{+y)^F-(41zUi=O*P^2{OS*ZMZq^dj{6xRxB$aVwgniYcLp5`$YxLMLRnKDsB z%Fg0Y-y~K(TS5j)*u0g4^`LnFN=fWgV8I4*iGQ{2RU|5wULcGG%=opTTm9bLX9Q_G z@!Aw|$xga)8lI>&CTYx^9agb|e^@^KGNdqXzhu0l62_fo(J_6$5h!dweFCk8HY2d-= zk8y%iEIochtDq_h3d&(Pa5=ms0njwVd@SU&pz|M-Ug%Ftxq+4FQ{6XPkI8cg@|=(? z+iOc)N|{_g^Kg$zxqX9u^lIZ*smZO``+K0Reb)4YALMi9ESs=zyC<&g?^tVf1|I@+ zqz?g&GDr9lOx!yNH#r1^SjJa4JbrJ~_^s=MKH!2&!y({R;^WDr>_4?IFD&1#M@muk z^-g4Wsf2y)PmdFYQvTE%{a^Th6Q&NuAOEGY8+9*P&!W?u&WVhB`Az5ub+ivh{|Zn` z0|XQR76=FcDO=WpghuFfcGTE^2UPXY9OnR9(%o zFFJ82!QFzpyF>6`32q_5W#KNt0!augEI@+0yDgmH?#{wBK|*k6U9!i$dnfPh?>q0D z^X^~wPR1MqM)$1#{i>_Fs%G~DHV0b;9xKZ$$pdh3008&!1HhnwEP#rPjDn1Wih_cI zhK7ociI0Vefq_Yai}whhf|QDqf|Q(`nvR2!`Ux8?IXROcGaDB-A0HnTqp-LTj~E9p zAI~o#aA;^~m>8JESXjh7G~_fq|LF_%6~IA-JBI5=fO`VK-{z`?ozst24%aR0b~ z|9Qc|BOoFnqoAUpV?1=IeGI_EAt1mbA|N3lB0jYGKePjgI7qlO+|tN+ny*lvIOFpK z#blz=%2c)!JRko_$NSnP7!93}h?s>V@(V3(9bG+r z12c0AODk&|TUR%C4^J;|pOCkqVej652#<~X6rYgz`Abq(c1~_yenDYTRdr2m9i+aY zv7@uAyQjCWe_&#AYI=F=qDvCTe0|rbhU(b0=?9}*YYwz5# z^n%;ImBWBuCL)o-@1Cy%4yIwi<(9W#AY+r^OX5Y_U<8*Nx_E~bb8ic?F!6UnrBv@4 zTdFR@_msj%m2|ztj-2xdnWXGNpxd3KVmn9H58ukSeRLQ29j~tb7oJc4**Y*FJ(=?s zDd1jMJu8}k{qW3YvtC`I&zr}7bpG?smd@z)=y{uR<$0vx{TutXp9H@^Xjj63s7TrS zR>||H#WlcajqS?Gi3JP@{0H6}`BE4lDe&?V9R}RGq{{)k2c(eO+xdW1Rv2(JAo08M z^2enJ=-Q@Zf1rxp&~CpIzTtI-P@PULm;8ZD+aX|+)#83Xy-#}qu=-mHfh2z*rTSww zUVO_y{-eLbpR%r*{vXq)`G+ux@c%pb|AB+EadJ}L9h9Y^z*FyzKkWxQha}j~w7i}V z=yQhwdr%l)Sy}{iH^6}C)3&ocs{6O6*A}C97K3EQIs-6gl^hJ1d!`qCegI%`R@K^Kl*u2C z?Byj}V8FA!UL(A-T9C%tfb|@uEOi*2H7>5lG5=}oo{q=NAh$HU;d03#lUZcDQ-fwq z-{?f+NDZ8F@4W>7qw7l;Fppa{%}RB7IVHLGu&9|Uj~*$!Z(Ad)txn%xvA$7VFa)hY z9QJRQu${r5yy2SU_?I+Qnvk?f*wg?5lhNlDQ#i{b=gV7<*OExIgVX&enc$}h)FyQ% z%a`!*<(+$(x|cutZ$phU;KP|7ZdR%;gS`Bl`J8J9u)9G23BD1VAwK4heiTV%)ts`P z_~CHY=%3{u&tBphlJ)+)n721z^vV|uUt3ZW*Z{z{>B_ZhkuNk`lD<10@(t!_W0MYO zEGr2Q+4GJ_wyY!-+tTJ{RUe!UGaQ?TLA9!rbPj`&J3jW2mYtzUz=;xPTMs zGxvo@jFeMw;skMpyGIPkZ_bIXy_#yt3`e8!BX3yO!WM60boe6W_*Ge!zlpK^2pM|Z zS5|a+^@%4I`%w#7kWct%y3qv4%8P?vMJQJu{o6@aRa_q;UXPum){%B=+`71^O1!-xJ*!e~8l0xL0_(=NKUT_U0C6ybBY~|FI zGZPB~Kdelji`IOS$@D~a4P`+c6`}>#z)fjt9q@xh?sdTv_Y3QCa9>`>>lKKj0aI4S z6NH;kiswUWA^>t#4FWR%C!R`R7P&f$fPJ$L55xOi`1)gV?s!C|f{dYv9SD zA-8Rk-$l6kd>GCP61pEMpeIZrKBdr?rxv5}pazB>sN6seTh#2U#tBt>Sc z@`Qo;zo-bEAqYPyRbi3F>t`)-exNM?ANAZC?o?Zm-&kUIMy1$y&jvIpx}~HYoUg@DFI}}V)q#@uZ7CaDISJwh*{77pzT}!S?GxL>1S6{JH!A7`i`I}lGV9Db zm8e=(A??@0k@eI8BGv2cuTBqe%1X-Ybu8Q8E-4p9ozj1z6#w?!8EQzTrA;`!PhAU1 z+r6HkPXQt(nH22JL+MUl=r1qqKE68l}CAX+|EM5?8bdLKs-fp)QJnC3uH^) zo=ucKb*@Xs%XwUe4|x$vaXniao#6ryq}vp?`xYQf8z@u5R2spfo&e);bi0fuG zSxv1y6mEnePoLkhute0yB1E@&f z-T4LVe=vI2Z4Soy29y$=o!GXyc&dd7Mg7E2L9X`(t3apL9YGr5IcFI6ln-pMiZF(7LtIJwpY zOPGOMn`g^H5i$^dW&k3X&+9f?d&4i4z37j&L)l9b<`ZT#MGWSW-6QMbD&j8s#P=YV zMyNkStfEf)AA%dLF>*}avYxu%g-_fv-N_dk9o1H4sx|VIJFikM;2XDgKwo0{@{3== zu{80fDu71UHh%Or)V^&g?h3t0@s%9D2AuZUqbua4fLS6KFs7=P6{o9;B`TWsG8?+Q z=!fQIuOr`JO^03}VM+OF5oOA<=#p|^z~6_&voE5EasMTRkb_Wq3o-<8(i{n*~&V7Nw#c=ey!@P&$I7t zf$kP4m~AqW@$PF<8bU(nxqE85zMl1oUp8IX7OXm*nSVE?Nt9mh=uRA9-YMFcW|sftx_dR(O za<}hFHm_P7yox%`?-AnH!{zHHo1YrTOM_xqJt#x?`G4fvm6>?$Xw>Lhzf^rMKT0Aa z&!vcHMX>*w@)L+Mh?Rq}7c+Fb(;$#)_!&-oAQDdUIpgG-QWlH$9!vpvR@EyFO9gO8r> zT*j;CJJ_r&KV#307!7AmMN#*TS?&>+VQkiZ9^l5C6130|iGDnS*6iw;Ve?%)KL$_Q zVVp|=$xxEH9Xho!(c%>-kJ^{PL;+BRszOdE&czHnz;Ry7^ELAa^LZ0nSm$=M_TiUn zijsaIQArR9^8SqWa}~6GQc2v-?Yqp)I?yf@tmNlOAzZd6H|fYX-9(fWw?dL{L(7&d zmLrbu;(}6YvuY)@U9_3zxDl7%zES#Q<7H^>ghW3J$G7=0Wp#4EyN5L;Na~U;6DK~P z7I~UBT5Q~8MoL^t(m)`>41r2nb1d(NSN?~R4GH$y>=};Gibk|^d600K!Bc1;t*Lwm zmK)x;I>;NzF*bfW!^`#Y&%ElCf)zrGTBj1dxjy>9889A{vXMmifks>%qi(|fpc&1k zP}cr~U($NkNcIjY6`boVF$L?`J%iz*k=HYCO(iyFSG>huV)`WN6|S#)3r!T+#9wyERo@ROg)nPqRD!;Zye>o8(_ zdo)H)C96$oV}C2SW{0J-uz*Uspdje!!LXUh=8<92RVJx?{yO6fxW|9|NQ32hRRy%E zVQs;p(d6=FhX;gt`|H9+HZ2F-vs37tudef|opp(r_BxbRZ-!Ox$7}Ac5cGx@DcIAC z2M>msO`wZ6Wx$jb{htd_-xDQ|DHHEo9v1Pjv~(#X=Qlh@{y##B=JgCPm=KR@BHaVp z28e|g1YDC2SksRPg9`R=v-Rzw%!p;8FbwJX<`2WZ`F|HZC5605J;E;cESAl%@t9fg zKRdXt?L^>BHe%Wl+UoH^Sk&1G;+H(LXb#;ZScUX|&xrmt=(7Sq>b8*(eI$hX8G z&Z(U?a-oX-q-n0aUXl$xjXUmA=OV0Gk|^vny|R}tuBmTQl{bP9+?&vAn+sC%$MSig zJD?+ZbW{*9+k4*^?@{Fs9f84pQ4;nD!yfD9)c}Vrsuh8cM zni!7>JOa^~vi^U)Nq$##G2!67Y&i@tS-If{X&{TuaGBV}UbQ;*gDAxsQbnrI7UX?A z3)?F8TO44(Paem6mbCO^iu#AAt=mo+i%;Q_@7`JLdBT98xPT+AfLHTAOE6&7eC1Z# zMpKHUZO+345^zZ(2m=Td&M6X0SMHHjVL-P|JpSK4NK7cg|E0bSaq-AG=wqS6Pn!D+ zaofY+1ZX7%-1_ZGo}Ivenu&4^WXIpyG=CGUoht`e!hqkTQ~d_XKuZG|sVCBsUxgld z56OJ=+Nj~1=#S#xQLFzW%0}Hh7%P2Ai$b@?_cu&c6C5-a;9YhYV6$|b?XXbPNe=Hd z;fYL4^jY0?Jp; zBPH_`@^GX0z{L62n;Y_y`W{L#NO?TJ7az1K{Pp!V*P7u zuAFGJQQ}b(R$h%G)w+16<7H!m(rRc)MdvnRJ)1gfIl=H3Vd++f2DaPqz&}| zXXGbP+)Ofy!P~FtU!0FmH`2UMbEXeRzGN@2yuTf-mO8OtiiB#VSV5Fk=Z%9Gt^P{& z@l+p8lRNPCjtncUX&DT4K_y`BPmJX5dtiAi!^R`}RB+9V;6%F}ah-nG$+H5UAzeqI z(@_JDZ)i(KwSNUs!f=d(Z6o6A(c+IzzIMI9rXacA(Mz15VU4;Y_{GaGV=lSJ#}`1y z8mW{n2|MwY*16c}CN|Ta>35f%zXFOKzm9=ra(zFtY`tJ79HEva)g7o!Uml9UMmGWn zM{5w1*N8}X$QIK{FST{*#Il2-HIhy zRz5qHw@zJ|-xfV2T3A{2j_6xct&qB~?3`kofMeqv&7&z~F~YvDlr4&T@?VYrN?z6L z*^G(9l7lnW%LR~uLIV3S%lj7yws7egqaMTVf8&#qI#XHWr^Tr z0+Wsl-884f1uc(po&;PuH@XFXVge(oyfrD@zw|jR&{^^aKUwxT^?W{M<@dCo$=?4I zvLxB0^g^HoH*Ba)9F&=C>B%7S689!@+y_!62h}!wAGH;P=lm;YC|VjGB1|}RcIA;p z#~P-KAkgxO_0f5l)SPMe7Wst*{)C)xk^V$s4Zl|q= zM6Gp1pbJx;0@qWc?Z790rISK|N~czOLWws?G<`3tzw|CV8cbbty>RVWv}*O${?1>@ zfRSFUQn;Yt++_9XqyRLBLd+=KPVPJQmvmm3*m{r#B%VVDeI2f?k`CPhI+&4@Ie4XR~tA%-4tI~>h!<~laS8<{+favDwdhKr1ZExGbuXmNjQ*hFf zo1)GSadbT3o4W39a6q5O#(hiHuZ*R93{Hz*++a`Wa>Lqtzd!w=xT$?mF;e*cmq2*=)_TPx8p1rwAj^ zSrMa9L>W1&I2ITh8yi8}Ils_XBYs8_(xDX^;ZhUD{<2*^m@0RsjsTq>CJ!+>>CWMf zMaUhXB#(*a0$jX_CC(tLJ&LEYmb*IlGde0;W(hVQ28G2tt(+v@`n;%H8>e7@NYL=z zV8G?oRKVWOL!iqwDH8c3Df95FV87+vn)Eo&XE%w&DpWQ;dTZ>7Fi1Im{_bfDu ziJ5XQp%7HAj?#^NQD|&S@(Jwq%haY_0N>$xoeM5x9zfuL}J-qta#++o)q zSzeBv3-L9$?7Q;}sdRds$T3pSLhk0_?=AD2#&gEcR4^qn*k~q0i~23>t1F!5K?9n7 zi>RB}i%ENqd43n{pHgN$N+cU8zB)l!7q9Bx5mBbO)%|R)GQW*ar^BriuA2$J);Ft+Gljme`KrlyZ3~)PIQ8(*j<8QflnWz~LfbimiC%-D`Ww!VK3{C6HUFXaX;DKoVY!xiVTdr?|vA*Yk!b5Z=utWM#0- z`P1HrZ0O#R#SzhjjX7OfG*-ZEy#Kpk~q07bZOFEf?M?9x#XD@LeFi+6bSZ8 zZw1voAeLONtPV@@qf0dJdwk52Ozrj5J^2t<4A^Vh!{e3wx@o7#5uyqRx-Ogar_Qi2 zv;=gvS;_2T9A>#k5K9IIN@Vb9t<9pE9}z(HWWA9Zh-Ot>xnFn3aK1pmLb$N%v2r3dNOnpoWHXUl#4bFEbjD;o-H}t_?@B)A zzUO{bAK0WA6Mlvjx&yX7yrm<0jEe*wwQT zD&Dij&eLKl#|L}OP(8dmd-RaS%KYJ0NRJ?k55F;7++V+g0UxsuE+kLUT3|qH=0k9z%`VkFNBPv_#dcRR@#gV?@NNuRWVoPqa!-_6K=-eoFgFuk zk8?@eILSblzg~p_LkvG3N}pfDet)y{kB*}^KYn$z;zvy6l4H|U;$a<9jMNY0km?6K zH4k1;=Ma+8R&mbmBJr$GJVY}g)i~n7~~HBZ%s$5j31T#u+)CB zGHtW2TQdcTXvR7+KY%8{yS?J|9j5Qhsl{66|{_k5`;(?fj909^3GEDe}~{dQc~{%HPMr~ zfnb-=F2k_(j0a9V>IP|l>*Ws)mF&HhY{;OZpV1A0fBsHV5L6OiFjMreMMwh)@gXE0 z^xpZ({n|}_S%d}yXrNKo=O1B!j8EII_xA#gm5phm(#=zu72#_J>o#VCaSY0KO3J-GyD{EWHJ> z6V$Y*%AxdL8`M@QC%X2fW|ftYnuuxzL_5+1vFHrA^f%0lB2T9O!zvhFH({Zhr6r-r zejK!-^+5Y;bn*wB92)J!DsCEyqYV`6gI(=WxiuA`t*ASOgOc_1QE+#vUwoWs5CT~R zS#)m2BU=>(Ctp4{EloKtCZk^~(XSIWv9t8+#GIp18BLQEk<)pfCrU^lV*|%?b4DZ5vWt`M1_(3;Vq-er!&@V9j*Er6_i?UexcjC*F*WXWz&6d zYKG)Hg}L8I9So-2MF(31JF|on=4%P{8DhDhpV;J|<84zYZ=^&}h80MA7W4~*79G~r zRZjhwQ3yk{h)#&CI|M;r(#XHjJea5h`O!LpTwifdac-+%ezdl9XC{qjg@htTQ0Bz- z8YGN%%+z@j4skfrLu%+tLFVq<9g4K9p_oo+2+l&I_^0)?wIQ8h6zUz{=&K=m7Tz%# zPp?o6E7-JqqYOj>z~ zZNL$QoJ5yA5VmT>>Ol4pO>BsgJK|_ESF7Qtd+mS<(Rt{tN0kvqoE=$))JU!1$*ia@0Il)rE z0j$~{F*qWUyjL>y`@qt)kNLHGgugAFjSmn1NS;kf_`E4PhVnU{8dEIQ2)!G%KM zN<+4F`Jr6q23j7HoU~}beCGJzmUW3%-{Z8{fjUXlrBvXa87ai#^iwzGj=PO*}H+| zY8hkRX6b7gLbxlIT`g=Pw3EitwQ!&9x_V>yjg-uHu&JgFo0hFI>~n8Dvskq7<_7;5 z)W&IHS9iAWheb1!IbsA>agAA&ayunSwZEc1Mye+J!M4h`wN=C7L-tTmgIKU~g3u^& zcG19pD zU*MV9L!i#R`7Le+b%})K_R;-p6*Vqwm4j$-F;km3(F)tBMU!3*6YDDZv39|;cK!5H zawO({IT$xt+X54Z>^ST=Wz>mc?))sM6=zvXg8>?omfX88^B=wRD>Ri8EQF{p90PI< zS|{ zb<^|*R{v(i8T26;3_I8wcjs%WOAtC!`9ODUPH)0=f%|bc$A486&k)C&_1v!5w?*dq zTJ-ZXOb!aC0%=4bJX`FHR^rqRapDRq{0B&|Bk%fX!khiz*^rq`P;i-Zu)5HOaM`QL z=ZW1CByH1qL7km^19h$DZ}f3~EJ(YMl^bDh#2BZxevYw0P))OO$T}W+HVIlBkmvFU z6mg!Y+Ha;u$~}vpN{YPeuaXBZ3oj{W@f^^GA|8R27{N7%#jg$Z3N6;LG&d$3e{9qc zisS@60dsXIdb08)yjFA|N`Z^GD5|@sb~_@-xvZ;?(n#KKwbyawn1-8o=Jf;fJOZ#A zw(Ho%SZ!>?8*Wq=>t=G37G`u`kkbWA7%`azDw2KZ@hZst8Crw;5CpqA?hf|paiNC1 zd3}9|a2-Eh1^dKWkNFRvty5U*wHETs-Gzxumy+Vk7gDKSbOL_g_yvztFVn*FIP_1!+nRFmxl5V;|I?B#G#W zq^Q6D!7uLmG~sA@iEne7Ht3bc9>-LwMy1nNTt!KaWucuXCA+Tb^vl_0-I!R&AE_hI zD29e`WF>mALi=8$(m>48rYoISp@v~Gs&}^@Q7#oJ1=fVF zwviZ0g>0lDBpjx1A3c%DlwO7^8GnTfl;78=sSq`a;TJd5nkuKAxbI0gSF409XwK)k z6m`L)&H=AR$kL{%B8GRrC&-Vi3z6><4s^$)3&+R{S!{^=E0AkL(;vyP-$FbtAa(No ztv-e#MZ-0wc=2@P08b7%dTr5nr`;Kb1*=#t3Ueh|Y7vnNi&xR|(g+27=~BY!ICi|> zFL;c4&g0bcq>SV3tzsYqgUoKCW{75R5D$jhQ|MOH5&szVi%KfFOzaCFtYf_w)QRvz4=($(-X1UpxbU+{wog) z;X)_vpK(f5A*f!NDDiGAzrE6j0jq`qM~zSa$WSxTB^-)jfP_xKCE?1g zLzJL43`l2{yv1<57t}5IZ?$5IlDJFOygaC>VLYG`aQJMxua@4lQ)_bK{_^U$`k~gV zg8>_EHV>u7NdXL)9lf7aZjr+GThhJvD}ez&+1oCcD1VnPOZ1c#>s zb_Paa06Y{1M2>Ioww-KQ!GItT4CvW)s}ED!3}TQ^qQ=ND)tCMr0~O*sk0*%N|3oOH zp(aRf6%G{t@x-@3bm}hV+DTXSG&Wla2VM>n?YX?Xf<4%lHF?ihsdPO}HOiGSkx;tb z4=-W^SS7bA{d+8D(tJO^J|1O}rwHaaM_}^;tO_MQ!J#AMf6ZdidgPsZIz-U=ABL=NSc(+Q&P2LQILcLu%`@)(+S z_*nr7lBc;!Bu#5%B!D~h&O#vj)$g_=_WLxO6djuw$~n?^#dSsZD0-6wYE!Rno^J=z z{At{O7+;GvTX|_M>a+7I?-&&GrJ6wH6moMH9uY7TT-smy(TnDvy<$#c1yy}$PuUQ- zD4aw$p5*`6-SWk-Ggj5RB&|pcB&0dG`V_cP7e)9~w()k1LEaMQ47QWHKY^Rl75o3sv7_DW{KfD)Fte0%8ZRG zpjo*rVBtL17pcsxMu)wtQ+vGh48z#KUt%d6@5^hw5v?+(<<}L&w=9siFJIJGrJdiO z`@ZL(Te4=1#OabU<+ax)aj5S_z`uE?l1l#{Z%NBB+HU;dbT<~%oysZ)|*TkfD@jN%zQpbtTDVE?S_Y*~lJc@>oMss_MB42TX76eeVUg zwEcJ?05C)&nrgdy(&Iy`kUI|Pn_5{Iz-F|w{o;F6rubD^Fe{mtqXQ?d zn5szD05ocdNYv{acihC60-J=Sq%MeNwYM5wWXwE?9y||;B5kmO$*FriZETXboO>I= z(%i12-MKS<_($A|n1shpH$kFay@Mf#I-L9}r8=Ta2Xrk&SXLC9(F?K&NbCa%Hel{( zC!#cwSw*)do{Q4W6Ca>nG-?F?;A~@SBSKrhnKxH`^GC28R|mB${xJ{h(SC;P1BMF)zQcDJV;|3qo+2Gra z9(OB{v|pRMl{L=FPL?EegG$dah!;eiD8SwJ<}TjfM7BdRzjy0-lapn7z46$76--uM zv5{XZ>w{siIKd`q5~rrg*TYS&uf%Ixhz2<)dZ-Q7IH8At4IuBc$P-^RT$Q1>=@{ zsHHRAx9}l?$8|(b)VNZcAw72bY@qBZh8D#mXC5{e33Zm7c;fFp8&^{X32|1%9Wf^I zBeYIORf>Imoe^Qri7C}(rQC&v3Hc`2Z=YgkBuu7i$etG*Xm19@^58#-AfiqSmv?cN z8_D(zSUV*Aer&QdkdV-{o@VFx65LvaMI5qG+mgqCE zaKf5El!Re0!U42rtO!o{>khf^)b+*f$Lpv&pFtRqkz`NG|A||_Cm2*`Z}51suL~D- zGvO)>?W-^XM7c!_XA#Z_$aot^!=4Dut``1XMA+Gu6M?noQ zUEo4y8HH|bDKyW-Ul>f^cU$nq&Na$DR$OJ;Com@)iXg`t?in&GQz`?`c8Kt&MDsbR zGtT#Mm0Ua@s*D*cYI=-%5Y(;L{Bt`oz+;vd3Q5`}l!#*He$x3O5W1&-u3l)-9iUs1E$yj zLBcZCqzUV{q^0KKjmC9u)&t8CC5#k!_2=Aa57y6)%loQ+s^-AU=0YUIL{9uuBD(np zt)6cKsAN(Dsdw1w6t>{>LR*p0#ISvurW?9MAMeJrb)iJ(1-vb7TI+tlG!gXOoXLZ{ z7M0#8x9@mQOXE7Yk-~Vv%3%MZl2*z|hKkxMJ4-zfK6`_bF(oy!gf1f22Do{A7nz~Z z%I}``=UKzlyaS@H^p99N?7_F+atKiJg?dd`bvt!ub#)*yCIbvfBgZO^qSh~{jUFqK zBZTdcJL{~Dm$2v5#4>Tsgb$)|bQRb;jHuIX6!sS$uz~g?wo%W$k837e)QmP5(=#$e zh<#F$QfEK1pAH(U?w3Y>9N89%`CQ?y8N3=aJ5gY`XOMcA7HR2lKkDr6?(E1v>gD!@V?!k@MS-9l z{M3?7C7X~~*sN!*T~gVQdMRb=ZY0+|bJt^X#rwq2F5#!NaHRb73JwW6Ku0KiQ7T$| zprQ)$=`q}HI_4X#lje(|HaBY~pwVK*ETE;`ORCK9auDL%D>y9aQgQX;BwQJ0d(8@Q z*hbm5&oJxXyeKVBWf<7C`(XLbEs+ogSbjQu)hMC1{D{iySa>@ULPYXlRO(<<#K*3xdquda)+4stBj+2v zoCK};{KXuflD8GdQ%65vj%=}r#s!^r3sAURXpFmMR2y^Ty3n!JaX;1X0@Wt-+=lap zjFus}9of`X7=O%>=e=Te+~%#u4UC2B-`q^|nHKyx^XdHjCx$nz;p-m4aBrMR=Rshg zy+U0xMRTHa&ow2=aK_=(UtDLav@BiEm&C#==5to!F0!r%zS{=vWOyoe3qy9v91L)1 z%u6SCk>#A^q_&3u?B88m^!otUf|QS|P>d0Zd$lD|$==RV`2ovOvM(yXq7wAdkn_&N2u z!iV;E;NF(#9B2;~%YlxW(22udMWaw4Y0uPn0o96p%;j>; z48#i+m53oE=G~4RyjRz{A?753E z1QD32Q02`8x{Fox@75XEq&uCYLn6x7=kgQ&+>WHO1l@zh{V2;g)%#`_{i8+&2x3XQ zZnIPKw4+ddkD+@c5Z+U{sg?*E_--o0Kx%ejdeWGR*$!;916S2fk!O(5)m0cvj*FOyh5 z!1oO(AW6I$@dx`Cb7JJ%Ewn*To08ig%8`gMh9vRPPs%!cIEcBgDujnEFLPc#Ydoly zD`4^xFi@~CuVVi?f9s%GA!}~N8Yq-IXJfQqb`~k99%u0*)6RYltIkFn8||xDx`vI} z^yxgu%!IhibeW!m-qRwZ2rC-bl-Cs{d^-X7a;~n{-MR|loIHxh2o9jZxE12Ql45aE zLr3KAICA;To{x8xXtdvlX`hVf9YqVIwWdw=s~0Y*IAik2k;i6Kc&R~T{lbb(Yy<0Jm72(8MGBRoRbY~xW zAxpQ}y`@&of{9twc(*l5OO2EAI%S!@5;AkhcQb!*AQpt9#E_~x%t5@008aM5o}whF z4HvG(=v#Si=JLIvJVVcufOxS0M{zG$aRRhUzdTbMSPoKC143 zIRaR5bJZsabdFlQxIA0?a(|9}LG(akL5bc7qaXg=vsegF(9YL;Gix}d~0$SuW?|UW#b_S?!wxjkzg7Hl1+Tl73h z)zbJ4=?P;1ooA6PUItBfk$Es+^poVpFz_-@MsK--5m9}>=$8-A0LVqXwiGt|MMlk9ftnV(*@3t>};u)j9) zyxw9(KNVlodjqJn6~Wgx@7PAL)tn=ka;lHyWBfgla)_`k>z|K>1wX}QB4Nw@giN^+ zzEdK`UexJbu0P6gBV2P>J1gNz@3y_cFm);@uBhMjNY)r}D-r zp!bM7zH{;>*QiBy6HKG64v`Tl!L<62Y|c_NA9Ddh2cF9tMyywzsS|L-i4S)UvbCG4 z&b&sJc$SaI9IsIn`$%5gd5kop(Go(KXqHu$FqF_3t2QfRK6iw6v5ECR*n7*cIJRwV zvg9j4e%Ub*Fwb%O2-e;fl zoO}P==l-bY=~-1>v&NK~V~jc8cfe~y2B_VI7|V?J^y(Kcmsqjz#5uIA+?&re=%pq# z>mPYpI=ckA^(#Dg_H2y?&s`wwl9QI*ExO|B6YxX&8=jpDIJ-r2Pm|9O0rTd?X=dGT zP|Vo)KlI7GqS%)o7oQpBRcU~nQkJ^W2IP+8H1%wTG-R6~JSb%K#vcG5w5A>ay?U)z zr3Ly1-K>((vp3-n01r76bhR<&eXNmG9QW~j`)5W5`Cz!AB8YsqkrnMxI{C3f=9itR za@(e@vfH;R{9}6@u~?Oe7KifaW@0pweKhgJ5WFzQvJ1Z=4u{;B!8viblS5fajZ9e{ zb3axrE-wOmW}b+2Yr_tfKs2SR;zH5F-CPxfI(a`!3C;<@6k6!|{CpZD2m7P4ac4o60D7b;v{Fw#2!CU)&1YgW(XM#^KjYspH= z(hQ)=^}maB&$&QtmR>6{>Mewc-AY-yUMo6w2E|znb}VRYI_^K-Th3{lGlQI>HpHtX zk$FD=yj)12=J-}roEGp_Opx{qnOd>@B@foy-xjZQTt7L4$}Ps* zYDIFHCz*N1y7U3fQ~A?&s=nRb-L>_Dv8+>ghrlIrV@NAB--ueZ5Uzn z)8WrUrD1QL1xfyvY+)gbc=+72KT{hv+CbIIQ&A&ROtNiHY$VgTUaeD#*>t_1AX@$RTW^n^#tD4OZ_skTQF9ri z3cH}Nlh2vG%m8*P_>=k(n}g9BGS_WB!O7U3ZA8Cn!gMR`h_lA==Lk+;m#Lz(FKGS?;v0wC@69xo0TD{>WCEX9q%HEeQEHj84T zqRG%{a3zU%isoW^Q`zTVE^#h2ro)f98l;#V95}UY9HNm#ugWCwzQ6Z-RiJ0Ir|mFD zACNEp^$1tvNk!a=X!->!V6a5bqph&mX4*D(uOaC2v!!6BU8tr$xSuTp-lmR*26R($ zm%OblImK<_W2iPqsliIi3q1V10@z`~#1ju`)oM7^5D=$ntZ7D6G304unAgXxY+GaN zFbk;?`cRvT&c-~287}E94%#9$falKGLY~%?0*i$K)yP6(17Bf%8~0D6Uf!&-V9%+_ zL@LBL>b)F}yh60iguJ}9gQ_dp61bH@Hm!67Hb1H&(c|}@;*Dk5`Z>L``XO?1W@%%w z8Y#3dd^^u#p0}T>854Fa9iqY?S{G}eFH4I~)^(Qug{4!i&u=!0b$dgyx*<)o2F&u} z(h9$qj4knL6{b8o@nvEDAqA)X0WcEw4rcbcNP2d?<40{*qIulOS$J`ocPf@4=DAvR zA_Gxv9_Lt86~%seNT2iL&8J8Nne0=X9z}I5NASFsYrREwOMIB-V^D?4!roR9H*4F&ie``sNC}L!4)Z!lILXTq+Suvbd)H zEJw5TNGVtroV=MCw_0y^pHBps8S-Z=^)J><+KRQ7uLZvjNI1r(c!gbz;&?&Fm()IA z`vp+wk)*K_?4#;rNOcM~`iYiUtP zX#s-8Fv`gMiF6#_iGN!l^DZyQ)Xn9+Dd5>hB$+2Mq@`QO>j60udo!*e^pg&XX)6MB zv0g8dA~J!lh2>l%FCzGC9JlNJpm^AAZ~6yZ;~M*r1(r%@T$NeW1VEH~J!8fYr#jX^3DW z%aXz5$6oGb_|h;g2YC66&6vmA;$|^?%kxP^c~U}iUTwd)!UZv+oLiVNyR0b?i^wuA1suD#4ZI-XAwfVI?&7Hn5yuI5}%rz&69av zHAo*E?Jg)q%UYjA8!c=M8YN4VVZ zl}dYZ57)A8Nx`VVI%>+Nu7QzIS76*({4|7-+kMoI?8wo(_acp65>&ptxQ_B-#bhkk zXYl^1BtWxB^i_eu%3U;8n2%u1BU=B^$M+=@2wrvT1wOAMiOJQZeqh+K39@`mB=qa^- z3TXLn?!mHsQY*(eH~{=)0k@Cm~%HB(BC^O=R6rJMAk^P)Oip&*B`8T1bV^# zV$9=9!3*Eb%@O_M0bKMU4S<+H9IT0O`iKxT3!=tya0B26ZIPRAU986SN*qpLRYH7N zu7cADmv! zndCS1U-o%&Lhzn`WDhs?#5ESWk?P7+@`7OMcaxtfk;~N#$8gWeY|EkZ$IcAop5W^$@2ESA7AK-xT$Rhp}ZIY-TIemu-?0upqnA!_7w1LjWzG_!x$S5%X zAgwxrhRzWZG@-udd|;mawVJ=&YDc+c`iR3JbmqE-huO9TVpyV2zk1qVxT7oE3k%lY zePRG(la%{r&eJ50I&s?;qbk8zt@S<)NC^kljw!>Ax%%}>T#BM*vn@sx;cqH<8PUC zLJ-cJhi%ZIJaGojmH!UiBh(riTJ9nWgGq3Z%Eng65Azb4j~CO=mM{Z;*G+!}|UGAWSUUCG{-jN;-QU2R$^Y1+rDRK@#P#g?FXO^_Y=9g@3{)U=0KS zOpsLmgWTuuNA7=TW?KyNRUO2mKr-LKWwTgf&9~n-e|euM@fU#11nMp8e}%SkM|vNg z^RJ;S0OPMk{~F~XiS<|4x#`0480U-A0z;@HkEBh*&GV4+2SEDl%3rW0zuVsb1=?iy zH)H-^LvjGWELOH(^R#`?KK&Fm0azb#5usx_5{Cx9d>(6}UXgRhv)^z@R;sstaxhSjJ@ffpQ}fk9jd^uFdboy=PdNHw~y8527KU%q$^ZyApXZ&|$O=z|wuk^G;jRPrs z^xTcF<`^E+cKE$dMQPzD8_T;F)YHf84}dyA%u(3cWRCuN z0=WynwOm6}vs-6gC#Qa}#Zn?Cd&>V(A=I$vl3iK9)lMbv^W^|PQSw&!oT3}iN()88 zj_^@!fyhkz-}~$OKVzpR(6MZZ?(`+6*&&JT_0z{GAF$BogZX9EwxPa}q2!!y%grE8 z&`XPE;0Nw5t?k!=FHT?M62>sakAHuA4|kT>#`pR4r0(C4aeqVBWnCkF8#0%cNZHTC zYhqkUhc!?J@sh)|EHLC8F1jxIjV`nDZQqWU!c;gLDR!>Jf0z?^!g04%#oZdV0{f|v zj`SY@{}^$LKJvO*E)4SUt(L|=D1SL3mt7-X~eu7Cm!>gl@}G+*0rBo z-$W|qrGQJ!I(|04+&SK<*K7aV*bZ26{>RY%+k3L%Zoj!FZ`L2=WcMImwJleNISIf= zgj6M&y>JS*#k}zBl2yL#ECf_N0H*360G4q6_S+Vp=0t5TBk>bu-?^CI8}si?F!`5y zj+MeaVPd1%_nd!3ifPx5u}1a(3@!VOm6O9&oI3dD_gk!1?u8}Yy>iyhboPVo zz=8MK-~67icvR^tW^DU>ZSdppodbDk&1ECLF~(r`;$dUfGI2bkil{F`Lvl?f<0)6TWg^?XfLzrUnZ}GBRBpcXR%wmrzWSs328s}eB zwmb)UkjbKs9!NbkTm4g%NBq97YcrG_n^XbrJbJK58#|{ploW?Ar&v{^>uDYmD z32tPjctaH5zT84PC+m_3U2_2y&lrcu(3gbRdA#IzYr)(X1&4L0C2#h2D+Hxa#q)~{ zb@=AWuIft+K2&E))Z#QJ)I|z32=&Pb(~%VFdB?m3Q%Go}il`jIeFD33L%agM&RD-pI%qLDxC~w}C7lIx8wwUW4e5Yop>nx`Cd>bn--neB21} z?8+ZYn`px3v&t@Yr_tQ9f#e zJYweMk;jz%=n%I3mfp#XK3n^+>UoZnmbU`MPfR}N9)sz+>DbE~bv#X^2(88q=U@kt z_K8&juxcw7QXy~I1Ve2XGvaSN&f*Dp#S7|aD69BJ0r_^oip1REcj5!LzWcSWCla0b zN)a`VIL*kYZO6+Y<+jpdNg4j@k8^6L9X9K1W;s#F6rXE4rB^bs`{K5|{Y~eq{MzV` zZq(d5$LW4hRbduttt*`lUBn*2U}01t-p6IRe_?G;AwFs0z24Fu_BfndUF|bFk1$D} z1gR8a4+%Y|sBID*_I`ASDXTUhvB43Z?$~c&9XTgm5LB>x8@%*O-P=_#w*)Wq5D5b* zdi`aKF1M>L?tE3g%N^+^J)YMvf1ZJpK6!*0IsDmpE6y2jso!Awz+}&@F>j#HuJz=n zk3qn^z`ab%yj)Ym4l&!#| zK(2dRkd|aX%bOtunJ-pbZsQ7tIc#sMqBTyPkf))DXf7+UwJvL=^FJ- zEpc){P---6mW9Ulo><$z8|=Oi6Fab0nYkpKd%@Q#1=>z!b8iS&v}C5xse);KSq*M= zi}q9H&CWxJ#NEsgfk(yi)W;p?&T4`udC{2tACpscHNGJD9w3vZJF%UtQ0wF9K~dW* znKvX_C}bY(gIt+U;Xr{qPkr&V(eHC*8Kl$@{pCj$2!zN<+=z$+gLpb%1wnS$*Mu^=Tmj$B2rkJ!72T#Ar&GRz-lMZ~2Ub`?CqJJ@Nn0-~$4L6MnIxwsm7Kt!a_k1TS*j1=yOBCG z$xmUd6TR}b7i?RPlK9cyrzAbpY_XFGdF$6lqV5o_@(*UO**^hIB>(FTAyXsoPw@S7 z+bUbZ>*-fd73uVEq%?J6#eWntZHb`*94B?SzklsLqHf|w(7PJ?gOzp(;DhOAQklXX z0|T3$+m%u!uf)sU3SWbH;j}F^009<B zD$v*1fpF_&61pY*+uuXS|Gpm4Ow#}-X1&@oIY!$MQO$~IW8CSRzJFsv7`|H!0RJ-4 z>o^_&5Sg@wyWGL^(`W%l`20Ly)5li=RM@uA)acRxa%Fw>PYff}QBi@el84G0nf6&z zeErEisTx;1I({H=64eYDv0&;ULbdm54Y&299S4SJIi(1`TH9NXx~|=yaR$Rw$H?DQ z#FUYk3LX=W*}v>p4LepWGIu@GliwUt*w}%U_pf%PPMcT>fAh!zGw2^&Lc;eP*CE=* z9Q1h2G0C2f$5Gm+3daCT>G|lGxemDSA3y;s_%}VgPEGK;vowA*Id`J{N&^s+Eo~qxwWhZz7!b}XClShi? z--{+70=OfTS($&y;v~w>>9`DAek)4kuy6KxOj(vJ`mqp7tO({**tQP@>yuKk91RxK z)9EtOhnf?JD?Dz5(11=udMr~P)6gt>4o0Rw%ziItHe?mRKr_ZA=3 zl zo4R-kLFx!F$LrZEYRk>(xHF@!}6nUI82^TRrI*@ ztS3X~iey*3wKx?tJ3Cu#-~7rRSgjr7xwX**MO*d%wIVt^BYGZJOQ!CjJ~OrGbiXK**dr^X5D zNFBE=+ajDme!q0kA&dIDAGD8TFfEl;DBi2x6TbPbw@6b@bnT^eu0P5*sY0T@Z)rBh zHKY-exlvW#A4~7B^EFsmtOS};Bwb<)ou5F{Ii}TBGe!zDjf;J}9o1W%j2Fs5Qng59{y3t%IO)ZtI7Jr&^ zgl*WMI5L}fP-vy$?$LI+-jbA$J>kq#^e|1_NRg0<^EZ#C5HOfDvI_e)Kc?lE;G^h6 zNo0x8SN;XB0>mPxn!{?d#v@q(M6ltI{x{sEJwY>5A*nzFkN`L3nLS%^Qh=}t7wU%N zRA=jNlnjG&eD*#bG+bG4gH8gW4L^uc4JFO6z=bw|xCZkIUPBUU4{G%($ZYUompCa@ zK+pY&!IJ)PVGm94Hlr~Y=R_WPF$zU4b@W$=!_oUeTXHm8s|8`O7GlILJzk3k&zD#E z5SOag^D+HxI9#@@eDEtY1WSM6t}F?>+*y{Q@w2Rq zK+xd2zoiLQsKl&dwA8tF$Va zuYIrkk?3cCumzE|RutP9dbv0zZn!YWgjyxWx;nE4?6yra9@8Om?ZIhQBt#Y-a}{H5 zY-$$n!=_K1@HzIVye zDWnO1`{z`^xU`s9tNjFyAm9>kC(W5Nu_4NBiJQM>s4%wS(fdo4!-G80tdQzF_t|yp zpo>Ys?=||yF7l4f(v7Yq`FX@u#Ao9Zk$Uw20Q!Wsk~A05Z(&q_0U2rjg(|EF2~S1u zyje+Br)sV&uW9lmw{hlV<%o%^rp`=oA>1oI6d>rde%b5GLEzEgUiDYb%f=sR_84sp zdI&_PW6iLM)?*8)#ysuavVaKN+w~@_Kf+6!zpEQ|51i|W58p@B-^)}UN$q%?Lw))^ zkME6>r@y;|Bfeeu8l_cw$0k6ajn5g)6h1i7_kDl{G&XyQ@unVp<4woDo%I`*b1K_` zWOzyQfye@#6{hLlwtW>xd!EGSPgW;)4uzJm4ybwL98ovs-yw~^fxxW&+vyb|A2qPzT zchi^Nv7cP5Mf3^!=cIG$TAY9pI4hxE8Xxfbk^{Iz$6sa6zEjH)i@de*OGrNATId)W z{?Q7zH0yVJB=HHkv!c0k@xC`r;#co_JOFYt>$`#$-fPr#oShKhP~Eexm9fjdwRr$c zh<2u6zn6n=dG+1hz)wX<9f9hqNpy|@;`Anx_$R#lcm znbmKou+#~KbiLNnwC13^8vqt*%ep4udPEJ!98;x-v+awJkm|pfXgPnM(r=g6BId*=E_!Iq>5N+SJLv9foJX zyP_L6$n5M#fpAqnbLX_SQLao*mydwJfVax)d*&j2uf(zD0>^*)3{Kxo>%8@LQ;6w- zF*NBG)o0FGHAH08)_j1C0fot8n8fUxjz&4KWS#wV&PDPwsqhebJ@-agpz;=;k1}y| z^#@_99SPVnGLroecO$&uWt#U_dZFc`r3208we>cup9628mS4zEGYSFW`_9bd?gSjj z#Y6T$P(k5_KPTA&k+;^+TBIv>u}Cg5UCzOBIbzrKg*&fxblc%PXw2y zrul$j3uwr&(M*io^pR3Oh=J2pAM^7YHt)b zeH){q;-D?Rk+`y2uIaN)?(FOvzU$0lgIh1OHGSkBKqQNng;5{2p_EbZdd)B~7qiF9 zf!A$jyT%OLvBYfY7F533va-80C2AyjXWWYs7uP;9%Dwd?^xW)_zM+Ez-(Z0szo?cAOUj04&{M`1K@KZ8H%MbWH#%yP~-{m?sUD+C7 zz*q@Z1Jz3{)SR6x8%QR+EB<@vloC)$v@XVN#A>z7PjM%5<2~=nGE@|4GYfC@%Ku&# ze*CWWW^9GOdOkC;z6icDR(%(I%ciC7_1NTGGfYg71;vllF)F_zt`N&IvB2zv9bDDv zWyRi)Tu6Vad`(ytkWjfMx5%oRW>dIdE|8 zy10rw#yx{;uNQHQp30eKj~=!?NB7b3YwB=f1IaQ{Gfac(IFa7Gke@1CUjb{qvvlK! z?C=9X5`p^wcrj?;^B#VE+}~zDU9F=x7Uf^+GuN%IQ}^S;V|EE^)T;}V$_8`s)gNjg zcD~DI?qvDu*%sZWD{xsi(%p$8d9g-@Pdr3z*46JD zs@JCoQr4obB24sbf}eN_7Uh`6|AhOp82kTeujKEUC4Toxs@VaLv+{?@wckplu2w}e zXUf2U)tV@w*P3-GcP8%a32r`cl^ zR85YBt1|c}h@uKUXDM##yrPR)l{~>)YHnaH*PvN;<%o=|sC(J4A)8*^x9td&qHUjwIu2D%njLR#`=Q`&uiub;%g#^CMCW1>APX-#cmnjn#ymY_gaz@DrszNoP+T49OaK97&0t#fs0 z9uLn4=JLjcN6(Y!n2^JpeTwOU)hq95>+9<5i`VdzI6uS^r&FTMt-7kz8{Aw(^iTgZ zd{RHWkG;L%NY#RdDzy^x1%Hf{ZS=Wn%E^#a^XNoq$-Ci^cERC!gxmCT!A5m$;rAGY znPVa>{f|6ApSX{oC*;!K4d?*6L1AbY*E(!l)R{Fwu>CC`v+Xymq>H7qJ2^l4nvql!k}yO5Y#uPW{=ISi<2`dORW+XB1bMPj1Xq?XFMmAqqm)nNM%)819m%=aDDO7$VIFTN^ zEFAq4xP|2NsfM%AuThphO?(knugmMIXaa{~32X4Eq6F`sj*=azI5?&Ql|f69FRJOs z1Zt09xV{$Wx>`WS926jH3)%b85`%GOL_59H4oJ*r>~hs@l>U||hbh#fnZF)weg8`L ztJ3f}ODs?N4sy_PXepXuTCe97@IK%CT`w&(oCN=CC?XJE&kI7wD&zm1E=dSPTcR9WTy*joR$_@RhZ-C zKF>FC03NLr=;Mk)J0IZ*$Y`Xzs6l#k;$D$i_u0dq9{=uzi=Zh@7~yF+p? zSM~q^*&1Iwt9<~p@7?o#{wuj2K>)O_^7irK17PLi0YED8m(p)M0Qaz|_FX3H2SC8| zPn$m%>@EqAWPjKzJOHvYvhE%LDyO-BDV6@RX(^&B3nC)UU{TpPE{P)t0}CN^S?1d9 zf2oA;FA)7~ObNK2_8rRM1K{K~Ad2eG1*5Nl%zqUo;7XkJbwQGDEvO@_K*FRqDL`TbBPZCDG`Yu_gNdVe=hvS2l2mokKDgh z`sc#ze$1$f;LviLl^|$b=(0Z_p!vUPVN|N4a<=1g`kd66Q&P$CyBO?Pb*D5a~y-PJ~TTYFy zLZ?0!feU6VnvuKrPb6#*2%4^{PgB3aF#qxh&Gu-{?%F#>;7P zZpC`Qu(P>53VA*i~&kMCOk%XTpYNJ0~l;1J^PK?C0a}( zGMc|hB7415(K}&FYM6pF-_X{!WKJHMwJ2tZK4q}fUM{ZUoD2pmWlHY7TtZ&VQ2HyB zA$9)pPEqdEqbd8`z36b{It~>z(JS=R-= z?|m6bo|8zhkyCwf_POje?_Djdi#PsUsm9klOylH0oDMJIloQ^tdC@N>bfg3YMx8{u zH&kZ!e(-fzy^EG{3F8jjj1@TUN6!2hFB|LNVC)_D0H}6{j{+C-($p>VZ8ibeHOV*k zra=%D>P$b<3lxp;iOvVh5DdN~e@5oP~r5K;7{DWBH9t z#gB-f>e)vo8x(@-k3hUV0Zt!ZWvEB@6p$Lg?@dF}%}+~wLA$M|6p2TO zWStBPB6WGk>fB&n2xhejX5?C*yg{UUshYP^juPdpwHCCdHgj297<*eJSaeWOmDMx}m z<$!V?X}yxKSfRf(Y<33Q_YzRThcWL!~ZU;=21>Wi>*K zK-AbKOvK%j-4h&{U*(duCbV8~iW}!vJZw(St%vA$Je<-q6xJy~G@!(m|1z}R&Xs8G zGHk2ZuajX#(0R~7s&wy1Y2N@WlBq#L^w#w5^lqB(%>9cNY}gnRS$n;&RbNN$V`faT z#=0%+P(pA+a_#gOvpmS1_lh}sPaE)G>zYLiz%Yo7TL3~ED7RW+?FC9Di~8M;1C@tLv+>U)h@+I$~#4l*~}RJHc(-_x}xF$@gs8wfeYblKrk?p@?zMDNZww& z%BlQ#yRNQ{o9xSmF((SFVQIiTSe_oO-#1O~TV4Ho`e}$h$s9gKm%Pt2YlluG%x>fp z?6_k*hUmG=U1v%g*__aD>$9zlq9>l2eoP9%<&6jXP4jawE1GK3+Y4oW)Z3aQL z7Cnn$euzb+3HeTVa?h>ha%mox9}BHwXeLQw!Pp8|+RO=W~T{zUzv;o^mkUC>X-12^1!$LrGj z@MIAbKUK@%lIm`9uouAP;_GxDQL+sB51b3FT4hku{%h4t6SE+1GelK~P=BknZ6;wW zWX?UUzGe!PG-#olUvFjWh{ZTDq7eNvR{mhFg6X5Ow$*4g2-8s6HgQQm z+9=fX|Dfc*fu%?V8E|kafI`1Wag502BZJX|O_U!4(oKA4mRV;j>imff7dy@stV6k) zy>Vzmu0QSLisxx_th4F=prF#Msc)!Cn%loKcz+t%xh!o?*} zlsD6kw+TOK^GuS}25iLQBCMi6e~g7Mxg5^QPw}&i$8QgA(c%*yKjuU-jSiPD%0CsW zfE!oqF91V8yuTR_x&azrL#5*Icl+I#DSWM&rfM&vcy*dvb&b4h?fQ9tf?IsWE6IUm!c*6g-TNO3~cD+Ctu^Z zGU{gfB@UH=GIk;s9h8*zHz@w#ZkSsV2M1M3C2j5Rx!g-e4IGLFFG`AG--btcxd08bE{WZMQ$_ZQDA3~#j zPG<5s0w?9hEmpW+5AsW${X;YTGfz9(oBEe4hRNJYj0ZLkfLR)ccjNOEtN};-4}dJi z@gLu2{zBoQdOvM^bJ6n4Cc=@uN__x~=kMHoxBD$2!vFY!na)0I{qvo}dTT+Fb>#km z47;6wTsQp72Fs(5|F|MiH-GQ{LgJ)b^OpHvokzyqPwV4zqs% zh$m-VuND6R1+Y8z>GuU>!@_}y_99(*CLzdfnhpfCuom8Mn~rO5 z7Y@j|D`-F8^LYTgCyn`|ac19VD}FNCT9uD0h(z=5el&#lQdTXU6j1q3Zw}yl_OG7f z<(e5O0rdEvHe-t%g&aX+HYU{{;uZblJ}t_1f<`$?3*9_aFi!_B(oE3I?~IB6^yc3< z{fjw4`Kc^<(-lTK^4!h(PgUbW>aGSh!sT}A!uJ*Prmc0i0P?J`*b#I|WgZv3=47FP z@wwEaYLY5tG-qHcpzxoGHghL_i=*7fHtgERf{qkM{KQ#`;uCeSSjpDE5?0m!D_-4Q z+L(%j)dPUdd8uA#DY{{tBpdVBVEE^6{;x$+Z!$NI*!bGmLct^uAoKtTGUs>tp%kz) zb$-d5n^}KUwZne(mzD`Eg{1ngG=q-pD*}fS=}lS zU=wjfBlyKD>W8m2h0BSS&Hr!=znS=Dn*Py-0k)MtZ;b+0!b%0MpDewsm10$V=07ik zU09EzF@u!oUaRNiQ47U36OP1}u z^sM5qJ0<}*;1S4`1L7hDP)ejgytTHuk__L;y;p2AwkbxtCDfa zTramt&AT05GNO*OP5ap_3poDr0{do6AiiS*>NkP5^xvXv+&cE~ckQ$Hi)a8nom)Qz zfoC3BV~#@fz0LAAw%O`~GQD%l1NUwI?#Q|Cs2u?TfJ)&UVc!<3!sljxtO6A=boWu41+xZ-C^jNv-yr&87CL zj^58?!^}R0q3Wp*$y%X2@!vlxsH|Wt{|aC656zx21IwJ5d)R~*nKZJ$@;C^(D6RT# zt^}F!(Eq;f3QI8MG(~Z6KnA0md6A#%kji{H^Nv@@T=`*oRQKKTr3dj9MhLT}^o`8M z{)!-SIsXEc>(W@GzyE5pUlB}*)5$Suq6zI0*EI1pHkUARW~*Ivy<4$jp}inf9WHhE zrC@f)!bw~;NcWTT5W(g*4AZP~P<==_b{y-9ae0}xq8DM2$Ju1}@y6Ctuv;g+TOX@^ zJ0{G?z@Q!GxKZD1a;;U}^r^rEFl?!a9f$;zaT&z`l}6+v9=FJsbkRlUzc&)vjPEs=y7ad?UOrH3uxCExC~T04 zqIILAcO1eHslpqcM!(fs%1psYT)LY9(aHO<4l}NEVSX*@r{Kz+19vNgsMLTbu?7ih z^;L?>YIpww8 zArBd*kC2drLeo168;j3cw>KcuCjEx;SCvU%^rimcW|W;^xt&N&j21o*4*ed+?e+U* z*!Gd;*Qj8I9y5B1nRIJs2DxzsIba6gb1*{XiN5v^zSzgoeOn#ok(`JfA>lD@?HGk3 zsNajEHAhB_YM++~{H@EeLvxX4k3DUcb{e)z(T(m@<*f20d!>N2IbEfn{YNzz^?lx5 zVcP7(zR_a)(#;^nE+ zjAuQrX&~a3$AlT(z!sbFB(AVq0_ z)>Q7SX(**_Hu&-DNhN%;xIRfbXX0Q9m%YPj%?oDDFwV8lv+5hjR00}t zu>cW;O?7P?PR)3oxfhU>a=uz~0{q2S?v&dCRt&@M8nlRsjaplA1n{1$><@nJFDxTE zUxBsGL;?9CNGm2Zm@Vm(-ZzqC!Xp%daTNS^haWQp3t?`8Fhj#v%`3+O6uM^k{5V+q z73Eg6Us*&E2nwj()Ud|#kfS(+1pO3~wex+{n7>x8e6BfdnRF|pzRp&hZHnvpGg^aE z*-xX5dS+|tqFsE6@R(9(?US&Gmq;jT^@6oT=-Y3O83Jk9K5qT&Ada4Cl!UFW=3374 zyF>ge-{VJHo>t+pv%t-VpeX0jt5nE2WfCX4xa6<3~VIdy?@+d-VA z>3+UCvgNseS3Mdk*WyTcIyW|>Q{4Tr5HbvW&;vv`A9xKUQJGC0>+#~toHIykTHVx} zDidD`UzKCLqX9WF#Qc2oVtGX+K@sFImPSYY1Rbj}?D4*QsjIi=l%a%14bL0enT%yK zVoOElxAoCN$Q3qH`J*17ePVYy{*h(>mY-77Q)ETpg$0FivezRz=x@%5vCp_%`o-J~ zd5WYlfk;8R*LrWffcXVq8B@t3OoqP)o&#OVxD?^6w(XU<4nLitbtuDMhCnu-M zHwZw7ix1qdyobguVHF*{D(H}~I9U&0?hGTp^p(}7VHWoKA+YF`Dp5ARz8d0fZ?3?2f za6cEbq)1#h(txO?j2-0q;~@kqt4MUY$%Y>cpbK3`kj3=eXCYZDa?<|=CWnVZ?x__e#6Xzn@D)Lq5#x`?E7*)w25 zAbw0T=Hrc^hIC9DoPWN(_g^NsG#Ht%^Hup&d5L8xTzOOp78@ogswB&18*oKZ$Jiu~ zbgxJa2W-CpT^^~(hxM(|ey(JoJ(eRkTgGjcVq)Jkbwv|qnkw^t-*qC(yC=f~bD$?< zQGBF{_p_Ex_(tW`u57;3q$KLUPjBT}AwIHS`#tK!LkaDBLTs;%mJTU19TVyUV9t@f z8|=A>i~jD4Pi=1XcU<>BQel?P{ubwU^|v^;Rwb?Tewn@ljV1{6e&p$=oF*G7Q@Tfs z>UhWxfJ((8_r@7Te-O@5Yue!F9c`Or+neAGFEKP8;4HY~kqR=&sLxVXMuq$uV@p#5 z;+x@d5(_qnH7ZAWtCIvk9;wlFe~OFS^o=|ZnW~u2+85Lo@RbcOXNO=Vg-y~5oTsELGr62I zyUGi#p2?GyN{5a`tfN68P0bDRb%TZ6h&NOBmn4r85z2@YVdUs^)urHh5lptRi@mPp z?=m)*5slk3$YL`f_pur(hA$a;Ym$y!07`^*&cp@bP!^1+Poz-(6_ysQNiKt&YLEFm z3RPc*rN>pXP=)Ac({lpBWG(g^B5C%AxfvCqmbSaFBbL>f-v&LyCE(UL1(v# z%YF(rb$eZYiRX7<{e#`3FM^ z5s_&EC0-(veEce%vjuh^(P{LYi8;`HB~gZl6T#^KU7Dx$%}eP(WrO%wp@T^67exjt zg?7oQ8Hdvdn5=6v>9iW#X629opD<>>@VL60>cN%=Rsf-Yy=r67VZ3FX8iG%Opr`Dy zCbjrB{kz4za3gcY9E5@4D_d(0LkU6U)@ZAD&tS~R(}ELQTBQQB=Hh6jBtp>ebT4{=k~hU-xqH0(x{C%*X0EjK5l^TB)zoKAVR75og4 zFFuD931gbEv2NEwbW>$Zb~4>ErwLX^+4e8H5G0si5<1cZ+&Y%h&0E=aSIjc6L@H(= z@osJ|=wXaaL2r`fZ7if_YCjCzp6fuL>F&X(uA1$x>s`e{R9ML}?yUe;man>Ey>BFu zMW>(68XW9aJdk%a+N$?>vkUe-BkYSMhJ$7f5%<^-TZA-baf)7*DPMYU|} zwvv?~NK&#Sm7FsONX|J2CFh($l7i$U4HCLRa#Wz9$sjpMZc;argJemKfWSrf*?Z%; zXYX^yd-uNae)Jf%))=d*)|}s*HEVUvZ;BqVpxk=+F6iI=9{#y|{G0zX^*Gy^;me(@ z1);8piMkIg-@&w!|5If#0%h-4`krS#!P@+EcnNn z!;zWO^yVL#h-GeHbQ=BEso2j>1!n|x!CSyKSwnHkZ<@I>)_o{J5~sKrD)MH!dW{+q z4$rI$=<_5=nP@5V!rfXo)z1G~M7VMCV+)nMYEuaM?9E#p*?8YENQ(O+){P}r7Kzn8K%(NN=pmNVqMISNB zoeGK4V_C3tq1#vP91_ZmqH0g``b8gVNU|S_4*X5e=u2RQ4{1L6iG80}Kw^(|tlvN) z&L{Yn{qCn4w6Y5C-NKSboh5XH<4UZJG3M#~wbbbq$oLx*C`y@@fz~xyWVfwcOca;b zC?VgnB1w|pMd0TJ>~j{Pr31`QGXPxMS{K(Jj{9JEwV3K3Uz~(r0$yj`ICNk&7;jEe zhS*gL+)dT2727rAUO#LS-B}eXNhh-@e{c!VVNPJ;Jjc36IQPr5IsXJB*a+R%M)h}% zj<+g5^iY2lr|4vdBT`;Ptxdy~ga2^o8-M!U(sXaSa6{8$4P_-L`jb#9K8Ip4{fU2by5wOl9d3RQ zain70U<&ttz>EDmtBGpuAK_bZit&Srsy&MQ2q8fuBWd%9*JNZEWNzR_pVktuKlvgD zHt%cR?~X|u4CpJ%O{`?YA;Wr8@@PwZHMR&tGDk`I5l_)!Yb-+;VPjr*< zESX0ADzj$n^~|GWsMI_0QMUQ`wtL|`Zq99{&_^;VmOY}~wAE6%yf6Kg7J_q8@1BDK ztL;%KW_2$CdKa^9lOPC-_?IEc`nuS`34^z~rD~5XX%tLx3s90Y=_k-i`b9bnxL1O$ z465ndQD8(Uv?v(D%U1bJVSGTPg&01`IuAS8xLK^9%so@lVP(C*dU0|Pu9TQ@xDtr% zj==^#U0N^rzOA5RKm$qNe)zGM75`GXwSK6!rwA??Sa4DH`&%tlCguV%6WVXiZr%RD z6JZm>lQU`gqM~)6@B28G=gq;6G)BDA z`^)##{X6c_W@p=FO;0SV)#B#r;EQYnUzKl;7|GW3isXt}Xp6*ux;lwFRXY z=x?}vlm2n;UgxPNM-OLdpsN4{p79}zCr18S_OeIT9pC#0;Ruqj=OObIquWPyG_}}r zT2LM5;<+u950q2LGBNa;41e)Ov8}Rq{r;3DKz6Y6nw7oPSR`@rLRAHPQXp_Kg8N*W ziE-FN&e-QZKP4CXw0uZMbPpye>OPvg*5KycKBu?YMRVRIV1!LZ^^0-M_~?=vF`I)h z36-Tmn4IVL?9}p6t=FFu5VW%eFh?s$^+6VdkC{SJ`h9gxQW#S=9j;4PfL&(esJ({? zr95<^*X{m#L^T~*3WLngqt@CFjHDRDxyg)Vr=z?Mg6m=Ny#$1=#d%&2nPnupzp3a8 z8nTqd$}ejcNU*Re)-|VcNjZ?oF0dN_%$FF;e6}mgE&-ui+j)V!Gj@ygQ}+nF z82E2t(Xk3*AC~x*<=*#zM%y#LyQ3dykz0aocB{Of`gu-PkJg~bBllXCA@P`w*X4rv zXfC}vO(Yi(0qv|9p19p->LrU|WXcyla4m>8(9@Vy_NYP#pe~0MJ1xdmtz&@kbVvu4G7MNJhIyWJCaHhXi#U&4 z?M4PNook=Bhz?E-&SqHgOsJw!=%|OwjXAOv=vbF6aSCRkeGs|vpwgq{td`B;V!+M) zbq{tVFpAlwh<|2{rmCk^-6cf!LG9e#OMpeX3K5P56++bJjA82pq}@4Pbq;Q7AomzB z-qW0LGcxJ)I?r@qX?k~_xl3(BpPJ0bzA$Nn5nZnAJNhMcd-%{k2tzD}O@Dr=D%@aP znC-maPQCWXa>9gKtq>I>kOEKLXICFYTpKndp9r^^;7?KmP0YxCo0mo4yG_Od4vCE9 z1k<=8ncnWb5Y80ZHfX85fQf#dbQ~yyz7PxdoIxHf#t+7SxDCp}9v2Z^UECR9tgYc4 z>;ONkS=Acq2l3OHCLkv2lvK`W&(J5&*qo4z$dL1@p3f^M-U40x(+!p`-6py8+ zklD5|!#&s64hzl6!c$)(DVEsFS1EdCaRb)9P-=TbFu!jkzv?)a;~KC-dg$pr$DX!Q zYkkhq<{*V#7_>Q5C1wrOhYFI$0cs=aGU8H;my@yT=2!S_H z3kQY{h(0?oEDQfm8#wLNGSzGXZ*H4?F@UHK>{me^obRTWX#D~9E-@DuCKZaOG{U*h*BJ5v8Q1jG3cmx=Ec~fTt_gk0-svtVqxt z#$~Z;-)oz4C5*M$52N=NJ#Hl@;OAf01*Xw2jGMN=jtCq4G~J=P^ZOw?t;};A{ibHo zxQ$x3F9CNe(%X;qeTPKK&U)^XE*b5S}P3HLJSJKoGjE%qECp;V=I$M2L?#0{!~|NVo)m8 zBeU;%0^Q^RE{fHY*<)LW>ADNBYNn_&%lhc=rOW=MUc{y(yI;A2qj6zqr5>m#FcgJg zLr~tL8xrU7=|@LirNStito`8lcydDOL!mcr;BKOdJUjdiC$~FL5PWsItsiwBLoqt^ zBXx*Sh&4_W-v`41+g=;jngeqp&)0%S%S1grVyXcf`3bpl1^r$gZmz6Ote^F5h()4a zk!fkUIs=aA_HD03PS9yltdQSbU}7{Qd25CrDn+9Tyw}gZwj%5yQl-i2uehc^dcR93 zs$T)|$Wqr-YG#=fnW!66i|v~*@oE`+)4KfmnNd~C*WEwXU^DO`D*VH>0A>P93D7m?C%r11%lVhH$gLIWMq-X2;`%7ppiwj5*Ye~r<@#I=$)u=roc0bvpC>x z?tZ5=j#fGb>OA}LW>TzNFGg@u8%1n$CeME^pRagR;5`ohN_94XMY=tTo zt)!R*aWr^hEeW}(8G9E`jIORIRnGvC(F7YC+#2M}Px$TQy8$7dq0tA@^G*(=Kg5t( zWD^MI)D=kSKcgR=F>~~Krfc?|%I|%(%}q>HR~$B5!EkW^N><*xNPt8Zk}CNpdZYlP z#X4yo)n^E@*T(_CXTtso;eeok)3k=)Vsr*{j@X9)+z?rN;Pe~jLpxL>fzu@|*E+Z{+C`bZ(BJ=b_-Udkk7v>W1|HOj zY8!iv(9qj;-vTDli+8GAgtll7!WV7~?Vdfs6~nc2yAt9>`kzw*AI|;$_M6VW8H0HX zMd`ZD*0YbE!4PgTtl7e-cY<|MCBsQo{iuB5Riku}NyqXO)0)J=+uoCOm2cQG)@sPT zc(|cy_El2c@eTc042*U%^jM@q%CnsOi}}~(Yh$2*0&5R#hbDLjijRGYf9rnsIxjg` zNS8(c(QWLvSi{|avTNC_XFrPut+O_>6gbcXc;RB)qw`u<543~(4qXC*Mg#Y_1MTz! z$Nm9?0%tDzQMR!6B?I`uWz}RJ5_;3dd|HqB;o=w~u9%11X)nS(Y<%7+?%uskAy7tt zONH6LStk}uvl%;HbWN2b*VPKaD0)Q|wu{dKYouzJpljhb>*H_*EbaQY$AXTE%nDQ- z-fyJrsCIgOc!?rFMi>enyi&Ry{Es>1UQ9qP0r|fJL1LIspttKPj>j6zb%#Ja1q13U zXBr-&Hl~_tDZ31juEDfEv$ZGLK=rw>5*8~yBu-B)b8&H!2e0o_UL?O`gRErkpsM=} zX6uXFo~2^X--Xg)gFnIMeo>x2%6O{S*Oo!Hrn2zeJ)lK*)kU^q3n6*lnla?LEIH5_H$|NY`mdeiO2?a~wp!BRG*q-+ZRRG` zJq-BN%huw(sS$ER7eZS0b5di_^RONRpK!M2X+cNPg4+W;IT%HFk?wX)#%*j{n=hfw zVM-&4Cv7D+%lWUO?O2i4;``9B?-8Y}Te(kTM<=%|85e_`*(3Zv2i~QQCE<$pd$|rX?l$w6DA}zmLfm8RE=3UZ9}0gd$ z>L_^7>IGlEifPY!BRXS0AH09Q$p7W>(QbIPjFNuago4Qj+eApB0?jiz0~pgQz@6!C z)P(5c^3cDwOMND^&pVykd}_+b?GILD z)1>CXACJ0Rw7yfBxezrCW^+$A8!d%Hq4jk>iX1og*L>)>tXxim;j!7n8$a1~e~p~~ ziDx?KmON9cR6}U@mqe2p1#Bc|ZBPxZQhCrb8I2Gh;RA)TpdX!>Ui%DIGA_OL2U~~J zowL6I0t^g8#cjXYKGN2 zO+Fr3)?-soKNxNd-Ou*yYp=t834XJ)AlrrR2Gh3NNO7s$(6>l4m@?i_>*Q%y0oscJ z4f>{@U`un7Qies@Qd)UQnOS?;`QRKp?rYZC8lmDeW00@m{!h= z{=RHycF`TWZ^=YXLy;i;alhqr?+mW1jV^9SJV#PA=uxW<&7xliRDrHJPB~2>AcbtL z$-vcI5}Y7kAsnZ+4yyK3naF}wr;`LTV0q*R6y27Wc*WdExZbdOHuvhbA9}asZ0u40 zY%Uxcm9F5|knShs$DIj;Ye(dIdK&9FPu=jnDL5X^=ZhXEkhaY_ZqdPMG)Tjd-Hk_s z!7s3e3KAR%V5P8kzn53eB)v!f3LIVzoSi0}8U!v186*e}(7hyLVnA2m+Lt92DDoFC zvSa^Zsb~M9-#Mk`BU<&u!edDBt(~?6&`bPSzY!R2b7Wi9B&+d0vhSk3r@rQuYhrTREU%zL>D)T$b zGmg(9?Rs6803p}y50nO=f+hlupL4&QR$mK<8}v*p=djy@LR)F!n*xXjXU!JZ2}#t00LRX~+t48Sqd}QGrgfJ*w^9u5>dbc^ot$#uGIk`%cyIDlYZf^n{5$jeC%zea$;*fe@L{J^etSDlGZ`eo_?{OINu3cm;pdw-dRdLCXgLe zneCRJtlhKN5`(9p$Z3BVbHwHvKxS|O2!T?FK@?Xk3jTrHrnZCK2AaE0Wrqke7xyz- z>|#vyj;cEVfO(?a7bdRGNvNkWKCFC;6l?V6mzBuvV+;(iZSNk%09?w9ZjxQkkhGs) zFi|=j6xGbz9|$3m9n#nNz@j{?KFQ*+s3w}3%bILGsY5ccsypg~d?f|o5?Y8@37RKQ zGD6F!8n7czVfVRIyoNfHKepyJ3ZrZ3dqm87Zj*z@tP(eH% z`4u$M-4?In?gf%`%^HY`uo0Q=Qlcc(3%r6(hrJ}c^z}H)N=e4H4^}NR>Rwv_qTzwX zkuwp>+*o-I0DwY8hMwuxBMVB~^QRkuCRTM9qfjYXRw#3yK|;f=CtKoFnXK8vTaU7X z2Qm5i`L_)}fgXWIhji^e3p{8TqrMAK8)~AH#({*vF;`>-j5##m=|+r(k$n@BHsh#J zSAKgmb4(5>#jyu+SEVfIi}im>a&9RUSBDF)Mk4E>%6%)}E(ptkc`;3jb5=>1Oa5 zqjnxdO|nOX8vWr8lUj#9y zKgeCuRKXP1-wt}xy?3Ss{M{#@s@=986mUfy6I%rnT3k}m zuX)F=!F63T$N~G`Ny@KjV(m9gsC>da%;Y*_Wy(G99}-pJ~wy`wO#-Wh(h3*{{>1`D4o@#?Pw8Ud8e{%!L&EAQ)G9 zQJwcYrMT*K>hd46Cld-*P#bZy8o#SC_Wo7ge0WcMFJ4+AgBL*Ou`3oob!>i#+(LSU z!!xsD;gr440UuO^{l;F5HuyJ2Kg0;aq&~=)fd0W=E_t23{I`+-k)XRkT^p4@70th!8D*ycsv54Bz@Z73*&j3{HlZNQ6%DdVNAOjSp?ludEl+l>%jYi z8UF{1dHfyGWJct`U>;GAoMn}Pg$Ct(bm=Fu_hNnpP<@b}fTOz)^I9zqcRVS`G!-p! zzGh}`Gy2bB1R-L~pzM2s8JIL|{DwLuWiA*Aa2^bUyIYKd`p+W~U8Kw98$@Fv(oa z&kAG=;R}0eeT+r>JU6%p?wW%E&J)K7{~mXH#=6Dk^J;GInthjWmsw`rcEeB*%4G5BDF- zWn-~&M<`C;_Z7s4o|~FaZ+5@;U1p(~EBO|vSUI76fg`$}`s9OyH?5`zrJYq_k6PQB z$Y%X@JgC&n;7TWW{SG=W=XEpmr8XT`38b2B8;ihuwE33^N9S4V`113aB70=dkbdlJ zAK4|~bqZh2{s|D7z?N3hcV4op+%k(5FJmA1<>Gqjg*d1o-pR|~LCk{E@;2Qr+r;LW zlO9x9p)1mENUA@@Rb)BSSFU_BQALZ+s*K>9-N2|vKUKA# zm#X)(o-#}Wolv#P>iE2YqA=;Yxh$;X_U-UVmJ7<#o>orT^$wT9Bo1FF>J?~R8T!`je)U7X>kpxa&T_;+X^ zkwOixYBP249(RA>I6@@F4VI4o?GkzYxCJ5*qEyV&0Ze)lLJ|7up`5@FneIh(-p`Y= z|F3^km(%|RP)h>@6aW?o2ms@NT2-vp`5$bD00178000pH003!iVP|D?FEB7LFgPx1 zaAjwtdv#nK-vR6Pw@#h!J$|d|W%1=F0Qa4|k~{zo4gi4ra{*qK0kQy8WMmX%Bvcd> z6f`tcbWB1lObiT6GJFCYLMn0^YASL{%2)IpjIU_f=qM?f1ew{mxcT__Xc&dXg?Pj` zc=>q#VgiSThK7lONs5I<%JZ7?HP3&0yz~I@P~imO8_SY)o?hNQzJC5;pTi@*L`Fp?r+iIKOaGRUSy)tDQd(ACQQ6Q4Zfb66 zZEOG0*FP{gG(0j2fzHm&FDx#>Ha54mcXs#o4-PLbudZ)y?|$7s{Dlh+fB^UJqf851<#j z6|6}0WG|51f#iK0B?i)b4sv<{oa1%>+M(8|cmYT@2mL}_e{`>R7V|3Z+n5kFg0}~8 zmMU6aekIm*ishoWM8tJ?N{>9@{HRcF=QhBzx>zVy-Q)CnP#)W3y_N8$)sy|+p!V^3 z=>_nUF6d%Z45a&?kMIzbkbu~pm+aP9%;L{*7z{i%X@8ZFIW^4!cq|CtRzEoh-V zeSmtg+gxeP!KsKdTBXuizy8Mkk&^QAgCZ5T%q&pvr1Sq4JMC{`d#aKjWG>tmyGH43 zDYLb3w+DY%*-1%B9e!m?2;Dj%6JvJVWd1Zm1)5nxd>=e|k}MF8c-4ERJZ_NnU8m|l z@h7lqzX0-HHgvgH0N$%ZF zy#U}SUI6jxI}UkQzinRt!ErBuA=ZTS&E_Pm35Y~SbxeQ~4DEEF+)n-L&z&%8NzD1O zST81m-l>Yx3Vu)ozHa8UjXoW{xur0Legm?-sq!^dQ+>tW>Ql>c5G>ON=IxiOnz($s zN4C6cOLnGtZ%{^a@HgCTDja9;r^Q}9bF^j#N{u*$pEf@~ZK9wS6Ax~5pdebs&d(QY zc2EgmQR^4B(rIVB4s!_A&bA^R`5DNo0#f>(&e!?(dZPaOt*E`N))!N-Cy6dNKa%6_ zNLyT~3a1bVl}DTO7%HKb{iE)($7lWjQ1>6zu>FmVh00bJ4=Mk>0Y+gv1&dK|Od8|w zJVD8LR+>Q*&T!8YhIxXjL0AJC^tT9--?$kv3-(1*BwbRr$GZ*7#>*zv`^Ux?K#%+j zVC$>j-`mudXDtOo$_7g39LTG%IfWkX^n{q%8q>85Y1j!H!^#%Y4pit*%QUGku}>Kg z&eF8S{R7&+?PTo&U9Io)kktHO;)6*=fTuY@k~RD= ze6qaiIF8FZU4)>~xuAchY?kJbO>xowOx@e?&#@MWRn;*~MdovQ-n8{%Sk+5MNk=5} z?cqCXE@baiFRS07jFxvqV#Gh%wi0^Te^Jh1O!?!+JAZTIqLDu~b@}g)(IHOXdZN)g zzb&eUMLmMVxO0iM@c~6*Sc}`(!eu7E&J^pWuTM0r+vwD_9S!Za*7-63KbeGvr$7{N zZ95L#e!_C&noVfg))O(*SOpN)`sWUr4?Ce zkarmpO!b%W_x~vjo(vP2M~6MB@(<+@((zfE}Km6pZ?u^QvIU=MgKqZ zZ+33FqWc%{o$yEN$`E%JHx#H#%lwF$mR2^j@Ky5({X#VVPrLX#X3X;>c`gmn`?74b z+AH{G2yn}EjAWFXHEKvSe;;NPQY&8o{}ITmmIesn6#fNQmK$r>5zK41ETF7UgnuAW zlV{u9d z&@qe>E1<=!#1~qfl%ls3I?^qNPxyzGMgJhO_F>=mg-!jE254~GY#5SWBumCHR{9|J zw0jS})QLhO$v=-fHL*XP2i+!FD6&2`Hz)fkqi$)8%cQ-+?!;Ezkiz}v#;7rUlR6hS z&)EEx{)<`j7?SLdh@f`8pUEii6F|U!39@Qd4GHJ}p8j{AEbne%lWgg(|9B(#T{Wjs zvM)E!+Q$v2p;Q{tw3YkFl?+{OGosSIO@4SYRF4l}S?6ELCF>R#M-?$N&a@ zymG{A)6yReqb(SX7B!I z{$g35xoHX>a-9Juj_sVry@MC1@}z$O1k6YCy#RjQ&juasy#VY>2mwh!!`^4lUHLD7 z>5^*BsG!RaO|=hq&xI`(FM!0G^``*o7eIls<_c_iZCT013(=$RRo@T`vJUlUYAlAD zYQAHrg#R4)=nPAL-~VGk@r;+!iHkX#(xnZ+*>uR;u~EdizT%_d1o0^LL1j&!Z^d8XaYMr?jP3>xnXL5G2Qg&mJ zGEmC;rIm`5@Zk|1xRUn^C9cm!^dr&S^Ys~W!xSsarA+&&6LxOX+@Z*P&ZcSPCv0+Y zh)H19WTqwFaNIjg=W8*~TKQ&Zb+x%K5cn#TnY6K3y|Rj6HW7s$$_9=T{lLQ?7Y?dO zIs5inYxSmQH#q?7&{xX<_!KMg`ocN2trR@R0Xlm%g}>a)JM^1=@8(1ovITzI);A(E*2GHP6<5$L~Bu6fX2P>VDxPG0a{J4yW#k=w`vw*7u zlPo=IirG$4-xlIE8i4}#b*K7Xk~Fx3L@pj|oN*p(k@+WXFEP~*3*a2lAJifZU0op@ zW!)Wm`8E_Q4JSsNnp6JHO+K`~9=+7$xj!z?Q7t>aH#L18VU;i1G5)@ty$9(s^0kyE zvDvrFv}@xq8oSk6GZdaYwiQ0p4Qf0dxbObWM&ro5lkr&JSzCJAdRv?p#l3Er%W3Yz zztBfR{L2lYElynu z*w-xn#5$L*+NgZMsWXq%o(eDagNy2`CsKRTi8^fm0T|w&PV65D>VyQ|(}rtj9ZHRq z%^G8@9*uoewXQIIG>2|LZe&YWUI5m-7$NXu;n+*Y)oxQD|2Q21fruxUxN3$I%`t*+ zgXdkYI7R^)N3I8!1NazOrr3|~LvPPce3T_sXI`l~P2A0_N=e6PO{ zW5p~H8CyKTyfCGN5B{)(+C5mZLz;6Obk29TNwuO9sxGcR@#k!E;us$K^Y%HG*}I!a z6OYOIIoDDe3k^a;LZ)%v@wa~pgSu#jU09Czowr}(;K^<>18WM?3}bv}ycsrnQ5CmR zGMg$K4Sb?Lz4jHdyHoPJHRpqp#=mt?v-Bz0D)BL(jscd~+XL$BTXGc_PGlfNZ<8)U zT>-;Kv)Wbcj31yeP5)rFd8Rod2bY}QwXf%P0|mEiVa|_oM4xHQb=Udq2#31Axv#Y{ z`WW1ty&M02{v21af_8SDMNx74Q%SsC6d-C9yOn9Mic_%d4O_N!etT}mh6#r0j%DQYD8vsAyO#Pe>{!r@ND5mi1W)s zL_xW4qwy8LUXvp#KA-abF$9nPOR^x-n3>z`g3q5sF)ZA@p6~*YHOPdF!hWopft#b( zhPiXXb0d&(mM}YlM4AVOnzWqv+(H)Ne)xqJ)3D`F%Ff2)4i z$MMO+@7O>3`r(~&z!&-O!f58;5y`oh>4gl#zM8zx)dzuP7@WrkIBE0orq1(QJ{hsU zPaavJQ?ykW6w=nWuYssdi<%>-0zh&3wQsk@^8imku)o1M8Dpa=r;YYy#->IFFow*= z!Pl*J?-R1Q*-#nn5MsA>cPn};j1K)JV(eK}`Bz8Bk6v{;YNyfx3o@pO=|hVF!rKd$ zUL}jB{Yh*3hDHixqipr8NDuHr#qE$|&Yy}L$Do?mvZ?WUsi~iWJ~t@ZICyd_X(b6@2vh-7X$R~mHprSwN{+0?oEsG7f|6y)Xzbmc&d z!QAEK3)iSreD#nkTy{WBmAP)9A|D_w&@YQIn54(tAG@P0nq2iX6EdYaVLS(xo8!+B z+5D4v8e8J6lbO>$ZEm;)OQRGVsn(^X3+t~ruEMkGcIE07T)-Rld31Y#Eu<5&+7MHx zOju=nTA`8~jP((h2L)jt3?tt|!3hLB!++2^eGIyXe^l5n5A$qIR z87wYK^K~E5N59btsz6})0va)(i*_u(QN{5UnBP4qacnCjsLft3Stj5`?j7j^dyu8`VM z0DE)K1%>`+s4qi}Kx$dn<+^xWqj4>~2Yx!uIh)P52Qq5*w6{%l!A2uMq={?SDK=;I zP~0K7FLd-w!#6cfqV|&KSpr!eY#>BeBtLo{aM0`3F{_;Xlu5^F4xm|AOF%$5T`mc! z-Hy~~-wHLBoPEin9^IRq)TVYJxX;`y$O!pDlz+C4k7RKVJf|W#z-6GfHs#|Y9;VEh zC7k8R`br*CiG`HcRcI?j<$|NiZR14sq+oTUv)R$NkUo`!b=(X)xOr3jHhOvHdK(J) z$sQh8;HOs(Rw+oAWOhcGh;MS=gkj{dsbad{J5vdk1FJ>2rewtJ0^z)bez)%FHqU&Y z@!+2*37rtTJaji?#aCQygR>FVTnOeiG$HP8`+n}67s%_kz+;GPGqvvI_2_0G=&zGk zF6I(o33Q*ijIc``ec}0rFsf z8YNCcZWARt_jwh2-l0kf@ZD{2;-DwaWT@oaOVQ})#+!16;(xO-JEYt108C1u#H;cz z50u!SuZbV)2+XWXu4h=No!mHCK@>{tFHFU+y>&*s|8$aGQL-&_^(hKAROCFJx^8R& z^SGe?wDXm91mGrE`n;ADP{^uEw$)&2{>p%MC# zxje|;R8{Cf&Xq5_mx8-~niLA{Nr4Lbyzf+(XX7hLA9^~?O8cXatrm2t)SMZ&1 zV|CN*TBr(9+GK2a&N8OU&tmP=8Gal404fKAm{^nXX+zW^24#|hQH5&;$K;`W^Q)F+ zFjzez0Vc~A#63#vj56sG`}uSYgex1I(?CaMJp(`vHhPtXBz^Q2Svb|rt8JT7lx!85j#cN7L+NMxgH_Co9)VDtcLrT zB;GSdGJf2nAzzcAVFSYK8`1U*it5&hOy1~lW+LzbTa1M42p(bITfZ(Hk=J+U@Ut3A z4Inj)%b4r2Feem|n7B)eo%@0?Vw9R_@Eu1Oih?k`Z>RaVdtHai`-R!V#jYu-aY{VT zO6)I9-yEk2OnB#c|A`!?MV9<5%Tf$!>gZ^1)Ec)(lt65uPw&Wyj_t8cE+2Nh8MRyh){0$lQz_;=5q5YjU4WHOjio*%^g$fzDro)<&xN611=`KaC@mb znK8Mm-Cm(bMiXga2g6Nk;n^E}6ihaevjkGj=6$mM-+rK4&R*?mV1$40ObKmLjP4 z5?(Y9_b&jLy&M-l=RJ<`zn@K~Zw0O4w(+ca*%rgyk72p zxD9&&$fPwqx|FUSQDe@ru~}R>+kUaKZ{^rZ^iKvV)Q^W)Qd!j$(q00&JG~pkAa)N;}{2ETEsI7Z<->Ovu?SozHQl{aw)#~fVORR zr4Q5n+;kMD+c)`<-8#P}gI4S=af(8`M-2{<(RfkZV*&L38E_%d;kQZg8>G%xR53h5 zq0^!?o>;qb-|{i9_QK&+nWIO?o##0_ka+2n>)~M_}dKHM+M($s`4gYw5iY zyS0pw{0Z2OjdEUIWuHAeqQ!F^gr-=85Zxek-5XRF1_z&r=OB{|^I&Ou9s?Dg5I!p) zA{RXZ7`wFPBTd2K#nHo1oi6n|>vVNtgIqtZRLSvDto{8H)0;^_iIb3D~2Fc>x%FJsD@n5NO#jCEC}?1ZR4!h*Yz~i+2_NxLuYqi`K#{ zRs1>Ug8fmhJJ0w6IiYeYU5P`oagT}6n)lL`OOcdLZ0DL+&%o9q4unBcZ?6W2sEXQf19$*vkoJ|*W2fH{?YUouqLafJ$%5&Z}Mxes- zud#l?T*C8W;sx#?Cr9_;I3G5Lw+^xHy;2B5L(X$EzLI*gJ9C`iE(HU~jT?SM^e*Hr zKDF!UMa33Mmq+s&)&*AH=SODoCa~!;IemjDOqnHwwu7?VOmUKXz01j$_s8As+MC&r z3KjOv{+cWObpw_TTH$0!8PVr@NxCH?`~FCT>Ka^y(M*8 z{;KI6gZ{0ghx3nS%7_0$$fDJD`in>i^eMqeHuev+G>lV z?qND+v_SdGk3HGnfSd6S79t_5Xi&?+lDbjej@IEc~akrX1@v3Oj^Ne!VxttWrq!HlvHP(-(UguEN*J^D-3k!!WSB*= zo*d*BfJ-fJQ!uCgrqWum{AjNxdA zucIZG!WEBADe{HQBl%tIUYUOZat>(O_tRQ0kVC4u%Y$cmg@u2dZL-f28OhIj_>C$` zW(^JS+)cgZmPc%kYz@U+ z9<6gSS-7^qK{=f-0|sJuu7(PpyUJ0RYJ!OyZ_Lm{jcVoxab9gEAAQI*C0sUUu~>3q z3@Ju*9iK@hJ(?EWG3vCh&~N$dSv4UzLab}S3HGZT<5)C8mcl;98(BdX-(L~oohh$u zZd_5>^ScEhkLVM4u=+)daP|JAk)1I3H#7R55V}av( z-WK(F0hmk&?Q6^(0+$UlY;aIZBg%`QZ!T63gXo>jf}9AIzyPM+o>E z!D)yJ(RO8C5Op4;>c|*JzV?WPcNNJE%WV12H2@uz+Ap4CtTTRC9rt4$=6=Tgen<6s ziES?cEA;uoV05PcIWZl)04}b||D?I8XXra7=nG(LPyGc@oA*@uRSo_hHn8GX7gjpXr*^9$ezhVz7O5Z3Si5!Uj><@y&oTMI6q!=$2` z;#sh7@fi>qyIPqGxWanF_j%lvsmlwD@pBBIs;+^jaiIA0 z%$A#@`-RMRjkJw0iId+UudL-~)|V}gTA#H4Jwg)Q+sQDGxq*UR4|LY5!nkPR^WrH52kIwfcRRWfM?sr^Ykp6xt~~vKs0}3 zVWm7eJUreA>CG7=zj=;c71uGz_&riiHkV?4IUE9On(*PL6Fn&S0K^|>a58QqIuuug z?gyvFJVjktVPq%BdkAY|N2{A-*CC^D!+$H&aLyfpC|Euy3IQ%lnONOY(}zABqLNQu z&aM2j~=SnV=?NA)&~cv zFxYSJU-18!erX`z?)f3HtIgKlsHW$b6p)XZ)8?#dFa>>-tZc3?Rq^pcOeh;Q`O`^& z88V95DVQV-u_BesTtz+k9`@ORyADA=EbSVMc=gs}3_LGJI}D-h`@OQ3NsD{@GA`I_N*fb~AMj-uIy;hmM;PJs`vAU2AqL-R zp`~+Rj1E*xN4AR-9e0_qM86)1ub#4y=eGj6ucCJkP8b?Gz&YlE=q>0)6S0)|9eUUF zuCDS5L`Y|mEBo!h-7F`FY6TB_wL1V=U-|I`z|{jQOH>t)({F=Vw_ad%J@4SY`8t2h zv+p?beQ#&KH_!XZ*l1T>^iSqVDS7HL3$C312K2*( z`A2rpsY>;oA<0-=AJX3LiY~o7+|WmDkZix}qKS%gnvai*3u>l^bM#w9k5C`35m8l) zl%aQ1d41{0z8*Tz&xujB9NW1(N zUI40|uvkiW5r{u0cX3udMDLJm{XpO$*;$b>+{XA3x7arCN5w(rr9*rKmBc;!j>h@Q z2zlhT`iglB<_$&ggu=#eUdB+qBhhf{b#qE*5xlQ}XMXAwTM*1ZwsfWITXQJR8xC3y ztB+Wf-ih#u!eT8OACz^?*|mqA_=&#s^Z1<~rfsQ-nvt+!$|dqr<%<&0Tm1~*um^29 z3KeATDr3FXA8@@r^VnflI~?E+9*8##mKvffu{~JB?{1#;wBH6p3ZJLE?Q06zpsO|l zD&y}k@eS#TB~4g<`?{ZWatdVa%I=B(HVR8=F>k$cg9%eMs1<^7?i-W$0RXGbRnI^A{x zGZY1+Z7{K3yf+AzImN+>Qy{KGz5mCu!@G6Wa`Qt}p>HJ)&MHO%cvy`uI=I;S`#z)a zsR+V+2TRZQbMLSU$HXJSOi%aqK5%i#H+K3yccXn|m3^v|eo^l>rlor>>I3!7D%WVzA!|Yq>J(#WHFye4Z;(!5?Rmf9=*zAb1-*Z zw!1E3zt<;#9tS1uyJfgOGS>%`@!&nWb;4OlE!bzKq$Rhv<^+6JKS9(#9(~xMWc^y{ zXTk^R6YWRdQe%^S1FZR92}@_E99GU!Nk*duUp*Fl>BK8b9QWVNkVAdr$*%7b0~}$n@{XE<%6q99;CZ0f}&WzzPV=FjRpEMJGRG9c0$X1&4V`>^YX!1=^W_~_T zMbhHBoIY_I4Di}bUJ1ksm?G@6FE`d#C^KCZFIM84fM?d0M+{5ulk_|nzD8~aaujrd zBMw(v`gl;}sb*ut^j+-<jg;Dv2gZ&^7&>}J zjS_%U)v$S&qY>&eXkyvl00#%}*^$N!_@T7-j;{j0NeUbjZwU>FZRS<{YFJiryt-vw zj;to+pRHp_jZIyR*TZ*}{z++@t?hk&vgK<6?}SA}XKTelEGO1!BP zy=1J&NH1)I7@U8eVfG;~?x>c~aKO*e(Z${`kbSPcJ<^aiab_EHCqwFYAIQ?dp9AEn zk2G#W5n~-ey4{_&J{tJVB^8-|WG|V84?O32hHrN}ZvipP0^$zPjvrSpS|LWDD{lLH zoT!4r+ut8~PROt8KsUQuR(D2nsa!{;UxkX|N~0X;-DallOhk0G>*p$RT7}}!@^e%* zxe~gfAtf+gfUpo$(v=`|%{lW*VSu1>jsmkeX>&tRu`y!SR@KS@Y@FG0RP9 z7HDD*5{aseZ|&X->7VyYpPB zURq8R?j2+m>H9&F2D7PkTBvMPC2MX-6|_Mmc|&+DJVv?I%%Vcm=cDt9E=(g(@?ArO zsBTE|$hXEctJhIXZNJM74()VM>N_eOE)HzgBpavP#K*&5N8om32kTw-GXb!-HIW<1 zn{yitR(juDgYe~OYj&)4EITmexynidwES;#IEoOJsZ!$>6;>=eY~EA4YJcU{{H62O zgmMme>{J}@OMMBssVNLqGU_iM9k#%hb^`Q=#dp=qAUlj~8YOyMgDsabXwC}LZ#C~IxTvPzxJ)169zmCBBk(BT%> zZ~Bo@MQ;~*r07qjZ=P5S&L?7#d~j(CU+mBhBjmt$#kv;5)Dk&m*Yg9 zgX)kRGtA$zMC*F{nW<6*|FK-8y~wh#{^mqjpId;VTN(I(sJ%w-)JR~L1N^0DlZ$uMkL zW}KR?p)EnhH_d_{&4jd94V@=~jg(+efNM)^PU%r)+hJiwydz6gl7rY<%|!VNOdZ#G z8@I2VRQ!pR^9w%)P+|nMwp8nMw$~x&Z5H3am&a_zgS~JRHhlJ{DE}c?^&vBEqQBW~ zZ6XNkq*dM~?!7}aQ54|k3EeB7Nl~?yS&TYgkl3o0>7r`cP+76_S^%qP#3Wa_o);-8 zBV#la>c!a2K@UB1T9SHYR2bKDhoqO#^E2Vyk3je{!sJbPo~_8om4>B%6@d@!qn#48m^tr!($jIptb*Y=^y zl}TV+Y-KJ4ko-q=TZTMaFGNA!uI&gW;Fc6UTiXh%1z;Jx$4IFi0kx4}Nzh!$m09Bd zzLK*XQ)Np!$R+NGy6@8tY|dfxA(pwFf7sQ7*rOL$u?jC|TM5jg6ztoxhm}7m4@9UC zZ=O!FR`~(>QQ2+d6~ESx4Yf&)ps*}X?HuWxiYbxYdRNj%yZ}_&8d`Wo+T|gLuQs5& z*3Mrl4uz|YS$^E<)z952IaveUh3^K3#%Ou*%*x1w7InpkPYlV|ztr5Y#u+FUhwEG^ z6T6+!b$OBFSvA$m2ZXu)pKEZVxj#^i>j-(V_1*O_sAYoR4m79 zOwEQ_$^nLkWA_}O?{g$eNv@i&tkTR-)O)L+WPd;NY{lJGFiN_6)=`K^!@yY*Mu)-*RW9r*75 zr(rHkQ{0FuPWmwz+{i5iz*gdeV<*Duyf8K#a>He7qO(yrC#?A58oo z{XOshq^Z_E6@vnq!so1(FB>_2Vhhn**CA|$c|g}4)z_Bn zmEMGO=e)@{#pK*6e67Znb*aQA858f2alud}M*dM}#^B8{>~k}31_BSWoV&i%s}}&O zkVNa0zxkmz>26h1F}~4|`?)-{A2nVkzaiof?vOVmbJw)rKNU>kouc6M@KtbnsW`g2 zo;#716)#yHfim{?Xu@RXhU$ZHfCiMGz+rQq$@onOnc&%ac7@H*>Om%8-|nwX{R%V5 z^YEeCz7>G1D#WFTy_@Wor=zWzks{h@Zpl^5wWCYg2)y9Ue?vh!nlk+}X@D~c2PQZ4 zHP=@rRHeup;t_i@DDS2@BZWk${$CQ&snba<5%D2vsg@gU6t2KL73!3XxWfRU+FwT| zaEkKsq8c+&xQ2$(w$9DB)5Tn67?ch~3ZDQK`-Q>iAU{jTaw)UU=IBkj5v4?)yq>vC zCU}YfUtqo>`=(-{bogI8Jq-sbE&NYQDJpvb3{4ij08Ax+t1uO*z5o((6rR5a-Davw zq5b{AL%|l=pOo!g%ZJ~oQBu{=>7@O2tDG*;;nDPxs^bMvYbSZlY@fOI%_|Q7O6BTf zEx3Q?KFbF$Lh<*RxWS?_(_Xjjm8Im8=4~Yc zOdhrt+WfJ1;xXpEs~wyb*tQH^Js&OkuO)1PgJ?zRI?3vd2r5 zV=SK;Iw0Q}X!*>iz;xGg*BbqrzIAQU=FPY5U?QbS90(Y6v%DM=u(+T?1Jg-i(=dz) zY1{=wU`yS5XFsi+`&QQdG6)D{flTld;xB%%Zpa$`9TO_hetO?(fkqLa$??c`Wxrsv zr=ioHyTM_Tn*Rh1S1Z5_XnT*H)tGy|y!ypT#D!SZw#<=d^`O9ouSwq5vUR1Vny195 z{O+)*#JFz0W@m0NtK9y`ku8yI!*2Hqfys9bckp&Z4gP{4T?>R{AzkvMGl0_ywT-Emhp_ciYK) znfku1YNdnhAhNgsoDac46j!uk7(Qml$91po7F;6U+fXkRodvz~xww@&!>8Ph%ky>P zNV?H&BAY(vKI~w#&1N8w7RrAYez}K$VbsK@$e#JzVt7uT7uHS)+;>py(`_ECarg% z2|C@(=gr&6(-~mR@hW0;@_nQ%hgOvt!Fo9rtHjigWLcm?iUYM%y@N_Q@4cu`+Un(& zSm5dRRaPCS@^6mDatCVXvu4zYiPq&hyalm6KL5yRA1#@2*LwvS+nwt1Ckx(YLtOV0ejfc^Gc9SloNsZ^?j_RH~4AtN(Z2|tWw zbR5b|lbkl1ND z8iRRf&*cdb$o#OeY5*N=m|z--L)wUtnA^eq98kHR#NSF_!o#JsmoIw!z^y!T7WdO( zy;1!m07S9Mdy-k2;cvZs%iz7#B6|1Qq-~3A%D*D8&{(OexyU?-s_r^wIU!~wP(d)7>-4M_%Y=CP+K?{W%BJEl_f>oQ45)_v zWIObd%7j%P1Tn!t0o0uG6yr^bP^Xra{4zTjD-83s7O}#YQA(h8e)L#~wOmX5Wy*AP z+udEsQSe+_ik_1bv~={KdB_nCV%2Hw?Cz}V0vj53SSzqnez)LhcI|DhI4s6haA^78 zA9NiR2R)EOUqQuk{I4{wJZ`^P#EdP+bzo%giR}fIIehx-EBoCSKuyvMVBb;7i*x30 ziTAUWMIES<8wj+wb!rh*#Y!D+ZBekk=R!qGY-16mZj-p_k^`6@&2x>QJ4jex>k5Q) zwy~-4br`~ZW!AyOhU-NswFf>5TO)eI3+6pxd$;M>Adb)>W9lVM`Vb5XgWBH#_Pl`D zW5?~O<52;x+cKG#kJtH<+L5%a0Jd~?LVMj*Rib?l+WiZ#ouxd@c-F(EpRsTIJzf{dGS2_YP%eFLAyz_6O2pl1BuTJhf{oBt{Ot0aZ^clpQRMm^?Pwk7E1 z1m!uLUHd|yKq5WgXl0p5zxS=Yd16V9t{c@whh#XwK`aWNw*yHIF^v%bH=9}IRsl0O z*nH4mIPPcGC*YuPgY!NaaoV<|a?ErDY4jO?hwjW#UlKy%M*ZsL$*fl7KgxSGeTXRoEgO(|4s@p370HaRzk-uxR)e!prT#X6VH~pW zf?@8XpUVaD=z>yH(zUnU9Uj1LNp+oL@m_JSb)T6Xf*qHeCr79W#~VEo*58gb_oLSZ zWDk8m za*IeVuTIOZB)zz>Iy?PT6Fw8gn!jfx-5MGcOO= zVLP}~!J$fOOJt(1ytz#ysD_HOVrrGsD=RAeIo&YE5FTO;!gO@_Wk*~cPl@g}ketO*SmuxOC=Lr62kK6fL$oj2tm7*a6uD+2cqJj zs`i|A5Lggg5OC|bzukBrJv|0s(cvNV$l!fJ?VH9qcGzGdWp`_m-65tF4%ndz79&-N#u3-@nnjslmQy5mAFE^>_)3Qc z6IR#(b3lNHcRgA0Z}v`#3|Vvi&hMyz=eeniT2_`7<{;ayNk|#YSR|xFPV9Q4w!`O>R=qFspGxa+>NqMGq_d zf`DfA{NuR>V=Vo}6?7hy0L6opK~RuMoqB(dM@h6>A#91)hAzHx?Qj3rmx z(w4&xn=6#6tR9EcLGa$_-A)W->2vfMD_?RDfS9OQ`}sF7??fPdF5*^iK^Y$wM;n&N zh8~%TjyiH_vnc}Hm9A^>ja3a}ROY-APUM-b%f*x&w@U}(tT3A5SC@K)Ud1m>cp40B z-@{U>&EHljDzPNAw{sNr;R<8mRS_wmN(ceVrDNFwwcO? zM&8$$xBx9&ocA|n)7Z?=7vbM?+^UoUfDE};N%V@frT5h4P5?%H) zDwPhf$udgv6ukj+9+`T2re|}eYW+KSS06JZx-tVPrq(#L<4TQao-R<%lJ<=;vVx=hp^^+ouK32S-WYFIqOv5 zM%b7Ri=JPE3>uIrzRxP*uv5#(aOev*hmHihz)a0wsJ{B(B_jY)=J?d?m)` zjfv{zj*DxmLz5KX&PEt?IB}KLxWKyES)GXMnyt07jIW z3^MNOQ10SXZOl8K2;{9Y0%8uAmkg`93sPDp23#n-?E}TZjC47DABsuZO=8=tvrc0t z@4mnD%Tj|U#B^Hm@mikttcF%O5>SXD&Wg3kgWh~?VMQmPWqbegXDEUvC8m|$UUzs~B= z7tiG^Lp}PCP#9x6T)eJ=Tn~jTGgd5IQm&i9VC>8`m9yc(RioMYG}p!c1Nb`Kq+-#Wyj{zb5k|_}eU??ip8wZ^hUM>nru%8 z@ws|i7Q9=?l;1BNwb+t+}+_%rZQ~cTqNE@oE6u?Ruz^2@6LGMvvUHeaaK%u#ecZCN-Cw16iCr z>0=Yhx3wK7P(E}KKU;CcId{<7S^H+_CZsb-FZXPf5mm_ntT+;YW&0%L-dV`QFkx?n z*1U`cRr))I@?Rc5ZVj~Kb68;wCVdV`iBR6^x8>MG%0x!F9a0mXV2x8`2fIvveFJ?q z(iU)%Rfu5A=%_okN6N^VHp*wPxf|uWP2kLX#wdvyhT#>;Q?1n|ziXlnIf)ho?rRnC zV`nD=%;l9~$avQBt_`q%Pna@(j-#jq<}iPRwJkSeB$DbauS132kSKkJT&pfcTIXx4 z)Eug3*#vBuOy_YZ8+4#eNwbaZ(=vl5<)tf;x@t}1k9 z;Hh?lR517}NZMCS_Nka}3H-|vEO3}kBJnX^KeheTi6y*;?9`X2&2M9s=iz+S$guuf zFlBLdsFVl_x|FLVY{F4p5mQ|DN4rD?A7mBQ$p0feL&sL`D_lsMcCZDCjJ%x4)sF|c ztHvo81`}?A&$(~$nMmP&)Zv6Y9ski}PyT~;cBT|$4KQ!6Nd`yWE>v>ebE#bGq=YXQ)vP+C$Fe2jx}_n0x|d-%dpMrajkfKu z_s)4_%4oK3-vHQPpg>foZqKTMGr5G_8^$d>LeD)SeDr6RkgeL;V<+4vFc7?0l)3ed zm3e{*&wU3`5W?2L`~R))kczv%w?IAb&z!d}Pkzc=N}$1tDtdN{{`6G~f9tDkeYf%u z9baAlrq3Hq@z#}ncRE;fNSt&4su0^}o97f7%S*T6%^R&6sX4efaCK1O7JycQ*~Ygm91*9J-(ye@*bT2iYRu~c!+B&^thJ{Jk6(e>ufDV7^lA^{no;~gmG z=K#Po>~bVl1Y=+SiAuA+B;_W1Dz*# zzK@9a6Q}JIv&7(9>(f)>wy|w_W5b8Rim`K{2G6ryk@hq9X#sjG?+=I7TVVxy2r1c@ z-0=bPtA02A{<%3tzTsP)a@uuQbn)!cr#4YNE?FKdb%>tZ*IPv3hxDAyRbo_5!6Ek8 z%T9X+?Y0C*T#*|m8jwUY!l%PS455!lQN%)bEY8juHs~muibSUBbJgHtg|4hIY(+J^ zZ`qhB;fO!6mG)5#1}|37BqJh|inR@^yx-7U^;{)Vrv5M1-ZCi8rd`(_9D)URf;$9v z2ogNFyX!E6J0wW3L4pJg5P}C8Y#5v%!5KUQ3=-U36Nv2O-D`dIyj5$jTD$i5qyKhw z-F^4fmz_tmHa?qbQGE5t>RUdcz~=4l+8Dz#L_+y^sroX!@o6CfhPD2Fa}>cOO(=Z0 zd&})wgar}d#rLLTFQvzpYu|q3z^l~ogEK&GFOILWE#i{G`D>&^b)zv@P66klw$q^_ zwXu4<%A-}h$=teDuRn)_{W+>!!)l|IG{i0fOCC-v^72gYf&HYs9bTjhYt&}}7~|4> zZ=V7e(@sNK9*o04oI@3s3lPgdKkNf_x4tOxlf6hw$>H!>k5=Ke$@BgzJicRt5H^s; ziE$7%bEFFUn=!x6)VFX&kj`eq-i1vjD9Fe2ByiReKALP|s9v>57(Esn`Z)CNW0zQv z*l$4Wb?12eS5ai+$VqCg5h*a!y-U&k8RYajsM#5E=cmlyDFbJI<6}TiaI%lP{U((0 zjh;nmW2Sk-8|^px5}L>+tjje)+n1qOkMJBK00>hU^5qO$X6{90=P*U>7!AtAe%ubD zMNx9}l*q^G*xOPKxRE0KRjBd&%p&($9lKDe zXNUQDeJ@K29&wPrV}F~uK>x?dKk$QhwnHXofgis*34RFjBx_L^m88G^$eiUG%dY&^ zn?|>am8CgcKXXId3N7eDruS*F%)&3j_^%QbB;N4a++FGQ#(pdZAcJ51Luk~jqh z7ArCgDHMHuRY@rVDCF**L5E9E8)W%76L)P_aw(F1{3#%a0B<<7lH%qD8GGv!7Dj{! z;is7BonYZ>H*sc@SYwqE#ZjJ>F=nv+rHJ?qux9;Rl4|nTXU|Ev(H68?(FT$W>Qc95 zl{vWxW25C}sErZfZML+$`i>*<)Bj)kN&ES36^dPXj+yX)fD6j8E6uKS(bsOHpZoO5 zBi2XX=N5%AmZW|}JGjF8-|foY4mCM$bS=RJ{hFjxN%sbqEE$KL=qw@^{jW)D*;!$fn^F?$Rh$g;A?sg9u0 z`GC~E`yyp$VL4)+5>oHOG6X%M%|4y*#@W>284M}Nkgr+aC){3mZh7R68`Q?!&$pov zs5el!?p|hbHz^BD1r?LH08y}cd7h4p3@*$)mKs}8z&@mElW*)f4 zHhb#N)#Bgw8}K{_P2FI^tN`m#J9~GWwvz`WXN|iH-t(y)-U@Hf_+SR5eXJ!C=Lbt! zM3v&O78M|MQrBL^|DdzypHDMiv22!2S9f#`&@)y}rkFH4SClMkQ4W=1_*pkEkv+3w zInt!ea%y7p+UREQjb8xAYkvDr?Pi(QTIx{8Ori@g4PCsAmO$8M-HMgX{-^UyOY@bL zF@8_d-LF&WyWaB>Z@$@e0#M_^_h_T}_+^Sy4qxnuT8If0^f zeYB29X7ARtsXMoG;u4hr8dGS2-t|0*v6u0UNfXHna~4wB&R2o$lK2Hbx1zme0!~bU zQ{fTtqBk}GbU4!L0!gaW6{8goe>fL3MWgU2vMu1WY zH(4~6!nO*tx{8%C`kl^t-tv;IVwFYtVC}mt&*b%JTuG*w5vFs+ZR3u0j!zwP*9hOW z*-Jx^*DFlkz^U#HwWVE#VJY6WOJCKH18bd3Akf7Hg8H?&$84Sf%oKXDhe@hIbHA0! zg<Y3 z13cd$Wb~0HVR6k}ZIIbP$AY0w#YeW!2HNwQdR+kqE8;TvbY(qFafgD38C7=BPBYg= zhJ*tHgs^4*mFAyw+bpyXpy6oO#h(hHN(cZ6hoC`l?bBHw99KPE1c)aO=?aV2_nxGH zf*~Z&;%>Mme~7`}`#|1zgr&M=Hg#Zi=drKVP;^7AhcZ@b--Va8S|gajk**jQY-nqh zO`WOtlf17@ReTDef@7hN)f|W^MpS18H>QXV;0QmqoOE7hiL*zAjnTa$5|Z@iH9unY zQ-A$>g}0`Bd*GPC;3A`vPZyV-MbH>sqJ-wvrK)~E7q*07KBYEDF<6m?*c>l>`e11E zK)S@j5C6`NsDR~_!NGiiOKo)aKYmCY|iIiTyZ@(LJfl6{4#5Q;-BjKEcZ;ir71#d zFm$Qt*EbcAD5H^(RTIm5ezWs3SGm5;jCrCa$W^zO(Pa@xSvSX2Sfz@M!=+sxOq^Ra z^Ic^~O~0^guK<}cScb|;4A{=p{}d+!bfYDY-k8ycwEw4uj*d5KX~v4b?z-diJ!WXi z^|`Wq)@_C0%HY!vbtyF#W4x8#u-HU zn`TbAgBwGHwYalNUG&U@#5MZ*whLTht34wO;ofYenfYS2@S-Vvysdzg`dsp0(8XPXN_>rV8X`U- zhU?5urymyQkJm+7`@sWVjP&;h<=tPNpzXdn-?bFkL80tWpt9F4|qs1eF7?V*{orJ9Y!)yE`=y< zOYGqb&w74nveX)LmL<;gmSlA(XTq^qr;KUp<`Q@}$|cOW(0pqI2Qy$x{w5E`^Zbq213hJ=z%Y`}mW%SX zz#?DeYLv8rn$dg5vxg?>E8wLa*+aTOv?07nZ#BkiFdY$W=6Y4$HGf>Ur8R4aVIx-m z-J!y6AyH1{vh`>PRxB(?IO2N-yXmVMv`kZvte%=m8*M(yR^*%(@%`siV;9{j90)*L z#mi#IsnN`0CvN^KHz^Rn{b*V9Q9XfR!XgDVSc)yI;Qi2t*_+q% zE%;v`xBYG`JdONaeP5}+C)r($_EMjmnNk_gt$nXGxnF|LJN2>~Z2iJ0m_|pr2hxUX zQ)Feebb)*7B6_4_UIV{_sT7hH_wh!gwDe2C4fVn5}?UF<4NyOFamAcrU(~m@5Y(Po;ZY5 z(;FL@jzLx-^ zWlwMz)GNko%$Amw#eVLTSG^^y(3t0D^EdG6h!iN{bE6>ViHZdDQkX>W>UMNM4mbNz zmbpFKQ>4w6GYKQrR7Gsfb2kaK(A{WUwiXHWUGpr{xJNj$eg%7C_2e@M(s8nyp#h#T zMa<9`wcHR20T@X5-bZe&(A|g2AZjPp?Bsfsfg9`}A$+S|);V|L8m!7H++V8~N|4Gc zJ~e1!k)2azy`<|o<#ws6Jo&-5*4RAtrLlvge3ti-xCu8oZAGO$#kw&m22b&dn%%IZ z>}KTCK1`G8vd60FD%6jvB6+G902sw(kTq%x7YMm(*4>D)g1{mM=lnX_dyk1v7lhEf z8Vi(-7N(#sW+q*tGj0v67^6sP^$69%RK%NW;>M=o;L~nRE!=Q}8BiLb0KL~KWKV0% z=>JkDl8&KNjyCDnN`0hji7$kyhi~>=U(js}SNsEgbZIdws%}Ps(Am_W7R^9Vkp|Nk zqr_d?iO*6S22@y%Z2&kx$G?vXZ}2NP84^Lb%_z`>7G-+*m5bGe2E6`d@oSSVw=dC* zNLbKYKDsPMt0{Vk#gb0_i?uU1y(YQ3&=p#0DF#kG#RnCD0{@0qT%m)aNR>$%*Em`M zdT5&PE9sd3K_Av@Cx@D({{qfYBc{o3s@v9{fn2-)v(r&eA8FPey)njNiNvoH=>Nr* zdO3#Ll$_LePBeQuO)_Zu<$9zZHuvb@mdZdCCzAq&LH#U!m@&F|`iHiCoyD?X8$9*W zXbpsUI9V!Rz_^yBYr3!|r+pn}&c9it$7)`*fl=D9kytUmX2<9j5k==-zKBoR z{6N?M56_7ivrg9KS+VVVY(sT+6KVcuM!xY}pE?CIp+|&5~cDHQU`y~`X+P9-M= zOwB1jnCduZx<5$fQE1;x|lOT9bOid!f_|gu?Zvir063Mk_ zuI5!f;DHRB7MRc=z{ONZAHl##elR?S9r25crw&cx8#%UT`Oykcwq&lx?_eWNwE(fS}8C_YMb!I_=TWj%l?E|i>1 z6cKAv63O%+%d)-_qRz?lcoYWaAySyKaw?MBk6xoQ%jONv;98K;C&!|Zk|ho;f&l7* z9D%PMLrziLTLjc>Rn+Lx^o-a0CmRrRcJ*|pw=t|(fJO`q&K?{JIdZf_fkbzKCh!xD zIYy2*ev{KNLTQ4m-$JNqCjAOb^8YK)fC*P=c}(2|gQI3h9jNX^w3}lWSCtZfuzxrb z{cV2(_4V*3&tz2jZ-ArQ^pa>2>&KuVV^sN4k~ofiw&ZP{1s4XD^{h_)&w{qZ&DKuy z3Jq0dE)z^g9L`;O+IGs!N<}Bnl16yymyZ5MF6A35hkAY0KIAs`8g`+pTiRHazE#x< z`Fa}hhu$qz^|D*2c42Q@%N*ZEu8=*OH%|kbT|rcl${&kIp&k1HE*O#hgzZzVC&9n-uqEg7u z&f&ru2EVOs_ziH;C4;%gjyR#pQbq0>Py%DD&0m2s#XWos&I0RJPbW z?u*zVBjFcd((4S~BP?+24!kxXY83|apF+d=`C)vHof#7)+3PiLd#5VJQk>;iaZ!tI zhJ#h8#ir^hU<*YrhRasua>6fC#ZzE?$vdoyc#Lv2KMBZn-ok^4`WCE^BkUbB`g8Rc zT>ad#F{$cXF{VF+;6unc&CXe<>Id>vr-EhDcZqDHyAgApa;YIhy!E9mLjIC;5iDk1 z%#}Qg>a7|zd=r?@rDJ@9gtjCXL+?%Ql24$}A5Z-V-+JEhU64PDZFmmxi<&2JdU&+Y z_3^-=V`al}?hN*m^K5=X6>>en|4CcTf6Aj5 z(nrNoKI`?2+K3x@oi<`(d|!~;h>zo?Bb0(Ay$c(+jL48#rg&}#@RZtUWqfJix7Lx* z9fT3pH0vDG-$QLQx2=`yRg$5=!kk748f+V(md!jemeuS?`2w#8Pai66K+&S{wJ6-m z6ik7zcX+E&nOEpSk-W2Rl@VYZo(|i>&1WRqaz!`!v$!*Bvhj4bzR_y3>1lE`S_48; zRI#usDCzS;epXX+G=f@kbX?h8xLf%OvEY+^BqQA%Sadn}j6cBXsyz5n#U>($C>XRf zh56oM`U?V)@;-_0Rdao1j^0=HkI~raR-!z)E7;`Gl`(HT7i_Bz8V+q;NSo`IPDwY! z*PU~UrA`nwmD5k_CRvRh?AqKoQh#v~M)Pq@j=H#8#jT`Hq_oo8F_dN^yn-#bKb&W0 zQuM25vX=o_MsS_&N||D&kzdGzDB!Z!ZYn=09KAU55fZo6<1ExVCl%Y-4nhTfgO$UGXz6$($mjOWM!#z@hWT%f}Xw<*hz=VPnc6Ti{OP%b>68n1QF#zJ5uLA z!%TQBZ1|_&Jw{Mv@v4R|j)7Uf<;WS`${l|B$M5k!9O$Y4X9fy@Sl&z-AEu%+$(-b(n4&I+{Mt*qkf}9G~EK~OfDc}X8iNw@~)V^k!slpLlc2Lla zdFabe6^FVkmR91|wt}^dT~3vEk#=~tK7(qGo7%j3?Uul>L;`5+7OB!jB6$Fhxq{Es z`EH~*S1qp>rCY1tFoA@Qg*gGw5FQ0hA5+Cx9)qG<}6ak6PZ zapt#2(pJ)o?J9n7MyBT0^B*}KaTQLK2>79CRH;xWNh~)^II0aTy}<7MpFo>~mgDLP zisS07>*xbtkG<^~=5ky8lVF0dY3!dAHj|fYzh-4>%uUSLtw)ZgAp^}w`^?XV&rxsd z2zuEbk9v;uIP3)ub76Q(gXQ-B=EBQL8prHr_%-FtphjJw-o41T5(B-=t@}nqk_Q zsv^P__3e#TPhJVU-Iduq=DPq%{|(npV9&E9j`(8QYZHdwfP}g_Sd!L*b67oGn7`Jo zmeygw8zbh;Te3+U`gHTqcnJI44S)15T^nL-Il-YRE3jFR?!^NHOtY^rrNi}iohW(AxQ2awOrGAXKGV&h-pgCsHP~c&|7sK{Bte-*TjOD9*jb`G`St(kpq=uG*hk>r_1shIU>;#-7aKWH#lqHT#;F}lIErA%dCGD$@HgMRdR`{=3$~7a% zor;|+>a}-mpJuURs#&UZD6;$Hm^R||LaVT6Yb-&AJRYjpseniu4LR7s%Q5_!7W~nB z+G1iz|4D8Qn=a$^ugg;m-%BYPdZbr;xV>wQxmi-)^PpCyWIln$9GbD3bXWn=yToFm z638C7C677o$WU8#{s7)2>Z|Ix{j^(Wwln5cSn}&j|C# zrbc5XB4SSJGl(?WjJ|nL{%N5T|Bt05#8}R2WxBD+VstYs%&qh(9gheJL)e#NgUca( z{?2UUG<0EONKxrLEuc*Wy>G_W&u#abxD<&xD0|2X4CdW$U>$%-Q>Ym|PZH_UL{ zDuK@yc*g-?jvD9gPb(wH28TvL081qeI~Q1G`Og=!a}u9q@jTz%q?+(FS4HYjlTtg% z7hl&AD*gKUqABC@RG*&YP2Ra~H~_Gnp(DtJzC$r`(8Hbm8!#w={ALDQ28!l&Z3mYr znKzkRE7B8JVEb88$}`W2Nf87t5Oy0*;Inx#ZvX2`J|si_8UF%Y2tJwgElkab?Y#teM5tn%N6yf=_OSET1yj){6njxP6jRPlVP3_R95QtYXxyImg|hLyg{-8p5pOtvrZW z6tNQeRs-g(D2{SdNt4)5Rgj1-Bp974tcsbrkCm9^xy(mNMt~Kg{4G$_ql4dyeRe;G6yKS*E6SN9MV*OS&ECmWw~&qdRE8eXp*9%Fnr)8g!3O6fmQ zE^7abBUJzGR*fY6=hbOAXkvJ1Lpgt3=Xk|gv^qn^1a^?5ku@IqH@%&~(zS!IU7>AWSq zip>e@_V2nh_okYjoWB9DzXXs_-3!i5V83|Ny^B30eNEA>BHv1qxY0@Xj*z16^s&lQ z6lZ`{G&-zyEcljbL4+v1PAjBTZZ+k~3bmRDJ}vJd#3zK}vxPNat8aOv@lLyy&qvS< zTkYpux-oLMXoXKj$ku};o=(z`b5D9p;XrwH7IfR*e7;+FL&=megsXptk!{FqpZe)@ zOScLGpm+MZGeMRLSiZ^~=i_1TjVq&p89*OY1vC1>GRJ=%R`>My0IMw)`g%kkl2Tk9 z(^=FN^(ORyt2AtdG9KTx^2p&Cq5I{5Hhrko_})rhS}D)x5gGvKGkt0?$(e2hs|gSf z#_X8u{7C}+0byMtBJpl)FL2||Cpm1v=Wm--E{NxNYBT;)vPZ>?Xya;=zo*M@Sh70s zRvMZaRJmGFu<-tZH+9wx=|o7LIH}=)W|)D8StLz+Tq9vH;~8M096(jD{yP zrX@~sSb31?s~>Og1*{0OL9Jh8X#H50pxM7N*hfrGerQUqZFX!JNc9%{xk|r3ncEmA zP}f^wST=v3e;tBclVnP9j1$96C`D6P2k=;c7hc*=Z-K65zI6$09ErDnzRgJ+7Y5sA z87Ddxte=M&dwo;m)Ea-VEEG7sT|2#~G&j@_{(yUoM-(;8JEbDk3%!I$uP}B{IOO|< zi1K@kKH_t6t#dX{bxU;%|8RFV*Ku!v@gHt-9i^2b_=Jke*-)cN`+Y? zGbkR)<3twyS<3^-^^xm;<)|vMO280%PPF-t@_E!yQ*B1px$Ae@lyX9t@WZr-?h2E5 zhjs9B;SS_YXQaql$32&VPe*ED^=H)2LU`eA)s5fVwku;3mYM3u>xGMSzTz zVHnAy5EqRaVJcjXXQdwQ_EM=>fp$VyL|Ml=T4R|#-{e-e*`JIu0AE6MjqO)9YyDR( z)qeGNSW7{R2>Hyd6f#P>ye=7f8y~3}#l##S>w_Q51RJoj@W|+Tn;Y#Yiab+ZF@cws znR^u3qB4{mM@%5DDUoujM$wAHI$0h_BtEa(NnMFqaiUTQS1-V@yZ7ol^ZfOZF5&*2 zMc~Lui~78ENYywO)(B7W=_q|cRB9-)3}sVK5Hv*XB7~@+*@oa{OL0UNKVdzk(^)4r zmc+?ljUPZc_Y^U|7O@5ef!Ofm zrnAOAXbEOLM*up! z@7OC>F>{cks$%Jt4ZhlNMZZl#+QVOTv)TQ&vXjUMihSWxyEnT$x_=F(3IDa6(o_6z zp@_QvDfbZaf9<7t68#=d45}k3j0@!4mQ7)I)$<)+eFEQ(2u+e6t+%(vNF19pq1N?N zysjDR6@lsbi!CO5iY8t8=!~zrh2h2@*I-PFa%Ci}+rDE?D?$t3a_Yb{ntguJu-Slj z{4#3rqS?!^V9)0UmP>26<{VRNE<~L<^xishgwJ$lS}Y0424atGG>!$zGk^hk=FyVr ziUboFj={18zrR)JKKAnBJtk#9E;9;|hcP<^9@sL$}s>S}dg+ zSWQ*HSb-~((DsEzw)BhaB6joH6*ZT9r@#^A(>_zj)*>BjDLLSWlI-3a6UjDz-fvyZ z6^lP}`9IS}>s-Xykn30#>^%v}U%kMpTo(QM^w`(>B;AV5Fhr+ZN14~jm$zf6=?n>Fji`-+-J8{*XmY@Eo+I_p+E2Gx-mG2y3sM~G?FOAaUDT*y z204L~-=cev!J0e#j!cn_R2thU4XVcQ(m+ivbPoN7-4D2hZ<;+vDe={%vz-$87kZZ7 zq^gEU>ta-=Imxek6?*%Ui7JS&deF0(jnRedxL2GCD+ny*@+Bm6~_Wd%isa@n&>+!>_W2o?Y4uYacvxLGCp%wIr$j#*)r2R%Lep}1hLZJ*e}+7rk1uSAjC zgT^IwjVj-rQgWKo)i1I*fUPLH>p>G4z7G#aw_GpN zfbHaoH!cqlr)|;uAd7kf=1nCkzV$2^0I?qkZ@Q?qe$u+nD5)=Nfi@Cx05<@7Z*6~n z0L+B-TO4zhHqgsCERZSPvB-_YoW%jHZya46lMF`hnjfD3vo;Xb(x(yV?)>_jel{v< zaxG*d-pWr+E4G8SNj;rarm4DW)I|~y;okeV3cA3#$)KZEm@RJWkr~lgX~CuWgPy;iuSzX)GvB?;e(SmG70*v?xUQHH$XMy2GU@E(8~t{HEEa5saGZlD0+Qy z6;MoQ!7XDdn~&JID7)8(y+yH?`6jAP@KT0nUV;01sfT=t!ET2*D*AklusZ4hfnrL% z5Ww}w4_>kt7s5xBpWIvK#4uakmNG(Ev};Y1u?X7=uD5U+YfmUQ;=1|r6S}Mw>+qS1 zsHeN^qdY@AjUv^1y>h{_1v7^@jw-(C!JD&|K$(~d4j(My0}-(;F0s1#+fH0)i8wLic0R~R=?>nfT1b|8)UJ@1 zT+3i*Y(Cx>WoA~UA7#)vqz6$iEUFK66Wf9UxDhdd^_h1X6`zPcE?2yxnu( zW-Ok@UZt?vRExu7d+ttS%1lM$fTNg!vkOc~8kElb22_|YZ!Ki+>`ax?C!wCKO@66| z*ZapV$_A20p6=HI*uU`kEp70E6#w-*h`&S}+{f$h*LkkQJuMVm*MAM#UjC`ZR-VB8L75pf>J}_Kc z9jIKK3h`cMj-plbQo-OzNegIn$e*lM;6rnaB=)m%3Oy|k+mhpW%CV>0oQ-tPr^{Wq zs}{F!f-1;fGm-53>07Q$ZU2qmi~%8|)b zs6~*T+b(sDi_XTj<;%^n)DSiaZ{ZJN3lbYhUm1rR)~xQ|iqBbC%1*Jb2sUVc3MfFA zcaUOQ56d@Qp7>)T-(Fx%9Pyc=%QSxT(^pU^+>SfS+7tS#@OPet zw*!*zp!vDv{{Pnc<^FGa3^bO17CiNW-{`zEIY0eSxt#lXK~U7qiH(cRCj(9L2hZn! z6T5RjYw?y=`deO+i10~>TX>RycwFKxww)!{V}-b6x7up?pAFnM1Erl7g7nny!^=;f zJSe&6E6p^;>@+OC&c?xLRkr?O`X@Z(uE>{U)o@`NJ1iDS6BG_x_d&?F5@kybo$o9M zJAfqqBK@{}iF8)uwh+TF_PiLRk-2k!T=CcS4~D)WPaGcPR|=O~PbYFQP*Wo0O6f&gQUH{&IKOAt#7R z#Bz@(X&WZ}`ZaX&!{5fJV9pdah=OtYyl{h@B2HChQ$v81%K2%fU#UlV)CxtRx0Y!{Ke;K-yAilkc3E3!P1k6j0;br7sAoHvL7{-41dZ&ve_RdDW>wci&R95MPTbnK(JHI0Pg@*cgRRQ z??t=v{DbMC4V zY&V`nQU@Iag@?2?w}v{@yThn1{l8D$)2A@?2}Mq*(*-$3O(~B;SE}rk0Y=G>)hudU z%NO03e+@W;K)dvxGD$184!xx+V0JfxWCN{<8}H;qM~MruE>}dHPIx%41SKZ}FXrmh zUTpxAMp~5jN;JfN1i^Q#7wAZ+fE0aJCt#zCw1^sLDIl3dUBGANTObgDWBRCpANj!( zG^-dPHkO6fnDf#nTMlQ>lFZ$26nYR;?Ra^@lrMpKsr7nD^58OmuC+CKa+L`lEy=7H zn=1CGS}t^gl;DmEVaVyFe0^u85!#E-{(uPANuaG%b|+3Ywk1SuZU(d zvh7Fq)p2kbH(U2h>;9!VRT37mQmKg9RR19!E^qoGZuQG1u&i+PwwY922_h2r>n8A8 zkIHT5tc%Z!qbn)2yzJiK;3zrU0N*b)w~ygKGy*+LLrc4SKO35s`x)s|c&a|+*Ahsq ze-#0&F3H5mi5a-_ac883xxOB)(4c#vOfP7*q_ZZq6K`dzuR?xDGO1i~cn>ZO{$u1C zHQYmdZsXklEWv?X5P(k2&`u8(S*tqiz;0myB2j*3xng!^U8j8|j?_xxvCL7Aq(+9q z7VIHHhO>iKyXCVjKsklAgZEAu8g;DjJOPF@ZtZ1r&5u)S&$uyKSyG-3WV+|%%hY~k zGZ7bF?xc@%bx|E*5V~xArFq~+VdHe&IHd7m?O+#m$eY9*!dUJjD}-P+%5q-4+@m3k zDMCBY+qX!$$tr3IyLIZ$2iY-cxyY#7(+U~Jq;+j?6;_r9N@SaKyvD{KcZ0IXzRkkm z{y`|cwnk@Wg3IzB3@w}n25x@r8;%pRHx+A~kXNvcOA8dxxHZo@!3j0d_ZFb+8i>ng zvcsW3!{(4ne*%vQA&!cJ2$=BJH;XE{jiPG(M)rLWt_MXlo$!T>AB*ndLi}&x$Jw5r zJ4KkW5>-aN|FJ5a0`mqQryJ9|Oy@sWLe=8x@CQD<$d<^BleBAWD(vzbCu*ysV~_@d z!i;--<9Hj1dPUM3)up!nSl~);uETrZLzK#H(WySz-Yto!)O!fXq4ngk?EzJ2#0uPG z=OkGl;dweSl?-Nzf`y^$cKg3IXgKxBcZ~y|v}}J8r`1l@a^~-3ePs{8eMG!9|95T=bgXU9WD~qWh%)8ksIuRkei~-6oW{X>r zJYDA@j!5XYAjS4Mu|lPLEp6#Z-du<0t&ME4JXRSxUnYZye5|#}akL0odDN<)22%qa z$rd^(_PiEbFFH+$QimrJjUy#_2f|mS=mVfl5NqY~R7?HylarN>JeJ(U4 zKX<~3C^~$K@T#+mDBVtPER&Yy1p0@LbSb9@^CYb(*>kh>g28Pk)|H{ryU4Z6)%A{O zsSjS=^bi`|mx`NF1$R-PQ|!o&*ejf_Pxc~h)MK%a-hVrc`If(g^xvp)YwdXX^Syg) z$=Brd^yDu)#ww4Bu`vFU?)W9Dvg5fy<-i<^o!HYVKGrzYtQigePN1vn(v@#1#?HZ{ zoVM`rz5Ut>YQBG zP}f{?wq)7lt%f}UZdv7u6^~GlL64cACATpiP_7VmJ*M2w4y6n-*jHS zKZmA5&<=eo2Xf;3&niOFz9U|O6-Sp_PZ+@>$$#C01!Gh;Bm$#u?EeLa_#ptgO#+p- ztH@dYhPi&^!v~|by@lPawPw%{{f~zx`J9W{gDyQqn|MxkQ?%a|e>wNjU_uq9l#wkh zC(_~>40_sCDt_P|Js`Phpo#McYHWZ8uuTw2EPC{WU}+JbSOAzKZm2CxLr;njI9YDn zJEQlnV2pFW;3%bhFKeLU8Nk&-J~sg9=irCMFBe3$bhuU>nZhE}40CMeVTk9bwiXDL zhMlVR!`&W_dE;HE%e!i~K>dUJq>-Gah>{(F|IK`QZS2;|0FOxxyE!nH<+c|-qJ@_s z!p~RugogPqJ+qafTE!7HEidf=C}~D6OAk!HS029s{XQR4#I>IDRxW1)bC>#LcKRc0 zg^EJ<7~{&|7nG&7gaQmw{B?UBO%lG{{V+)6<4&dMvJ8zqSv1Shis$)tlf}?q0iU_? z2~vu=9dNhmCthhHY#&)FyW3NgukO^seW)GV5*I?06nT~m%A7Ffl6^EV)^e=$moRq!TNBQX}9IA31ghdL@ajVD%EwU!l9ob>xM6NYap*j{5OW0^}R< zt2j6ZXBP4Ox9I~e@EoeZObZ-5S)JN#sg;M;8tfHSU4~Et)Hjpa*|jwixrri`BU_yG zK9}@XSD#_s+_}Fv+TjCo<9pj9%?!=;q7XTrFL9+c^@+k;G(31By@4Tfp7PNf{x}*OyfOW zUy-eN6uFf1p(FS|qaY#RlQuX-AQV8oN1wTtvBHR=rMge85pR{xtH6J533M(pX)|%y z8OJj2qkFkADs?p5zRb;%(#qZP@xjZcDS)MPf$g}+R<2I2` zJ|!yN8t(^x)hqY?$2$C5F~BYk$?1}hs@(l)kKW`+%BE(un{~X3-<;z+spGGIimoU# zsU@As?c&0-=f%ojG#rHh89F@TDv65yKX5SrtMT6kP=J46zig_7{+Y0y2mGUm{68B1 z$V`1XEdASaBK9B8a00qj{sYCSqAYu1sc<#LqC#%h+}U8PC!L|IXrA`1W?+GgP4KA0 zv#AryNDJoT5DGxsp2kK{V3G~^#;LPwJQm^RQlyLOd!naELA6}>$1Z9ohFjrwt=8g> z?a|;+OUn7ou_7Y{^!3<33+uAs35(7EtSO?LaVpe2*QW)Tf$@==MZR1v$%11s1*FoE z-miE7MG)v+;Kk~&+hz3>PcsW+Efvi$RG7y!omDl+uDX;hGZLo`AP*^h^%3Qs9ld$# z&`64&Ww4XDk6y+0zPLuvN+kfC*?Yuhz~$sDg~=Ef$zD<&(K9z@F26vWJ^P(!&8{!} z1Vwz;ggb0CS9G}~FgpWfvCJ_T$Ma^0JXE@2iR7EnudSNgr>3$311?48#MlAk#!^q$ zdLoVdk?wjT3%FRQ9g3KjSz@70%^1*y*zju`7{ICujX5C9Do74na=8hkqSbXCrO z7odpK_R$ScQdOwA{GjJP`2K`Lgv%hAyo!llTrf0MWUc=19w6Kk8>M)g@NydTV_qbd$ZlTqTi@BNZ{77)#pgC`B2CE;vYnfu25dcL8(8>U{hs zX9D1@B(jy`D@z|4c=A&QY@Bj{H=N8P)FocvBT>nkrpN3Dm=MR1S_jvXCwTRW6j$=L z#)b*FYBBzKqV>d`vLJ=@c_S+x&RghU61SvGgLwLEM@)$s9d@Jm-tm-BVP=@`&fT8W z)Y={c5API_yG87r)e0&*y+09<{>2HSH~^D(>u0gMr52%#%v%`#C|E4%8(o4!ON-ll zRC^FFS?2sT0}$U9xi|B}^5f5Z2~sU*586GK?G{~Oh1q9N38H7kV#~_*URWoCD?TUr z8~RS5;oV2LHqr!6*A+c^Zg-{=QFa6hQwUqO|+-Ud%4_?k6 z1%I-?y1vU0UEQl6>wS#F-%Y$3X8iSWU%+p`qX#|6?m_;6|J{{~LUA+ZxKA=5gq|oa zFKpwcZQfso>p0gP<@DZ-O!i&7o)XhIrR;ja#UwH0yEL zThuDKJYJ`?1movfI^)c+bS;FksuT2b=}`ooDBgXSNwH;)vfYV3B)U8Kz$N_5zlBcp_lD$OeO}V@t@B+^ReNI7qI0C*);2Fjs7Zaw z*52}IiJ>+W*fG)wpU6`prNc@X0EmnnS!aBE^+MH`e+9eUvZM!iLRteRppvu+kpwV) zui~5mJ+apK)V%XK29fR5?v&h--WqNn=@6k=^p>CBryHz4Q@6t?c|lNd>zmv9bH-?S zjQ$nTsf^zZf_Aq(;Dd*0wCWXe(NqKk^yFy%guCb=iFt3WRW-*$%w#@`2Aqcp9%lut z`>zzAu(?L7s!-iqXP2|r=6Lhf0R@XlKc}Q(qixmO#H9|jk9oA_7x;APt*))uxWlWi zV2>@oJ6M;UI((B&9Ze>#^P;QxbndlG54fXb1foq-zTx~nclJZ9{LqwCI{+gm3tg)z zNF`lOq0bEa=&M+$41O?dr{Vcv(`RO*(G9?m$U->>G}qS1mzErro#(#cBT&2`es^B0 zi}Ad=ag+2=FRJsKcMw^@ZKe6)ePi=%K%Q6ENDF>T>~U8)K5Zujof+YB4xk`|SoYB& zm3otLgK<2*{cix{Kv?*DZd;p|25M5()4^Vvtvyuf7Fk)=WyZon&jTmT^$M$XbeS*^ z;y3Nw=4QL6H=X-uALdUOFM$%Dw3Ma@@X?gHQ~`U45vjcotQ9<3%Rk-Tli3VZ!}Je) z$-KZ!O0|>}zEI8WXpMbEnj=f!U_;dm9}$butO6?@yls+14DbqB;I!WqMt;Y=T+;9> zGUd1PcoM8(;otS*KRw~XNH(x|Ds=Nn`TaZn`4-+21xpV?yKEDEorK0xJccjt_{_*) zAPfwK?{y%?L*N;Xx%G9@f zFjiW?{_3~76PAGo8Re$A)tGl-{;%PZGDgG)%BDJf)gF8NWvkZk*bO;>*?m+5bUZw> znpe=$1FHW^(pT8ETLh|yU3~}eKk9u3}dLP~H)J>S=Ip4?e z8H>&a{aLq{)Tgpryvlm|cI(~qU0W;`TupKRcW#GnSx4&<=|xYNma_Tr`%S&PZGP7E zOK~QO%O?pk8>%!lOztUplSd`UhRq|0-SiUOvF%%kh0Zr=?c21v$n~U#{daJ9aPohQ6H6d8S=QZug&(mfrEAxbfPmqYGYcuyNDQ-4}ZJ&N1d~LT)UE z%oYr7HYLxOa-Xr~%X=MiWo^mcynE5-xA-Pj=F61x3#Cpylg_gs_rx7H2hr$|TK~{% zTkAJQ`l@Wxn{Y(Pg3FpUlI^oHJ9Ba2W{KC6ve(adx%`gx#49R|*TSxyhbmpx|x+?A8C(V)m z>5|6XmY#Eb-po^fy45>rryrixvul0(8vW&5YV$`Ur64tXfM;E@FHqkd*C1A$cHE9~5l2b$d*vy)nFO4nA6FSvZ2x=dh~Q_Q+Q;q_SJt2ZyZ;~4{C|2~ z8VsLI^?{nV|7SQ5{GZ|I#V1+uK<)Ye85)4CuWn!~%%<1-U;W$v3?D>*{gIMNsp)@! zy{i8V4>bQXJbJOHfnPc3Kg0ar^?z9H|HR67p6qf=!g`*aaT8!Ufp~zc%H_SMxG08LKvrOwP$ zp-=(>d_rQXTf{^}#Pk%Dq*TldtSrn7OiXNCg4}Ez{G3coJQ8>Lg@i>#MOnF}h)d23T*_i3|GE zfPXa*4j6)q2gN5KB)aKPPX^$Cz+fB*7#9};x$(kp`~ZX;mx5hb5sy;O2Fd}W5(!Jl z#phJ2>7>>lJK(x+>m5!&NJC3U&v5$=H_u&OQ894|NhxXNhbpRS>Kd8`hDOFFre@~P z?Cc#Jot#~KeEs~N2LuMah=`1ee)%dU@!k8RgpRBo0?m? zzIK1>>Fw(u7@wG&LQK!hB9~WI*VZ>Sx3*D-M?a5GFsEm~&i~*70btO-*?-DKe#3+j@@?(r}3`-#+{U z?N74*9$5JQitHa?e{mrJVle3D@WAANJaBr>lNU<(e?fe7sMDww#geYg1g6l+ zaVekceI_zf2E9C@st-mjS;tv5cD(@RsPk9!#d=#ENUo=~aPHBl1{{@Oimyy{h*(>P2NjK=wpe^jaaz5*%zjwOTzq*b7fP;|@MfNg zErOg|>AZ!RdkwjyneIHkkP!bKUrAQog#~%iR9Y9ud>t8q{&yBWj#_8@{NVpa=h8Rwvci7K0JS0{r{5 z&$2I^UI1|2>>yww-6g}3|V|{ z;_&qZ`6yvu8$x9vmnE~s#&^zkQ4tOKE9+(tsKK()$tJe`1@zP;=s{?Xt}|nLlTX$hk%>Qp{_Sv$dc( zoh0cAsoU%=g>r6P469B&HgYYCcoW#gzMgT;8*h36XzNR)S6~4ePG-0BrqkWb7+4vFfVYU<8;+>mr!@7%L^ z2xWhGdB=TfJKa(fl6)reNwUC-VR?NCeGOM1+S&bFpr2%~gLl~i9Z-5SKHH0VvVd)qEg&z3=WkVRWg;CnZ!V1m%KUzMk`_pH=$z3*LRzX8 zscRqOxpFG9z{}G=!1oj{*DvcPhUu+c@rh z@nwO}nQ^^MKn!~EvAf{;ieVi4XCo=uYCop~sKH=K$8pXrWNs;npm6)Al}0iz@URbe zCWCkFKt!EhmgHmURjYm*7I+KKo?Vd>^fatmsUa3V7uMssU zI9wN9jj~rfT9#5!7f77t21X%BtHbyShitHmiGgr(aDfb)Gh@k5(gnTHd?#C+Fl3@9 zp<0Qh*g}zT{BwxN_P2^!{2m4s_C{cled-+IptsU z0IV^>rzPzT!|e=7k;5P5*Nd&iIrp3I*9ByqQ?oEk)Lf5k+qP}nwryL_v2EM7ZQHhO zFv#g0M-IZOp(aQowv z_m@djNY3c#*XdS|A5;1rHTJhoD)!{sQ2ZBe)2QByrX}j`i<|eF#F82PJ(s*Jc8@pv zVA#6k!?n{5OblTbfv!)A1Q({h)=lW!4i>z}4!iBU*b(Zn<3^bb3srWu{XkR=t~rg& z%#!iZahVO6R|iXzwSl(|1h@@O?xL|FSsHp8fxRW?N>xs%f~R<82+jgXBmVWCDVk78U}UuGhFdmI>H_evTa0 z#9q2)q%qm{Qk&|dti;9W>by=_V`tC!jm8~$tg1=`2wa9=a@^5H2R-BmRhKPEo*(p@ zB!R?yP|IN_6lOEF^r>}rc}Q}r6ZQQ@;kgNUsIX2#B{iJcWSB$9TlCyUZ@nRyq=dDz z@4M0vR>mVVg*m1N8_dJaABtwg&%No>Ge6f#>#k4rJPjwwByF;V!pu< ze4;OJg3Y(%hLv{IMz&{>V!!V`@FE-~zyHg3uV5uqOGwnWTCN!gTu#7T0!zNyNpLo(U9md-r7e%EKv0^( z)H7hkm)uG(gr5tWw4j7dXrSSDvFf_lgh+|~p!b6&ddcmB$gY;BL!WaU#%slYB*NqM zrY++b*WGWL+*{osbnxA8n5x3PpTbWf`g7)w4}ZBp&~z&^byEk89PLT=RRks@uN0%ldI*K(#b0m_CxETzXAAsKZfZLH z2BnqDUJpBhXypU!kOP2he6BjhoxX-bTq#&y0{(A#SkFH6PR|Z5A>!D?cL`4gr{FN1 zSFL>rVe#Rs&KPqsAEhXZAOkf9wA#K=c|cycSW(Lr7I2SR@N^voYW^ZK>;k(D_*~gw z4q^vRzai0V;>gj$Yrd=2=|k0T2J)LElpOrbUIZgKnTwL^O>moS&Qgu2SEc8l^KPBN zc9NpIPaTu8q_ebJVv8~BWG8bp>tf}ii2vfDH56?$@lYq@j3o00!$k=sqe_S*@QH70 zjleAu;RDmiyaP#>M6tsd<7P}D5uZ>ADp?=-f%e9#51~Q65;r5?^}zjnIIr!-R_vFX z))q1?R19)0rR}X9*t>Pjpx>Uo{Kb_o1|=NB{JQHRpog$p2#~NeTjy@1F{E3d{5hKDPjlP|eSbvw_O z%uoB}8vR_9F^xmTj8}ZU?a!0Ng9|ovb_sBJ_h!85?8EEK%j*v$jROVNVu>2Yqc4L= z0|az6N8pULFoL=2n*OBl?T$|r-S5!-f&9`KZ19!MyZLOUWXmM(829t@uTclM$F_{g^30w~9F$Y8+Xu;R>W5~(c2VbiPbk9v1_wIJ z+Ep4IIvLHh>lkFb>ozyT^BX6rC7?VWQ59{Ae*i#&CHC$rs^%9GQS03&m>NP?BT-ZS z5vGw#wBWaQ8%nzyT)x@F9hoF8r_7e&>7&IyDlRX?y9nZX*dl}nB#U4i%FBD$#C0^zx? zmt#I7JD2WSgHVzj-NYVC!OYGS-TQfqS*Q*b&;R|fAJ@LFjAgVGNx@JFE3?ZO5xdY2O=4GXI+(`(&%qtaRMd za2)EC!xI-7KUpO9Nl+IIdun29+Kdj|FwM1I(4<+loiR?i<=d()?Q&4g$E@d|=c$!I zr#~>8shLdR!JA4nuP3OTN!!^(Py~klirq35R5;eDWjVS+)8?4&KoioUlE>&N!*4h7;txfj_p>1qC z;CNcE{KeK559cKJp#&y!f_xl$!ARogVyfT9Iz&{Z>Iq=mqgsjjjRvKhUlWkh9!b;K zo(8WqowK)B9Ivl*vt8SV;4BUDnFdjXqia86iV>$ayH1si6b&%FCrov1+Bi{CNO6>& z-t18?AcY$GdKvT3vLChX0+8zvV_`mCQs+HmPW~j2GSKwZ)_8@8+k$Ef4)ST?_||Xa z)|*tM_O*&Z4@rZw=fTbQqLea+Fy29Vl@}DBfn|E|D|FroZ&|3t6q?~ywl3g@{-0ce5QL{<&dE_Q6?pP^LU5s;sP4u)hicD&L z;{!2m>R_rv2q-$DT1Gc0nhZOaI&*n-$KsWrOy?*Vj=cNxYSlv;`F zhW5z0c12Orm#I}7Um^vzhJ1I?Xz{%VkQE4)DKA}M~xvaHx&%r zo^*nz6}V}q zXGA#oU2xa^(X3jwbA><{w>)s)zG#V!5sj3v1GIWPdC@%**RKF%KO{bL;aCaX?0SWK zVDhIt)yqGBl%Sj+^#5C7!ozi7zr+UsI3@gl6(&Z8|52D~GTarCXIks_3F>O#@mF=J*RA;Sy7qu5SXNq<0}&tq1laNId!c!NARrd); z1t18C$Ow5Y6(m6Q0|yRxyc_%{aeZg4#%H+!XICne`k!-FDX)87VC_HAziX^*<7m!VGPV{{In~1munU zWMt=P{&X~TwfEMyH-B9{TzrDKe}2xc?dcEzzGRBKw+$gMo}13UyT~ zs3Tc(Syu37bg~id6;BxLr+V9>W!xr@I_<-Dz9YtRe7cM>Tpi8_-|Xuoo>C&(oG^w2@l~#cB3Hv!>gM}Gb=)hOZw)AT!DEF?ts_fL|7m)2U5C*L-=MM8!|5e25}4Fw-_Al4rv*U(~VovtAPj6y58#m z5k5-8X0K(&%Cyl^Z|vCC0@4$1h5veWv9FS2D)tYjum(3J;|t*cGy=^AMOF4fJflKY zEf=$gVL;2?Qg1XT>CNpdwUs!&3y#Ohxr+tT{l`1N3?~yHH?@ooaY>N(j z@K3!`JJtqlW7NlAisVoJu(XTNsiNRyJUV}p2N4N-k_v6%gVoMHJfV}F( zYBh$~McmMzD|sKAM!8F+83k0N1oT%b9KpoG{O)+QNvgh_S&l(2d87>k)F zvXWBN9XffU*0K^*?~9WM;O?_GHQ57RSpxE_9X~M_@S`!tAeWTG^(p~U+?#)=0+7`} zXezkJ;0@fGC%p!3S-RPNkbfhQV)(T8A$cyk-$G(7yM9C7QQ#WQsFSeuQN1Qw;Uayt?#^p<%?@P(SKD?)=P!P4y&|W zBw5`gb={^`LM3PqoIrsa!5AKYLl`QfJXB5%&WU`4YD#uoE)SO0$~$>-VRyg6c*UPpCys;*$0C zTs*?p-`j3(Q>;=&BSt2l_pxrxcl9v-*@2eN-fQ8)od&1Ewx#?!d`qj3m1ALq8eWwg zq(FQvn^BosbwNgE9E37}^Q?%GhTBw6be8o>YSk35Nckv~k0BQ|g|d{#ENt3kN2mH1 zx$v1u5OjVXE0p9D3O=vbo3PvgDz6H}+Ei3gR@j-Y*AVjbIaV?14@={D(tAWv@3EPT zys7gOa<1*1{LkUpWr%PBDo3cf$N&2CU7xUowtOwGmoEld*^Lbroob)HS;5hyPxtjF zDjJ{X?>GGOs;Xut(HK+^f76Pdos5N4b2-yhMd`s}Sw$spyQ;7UGgJ^c?M$$Y0IZ*~DDt z*daOz9nx#Wg38S;J@Q}~5xL$P4&}wOM_XgNpwMQSzq=G%=C}!{!Ic{qih^CEri%7& zZ89kg%$M#K`3~H;y1?DCJY^_}ED|0AvbgMs;~Cb9AB?3$HF-|zlTeweXl?1IM;Ber zhvoAX<=av{;3q1O327etrWo#8K;7<|g>U}Y+{^wkZXFJF!oQvzoTMvoDo$DximyovFzy>E=P9lrCU6WUBH8 z@(u$&^F+hOvtISljsq|Vp4>7(U+-N;9leQ!1-`Fx%5uL>Q-K?IE9XWihXAmXG%gGE zM=sMFvMFC|(~WPrQ$SS_m6#ekk-^G4m!9|rYgY}$upu=Syel#6ML`v&@?SGf?_}NWB4q8=W!?Y$Ze)!Mz~oD0=I8PuQcn_G7J$xrMx~|h z1A)l6|5!`)=nQ4}DgV~N#rkI>Dgeewb~r!n41&&@TYX!t1Y&^5D&3}QN{Be7BdvPzW8J)#?CvIPoe|ZFPITj zgKB4M9vU08&fm3!qeTz6s7$g3+WDN|`%r0TF5u@!!w)&I3LMOO-sLj@hn$BIrGu*>CIQdjHJ(N& zmzbg9+rgLIm&VEMfC^ou>`;a|DDhbF%k>=t!ImN!d<ouO30=lPZEZsiC3igKz~7A+8|ehq6NUNonuyBkWrd4pehXh$Wwb%*NQ!tNU! z8)HOdJtGSf$QL$}njUJje`=9q6HSD_QKvu0f1|fLST}Qpz{-HJ`-%e7#O4z8d~V^b zsv2%=?Qq<^e0Z4#{gOmN5!`RHO371|)M;Q;i-NPNv1$X~BE$6Q9iPiW<4`Pngx6b0 zNt*E3JK#Boe!wleHIzYCWd!^$#a}5;khq2chm)jS}kz}&KciW zt>PI2-4hfkyH7lxoHy&+96a9|y2f1Cy10M$63+k^-0(o57yD1-?UC@!y%~f^rZbwv z-vx2{58`{YbZRLoK|DlH9~l6@N#+2X?v z%r`p#0o;;YXjocV0eM%(L~U^g@gI|dd~4`=`jG5=ohvlI?a#0ypBmht&Jb*Ipz*E{zjCA#yngAtJ`CGbmxqk;`~ z;685Y=GJ(b=kUT_4S%^c5Yf3)ZCtuI!Ip0|$n*BLH!e8$FK2M<^Tm=(HFEWCHamK! z`FK`~x|8(sn6g>-*&emFr26;b(v7~*ccrK8tk=`tLRRG2fnr;N&VX4k3CV9knYpI6 zJ1B845gq+A`!e17@r<%JO82V1Z-h4`DB2*5)6R(h_oEg5ixQit4QuLaG>Xt@v6r2H zBfktpVeL-B1H-g5?%}9`7&X!yJ*9GBl!RBJs2AVR*&=7ml92 zn1LXvY4vx`lQCN8u(1M~Td6ifz37xcYU4y6XKJIqJ?vd&sE}vVS`8@IV$zpTU7xjz zqsBgR7&F^#grz;`(MRlarePkP9_LH!(tB12i-hLKW8!6 z8;%|l<0PY_n+T9z*jaz#Z48ywhFcf--%0Vu%l1Hh!-_^V^#8BrYaEUux z(R!<0dh~M>l&oRgDfg@Uu@tEgyTUDH3uNde;f(MhE@>?{)ncDL&ZO}~1)MaS!L`A^ zQO}`t_q4V3E9KYDcK6J*13mp0iy`sJ`@K5@fTp6{bb)WR7Qp@V&(AFD{Q02+L4>Onw-7fu~_a; z-2;n{Oi2{8(1_2^eDNdM4{LrXvn~W?tu=tuelxZ{o1V9B^3De5XZ@qqn0u==DH2B4 zCgSNn^_dE1q40I(WVMQ~^$n`hTx(A6)=ku(iLmS3L+uQ8ogiX4!TUo|Zeyo)Wz35WB@X}lpaFA#) zY6f(LpRf6+YXoukd4ra#+9~Ebc%BXTEPH(Hd);6hlQKDZBVlNFq<>#?oX1c&ut~YoMn(q}2A+7Hd zL-@Z{<%|jDKT8ZPPRMIazF*5!BAlspf%`9`Ru1e`E5SO$!}8Z7g1qpWytdhuaKp%> zpkiZynrG@brLc>)&*cfm)%TH{~ zkA7Bc>=s<#S0AjFpX8?;TVJ!H<%a znUxOH__p+;i1tLW&E+c%$eEUy2eZ{<`pYOgb_V0ZF3lM+_+oxY7Je#AD+R={WqUQZzwa{At+gjF_>t;UeyRWQ!672IqRI|p+@(1}(1Mgun zD;|Fv-Dfc+9;IX_!04@F;8PRH_EZPn@A`OOPoa+peZ<0$NB&v3e-i_-9ViBW=i9V2 zos0QTCqs)fQMeu%{qZF})papsL<8&88!ig>bP+aB4$&|_Y37R3);bC^9Xs)(oW)kb z-#ZCR9ylzG#>L|=+f8K^($tykRM2*NP>m+q_x(K}W}b$s%1riNu_ROA*`Lu%Vo zG2lcoXkVGKQA~Cx8LnN&1HyJN_&A!DdikMs`7*I*Xb2jfl{ub(uDz9;+V||=9Ke|y z>PhTlD##q$YRZuKBnNxJX_J%trTxz2O{qY~`&m?`u~|yKPkX#)EG!z39?c3wIl~SY z^zVak9)$LLcuyZb%3F*#PYmU~%z?Iznb{x!q#vSB=M84NRyOIa4iUQrR ziwH7jqYoVul9ZwP<%Cms`7Le*{Gk>f5av6aZLwdgL9N#xuLBHjS$_IRnf-OcQV%FXXLMGaU5HHz8I*|v+VHvOnJ`T!y z95`oA{RJ#;ib6ql^{vSXX7Q5*t`?w-3QXJl^?i<)9xynp+oD*tSe3o%_Ft4*4-v~Aw%?WAx*m2Gp1c!sa`yem7R`tyI>sTnv@Q5It zeb!-`GWOQf<5pi#8gJgs$|2ePcnZ<(B-Lj)%pUbAY6?&;_|0`LJ5RVZp{~%`=&Jd( zuSDjTH_c{G93sp$o>6UbRXpU8163CwHG&<4VIsAG2OTyR6%XGuz>btP2Q>nu>MK+E zgjovCUkppWxA65~xN{rbmqD`{w#t)+ea<-yJzD0n1h+EDpXUSLE4*YSpj~2!Wq{GN zTg~r#in_$eIbX5bV_p)50BqK_b3_EK4><}romjWiV+9|i9j3nc4QR7ZN{PX+Z0F9i zjaqFaA9lh9{!V?g=)$xZZn#nvCDP|e=nFeo0}*rBvo(%G2Mpr_!i@y(EHG>8{O9X_ zWM={gQtPRR=1#8gf!-3*6xz&r6RQZ20blS?Po8K%BqB~RT^4hfk=i=a@$cKO4RAMlhvcK7&!k>K*TOv-L$H)G;vUNpwW949y=g%*R z5jG)Vy)`YxZt3d}FT4tm#zLbt(y)_GJUcCy%}AP(EARUOook#6v>9C95$i|{Pks)W zy_Ej*9Ss5PJ}wWFpU!;OVR6|!|E-Kcb?mi3DrMHYj(K1;I-k82$Fb_|l`|aMqM#19 zFpcTgL8P>VAp+XDL~&+TEP}yHYt%`w!lq28ABWiof6V4`QgCm?>@*UQMa6IhK5C3U zuzmTfT>A14b@dE)|LUJlil3GT;lyjTtY-Wa^le7#ZkjeJ@xv)HA@ZI4wodQU12wWa zQnSZh0@uN}4Ph=Tx}E zt;7#%mb%grAD{_e5W4`qI!`d52`3>p6`W2GjHO*-RPAgBh5@{(1N(Okw(cO}iMS(+ zp2r%T3pwI%W#SxLoC6_{Ub{B6|;=vLAc4!(rZhG?o zh(Rqtkb7pcvlymssjtvL;2&`C3FCat@AO2sVxiC;Iq72#FE4etYPAf8vpLdma4bQ7 zF`$erwp);mS7Fw!8B}x?ij$r$SGI@o(s(24e7}2Ijc%d8Xd4*#$PtB4dT4`3^UykK zKt~_Ii(p~sh~yWwvwc1A6#A~Q)l^r06{z(vHcGB!6DyH{>g?@Fgvudq)wLMT}Yv9*a$4x3xa7+qK{R1!nh@B#nl5R=5kmkRsYvi3~;a#hX9q5Xi zXjEFx6-b}Q;#EX%R7ZgRn^9T0cNoC+h~hGa18{_n#$mY~pMPAknQ|XE9{$O^t0khX zJ^m=2rCJ7+gdnoCCADU%$r(2N@+Y||cy>7Q{uN>&a%2#z6GP-sxm;O>NY(XWjG(VL zb`#>B;(w^gux-*Y4HUaTSLZm!S z8-znzLxW1o!89{3I_|aCl2Hv&wgA?NP9Ex@Y1j#rcwQ;z**t**5lQB_S>dQ}gEcDK zgAqB~!9K&V-G@bVw6j1RtUA3|H5Ub8F!}56mYqJNiVXiR@}RfroNtf&Mk)mWhE!lhd;Jbg=;bXi_3 zOQ4hO*29LlK3cw8s+8!!dqbBp+d(lSql671i~rvy<1qfbmx5tqN&e>@!>#Ur>aK_o zAhRp4Wobrd#j=x{@%Ssk)WlBfV86&GJjqdAR~evfP7n~c=%i`0VC7z54kN3O8r`KL z<*cNwJ_dv1#A^>u64HwU@}|FJ5!+<*F#<%?=$kQ^w(d$^HDyxEHhdrhg+`Rx{nJQLou^yFOZbd*DD zo!(&77|fK!AW?Z>%SELs7q1eJlJ?eFS4prO=MP1dK(63Unl@hzNFjv5X*l){o|q$Z2aR zgFoXos$xoxm@G~I%BaBKMr8m5X&S3bNNK$crOuFuF*kv-3hmw z5fw||t#4s#*52iLNU22hpbeLeNG#X+g)74;Fc=lkJ`)U=2mQ2s2udA&noBIFIgd`& znZDt|c#mztY}}0i{aiHx1Co)N;8CXN`_8ZAk6Hc%YHjHc@c#w_Hbq_$RMG$d5=#C* zFo5xYz<}y*Qw^P+M!L=Rt}bwQcL+i5cI_Z*EcYOAAQ19)5O>&lj==qaf(AQ+_EN{N z{+Uhh8sFZ#UFTKaw`=aN3Vl|ymvZ-I4|CO-g`e){Zn%DRWhGT00s;U42!Fl+a|{8% zfY`{$(8!?J(9qDpz}N`c=zlRGA+mxJ!QwK)lH$_BlCrXM(?e2o<0B%nGh~yqBV+U= zBqC!}bhKmyBg7OW_wd9J7#JAq8tca#9LGQ~%P>HHd39%c0DxRUe1%L%K*RtE0Duty z2c7@|Z|1oa5Pyz-5pq%Sen`zTbtu2I21Nn9y?E8PhOt0yui%R-1y(76Vnsa z6jlBIOeg&{wl}zYU*KS2q2glx)3bu7=xAxF1=v~ITijjVU*KWpXXt6_YwT_AZ-4jD zfC0hxbyxnE=mYqD2nh)Z@e98P=s<;c{9p(KMGW^vNR!q@nw`juP{9SreKK@5*Fy$K z%bcVQkLd#>rf8c6oL^zqe+L_XxyA>7;<-O*#(zWf6ad(e2XlvnhyW&lYf~jV6cfzRR8W1x6s>3yj2KiP!Hqfj8*!ca&pX&srpgLeKS4 z)ie=&VHY77i&U$8ex*0P?#dX}#Dl5a2W-4FY`gH!=UL)-*&oaYGs#!P%@>J%wKE5( z^{hP8%Slz8k|9q@ML=?#NAc~vF3ei=oC5w74oCzFORcacXGjMSCuf2&71P`B>_hV; zKkY5~kG;w3Z>U=HO>de^LH7;zzKv?l)LcdSGx#LzGPc<5_+3ynYF}Bi1*WAbBD0{3 zu_pcH!z{go1%x;or}#4Z_*V6bV{5|vHZd&WL{P}$O%^1ot zneCVyd<=4En?)Kh3&$MKl_o>`*+uH9nH;6vwyP7?zeztRwM1EE`X7GB<`OSoSd>rIEtrxF<{9dHaUOP7%;(MNAzRYoe%%@ z9Ba_|g3!P=otLZJddU^r)mjJag{zadGAM;wWaD(-E;2%CXC)IEQwSWHeJiC{NF0CV zO7&6X|B}7L$^QWfR;s;G24CgfuUFX(jf0eKXKDloTGZD0}CDH0S?*x0i3+`o#v$~AA{#I zUrgNor2wMYs(2APB}Lo37*5s1@!cBYfm`qE`M2;;m6U1pF1DRIM zADTr~(zsn)1>CpQh&J#rSN2Qe_2iT=^trKD{`qD%=|lzG{Nt}&l9{cQiGg9!jvfGC zjc{pAW%mqi6i<8|eDT_~x2H$S^AeZ~kcOuX#x1i)hyR170X700`NQRf_Q_(RXj@4$ zhtVGKh}eO0I1eR|IR|3hpTt#zhWBYiL#vOz_X!J3o^9B{3B%^g2zWeJXt@?|He&?Sk5%UW0=c%YFlmtCO zMMuJq$vRH0pOx<^pYb+lrc495SEi`RsMx{}uGfJNyQ@f4;J6sgy5t)d zWQ4NOa#;wFZEK?7HYuf_Gj0)N;6P;eG??LKD zR_d%%gc9pWH$VgZ>9EuQGMh@bs~bJPda=b)I^Hty-_py?W7Fz5gOWmKj786)<8B31 z{V$k+)vo@fH8zDz1rRO(%3vVA+zQ76tnZCpgxkTM>o`TFI<$O#{y~4nV)!fJT+e493|F1(Q`JjoVm7FXPm2dMnQ;F zqR;R(D(H@m(qc3Es|XeSU`Toq=c3RJW~SEfcoy{ru{xv)Q*2JR!J#ftII!+=TE1tT zR#Xycuc>J%h(8~jGsXoVu&HdEo(eS*?RB1dye6I>v>d+Xb@)aR`|x>hhu~+KGzbHO zfw{cexE=WEheJG3%_8mdd#Hg}R#4ntT!vj2Ul|`A&t@)2`6rLaonV*DD)+N}6g0k^7k& z)Y$xKed*q7?j66D%;PpWa;-K!z1eBXtg+(|s;6lX_XI0MN~+_YYK!^Vwao@F7GZggw*F=I*@>1IW{+%-j)&h`;j7|?@qrCLB-y)5aI9^$*1 zTVbTf+3+XPKxy%8h$%^i`EsW;%5&kUF5N?7QWWs?GMVr=z(T~N*hM;bPt->!yL zDdks1d*CfJ+o~ykJ}bfzqG`&ar%e;gWCWbRuAouhiXbx4!FCm|EwcdS_danYD!f7Q z5Q`4g8#6Mh-e2&t{LQ21KrIa%%n8SGNd#~#=B5i#(s}L=GZz5tZ=I%J> z@0sGkytD@8r}d@&_`=_vtINyb*0}hk0yA;tg-kPuwFR5rBUIDbI!sH~iU+0z{Smma z>WUuWCC9A}r8<7x(EewQYbOqnTrw;5O#wMm8Wp#IttKnWmZK5h*KUrCE78mGP0r!?h{K6pw2ra*N-~V@U_06(*|M;pcVE5 zR9T;|Z<0W8WD@ZYOM#rsA5xJ@{xal>&)L)6R9pbBthSjy{mlE>NB3tdx#!C5OT>9V z{kYmG+hO2h(ag7V-KvyJJ_exCv*v4l#F0ieCPU;Qb=S2`@v%zVeD(bG&2Cp;&{+KN z54sMTBp9gjY70vRW_u1_6WnNQ1@NKmBq-=y2f&!J@UX-yWK^A(n4p_qe9N#f1vOHh zD>by0vn$>A{%=v(%{O=_<`rY4yh6NVEWR0PAkP~zG$0rS$l9VManerMh6Q9Or~QAH92ejUB&MS~sfR?~KXJTBx4sz^dY!z;PZ! zsLoEYQT(GgicElEx#UcM4aL6q~>@Zx^B3J zsj+Lj1!Q}eFpk)F)wnbU`U`q@C%gLRASX+#&~Kvzap*?oN+Y3F1p2TQzky{P2Q`+p z(pVmH{#s`3Mw4%!18bZao)WzocrM{>PHX*ZV!oO?{}xc7b(c@>u>K%XM|@H?n_~q< zXXweuaO3?|^-t5gzfWi4V)OYu(XYl|ETku_x7!Spa>c>2^tA`wbBe5^kiN0q{Z$Ai zB-TkRB=CoYB9=$7K{;b-8S3G7%(qw@eqbs86;|?A&5Qk5*x`4(m2SjoU^+Lj+48o;}K?gZd8gAkuK_;M<8vmj0w)n%|X_;5W29H)Y zK$WQ_)Qz69YV9%W)qhv;sLZfwLH^JNDd?m?!@sNfr%6J~+=qASVdU?-&_&9AN(*M< z00*5ChK3gZ*Jw8+@A}F(>ih-FrZr=cGGr#L@=*FOs$an0BrAx24>t zPd5Kx>oDbZM}9T;y1cTbNvdav=CLu!l<2~}qwlGt6wI&jXP3C|>UC=}Y+I{}q0;7} zFOhgb9f%+V$ghERA&4_24-lr_{%s9$E+FlqL1r$1q_1~ z8Iagq9r>UBU^g&7W}3*yz*u?`HmpmMczU8N+%MO3S@ZVs{qGNuW)Z(ftxd-GPPcz7 zU-l3P2}(*0-QnNK5NccLCgz#Li%LmF#Q50=`(@u7HyuM#z=#KK0OfJk;V${_?5q6~ z7`ax%SU<5hM0g;?ji6cUTbI)P)*Q?bi#TjenTH}l)GLKu!Fa5EQC`*@DCjjQszin( zDFUaRe3%il4^uOIDR{`!p1DZhQGf8#P#7ChXb9_GE2aO&TMzwBx9Tc*hYo%f_XZ&M zkF7$7MD?7f$+Wb?l2ltj-sq*}E2X|SPHv_Q;u;fX#!d!V;?(EH{pEl3wJAPSPX0$o zxgb)c?NqWO+8C-r&A87@70bAZ*Gr?n7+V*T1(AC)T3_$31Ug}2qiVg`X2Z1Z8(l}j zQ&`!WIyWh|i-ItC0TfY6?<`Fp3k0q!2A?vk5S@6e(G_(z*X@swOof9CTkOGINj%djy%h*bI#%?wMSF~Zv5tVya!Cq*fA2G)9I_RK{>dLh36t;x@SQ~m=>F9A9|Ez}iY%`B%|3XJ>VOnwVXnJ?f2TTdn-tzS;wuR6X}B9(AFwgg9yNsSU)gc>ig zZLfPcy-U>2z5qJIB_3X%x}?CV7x~PTT16(?`2}9Ce?%)>os)JSbTkgJeg=Tno&heP zr{#yhpq%m5U4MVtw;2gOTNJP%&+MRAzQPH@`&0w{ibi(4*CDc#=rD;biXmC*tF2o3 zEq?aX($i=aC8BYHJ>QIW-!1CjtMd~FA5zS$89Bs|5udH6?xH`s{Q7z1e-O{`??A;r#3TLo&+Qx(_OU3a zjwA?TR0#qB>jBfq5PfNxlZTf>oTcGL2J-DXS|pA67!+b7dyCoaawx>we-V9CSlh2! zT1QbnK+>o9arYVd!=MVpc@mVCaYLU*vzN=U`ncs~@)VW(fTCD7KvA`7Ac&|#)tyj) zHS@|Eix< z05kyNW-SyI%Qj$V3`?7G*!7)u^mXQ`%sX)KyZiub{Tl2&>e<~`06SvXG{WVdv4{XP zIX0+ZF7|JBhXN$xOxn-Q|7lB+Vvrc1t@ytXC5Jzdv8PB3Q%O>DgsTo)%Hb6ifZL+BIZfv?px#0DlHH+5_6~RTkDJYO_kX4e_;OCu_7By!OV%>yjIWLzIKM9$ zUW2dC)xyI1I7;HST8S_Jx~vMDRF3ssqLols+1+kSir6B(ZI%iWYeHFScT{cAYo!I@ zZV4QTGYBCERI%D2yR7WG!_*1? z?Q0$;huv5F;CY=I@&p;PZTot)0JF3}dhnUhqPBwoGX@>(m^s|b%4le$KB+wJaTIc0 zOB14#1N<89M?$gP8IHP!LG?!Qr5{r+Ehpt%|IKx>pNFV^3edT|jwg#8^zwi~Y!ZVi z7jyQ^ymWpo8UHIdFw3g5HFKb*YEVbfuFne94Nn*NIK1!ROqt?Hskm0iC|KI8&Y*v| zM8iqaV(zKojB)j}iveUtoAmsL-kJqtp$JbSux<&6ZU zFU^bET7B*4uWh}1A93vVpJ*ULUnoe)gD5#g6Xs*6idGKSv?)fB9Q!WC;HJSGO<#0Q z!NvAY`L+Yo0*p2|!*i^$<~&$|B)r}@Z&hbE@{a>KV@kVPKk}P4J5?Q5t&mx1vZBdG z+8z2V_As3B6k5<}sBkeQ+CxFx$xVzYDlo=Sr8RU4+Lp#mNvs^Wz$}$RYnN~OY{Lk- zUb1l_YXfS-6%Mg%>=h^MCnmTa`RqIWXMZ%8d4?z&NP-Gn^YJ@Nt?Phj4|xzKXCcaf zAz_F41f{?`xh{$DaXAX)?R4!ibZ$Mj_8`am(`rSMnU)S-UTst1?CG;3)u zN_`8O96_$Om{Zi(=fuBfg=|UOYUHOLnCF>K<9Ff=n9YQL|8U|PWuA)UbS3AANS&Pa zKURH_&=Hk>N7chQ?{fJTPd&(**wd_dC^}`&nbg~in&9_gxoFHIobvnA1Y*}s19XD8 z_c*#K(wm+jih6#Ec*)F30?X7yc~{LoEPNZ6RL{yIC`>qhlMd&nYOV2`1GO@YdW#IL z4-H7$7O$$mZ1(oi3`w)|%4|&M43SNnt}byp`eY1ot(Y~Rq4B{g5we1)m6s?tv8=Exsyj#9WOn48{bHv|!aKvZ3E0haa0WL_ZQ_W`t`?=t zp3j;l^4X*|m#t85A&bL}!5zcV!knb@&9_|f`8W8`(awo1{piWxeR{dnIOSk+yRm%Te%brw7<>dm z;3u@4yaKZ?l1)Hza>q63w)#-tOEl!LB=Kt9+k}nd=CL52J{ME1mcUX+`}1(N<(q~Y z|DQ|VB@iibf9c~w>GWcnuZIL&o-y2A-`jKws$Iy}FX>~OYzu-Cj?{ACR6TuG3x3P- zcgq*vTgP5|wOHeH$)75YZVUs0lf4~XnSEuU-|Vtslf7Jp^Pd|I+bJd`eBh=XO7+se z2jO|EMX)!1!{ zt7EdT!oRa;iIGZV%cWP@>>_s>jMko7cSQLi)rrz4!+{!Riou#W$z;1ig@9myy`fP&w9ewii+@0g2b>Q0wz!JkZ{-AoB7tz{9ELZ`;DaWJ8px~z3iU>Y9$pEa=j64*cLY@ zs{VIK=d?YnxsE14dAl1!Lth++Bd&0P6#AgSXk>4N>A)~(*`MUNbfcjsFb6SX!58D* z!pvBkWY21jSyEw#z z1n;8Tc+|>S#gGX-{ADAZZ$I@X-$rtilsjM(9(z=O5fJPj3d*$p;-qnpxSHi_k~i6o zQrl%B0raLO_&J8Ws3iOn24-iV^0Za$BS*%Dbdc7wJa!PYIWo6(%x!0_+OTCA#Nlhb zFa5geH-sy(5P2Qrb)WO|pd);Ff{PKOwQrY`BSkN)-L2o#b7ZfSCGjKUTwU|BMP64Y zl`>e*GUXwbX5fBDT5`@bg09wCR06d7#nIV@r@T9PMnQci5?cCI1CKf&*!%N)^9q)p zLcx8D7nwV*A+u3R04wXeVE5*T$+fmx*s35ryDTek7ydvb`3{!%kW_DW7Pr@}m)gH( zo8IlhBS+aJ=(7A&?FFQ(m-UtIn1uvT+{5R0iz`^t(|IV?Tgf!6+s^?jDjGhG*5|E1 z+{(L^Uv!4}SNd70izzK+%#57ZeErNEi5!mD$~k(pm>@Bqr>qeqbBHw-^hOfHK30-U zpl_F}gs92kPpla?j#6J%4oCG&;l`ztz0p1J*LSpDV^%V+K}YeI_RPn#RyWEExaPTy z(3jwe7rr;miHa*AK!qALp&Z>VI3M}G^QMux9yeYcwprwt61=M#9hvm0#KsjH4#shE z4zR!O$-EABO>5r*J@^JK8Vm_Yzz5}hi-PL)({HC*#~TBsa|GjuC7Zs?U6sr^I4+Hz zK79+hR>#Cq8?*WetBBfy%UCy|-_RU2TO?tOaG$((?gna{A&dGpYJf9*?dC(~kRn&V z+tGLG*?41{<_EQ;$}OXQ_~JNqZ6Ln<)Jh-}+!gferY?XEUCukY;AyrgFh}x3x7`E& zgD%geoWHLJF8T;ksc21@LyuDY@F!k|r@1zB7L(!EZG2O_P`B{{cCMJ#T-0qs3HR)M z-kmg|-A!o}+U6!8I zDl>B<^yB7bQt<-gR!$d8y=o8zGT$MJ%v`?*%w&IB{r%UvG?D!*OQyGw=qiqIykI@b>f`=KopYr*DP?TZ%y<`4;KSWEXs}ql zx*413QGuL^{KW7w$WUvZlqzF(0gEd7al}>>;R{;YS|*hTp4Hlw$FmG5Gv*wLnVn1@&XsGeE7W_`oD8lc6<8OViqwE(80mJ?1Sn&&}v+s3giw2^c~l zJz2vo+-ZtYgh4XSb0F>_`T|3Te_wSnkaFirmUuYCw!F~Y?#Af`{i_q=ya@}a%J@2c z%!W^&PB(VH3s{hd?`Spe@@7FlN#b<`R~L!pZ8hJcljJIKV|3r?`iO;&F`pr*o{_$#HVx)-Pn?Ply_HrsBV#)~rCov~}cC9kv$ zO<RboYbFzSt0R?y{q0xx*$$wXUHF37F%Ql_m5ifW=)Th!~S-2%Da<{Mrk5()SMxK)VOPDr9nmJ zGIh}OoZ$4PG0Z-`bUa~Wy_6E19||}VlPY_qud@~6O@_77_s3XTYLY~>kQl5!w2~to zdm(iTAzhm5KD_CjoNg8O@OQo4H6n>>>QKV6M5=S_Qgt{TN&iI)f*F zM(v{xb@OA5NH(bW&qmh2mA}7Xt^Zr5_!%MKpM4c%;WyB8=&1_Gg)viUhk9rO+;E61 zK?yucYiej~_h*W?iqGvT$K;bpJum}D)=CAefCZJQu%c;CCurgp?rhmgtX}%M^&``+ zvcJ{7lw?v4*nZa~U!{_*ezjuo&2rw1*?p))6?ez(<+v(N5}zBY;9BWf#9I!BXMlBk z0xC$2#OkaGDR--wm$vv@i!1|;x?y`a`0EFtuRAe8Iwqwdra%C8{#6=kwFfl6>D>{5 zDS43>JwbaGkosbdu|eqW*giqn&P=JYji2J3$0}M6yZ2Yz z49OpSIBp%mO*INd2l$H2gg?!lh@k2$y}o)-8|M0n6x2xsX|bt*cGl=CDpMLY&gj}w z2)D~dvy$8>QI-$f3WFKpTXO1Lt*o5HJ!jtR6^-6)%84q(WL7b1L44MT$!5hk6JM{% znkvY-5H1G*co8@Mj}8w;tjYgNe=C)GH~sIO%tE@yk1o%EBPiZ)OcS=mCxzCKD>&Ly zBsVdD^^fL1&&D2(UnsgFO$gSw({oJ@017-*SqrL0|JpyV-28b*bX9+Up7RWl6UvX> z0_w%oJSr3&3P!(c38cz$PfA*0YJ5bftQVG)BmxIUFX+S_k#2Nq|$2W*G3xgvmsFg?FEA6dFK;l62Zf@-;=h||dk z2ZV3Lj1FnaFSG_~4Ma1vMQs=trZJ-rl2;?Og!Q4(^ucwn>nNd5TN1C<~&BC(H1>Y2iq8yR;$C~9 z*GoVXo0m|PgGmi$jonN7jwtNV4dan5+o5*Dzbx50R+wvY7=QrD-mq)`HV=O#4bRYh0i@5qkK7bFyhE{LRK1i1(+ zGy60eIhv4KVN=&;;~(ZoB$CO=VKlJ~$aEFeE#F~>9i>%%DHQ78CmgL>`Nq7GVth&5 zFZ}&=Q2XNI<|kxM^qV1VhOZ^Iv{ThX!lP~yk|JY)Vltgd+`P^ytJ z-R@3legz$gIkgY|5<>gY$Uf4A5QzgL4_IRxWrU3=cPKaVIH+l6S7;x?`pL_IOxLg6 z6f03+S1i>NXU59_MSfC}a^Z9yK5?8Q3f(50a`hJOR0EhlP**VHBG6-RCWKy!jACLi z1H_rHD>m{uqjel?R2khUXvhT`q|uowO4^?RiN@bnTzAZP!@R3=_AjdmXH86C2Q$r% z%obGr@io2qu_Zoz;%Mc1Ep7gJ<7D`&3@I2oudwyL@-exIF)_6<5d+<^xyjS@;(l!4 z3nH{9S|0jI8Pb8O4@LQmmK8nd(=W6;BkK%UelUX=5R^oY8RSOM+IP#&XlfsQpfsIM z++5E9XbgCJpfD8rTMwrs>?a^ls{_sRYn4R(qyO+T;H}6r;9i_lRH40_5?o#O#$0%D z8C#wDgtGc;M`{!%VlKWvz`K_Fuaw{WuU0aOy3!Di#`i$Zq}PHB%9w6$L3q~2;9zQC zkdCwxNa_0AZ{2|mj-B(8Uq^|A?8|4*#YN#xMS$mZFlkFuJJ_}54batLuoh(N&Hr76 zi8GXZoe*`?J)h&Lwsf!>S|R}C;-;?V()liD<1LPCLvR<)sT2$7>p2}4_0?J7{ta)M z!jIY;@z$0Im0L{{lgc+l%T_w=?tnQSfP8(Oh2!Y#V>e0P@)!3ai|lZCh6Z>a#QrQw zBA>qX`GMZNv?YkrkX4?zJL+p|F&IO=7f8D@AEf)L@qxCQt8sPWdRVo@NZi{7lemC- z8-(_a>9j5?*23KcH%IDzvNmY%Fj#%C#Anpgug7e>x1Fm>-zSvZdWS;%$lQy7oO>&# z#2=GQ=VVL-RUl|WQxRcd<6r&v{{ulm|Jz%NSAWe23K0JC*w=ky(jR0mUHbhb%En>a zEIEw{*~W7k!v0q(SGU%SP@Lsyp$eC(b{PLaisXX^AX>?nrPNq}2)CIz8W?K96on+y zmuFSnwux;YO7K0Oqz}8NqAsh)=6t0a9VyasF{qg%gAcsWoRh^>7U;N@7LrH>*_`(9S_9R=tQj({U{o6|R%qEo!>#EyE!e>onqI6J75#5aq! zlEsj|$kVn34ew&*b$OAG9vB>9(h(Vnlm}Y+x`Uj#yGO!>)4g#-wBOQGhXj)Em71j- zZV2yl^V2Ptw)#%u{{HbpCbM5>#pdm4;z6XVe(l$c+77?vrD8g*_V2kDNeB}nyf_Ei zCT6gp%#jRwjJVmZgmo{JrSz>H2!9E&?OV z{k%*`ekUfZI*p{VE~4q1Q!Xd6fLM=HBqR)Ou;m*t#b(WfzS6-W#o_WMsycS)m7*#Kq!_V(M+QF zgz3|Gv%vD$&iiY*8Z`Gi1oQH5QtlHHd)kdnEvD5uBMhzYtc;m4%cc2L2kj4OnVOov zwswXa@mQuDaOc0u1gQ@rrwE8mx+`m4h;njjO$)8+SV}{1b|aVGh`$jSTXZI2@_3+* z^*ka?Iq(%-AoIykB_wJyV@ssB$KIk3ayrNWHD&-dd@ZOGvW`>_s!_J>*8E(7J()n^ zuCT{KBJ^^<{(}7)l28i)Kk=hiJyf$hUz?jn#v7LlfIbO-P z-B}X)#OYXD8jF)+`f7T>w-FjA&r~nYAua`3@DW+SU^E?Wv`yP}Px1KWG5kfxiEQDr zq?5G1a=CUC6iy`ZarO6#z4*4fK2Mjjefd#*`A>CMXG$2?rhl0pa+3hO?-}4L?SSMs zEsy<(|78=Zz*_aV2?_sRISFg8jB_F>A1d29iTd z@Bu>_$LX9}_uOf_nG1_1rlv|fHfdVpKvbULaYNlS?i4@zxXqfuLdO|-SIqB& z+`AWBKbiP1_>?wP$7nTmoPc@uubaM%bU;8B8T9W`Yz;;a`lOFI^%hGL^&}K4TNC_s zt<-KXy3ND-xy+4~DWn3CCb+>kHzI|Nt>M?3$70|q4}7(UnAK+dKl>i}vdrl(J?Dzc zWoA6#oRP0oTFH0$ZuTB}gl5(|vQxFHf2&3^$(-V{Cv!-Pvb{2{M}z2pm^N22TmEXF zcvCL}=^=wTy^;Mih*PPS!>nqu^1@>Tm2Y|7O>B_neMI5Dp0*-DAHownSZ=loTHPL) z1x*Sz6U9A|WO;AmeZAF?_WT8F9VE`zc(nG{j$eXz&b62=B$rN~Y{dg5VIx&l0;(Kt zfI5zw?~(73&^~)R@{+Et(1E2pMso;=6BW3T6Ous?SuDK3wYi5{eiv!DgqO0Inza*=0Mc7>4X7U!f&fU zEpX9~QCl(!-FEX>krh#L7Qf2N-!hKEn%F>Zhi%va?pLAYFRLT36p-`d``s67v9toH zOwzxB%KOS!KE?u_J0m|%5{AZNHo2@$C#Kgg|1@#J$M|(@*%qDa8rjbiB)}P)sFn*g zf_2A5k$1^+6^TT{jc!!*8xzQq076T+95>hytT z$48m8d=06qE#8rSCG&>kH|DMg%MZ zj*j?FBW(UdK3wHegtCvOw$(;Xk_)rfYmQ7v<0_?w?7!UnDqOE%IFc$7IV;TR12}OB z<>RacFIBKLE%2nP`J1=MVw#m(TiA(xJO`PW{q)Jzs|LKbsgX{MM1DG%v-W2TI<|h_ z9lGaj=5KYU7=%wGQ<9b#f+yGM1ZBF1~hxX$2GY z75S98WS%qdYtCo~q?SG-F~vAdQ(BC*+x=#tRn~Gr$g|vBHN-#IE_}n{g+OUq+V~f5 zpRhPWys_R|+u6qxg40FO;f*{;n+vTEo+X{^c;UK7aIVsKah_3er&D=Oj0O+7DK3)#S%sa~nsn2dvQ|b*5jFgsUZf zwvret1%v_!6vHmghQ0K77%xegFz;^2YcUp#gNc$Hle%t((DtPCTmQ%=ycFxeqw z;+Ei+Q&bc}xQ;1EvD%m&Mc-l3vs~wj@cH+x-y5LCbGfttP0eLBVrGAD^OCG1b2n&T z@LR4#w9?!J>Wht;$bJ+inRQujZi#YsEJ#50jm%`DW24IQ__zz$qrWM160BB#Ik9VG zaEQbtsf4eBMXH_Bc7;>{*Kgrg1^wbFX=!T~=8}ETC8QqMd zVCpOx{i1Qc1j3l0#|Fpmb-}wyYLN)yxx5Wg?Pm92PI){eD_RrwCkp_h8yMiUdSF|8 z$w>GdQ3*MKepM}D*@3Tynm^zS2;#9!x?!gHO;Ho7NO>B*yW-?l5(%Ul;n6mA79vCg z+!NxsXHcq{IrzRn_vTFYt%Rwvb++p9kiJ^!BQeBk_E1asuy9pdtgsb0nzEXL@s0si z@inJJ=UM)TQ00wSt9=($Mnx*AI1)XZMlk^H_M)ik<`VCFRnnZYOc!`IRMljceJ1>C z8oAiJu#12I>)7tiPVtjR&Pr30LjRHvk@E8oX^%?ETSf-w@d|^dYbFQ2NpjhG4b7=0 zQVKqo3^Epip?Ixjj?V6vBK6+=&V_x!-=~ERzX`sndYMHrm8r}$9VxyQ8yw>?v%etg z+NJs;6CS?`$r4N{=1{SNN+h&Rc*K;i!Iu0CHfx{s8Cvp!atxyQ&9>hQ zkwbfFd%7S!g5a*sX#-BcPsa!SPEKU*R>H~^xkFTe;Lq=RJFAYg96MZ!J*kx4h2v0- z=?MY-;d0VGd$ei73AL6L8K%H7|Lr&=Mn#Txg?;zgcC@+rcaPkg=D0xTPdTaBUx&RK z30;vQ;*!MOf_0<;!z2y&{vQXR%<0#Wj0ux|C0>b`#RPBzrgHjqx&XN`QHh&nFY=Zb z35#AI5S}uN@Kq0OnaH;)kgo>?RUpVF)^863K3h>`0bkms@G+4;ge@YpW6RT2XC-QU zi%>dkK35LGHu%Ib2|ncHLb#{%pPtx2 zb&u6BmGW@uaeH^LfbtJB8+<&7ZgZXzx2{I)u6XT^ofh+hRM9JgVS2tJvm)h6-j6xD z&f>-Gkoxq%l5?ri+KovvbonuksRL2N0j@4vMDVxgu#aSqd`U)+_oq!9!eRRV&&IsSS~ zZPr=tLYxh`)ui^xNB=~m15XSn?O`W0$>H#yH2 zcj?IMG*9mBjt{9A3ro!|H9N^;zh_!h$XS`FF%Lnt1x;XJphF6qHTf&~(BcE#nOzz# zH_?DsDSm;2w+)`|(vW&wMwadGJhNRk=VFY_tob0$fkj`Pd5+4#rE8B?XTUC294_l z=vlkS0R>Cp@S5TiJw>ZU0OciSWssdKDDLHEpdB+wIx52Fi2U`4OZr&Xz>mojekKmb z?=?4#H^Ax3%z-|LMn43DPfkdr;vUxL=PdX9j!i2;zyYE87+aek+arS+(t>gBCK7Lw zano6C)15zk`uJ1mBI%7103r83|B=BUjV5yX0xkpH(`Y=MpPz_?q+f$PQeGtqcCloB z0EN2r0us;=s%j$(AwrHi+%ob6XKcv@{O46Ps$9hd$3dLk5H8v$W}_3AnpG;dKp!nl z@;+>IrbD*b%Mqa*1`vV|O4jN&X#9AXCG&=PW?@HKKf%y!t`570i*zA{q9ej6DLkC`jhCU+&}Srkzg4P)rLg zbVY4)=DZbVddt7XR;CcvOfZCa1vkCUj;wvmPzCW^w`BJ7L6sH(gyPhv%8YgTejp35 z<7)zDJ3|2#J!?bhJ$gd2dS8MXas4Hir?!oK?8 z?Q*MtlcDdf1CIfrR;4Z5uEwVZY>TAeHz)xl#0v@QmX7#9vgnpO=9mR>+YiMg^kM{T z%(RbZCX|0|yK!9o?aZbe*?*l&E=wUMQ~_Y81nN_nI|F-iel$ZsJj{FBv9{Jjg1ypT zWhDU9MNKu{Y{&GWV=P~Rf*nQ5Vs0>1G{@difK8~_ZcPvvM%38$=^b)Sx!-^dz-=uT z-~XxrOGw|8`{k6*hY4G6lyM63)r) zccx9pw}zH{md=)sl7--bgv6ar7oz9(s$*wFVHzMF_sqqXB3j^^V zS*Y&ek_oxfXv)d~#T7rPaA*%7hp79I)Eh)`T7cGK*GI9YAf+`2ct4QROcOoJl1G%J zcND1-NoD@poOe1{q*hE_xXm^m@vHaNutr5FM(tAj`R=wQF^uU0?*rXDF zK<59V>@9=hiq@^&Cb$L@8wK6~Q`ByX+ZKf$IHQp#bu|Uq zZ`)}aE1RBB#D#tTPpeF@#ezfHa>jI8Xw=o1l2`zcrt*uQA+M~5FZfsv06;A$`8V2a z|1sG9?F>Xpl|S@+NBh@MS%C9z^IvO{L${cC81jAF)n)&;!-J#l&{-x@Q}`D2V_UQ> za)&@!4roQ97VlbX)U}*4*=@|sNvSi5}6ijJb%P((dXt#7VGONENjJvruadq< z=IqghZDClaZ1Nr7Ev+ZyNVk5ieA})_2LDEgx9g%u@LmG7;$=mZVo9;&PI^Es{dg1> zfS1`S1w$1TK&-}qQ|A|QW6J#X+P64G{k5e6pt0f#K>?73<0l3R=Sdu$>}dDY`zx(~ zjvGlOCYBpB_?(1ILlY4(U!uP#RAXe&)EJc6e8&>y1x(jE-BtfUNR|Tv#zmyGjT~we z_)xlSYiLULZ+OpccA99=ex4mE+`qs!pzJ4HMU*i>TUZ}is;=9)qT(y5S7y|g`bga4 zeo^~AWsWdYHw~*#wfxGvG!6bKW0~*jDlEop$m#h_=oNp;S8uO#I>bSX+sizG+fvBu z&*yec8twvqu76hnOd-BcenakG7%ddjTPkyYeT_J}MBSp`X=xh5Z865~TruQdx5 zu`Fg2M!ABVyh)hLyYsc^zmAEvz2Z@_OtaX@@LCi@B!%gYO%0RF*ax+tdeW=^KB}&A zIGA>TuN8`VI6jJ@7h=mwi$(1&*vDGS-u)O+7;?1dqfr&lZr|RVf)*8!hh@kyF>Gb! z`Fup4xnXMoyd7)8CG-%@?RvtpKsf3Kp{mQ&2dIf#72qYPop5m0h#JM3znjK%lb?Lk`0J#s)c8lrni`1ZDzeISlqO-ErgBZKAE2J3L*EfJ zgLV)7(x_H8k%EA)OErW+xZoGq(5KYBwy^3y9ryFkv7@AVx#?ekhUQg7YZ*GSIi^?*CaDcK9h+0}|2IJ%R3uz}poT=^1 z(RV6*b)HKLLc0vqnxCAxb+06W4WchZ8u~p*=UNBsxfD6k$De1$5ekNlRNuXmEkC@@ zhIEO3Vkzl*_ClpQWk#s@>DO$ymRD$LdXcc*nMKOsJ!F^9!knj&Hx12$VY7{sn1Y{T zXzqF8^?ohLw9B+{iX0nx081Uq#$LdPucvTC3&&yz$0my{xplao*826-)z~{-wyq&G zXc291pM+l=mwJ)V^SIQLQ>F>3I=XSyDcPOvvestcaxRmN7P_zhsZuvxzBY&o3U|zH z#}Ep$Go<*x<=Zr*RMf&{dCuJOdXt7-mm= zI6FC`3!6J*@W1~&rKol_qi`kbvF{twf7+RAYTm@zfUm47`~ld;{i8?$DfRUwe^v4? zxYBqR!!TQ;ey3FrR&-A&Yy^RG9C3w6LMa6Vo{yoB!pybBK$WPNg5KgDHv*_Vl*?bHfh}n6SMWhYZ?0P>@j4@+|lWD zf|$v!lCOJBGyZ`056S&(h?@_-sA1dhsgCm;lZ3sRlDI1EXIufj(q1sJ>tRdIj*d_S zd>jB(eI28(L4>l*T$zG3{ayQ$RGTiYV46;6=DE8>ejxb`wLLz^{>CqD;qJKW-g>-w zvrJP3OmjXwk9lA)Ck6yK>9>6cY~*pZQHsuN+D9SaE2DYb$UANmCJrkFD*OgsZP@TR(_Y3-k>mUehnCGC%EFfilQ!Z%) z4D}bA^o6H?zS%RCR=%Ey-DyJL1sesc0q zhF|{ys4lZu$Q-`vsP=odVLa9~Q}@{z5V*^}^Q&ZGE8ie?z^~Qtg&HYb2WF6h5r2^6 zCdG)7fQpjq1?BwuB}4v-zopGS<6Gbd{-IOORS6C@mRM2-fV7vfC1w4BP_UYEL8FE6 zQ>7^U!>a(i7?clx06zR<2R%P8Eb5$1gB2TkO+W&D-{0a@g3ehcL}#T!Unw$ht;KpI z@ddChRf27GI}`R_eAIiPs2e}Gu`&4irEr#Sd#W`MNh#*?VAK6FhWrMzV#L}T8D#Vj zlIG=ieQ4_hj9Hne4kPm=nRV|=oD7=+mqZ=fb!9IoN@N*CR*XmGZ@qJY$wv9eJ5_t?4w5B?UofDj_G#lfay#_u%TUp2>%hj)65sX z1=H%R5yqikj5Vp?tIj)qA4bq;r?jX{Qgyh=Ef%Z31sLoIG5vg%Af(<2=hV*V` zp2Fm?fCw7tj>ZbhVKA}$^=PduvZE(2V7v1{&rdVc4ADwxYp2s=KmD(`5+>+3zRpRE1B0KN>RZ$e2*0P*RFd zOX-zG3u~%F2&9D}R#fp37MYHPBSaltXLu<#_9Q$w>#D2=RabNT72 zYd%%6Eq+;*XG-}cKAY1HI>08L*|6GtF}m68kwBr}AwAIO|M5-uKDB*Y46ZG(fgOD{ zt&u=&i)eT$vbL~cR@eM#zo?911864~m~h8T%s{NFJr2tHpS5AWofhOE*G6GMYJ?ukYJPSg4gJ!E^V3Ne?1( zbLR#{+6iAj&m+H!V*d4Sc2TR08ztfCqda)Bw)6~7ypBRGsHK1p8 z>(NMUVjEr+IYW3^JMv#`GkaKIjMmk@>DK{T&;IRT*hj{>(6$!yo&MsOe}+y9=Z_R@Zd0)SgL;vPruz{h z^u4cgud=e1*EH$J0jj)Tzkbc@!Re7^j(L;cn(mAZtV3}QPHk!QOv4saHO$E?D&HPa zao2l?`QTc(ayl@($7h*aH!M8E5}V$!z(_84eqQw!6!-}iP?I8V2==x!G(un)WJNPn zoPcT!1}2XLjqlUTMDnUYqpay%uCW8>gnqyYlGja^-1Jgp`P8?#W$7K?w#2^dsx@_{WXQ@XLoUH>ABD_SUL{Y(9{@IH z)Ep&J^Lx~;R1K~RsdLK=^d#wQTCKE zoWd59X-2-$YlEF}_X`cWTy~3XNU7z`lW&N?#Clh-cEnHB@6lT%G=idC3rz~rSU&X} z7h$})WGbzFIoTo!@lyotwM5O`Ii&u)PHwbOwzzd^z>~<0e3N_vS_)xWf`6OW@6aHz z7d~AzWt)wt%zEwo5KFX7N%06;)A`}sY(!ak8*36XZnhwF)j$rni^q!b_B?NlE}zh(N@{pZ2OtXq^?_n z$;(dC?{N;?x>N!{Pc@LeZ*JeAY(M8gYfR&zkx`!RYfW*%@UbNyqkO}Ku6PN_EH2+y zV=j(a`##S!%MZ_o$MGDc&Yfrz{s6iu_S<9Q-T20G}UJD&R zybW4{hE?=5d@f(>2ag-CS%z1y@MKHH$_wZzpv zG<|l^-h(WyC8f|fN}YHBHB>uOWeih3cWFRks?fI5!o>NjW6pTfU$ar|lFtSdNON!v zv^vO_SDNvWQ0Gi)TJ~w}n4#Kp!EdcLiBV3VBiegmfH01d!pnVL0=jJ})5bbFg)qbz zG$(!J(31IEP!c?54r1s+TR>EsP7z31hl|wd)vsd+QOK02ZLQ#tv-4gN)SvgAPzEPN zdhpvwyjc9_u)ULSkHfXIxv9Cnm7lh`os4^`1dN}eq~&X*$`jH~t^}H;hU>mg%mhRJJ8oiE(9lP%2uBmpplv;N|U} zTaHr0;o?W%8ZjDgB#JYx?`Jff>UrZA5+4|;IQ{bp~wjl8j0_1>a>Qx@oulcGjYYOI@1Q=QtY!)FO^Xad>eS_$v@S0aC7X?dF{9s6TSkyvrV->`J3D}4 zFNaH$B!-q~+MVsDqrOIwdh7GjOjJ|(p0mopUZceaL}?t}2V>X6Muk!Akda!FG{tI? z+id@8To;C$XJKZiGyv!cX=O$H@f{d|Ybx0KhfC zKuw6+gkiBzKm(=^oDLUgm&@m+aWAS3sB(8Ezj<+E=#k>kvbz6Fj5w+PjmzUF=F3DKBW*?UoqoPiK@IdLWRcplwaML%-&drB?T9i=wDUHpg(VrfmigUz zQ_7dD+ASigOlnrB-u4cB>A)?vNb8Ng~tE&-)aCDaw zx}uAs2}@;(Th~c)#{J3YI`~tF_3wsQ;^(w7wx_3t$jgzM7S8cYM}hSZ#LxVxdYc?uhI`*RyMuQFV1V^PEVG-&SK@#z#fodfZqRl#K&=BF1fb^^*|_0)y^c%A~J zJBv!%7+GXJWdR}8`(`Ea=ENeQpgE$oT%E%{l z=2Wv3u;6MR5T2IWM-OKT=T4}88(^@$97-8|)jR1Dk*%TP9#}=$Q5sKPx^$j((Ao~O znL)_)O4wN?$fFUhL>O-{&DsZ3eH(q*)9!|(pi_%YPgZ_RAED5Z4t)lz;VElt?=a!+ z%CvD$mK1s2<>`@t;ZJiB)0uoEDkdNHTjQH=6xP~!h>uhjXuWcYfmsj8|KIjtnLSw|#Jl_Q))mSyNP z$#ye-9@2P3>4|>FV$QXdWkZ^_=xyBNR-7& z9b&+8{LiCma60Z%t?Pyg{;u45LXY{AUt-6nMojZI9}U|U((3P8FmSSs7!=n9XsaB^hUg&Hq>jMZPg;^q&Y4+lp_(5253zrp@0(*QyS|hmQRa2 zK6uq-3=ty?H>ABEbs9dtnXlz?Md3pz+qx4FU=3qbDitZi$X^g65ayb8DNIt4p5M>% z*7Wg0G5BLD9aXJ`6P^!lCvHQi1;0(W) zhnal%G+Ah53?AVHar;@I?>Rw1ot;&&ot=lSTV?_A4@3(Fiq*#W#-P$I+{Shyq}XAu>yW5zUi*~zAg4F(6$j`yRfKkDxNlci zhscO+tHwt|!U_Okn~qv9Dwo=Dpy#dYthc|=EO0|#6xY3`&6Nvy!RJ3D__xTnDDg=> z3{t6fK(xLM3a3GzJ~!(Q|Bhu&Dw_CP=0gD^2tin3?cED!6lf^k{E@7HEZ=auUnoUw zz;G>_nK9iBKctJ-5#)ou>t!BXD{g7j#^N{m^_250yo(2bO0CS%eHu~28?un^`Za24 z-&!iYLE?jeE1p>zmw>YBlyp@H_V@NU4YUd_yCg~qJ|GR9N+FuQ#(P(ItZ{W#o9aMy zm^O|U3M&OA!`X7oizJE{67CC+0bqZIJlpvK$hkn8nnlkRCB4YZl&1iSaNt3IvgUi~ z_3o#u9CM^7HiW5iOy7zm4M+nJD5m4I4A^ds+=sqO0HWuuhgXIzqy*w55sqPrV?xlw-b_o0 z%w{>JF~t$$N}>Z&!$z-wIM7gjo=0ig$wyeyTT2rSfy(J?M}rHw!`z5)OiFY5K;B1j zeB>HpI3NH7Y`}65IVqab&BZ{JC8v(`9n?T( zt|@n9UiAwj9qG@Bz!yY~cQMATCj}Ll9u!Q?$U5XHFpnWM0G2e&*azSPBwjg--~XJP;YiQm#a4sX&mz5F;f%xfkZRgcWuIQ%6&5|ca<&25@l z=4$p93BEkQ-?%`srQ%Dl5&l?NLr}QNWcR-}^lMMW5JU9+I|Ct~lul zs}`?PP!=jv1QWUpGI<&E2CTnL?^Va+5_O|`Bf3=-WKorWi1@K777S8@;#t-wPRlaR zp$hF*V@CLql)X~khf|>EQAld#V4+db&o?i3TfcXDWK0gfw)LZxFl88mNm7(CP=|Z_Sx-^*6Lgy`g$x!qR{cdyHhxi+ z27=Yuxf9b(AGHJP4ydU+EeP8e?5_4?i_gtXz3~HR12F*ihRsHV6LVPhYEm$^@5Z#% z5)nTFX!IA-(=jW;D*P=sb=ta;-P~%Fe%eTuBi9us0C4QF6aulag`Bz4j)iUWB{SU;nU2Wi@2nD-3|5Xe~G&cOZTPShV*if=^sbrm*Hy-*2-(LLcy%%FO|;mS*QD$y4fs!1H>?pPiU#d7FN)jRP__KpY{zhT$qZ4J5B65*Gg`XNl`y#~Loq zXcK0!3?k6KVrFopTdfQHebj;*d>A@EBS1NH96u~&&>b5riL~KvIVdnsquv( zQTkm}aNW~cyL{iY`lWk;H|lvwQGsCguL*Yh3h)y7@g96_oi!EbX{G;FoI*lBF!#A> z#Ng63e&uc8v2OT!&32b}fP)ev>Z=EN)&g$W*`Uwo52#D|R^s@qD)n7wFTV!(IHzip z-3MqhOlL&fGSrpHrd4a{R|@-ZmYjH5r@+yephJ~D@T5>aB0=Jb(4xd!iedDDn|P5cZ2kT z@Fss5Oc345%7^VMWrLOYhfYv?Ftkv1ce=f=QXRiP;PRISI8DI4HOV>!X+nE3WOl<$ z7qvYNqxas0Fv+}-@%;nfMEb5>J4(LWo#LO?Rv!xw;*?AzGlWY9cb6>+ljfH`Nw<}p`I5IfcxuJ%8u`mk(F50 z+x~QHI@W}Z@77eTRHx8g{ux+PwW#u6HOEv8x)QbLTx<6-##C(_cwYE!NbG!_Yp)^y z1JH{Y0F{}?HsMcJXNY$upj#b{3H0dx@Ow`Xo)(9n}MU3RPFU@;{+(^zBIXX ziI;+I#)HuGa?;`pi8VZc9~c?Zs58%!WIlH!7LJ)6(J?|$l@}6PIxH0S7*a%Fi8h=K zI^&@P-@_J?krs6EUO{y26(GM1h;O|L-mE4QM-RO}hi@nWj=Q_W;_j@_?avynB|Lc$ z)9ABPx3tf@GzYAy8`Vm-Ze)+k6?CjwL_im)!hzGUmMHyHCbaZz^eLqte2mgHefw~Q z%eO&!>ZmIH55VL+R6sy`uHMLeiN61ZB#RR-}nD?aCy`i#`i&L{DjyQjbqrMHm-k=oUn~8bLBlqEJhbm~^Fwvg@%~ z=4^=IZ5Y1wg=lEZzGG*0=9cdMk$}<4&!GQ?L?F#d)DA*9Dn5FsCsR}&924wq!H^)W z+J8;YDAHKHVW?s2`{L;>L09#c;ezf07LN`Cd5sHby5N|tQ!ayuwd z!VW~H5QWRk)=T64tYXlO{Wi^yca0VMDG&SHy;F6QVR(H?aN2zL-oxmTyF~5FZ6JKe z;8n6lC(w~2ay`dMx_3S9!C=&T+{8z$gG? zA(U?Z3T=TBxv9%1T=>b?B`E6k$q=$P_dx8rhV#k!yzfziOIhH0Zfy|7n?m!bh)Wq4 zU?!FQ1LIR!Z9Z*u1o`X)>nj98EO_fc`~k5I_0D+#UcVmMzM*$|o&x-aq{K{!XrV=| znRrfUvT1rNXz^fJ#_|Kqj&;HGiepX7qnmGnpnt4_wEfgYx4L@EI2MdgQq{5!E$|TP-jpRog+*+ z;Uyx(z{Sp1OxD}yvZ!1-&W+~O4SSu-gLB^YfW=$0x81$?KEm0Hv zW1^u_%pOQ~2SC@RZIssZ&R8P9kFPQ_FUukkXfRJsDJB}Zd6s?eQ=PGYwTRb#`~Hvi^P?g^E#a5Yu|b_Enk(uNhmApkAM z$EZgZu%jc|@=_dZR-3Eu^@Of*CmE!$)fKKHHYv>$QI<99OoSLOGaq*3P4%9wkI^hZ zy12XhOD!}06)E<}$y|73Et(;fnYqO)IR*qx=!Yw6UvaTvU5iCWQzv+Ewk1npjHN$!=5g(x1C2{U3)pN*BZ9)Odf{p)vD$%K6~%$iY~OK@z;KmutofP8BmX2j)Eb9u~G z!)<%M^~v{(D=X?zK-r9GE;7EWXd9!6tvk1%8Ro`@2KU+r$ej2OsYu^V%0p_MiEkbI zjUeuLH!z)HNyytgGvDuVR^CVp#(8dna$!blZg^R`g+-|S0m^3@5dn`R4=6{tzqXP_ zTP^u4Y)~|x_-?vUbW}1;6k=Icu%9&Lr=PO#Q3s9{(#_+6RJd9h5=W<*yV{68)1ZMc zQ=VFomHeFdZ@gcRCM-$ois@9AcSx1mVLeIU0N3Fk8fDb@Nw*$Srscg#AXfP5-GSON z()-YRS=F%8M^_|#G#vZM)_DCqz<^8Nwv0OQ;59+eVCy-;@-}F^D|_?zOGYn3#nJe? zyRcnby4-x{vTaShdv+h{cnR<-wMMKL))tJP`6oiLDd~Vi+1D1ZY)}qL&n{-iN4Sh7 z0F_nj?5$^_^suC^g_ZvRzTIn;0H?j&m?;;4eU8cGIv5yxhA0VQqiAyrfv#hEZ;z;I z>)guLEJdLCR%WmivBkXA92DhWa;TV6j>&T!oObDwPD`Lyjgct%uIt0gw3YGuVWpeg z9h11IuANN&d;aT2Vew;%wqZj7RoB;Nrfb7)I3Hq!abhGM2I8I^6974vatE7{$nu{sYKyb8Q?+Z;&(4a0EGgj*E!+ zb}{JE6Kl;)uJ0I+NVp5RUGX616AzB?iWQH|NCf zPwjWC(P}m1IQGKfB|)sM9ZJ+Z#8 zNtHQSR0phu9p;9RC0E}D^B}$BiQ)afS(fHim`BVZ@ytIWSUp(7<|$ZTcEr>OH?Xk% zH)(IHe@4FiwXv)4aUTz+VKjA%^+Xi8QDKXJN`o6bYLrb@-unI?Le%96y<%Vm)bBnE zCg4~5i8a`Irl0YfCwyvwsO%|0kkekPgXe1;`#p)tt6fjAT}UMtPxZU@;byYXi|SF%0-=ZyVcl7BYAAhPLbOSdgS*}A3H zNnw7uL%Cl!8Wb!AkMGGBE<&u05_70ghf!FSz;YjlK|sj$q_s?9mGB2R@yb4>52`!w z3hpg|ZyFJGL z2H)Ax`~g%=kLUgYkn=+q^H^hroLu)|L9Ng6dR`BYcqX?Gp~|dREqH2idVAMO>?rl5 z_HS^sn7K>`OVzoG@=j5bvQN2-W7e|!;8F*EjP_m^*y{6<`ALcv$oa8#z(C z_%U6n#m%8z2Eh{Wdui5hfq6AK7Pw~5IgE+Y-V%I@q8`CS4-38))(&#va1 zx&}Lq<5=F=_hsgi;u!5SY*~9HAqYXq{uMkmS1+QUa(;UDlW2ONg_3)=zoEqGy$D-N z@>*)zn!QS_7oK0Kv{0#Txrg6Xz8hesz@PUe2sn|Y3f@nybQXaRt{FFzSdKe0wSq|N zjWdZS3;K*XkE!5MjxNOFPY+g@gnRibBAxPETf6xLNq+ahw-?K{kaWwDqJ zT)V_kh88+pswLqlR^DY~?NxDWrqkG@w=AgC%7;a>>n9cBlVMx9afn?Bs>kN3uKf;5 z37~mFlGe{j?CD3tCymJ*7NhMTY;zK^T}5jNAAH^E#sgWh=+XEh4#!1vpm1?)5PA>! z_M2H%>7khVH9Lu!L~)a2{stLb6*aUB>f9xvv~6~)_AX91N@jNCY4e2gc}R#2CS|qX z>{VxMyqNi_<+u;VmsEs>@Gm}6BUX00NAF>3dAiHZLDz6IT5~AlJmZ39tT}(KL=oiE zs&3AgCV+w3$X4=FOI6mq&BA5S@wmY}{=^H>I`<3>0glS{Q9SJRv|T*ZBusTgIH;tp zO^w?W7$2ITF!rhlkOB~=kn%cIk>j5IPsHT^9>Texs{|nZJ6PnsBuvfJq;k627Mfi2 zhEZn#YL6VyPKb}sm-Rt=!G52;^vKzmq@6TM+D{bBGt0~(Ft6$#roY?49#SH|K)+w( zQm3u)Or9X#6Q@)`*EBg#cgZE^nWDSCxfi$suSwUynYG9-ZD9jRV}-NB3Rok;h9|Pk zPEE=~ucgq4;|zLEZNxF!I-N|UsJ~MOX^fW}?mLkiCVY=2<0l@&W<^bi2wNldvC)3z z_X0Lopcj;%yR=?7nNIS&(}G-$*;gWI}^rGg}xXn^)j(p{@sdt z^hxgZ;E0m-j!EJ%vJPw;r?oRfK;l^2NS&!00mvgKr>bgF{W~nxd+EC!O4dyMI8*Ih zp%GN3rD*H8s={`$=7i+}J?}6|cC-1x$VO!SC#nc8U6FKoYc;*HTYoS_7&(}&mW5oT zQi3bbtgcNf=F)v$ds1G04I^0}(ZxkW(ap<*_Ob!<3u+C6h2Hwt4QRQZY&q3Hu7jbz ziTEuew$1S?!-~ns*9j*O>v#NQPl%a*KdWV8DLsm~#>m$^dkhJb2`H3<-2DzdU*Y6K zxF9`6pdSzmD#SyeEI)#Ynot(gZcbbBw0s?sQsKinAY8$nqO&5X&|_tueDjeuXh#?U zoE@1Wer59!3|Q^El!?l88Fl&}F!%q}`1hbuPdeIn1c>*`&2R5X7VrP%0b>i^_>u;h z8UeT?YrcFYd1TAt@UdbHnoEYI6s9j|N;m}o00rR9kN=t2UjE*LsFb=W-t&|ypc0xQP=68OFe;yv#^T`ChL#7%Z_kQZ0jX6pCQao3XA0eZcep?gJa)(>nLJ7ZQOdMUzzt*1=z z+$Di69ZtCyqh_O$Le5Ps5U!IPF8|Zr6lX$m8K%I0`mB%747d3uXN zZM8yPju`pY5<``Y;fI(hZCmarLzu5|7QcjY#8O+65?{>F`ZrnJ_hdId%Kknhd0@G zBz%b5N)|BN^oJ{%53V?)ycgruOq-!k>B|_4Cz$IoX zklmAxD904ty)ubOO&5N2RdAd)iP`xdE6x!!J^66n1jYPG@I43@-=HFo8J{{hH4 zMzNqwVVFrqqq-@kF4Z`7Oi(R$UG(Ff1qcdv79WvC)LEj)v`h~dZXSxjIs2tQ^)v;2 zINwi8eyN6Sg9-uiear6%q-xrFFMj!?4uZ3SeAri{Ojb7eDD?v4!UZ=;o%((xmsNm0 zR@R3dXUBSz8=7Z^QRD-_C7EEuA>IR_}j?7dz8*WS->> zKzbdHM$e2Ks!3f`oIUFc;=)rlKovPC?BAAxJ0~5I3%5+pS!*Dqe04VGS4+ilbk&p40-r) z62bEtCE1TYK@Zx5PbEK7AeuHrK-Y<6q&eY)KFQVa7Mn$XO$Rl32vgKH66wm#Q(bEO z`iRFs`L?gm${_J|Ttv9wTowGbbz}cj`{U0SXDTBwo;;IS9iy}Fs@V0cfpWr;fdJaQxtIzH1y8x zwV(*&S=Z(Z#>8ob!rrO*1scCyoaub+CE<8_o%t5+2DzrSX1438DGfs9oi;pzd|p{o zi#{_2Gc~4pVGoCS3(c2B`{qMH&ts}`IeohnnO|Zw!R*#&cy8tLjvm%QPOc{D*sKO? zoNU0bmQR>~{7iy01zJwa_ND4mH~0`~YjZZrHHh|;G%U4q6i{*qTZZdSQLvV#m);6yQb_M?Y+OI@Vv%7zM) z>EU$-xu+R*kobm@g9~6+pxmNJ4B&UH(XPI(89V9T=TV}Fo|{4JjGu<`EqVqpF`-=` zjcKY)wrLIuAz$Ey7-WUYQ?1Cmh( z25$sj)g%%f&O6_u??tvNrQ5-)cOx+wE<%IZ8+Zk%wF#BHysuMDEZ|!8Igw_Oy8A-} z*cR1+#A0I1%rPmlgr?(;#fT4?DwPt|;;0-ZxbcXyZ_up$9IxVWk8SFpr!fW%_L>#D z6U5ICM1R+dY>Cb4ZIF4KlZcn_$5o-Mh=Ayyc3B3Lq+7M5kNwQ7GG9`b-Fe@CvvmNr zIW&AFZ@qcB6!ax_Z|HmY?&DhYC{3sb)Z>k_3>$2|v@_o2lt(F7!7Kx2z)8rEM6i#R zi}zi=((BgqT${l8-amy%cn^^}q$Y+lMS(hOj#IcT#w)aYMtYrLNT;+{4q6JpN+Bmo z8!N~3-NHa&&NrpouvHWBHS}W-aztOS`j9Q0EKd`vtPDlI@-U7pMW(qcK(`e zq4O=xs(3_{7%)Z7#jp0`tN1T7-nYBx7TiUKZx#rPm>TwfT_HN?qpJ;7UuA!8>;g8x z3upCRcM|k3Cq;`tY5hpG{MrV~R3mZT#wxmC0gG+1y+}>n#~;}8Hea}bvcO<%_2C1uHnKti;*f`C7vV;6t573ACt=E3RUvD+uSL zdU)GWe+FJ*X<6TWIp}E2J&TRs9cDA3Vuc}iNmfz_Y67+1cub7EUQV6r#1DxFB_DJbF_k~nTy=ui)@hNBxk|yLjZA13 zHO)MJ2m5;1KO_%?Sz~x>g`P0Xa!jP!(~Uoi%=m-Iv@ut*r{|k7=Up$+g32jt7~6f;<5ck+&0s+o41N+d;M4G< zG2}3*MUDVE9tU*}_L(Ud&ZY#HO4`nZ+$~JuO143M9v+bE&#FWrCvxIky{H!iSDI3S z(s}81rJzZ?K>NKWEGA!IIs!N%Q8}TJEb(&L#gichIJtm0(-zo;Z#7 zohGe(lG*Ll)E;A&%W3+QT4Z~NfA|+wt@UbL*N06WIcDkOFUbQ=Q-N&2-((Z?1eWx; zJz4vT2f}yln5?dw%>ivwf_Yuu#}-1P`wBlK8j}Psi?2Hn5_c3-Zm~$8mkn<9n`V6> zva_Xmq`>&*)(wgz_vbn&!)Obl5__FsJ_J1yy&jfUlkJVe0LuJu*8>?qJwI@r(Y9ot z@eeuSX6`qP`;{d$$_$FOjl!j7TpO0EKaME@e`n`9-PJAq0pnBiU4C}5%{~96$(1v{ zD@hFnhUYO%dLLU@60kkO&C81%%6l)n@~mZ|{tKBBXQxy>YeFx{u=;wqU0b;L7pvKk z!nBX>%JS83f12e>4)AtxIdfD!XWbhxlW`S0n3pn4PjkMOkWMQuei4oqA9D$0!=yv# zQ6E|}{i|ks|4))F^M5$v=zn>l(!ZhEb`ww&@6fQ)0~*PP-h7 zzcIAeH>WRwUW*b{TjkN z0xwqDsY8cOL((uxw)f|&PwWyk+B?D072dxZxpc(=NhZ-ifTw!JAc}24_dHUVLMms? z*wtpr_jOo?Oq(!}Z`h4^5D!G-#8(+ZrXL89Fw|U*wh6yNGB$K~rIQ)u{~W1i!XFvs z5>P$BO-)$%10dd*w*DThb-g&@)$e?+JSfi?oI+1G;dK7wPW<_x-}5x^q%><4d$;4 zEvE!eG1OJmoTGVZwM=?2EN0*7u{%l%20qL}WQ@d$g!xH%t%NL*xk$%LP_1lZahpi= z{`xEQi)L$>+j<*OTYOo;RTa#V2iDTI!2E#zm<&20Kk}bdSH}6cK5iHKTnsJFyU3f? z#rv}%%W1TAODB0f+`>|w@da^kmVWdOFm%`p@8BO#vCwGUBF> zhwLUy{sA;zDVbeiOna+6oGbgriH>=sURYVtIS=%_3~LTLE=V=gcKNN?FBIVYdB+J} z95uB!L_iQYANXwHhx6xq%lrT@+R4et=J~gBoEdbC3tU~YH38d4n(AW+ z1e3WEm0Ep8KW$CJX91XEE*=rITPDkgdq2y~Lx@yBxUuj`$ZFBUHa&)pmHBJD+iGz!AN5|g}@|g4_3gl zG0ZYki2?~{PQu$Lc412Hnrb&!+bCVMWg@1`oe%*6WBws!^>ECF%F8OZ57XP#O-s2zD-OeW(?+M;+n8^SW7Wd+NG5>n4twnt5f$?`P zkP~j6t?Ye-241RiWz%Jv?l)Ic5Qllo~i^Ia1>8CFpZK|)5_H45j>_x2zDK4i` zH)@PX$OdjYkkwRU7SS)WiklOhbeS&*$#pu7Ve6y)392K*>I=X28-gk|D@rDd8@Ri7 z2B~`{$S8X6jB^vsZL`5TfwW{~mIB%| zI32%%&EOzxuJ6#R(;|Vjet^zI=riL}4pO|ZQJP%cx$jFudt_sMJ8U_xTRQSJJJo9I zfK3TY(zV-4>;0YpS@zSg;{@K#O5eBE z?s(ePZ=1aiF9mL_fu$60#8w?+d_97e;u&Z#j@v}n;8iy6A-ven3m^aROsvQOUM@c6 zUi`3??~Gaq``=JujgG?qx#rLOuMxEW{gK=M-@g_4)rb9tvu@r`4>I$(gI_6!lm(4j z10A|WqlJ))Z^(%T9U)vS+`GPxj;j}*MW}m+Q_`9~LVBxFKej)96mI*86e`~sSTTEB zGd4E0VOx+9GS}&jHEo`|)1vmi@Q4dun&l>))U>z@qTKT(QKmGo!zr+Cqs072*X)z9 z1roB`9`k)GzBHOIL7|}0vG%zx^l~Z8i>SHVNPDr4$2-4alx!=m1JPOWY0-BVg6YnI zN#iN8_~fUZqyG!}^x<_lIM(lz$vG)8f9k?^i&NoIb)VBooMboM_Kx9vZBd%71{n0+ z=J^EWH-J&Xns%9U-+UMAdr0|@`B6}b(i8OOyu~Y%vW^LtoXpP@z*beRkS-%1C0bXW zbaAyV@c`D3!ogB%SlQ<%YCFJObVodtomzA!rQ)gVp$1g)Cj07oUWzu z`O9!8=cE4i)KZW(V=F3n=|rSRR>f7vwbVveSTt z$$smy-}+K@LCR#k4e>dQy!jHR`=RZuZm#j;hEe{AYi`v(h+7rw6x~Hu4P_hTo!6oJ!mK_F3>N~cw?lzC}O)v@}z&mc-H%X`RqVP-7OGY-tU>RG6 z)zh+%Gpb%BHuWzTs{Nsju7v2{5~lRJPMZTXp2C!CTtCMHmxq##hR$iFQFoF6=jq7MGVr0d0ES=SgEanFtfho!SUH6>6 z>pwZG!o4@o!2abCIX7n082eXqpa3#-LH1wFr!>VOL z-5%3o79m9ja^+XRRd{9qIrr{#JMB6ABZi6c9DX`+)JXVHGMJbwBlFbV($0f75M}Z> zID8!f4VM@hefn`u?ZvXOa-8b~OEhog*Y6Bk=_pz9e7~|-$(quUyOjxnUj{vvB910( z@Af*35UUa58;o29b4gpPAR>yIUNxretdC2_COqz=A&AN~r2ND4m`6)w(e0Dkr z0{YeW1doc5PfpW+HnTe@HU1!#1RQ3+MI&?>(O$SQsInQd?gyBQ94t zPeoL3;t@^luDCvmsfIh$vD|U2R#}GbDA&9;z?EnhMekCVtR{48eRy3P<@RZlRX98r zNsW1m{DN<;>6eU-16S&y32LMaoE<~Xl?ASdk4;!V5i69Rxm8Y_k`S%CpCox<=fXzH zx!Vabj;|@@&}nqG#h0RA(oJd1etBYZ97q$T*tVV@1#?Ru15cO zOv=ODu1kiDi&gLc>0Oq?8UCd;=2P9c$a`Z;>%Lf^jjb*ECZH&JW1_gc4jaBXw^$d! zAJ#RAdO}?SqmXCy^2pUGf`8IcAku#hfD%0>>d(x9%%MESBsc$`ADI4g)xE{%$V2vL z@cr=xdg1czJziGU20GG3cmZI(By}~*zkO3S$M^XLa_qqljdRYu!sCy-MmGe%=rpb@U@^`8%)0y@(6>!8?!SY`*K#t~yZ(tM6^kv&%45 zC9x*qN~)kX1C)IFGy!)H$}RKL`6S9~#}Vc3+&**+3v22zY+*xSgP`YNx#cpWjLquQ zbes%ks+#J3S?SKbtOqD7!vn0~Vc1#3klbl0TZG7wu%0fas=guhQI+Km-Ll<>lA=yx zDmn$(jWJYWcr8>twcMS+PBp5f=Ghs&ikn=97=ncP|xMif% z9ICZ1ngSZQs~ZAPBDRi6zD@AWEbb8RZ6p1TKF@reS!C*jmYnoVQ6LyI*gg+9C?Nvg z4)COL`t7cc4=YW1&o~eLf#}MxeLFkHTh06FS<(w%mpdU~Kd$BSvLgP;CQ*8sMjWoG zO0}5(WgCwVf8Pjj6M4cTaeIdkG<=(@c6t&n`B z%@fm+%YFn$1AOOwSHcIuRpj7{EsWT!Y?W%vxQMORj;-$Z#h(4km?Ub?j#$08G*ymw z2$OG{XxR7ErdksH5cXv7266X1>gvL0$)x{3{Wow>Xv6xfe7gL)^=Wf}VOfZn2+ zGrN;|dY8-Q2i*#Ol`CQ|6w>ZFOHC!mXO{HYOm~umhG?3g`d$28YWh|+1iH=XTz`&bmesr)kgLv_LP zTp!+}hLf={XVa}QFh>Y>*68CcAK510X=X|wwl0~IDF@Dy6at-)<~Ejjj5R^U4M zFHZ&YlewqGW_4JZnUF#|2*5V2_{&_(<34C!xUr#mk_mjW%MUWl0z5x7zsj9FfA!W! z8k^#)h4iWT7-&6=+YfuDNXJ;+!LQR8`J?tw#I-5YoF%GBMRWLXt0 zZi}#{qT|kXhZ8mqs#-bcY?S8PynN3m!c#!nb5Aj9WCjKr9vQZ1u^e9N4C)MhybD%u zy#W4vRnK#;xTbAo~9;Z|da-*Ms2 z)weQdRP@*`(4{bFh?iURdtQO+?_Uo9Qvj*sU*d1Bo+Iqg+jM%o!jBN^nI zcAzO4aaqVTXQSuGP=t*|=+nwW?qr#|c<@glGQo~Y>yJB@3bXEH&bsq9uo~S&hnaD4 z_-1bO;uKSfM!_?`w5wizV{S|hN)=hqTqff>`%53Oc$nnvj>dJ{nq5kj?DacZc8KhK(e331wX1G#KUi~OXkw+Jw{0iw zVXx~S1y&bzH)BAWb{uv11`$sUx@2YYGR+E%!l21W5&#hxR ztnktq4X@&&r>F6%+qjkLrv?5H7@4McmY^AeNxeFIxONP|mBNSZrYyGosj0B1)!J&t z<_7J_@&Pe$hbh|IOxp%M%njbt2OU#w%F?lF+?QY5nrA}5k@f!>j>DCdp80+2(CJH60J$I)kh z7~Ci{2n2AE?)p;F@_Hn*6n6%X2P@nzt)T){QE02(Cx%mk7pVc=Eks3=4bmxAGU@jD zc(dN&L3+V=8TM%C;%kGKXgTzKUYcA=KoN$~nOZx_SXsNm0Sy;>>m>-ivtzznyVRIz zcm5<$_`$unk=h@6Cqa>lLNU#n;+b=_>RS?UxJQ=5mOC*Kb2o!JyU5oWZdFj}vT-gL zUPxB}=L+c{2~m{47;|+kTOLPnMSiozeyB)xlOO{TD-uwO5ca@{gEnt2ZBkBK%mGV7rDOEX4wH+1W`#nLLltzPqWw;Kl>#859N>G>>f`-&dBw zRG4?sJbudTPFr>h-NSgud;rHdusiC@BXCn~7 zMzkKYPHBd^30%nt7$MfkbDUxvMo7ifprNT80ud%A5xu;3Le%y&$WpBkZhTFQhWm=5 z=RNU!2Cm{gB;-NlBl;=v8tjRCh>C&AYOa?%v*aw@PNDE|cZa0ubY)KLucv&$i1l1ej=#1_-;Exr!e(CZzZIIr{IOv55=uN27{jI$>?O~bd2D{`vd(S}G7Iiqe1&y)orFb@HAwO%h)hHy%pst&X#&5ao&-g$4$u2F8>Kdiex2aF2 z_)7drl{hyUKksiH@4(|5hE*O4N_4Ri)KUsjVX%$_eDclNNI3*erM)WcED$S~6kMfM zP%X@S7?vwDYX3(t0JC&Ss zB=~x{mPt0sx-uicy~NdbHsU2rCADt|4GL+EQzKs4AUthkl_b?KUZ(;LDu{zV0sw6! zwQ~Q2?9>0H1pl6FY5p7MYTwxWuSe0qmx?FDzf@{Dw|_6VT*zl>E;P3~cENrNWskYa z!<_RiwLU3enJP^r2I=`i>q(&I*MOJV&(ceMyn={Eh}7GWgEco1dN{n(#;KeQ=p-R^ zOe+{oEPWf8f*807Q-Hm4qOzcA^V90^6(S=`d%#fdYsL#5!XrbY30=@kKdK698dFi zv-f^)+hjI27q{l(xF9FvlD`FTj!4ixVdIq5+!1jPq9VBMQ@D`j7j)@aUnA>n-5=U;^d)sx_fU3$9P`0R@&#^2a zYi0ul6MFCL)$ns%`XEH73Es2G92)950}Nz6iVR`X2=q<;6vpG2J%BC>uCE}|Dr}=~ zn3XeLJsyOrkBQWL5D{L)jJ)j4T9V!g9Tb#iVi!Mc*v~NZGP&xmJ@Ebg?&7s*r9I@p zHySbgbKM74iEq9g6sQxtp#U>LA-i1eDxvI_A#RA=xJE%xk4bC=a8jgPBu2XNl}O!w zbM;Io-dVN}qvR@n=hB}rmSNpEYZvqJm?YK-1kLjBN4g-q(k*E*X^?&W$X0#Y%DU&eT%TlpA-O>XDjG6{ zU7$JiJ;k)jooXH??$yIk$glUgFylM7<8EL+NowDdrO19j2@4h=u1dJzyrN^*_*2<< zPUmNp{^{5=Gb8&XRKPkka9wIv2bGw7dcd-FCEkGbo#OKu+Y#L%6Yi|20C+%$zn)Wj zYe>uH$_Cejkh&wyN^^}jufXFppIos-UR$q|3W`%?za5g2qxMjU(-N2Y&>^4 zM1Z^4EJ(iMbJaU^(l&Y1);^^2sm!ui#Dc_8w0}`tLo zz}s@+olD^*f|{K{*76{=PF86x5#*e5A&bHlu^QqqscQS5oqiPD*+54+LGGfWXaE_2 zW4xF5bL4$yo&OQu{cmCPzjP849d7(IAK*(EH0qkgLA%j6+n}n$dVgK@Vy*#MDXqWQ zWUc`Wf2Mh3OL#M^v2b}S{TdLNbHPuz3b4EeEV?XQ8vGGxzZ3q@1WfeJPieO+!PxC| zx3i7FYd~=In|*y91@e=p*vq5lYe3sf>#w3mRfyL0yuB;3!D|3c=LvvwMtb3J^z<4) zVs{N#F8DX_-+}WV#yE0O4tllSUXWVtMteSr8mGMfk^CC)FR{9R1OFTN@4$2fVH z1jERTl0=K%LKq|ng6O@MkVHf;5iJID+1cnfkkV47GDJ~Ll)Bq6(3?_nr ziHRYQi`B4;bpS#`Ov@>%L_();N6O_*FBX-O3*}a>ZeuVQ*+q!k`$UtGGhSw5X5qQY z%Xf`mLh||zDQOv%TdHd68k$;n4ULRVOwG(49G&htyWDs6_45x13_(?nx zo%#%eO-s+n%zKqzP*_x4Qu?N*7FSo_@b=w@_KwbvUEMvsqhsR}lT*_(vtPb0eOvy% zvbwhZWAEqw!Qs*IuanpDO`#9DHAkm+M=!C@k{`X>}KbzNh9iUZsC1p-eE;`R{KTa$GUz* zY2SH~swe@Nni%Chk9r>|SzKxLP^I*J)vU|tW?*q^+Sbl;8X%eg=iMRZtWJ77y`+s- zH%th}t6762u!HFXC_RP~Ks2pgjE1WDaK}M>MpXyBUx{ z^5qcyZ$x|RYYPVKHr2>#4SbbVIA1q7`i?z^nx!vQ5D7+>d`GB^y zzgt#<~#hr?jT#gYvZqAw}Y1M5Q*uQNXm z`SBs%VLFU|WT80MvTZ^3q5P?{wE~Ro=T|eIWxn$DytFDL4;^IJ?MTca0RBEwu7L4~ zk)LW!+}*?U=Y!f<_>FAzM`hA7x@4I+?%XnS_oKtu%sYCW96UTvUZj5`g%wRf{I^Ba zNnTG1ee`Q~@{}>Re$(l_iry_I0K3A}1fW%(5_lk1R$>g4FmWVA3-Ht;>K(3P#MgGF z998@f_>OS>Z4)=Rd3A7^xoLN`&h?ErW(_Wby{ZFfPM!RZsQC#`anlw8U>skl9D!8i zNk=)6+QWTpKB)qNA&s;B*ppgqcfkb4Yew}dqMKk=cZajFW5zbgYRl$@$M*ge!qO?P zuL?<^wfz*G9Y2hcKnbJoK;F;}xUIcK3BmE|m~D+^#Tzd9 zq}*KCzbMP{X8T}c=;oGb!NgLqe!~XKlHi3XLl0ZMJKHMJTlidN40tf({#EFfw^)|% zc`wazmBOd*?kYzz-&4I55({uQ+fu_LqzuC)!)Ip&WKAo!h7qECxAdn$QHF9V_+~*% zKfJ^bOS;w4&n@S&4dD`?Qbk)OX3_+f-kb0@YJWI?H`TZkXjYHSKY6yygnyGcS$dR) zJqgQCGx6;rZgTML;dUp#SqmCme_g3IvKH{OJ?Kbl#!D_fFW$Sk9#&!xHR2Fvj#{O3 zQK>LByOnIEB>XHTvbY|~C<)jC>snzXn|R}Zl+duy6`R?$QOVBlRL}j>Um-7mfZYdaXe4Hu)2vJt1 zD)e2YRK5N@qO1)eQ}Ch9jSCZMq4KizfKmXKeGD~_*U@^*-@H0z8a8IXU~r~I zmD2KA%Vn<8Y{?OOlAux>(~}0@;p6X`b47&!Pur8*oggQ{@wD4Bkr^K%$6}70944NE zdK5aC0xD*|;jCN*m~$tDg|^G@)f3+{Tl(b~i|PlLI0`~xucW2;N&DT3kuEFoPI0Q} z8z9VhbUBqWbe#_@qq`7Pxd`9;_|a-{_r~pr)f)3hB*YpJnrNz!KHRTU-4YEMAzYJ< z8l?byWD-{lrX7CC_)DToy85|-!-I%24#y8+Rb)1{>bnVB6Y|PEk`!b@R!Bym{OQpv zFQ4-FpCi>rUyZ)DKI}2~C-c9;RHQWGXnlpftM~xI0u1LN`GEgUd8pFiK*-7N*_@u> zmy_hz+*BoeEv6f08T#6y00^yXXE_*OK39nHNLH6z-Yj*-QaHi%zu9k=cf=}Furoi# z0saiBm6p?#GND)Ae!$KDLEDj2o5ZXktM4-~RV6X>W_{}PlVwE$@44yh%RzO#fymNo zDRgtfr|)*{Sj-vrlm22_GJ0@jB7Hd>k9GlbYmfUUdTP|XMMB1wG9dxjB`QuHB`H-Y zxbcIe4ZZh?Zef+GkV1=g7vs?9Pq7Pu2O8tH{3|;mdQHR->I3&~sR-#ez0W zFD80(+Z@53Es!&0H>70#&MLmThNkNx#^3Fl@Ro{2avFAL#iG$~0mP)R zS;eDU!@dtnEGVpY4=Zajm|LfL-rDm1tpAaqXv|MO{^0J96Dx8*KW3jI7>B)!RlJMX zw|sKc6t?ovF{`Fq+#5FV8YV&z2~ zC_Oikh}@v`s1BJ&JgA&ZIjVu=bN##d!-B9l3&+rF@$-(g4m1wyy*G^sKorBd>3OoP9BVs8(<)TE>-7V|E)j;9kKE53OimW= zi>T>yDV0}Lx6C>=jOd?S2I%!w|AR-dkkm+N3Ea!d{>cUQ@gkdMhVsgrxnwyog-hF` z6%su*TvLW|H&RDsv3kCntlsB)Nn2L#dTBb*VTk)fjlFx1Y;)U%hedirsTDa6Iqph4 zf9v7CaHX7L&ScL6U?Pr$h_EL>?bcrSlSE2r0_l%Zb+d@cM5fQ>UpE$K0* z5s$_Cz|S-Cm?O8lrVhb^GBR}Msn`bYV_QoPxG{onC(i!nmTX6ibF8Glp2AYEEkFRg zBKg49NJSA*ZAD^w{eME!M>{~DBGvm2W48`%D`jWLEbpG7GJW}#tF_NhPAdoi>RN?N z*I2}eq?KChE_3HRcij}eHFW2aF1~#-l3U&CiV>QO+2G@D?TDxpO<(lj+f62-rFjLM zf`(cn+RECtty0mHp+U4&+FF)zaA^@kx;izybWg+GXG7 z29FzOVM3-RgEJt3`qId+qNkT+mZqbb*uO;WC{nw%G{*IA!f?26g7Pu-&$@Qam?oQ@ zHv)!&a~J1S&+9bU9BwAoZYe}{n%2D4o)ZYY=;aebEZr??0BS{%kuMJk{6>Jc!{&M- z!m1F=68KT&R!{xy z>t$31k%1MNeBktv%AK5AaqV229$%jYzdZzYSzCmO{NaL;AwSAi_IqCQ`1byms=v*q zkg{xmKEt$g{YUXV1==jb7qnj2s}ZMpwSp~Qbwb`f$YAuPeUSZzy^wA#Ns9o~q@2oa z^s)Nh`k_&}`nl{HGlU(=JsK%a0C1iWt2W~;JIfdI4_kQ!sbSM&P2_~1kWy?-kB2CN zm0#3|wO4wUbiez1tzWS9tfpVar%Y{InDEL~Q(f|oBd4~ziyU-Eu?jk8gVkko*$($GXkY-XZ}=nyjD)Vg8L2r^WR^ zUpI40XXSB~TTTt+){DFpHQYxHO9ML_Rys~Mb{?9rD=aT`)(`-9Hg5uumk1a){eT=A zqvwZmUESzi&64mw-kXrOyu+7tOh&i;ub4VwR}{x7KlNw%Ej!k8h_;fGrR5bHvBH+* zHOta?@wyhseqVP-+091q&wLvHIsG4;Ad0*0^Jpt^{uG%lH6$TsoxjcHGzw< zYTaRS^rDiILXc05R20UIti01n3-oZ#@O}9xl0p2uH`elqBkRC2d#hPfkryvBczb(G zZaoM*p_hQKf`5{p|H~5qd3{~-qIr*}%;m)DWHJb~50pDu35b@45b?+2_7BCo>`JeH z518`|P^3`EtCKR5Z=jqAE!`Zy!8rVBuIVz3VAZ=VNAG0yh8%L1=GyWU>sd~>K4mL< z*5Kms{fJ!-sZFM9TY5^q^s{FLpBg=)&)bqV9b}ocs498F+kmupWAQ=pQR;DK3?nI+s$S-FsqSxOcs)}8fA-k@ zsWPY1jmwR<`XiQFu$prwItgTBF zOVKIt;fA&0hco<3PN8M2>o%*C&gYh2AJ(8wT$bwb0$r9hVB}Pi1XA*rUU3ePV++Ut ze4r{NhKeRHC6+FjD+7%hQKSgKAo-8I{|OSm+3i%%z(cbG3%+eoTkML_!xML2`A&0FZfLFG^8(imiF6T<4|*{>EL(@kF+Xv(0d&TeJBR zNd0Y9~+9#4m0`pNcWB!HEZ{Fx z`6;!!)MKZLPz<<}a>OE*FNpY#(X{V)b(!qJ>bVWKP6GjO8w!fhL7i@(8>cFD>M#;% zG!(JXv-iw;|9CMt&2!n#UXfSU%sX?s{{6UG0V~?N2O;KaF#C&`nm@;wUx}iTqxf6a z{z=R*&bxBKe7*wLVJ>&$5=ditycY}kY|B(L9%9tL@zZ;Gt*&J&80CH9uDfE!vixD% zb;sAUxXEMyrpcC}D&QS|B~k-%_Vv;z^mFEh%PQOLnEd(qi~s9+nLk%nwMBMK(f1aG zb9rRreFrx?8szALl;MjiRj~H~@7p7}iPHZ$?f#ip7d;gUun{}63E3EG&v+E2^$LzC z&jqM;2B1Z9vdCCd$0srLz;pGS(-Lo0dLW$?C-m2a@UKEjnE4w}O9KQH02T-c0ONpK zRd2hGP|2(S0Ia(J01*HH0BLPuXJvCQFfcGNGcIayWoN{^WmH^Ew=TMHcL@ZCCJ@}+ z3DUSjW5JZqoSgrqM)Opp?VG0R>9zY~OKq5eR>IP{3=!t^xZwdI1gn)>IjDm`W zj)95wr$PfhfQW#EgouoUf`W|v=WgJi`v5Wl3Lzc0G%As%IU2niF;7TbE;@ruO(%)g z#4ix9h5I`UOwwm$MByCj^~XCN8(86N7lcZI`vfK_h;NPY^dHdv4cY%4 zuy_Bjko_mHf8v4z*hmO}jE6)3NCH<=SLa9Qzs%}(YRJS1UB`bKxkpn$0c)h+w) z=XbVGKycI((8pZ;1jLM}KYr7H0$%m$7bC_bmOcSvN7;{vf=>Wt>FDj(6*;G?GT!Z1 zXU=!5ZuL36VxxE8m1awMo`8PusmG3@Ct&<*4$|OE(9YG^6M#VR1Vn58tq+zybyJ64+3!EC6yT%D@a?!_+}k-duYzxw4IuE(eyuf)uzP9}!!CC+V_ zX1yDCq<=KP-TLWRCJ_{ucvsGaSh>n2um0MQH0OfD&#>zL5%L7AG6bCtidE=82C+Q> zzX-nn-qKF)CjDi9-N@U=!d_6iB(`is(z%o+vk{!tz8O6|e=qCAkqEkqS0n$Xm|9-w zSYsTH`OJeuxPN0gIvKZ-^X4Cd=l?3$@jnE!cU-o^Etd1w6~#KXr9^^-h3@f4QoeCb zkCES}1B zUO`vIr@vvO{;T~{1!^o&<6HCVNb0Qh2#FnIyHRf3vfM>=kh(=Y48_MXX$>|BMEG!P zQH6dUGI*;=BT+^G4S%1He|rFl2_EZZub#iT8lE&7@xGdRyEatD!b^gQdbIEb+w8gw ztE^$>C=ar@AYL(8$I>eD4S#La-^vOnA1UkJBACYQ^@!<+I8vt?4o?hp?d;)-UGEGbtr6!K$FKN@u?a+A>s90NKX?UJ$*yIFCRlledyn&G6C@Q|Ey5jDiImJ5d4o1B z@iN4zWFPD~L{*Skubqquruck3%A4IPf*F9|@;|wn5ZJd)&qjUgqIeaxx$a`^f+D$c;8b<+FrFi>8!WHk zlq5sM*kjowm2%YStZ|aH?o1}->R7MOF-QcdV1)C(msPF55DTmfb49FYu_{W(IWabb;! z>-Tl7PN`E-?jT^-pPrry^v{?he~@6$!CU%!RSl>4l~rFbZ?<{sCP_a>iONj<2x7*> zU<&<*uhgOqLMu&uyxGIf?aCSlSWQ9bB8#T743NmJ57=jxA{ zz=t7X|Vpi3UKDGGf8O#ign)zsb3I{pYi z_?L`=!}=(;`2Qnl*dAW%i{Y{R@g&dpYAX{ zyjcv|-6fZDn#7}`@HAc z5Si|Tr{56AISmotUtCl&=i%wqGj?l(3R5WjIv-P+8DW*lR&Slk+)^+KfLO#<%9|`v zggmT#c}%qL>-N{n=XG+OJ8NIH`jm&AIj;u%M+ZZGY z?s6qZt0DGA)t%Z&%K;o3WdLiHFCp65o8u8LM{?PqyKQ(4W*tjI^Sal$^f^@zsIGx7!49ykaXKZn5Zgmsi&u_&TeQh1DUU zXBV-sH)6L+6yIIM5S>j|7JophX^+@FK$o$KUn9zrFwTq606xSZ$q#?zjuoM0dzarz67=>B;>@M>b0uF5(u(z zr~)Pe7MXRuEQGEM`(S)~P8=LwmL5>jg<__dBSK=?22A{;&?eDnJn@oiQ#OOuZ*g>< zchtEgWvTS;q{)teg(X>F*X0WNNoWqeBgv*qP2Ao2{J49g6k z#|8&o7^&#XurH<7;BTWh?;x0sg7_q;>#hn6fUWQb2~J~2(Hu0*-*|b*_3VcUIfGy7 zj4N4YSwdtm7`VMI$dj(<=TpVgs)M0i?x|qCri+1ZW~MeFwe0}RLc1b5x8a|>0zArC z>REAfZK{vieB=+l({OM}FU``PPBu7mCfw00AJ~G426%es2djIfZ}qI;`$k64CLdlu zD4UE?n6i%-x_;#rni;kNn_J|>)*NZtHAQY;fJe#Felok2mVsrHrUR=YlKfa3sPx*U zi^TLqc6#|t=RKT4*bBYNP{I5B8B}%fnKRzv>drUr20S@#%b!w&Nf z7k{^!kjNl*r(FQE{Lsy{$4;DH(ByYN9;xGG#-&I`r4G9FAHPF0O7vVJT_05??w=sA zG=oh#F(pa7X6;jtz4b1%_h(!>S}rD7!+$+j(c-SQyQI8&)Qc|q@W(HtT2_5pod!9{ zpb~UX_4dN$&_l(7-L`3e+$2{?%rsuRF3eH1ebS}VS)Rm~>J{0jT2nn}X6F;0_so2| z?{H8QpzK!|jvhywd86ZPgL3t*E!2{hkX5!TO&6AuynSFMC@A4xs&?*V^0Aq1m0MU_ zJ zjwuN=laux?1GF_0KL3+aksN00_T*L|PF>dVOT=Ah(-Nz0nSrtNae z<*(iXdc(QVt1?>$l5SQOQF1CPE#gEtVqBJ=a79YP0Tr0>gL?bJxy+;-U05R*O?Q4U zC8E4{f@U`Ho@>&mRxL5PM7)7%4-=7K}{$8AS2R~Z~Iid{`t&O z;?!XTe^_1|y|)G>wMj5bo=~SyWq5isCqqWtxU)0;%mg*G zW8nva-p|gE4fLpLLAW~4&=}{enEN+CfvObYJ(2`=hK*(XKf(>*%R183cP;b;B*Kng z-&JMniRrdnu%=p06N^bL?sJ*YfqoTR^ox1jP|#=^HYU@r2Xqs$WvMJfbY%)8bVb2T z+mZtALOWDtJS*MYOI@x9t+V~#Nb^UqVxIsZ&1f_xp_9nS$%7of6z%ef-{A|&;SR!I z?8A@ZKob6}th~;~X3R_{wppmGRWnb(CI!>oz!Q)gQSt1fXUoY*hDTH8cD>lo{eoFx zjczCQ&JE!*k?;4RR!@MRbfga#GKV|FmcRmz-A+)R&QcdG7WE|1 zO?h%&!VzQV0WStLSmoY7NnDBQR_zCy=8x!`1l$}F`a(amW!#0XiM^0WS7ckl__jDn zofB64-yviVWYX)^|BUXS$ZAQCG|Jk!;+IX9QmwE4giU#qF%Iq3&3xPty z`$YZvs`#5qe8Xqe+8XL9oH=Y#>Fx63d~%#4bu!j-X84QhCZAh5==gzr6CbA|BBaeT zN4bn*+CtA=)r5=Q<~o#N1r^$J7Oxo3D-*wl))3rbr5jUghE*BFI9O-YG&Y%sPX^ zSB{7l<%lWYUM{knPbKv6IZ~v?LF@(mN2Zew92hG$hxnoxYTKhJs%&Rx-{-g@0fnYO~%<)b)qp#jz)sW?7`1}y$hZN#DF$)vKB0zWCA(=c<{R|93m*wHVw#)qM zD%R>gh`828{v5tBo5z*b40e?;b=!9+3%5I_hvddtMg6e$qAf#OB!HC~?_X)~{ra3j zeM}Zv;mAnw3-#@Z=4H=|!v(X3@xFvt(=OI&`zMDri^}{ZXY1b9I$_sD&Bct->SPW2grvvTRvHA&<)5SP?%u=zu znkHp%cd=;-A=*(HB_hTC+CMbasvj zA1Qm~F1I%&lb#?Xo~*ZrQO4%8&?j0T^m;eZQqNS8mKBXb85ad%lST@$=WM0AZnGdt zOs~pZXb=$?>Vtfm+r_7a3T%kQ2BPz^oJ+v z>fjDN(%$_>(>9f^4qYY{xSINTXOhl##)?hIBabj3Hglj(xF=|6J}t50LeiZ0m6NSB zhbNv(&25xN{9^@Yedm=+gWtfWiCA|%J}-yT zj`L!4h8}6|+JpPKQuKJkHF8Qbh!cM_r0einn?{$WBZ!X3Cu%D+}wsg}Wiv zcsC`I<@Wk#1ix+9p{D2vlm(w#wVW@CzI5YruUhRdMZZTlP|$l;!}yrWxE<_>98rg? zS}w2eo@k!!Shc0gS>ZKwAmoE(mk+)MBMZjU_oplNrInIVX8h`?(XT(!5?!!LyplN) ztN!{7xklc4qtI8&4W7pTz!g|h*d9(+v3>R&0@9WFjT}7Rs~{ut4u{Ga17c^h+lsQC zaT}oaE5YTeV$I4{vLlvfEyZdT7hE=bYu(dZgEMW7jpM*x-kDOyY?06N%l)mf*+!M& zMB4E(MNqw}m|JJ?n_jbLXhlrXzU2$q1bbIkuw?EfqY(%3zSybqgIdYNl=vl~g-AD8 z!a2&@a0}l6?WB>lRtGsd&)MqW?%`MI!4xYj0uM7c^2bGKbJL!)9pkDIt>w8IWdw&`l$z=d|0 zM4Nm4pTCvTX>EWx!v>FXYm|qSL+O7qSwt3)qjT2L-giGN&s~?Y<~nH3E%aK2q>nWx z`C7KcqgXN|X;JCB!7(UY5yl#vmCNU)E945mJnYl4^@HUpO5^+}TkDYiA-i?OoG?!{JG3ItDp?|HVG z_-?}-30plyx*eYmC$6It=$%Ra*>EX>sfe|Dft2HURk~nhn20X9tI4IvzVXpY^!SJ_1cM17Q4w@H#T2p2;E*li!p}f}DE75nnX6AU zTxe&CA3JR{l_cLMeqZ2|0}}?XN-o9jd}j&HLk@)Ih}$WGn;~-p^F1NiEh54WJad6? zf=v52goC4@?W=`y*??s{+-txt(k=viaWkEPn=`q%n|z&=)|cj#6et5{{(-Gj#uB@@ zAvCbwiX=vF{dq*4d%BimElD#nRx~8;X2t<)&G%X;e)*L=s$jU(LTuza1HyVxA zz0gKNxQV@%;-KF4rcw$M-J5#Tz_Y?SidXGii$7E-D72LOSNsNEbDM;atw!Pt3ttuQ zoQfZ^26)1qYO3p7?5L%^-%K?GgI)|%cL?g`r?tBsjPLatsV~bLl&O8ySPE9lCs=_e z+k|}4mTfUuGdZ>9S7;Z@ZialMlDHxZin6zV0?u#}9yXtVaafYLky_HPd4(YRYgyVK zbuZnbzjJu>JpV(jKuR7sKF%?&y0Afnfxf*n08AA-Cqk9rAWS&&nyQ6J+-;!@p!Ytp)~%rSO1 z;9jm1?f=eh5yzjEy@8yf8>2{pTGJ`=T=*ynp5rk~SIfOOqStmx*4WY3sLJuU=0su$ z%_T_G(D#v9i=mFN+jBjzbWdstv@}V*PpN;Owv~q9LHCZUTYklJE7dK7I@MW-B)4#1 z4>UIqNqsKtB=+0*4D+StfY{D9Rp1^%jhy+u$bFjEy+HO{(>1EkJa%losL8t|T4z^z zKwN51CA+%`Tg|)Gcr=roJDU`W3q915Dx*%+_|v6!aIvv` zO{+YOdzRnW5?Zhk8pU^l?^48kRlm;@9=|zDUU$fe297YXE&XPX@1Nz{|;XXKvUCflL(=%;^=-Ic8P{c$pyuJ9(JwYozveTo8I%u=)o z`>2;Y1eW^ZQ>pBgaJN24j&Z$RZv^9wGRKz7vb9^iN59yEoHyyU#*(3&7m;(g4k4>q zWC=OiS!wKnKr-Q6IZCFBIW*Umt3cny_)Oy0kz7TQ*?~t!%OpPq7MQNKI&IHpQg1*y zjccOyxc5xyox~e!>AlH@OLh^53e?_l8LEx6`Ft69#Ih3Sc1pnhDz~IC%VGtk`X-d$HpPX-0f17~E zG{i%U|20YK31D_QxHqXYINwW4ER1q=9bXv>5^w!PE=X2nnQ-=|g;D~I=4F+v5S4u< z9R5mT#e>jh9`e3Gkk26|ozlt*ce+E?^u3-SKKn4-3V(pCHkyCH_$4+jV%Bf0u{8)j z#I(~Tu&6Q3iU;h*V(Ow=@!d^xV5w~zYl@7@p-^96V^>-W0ojMd@a(93m5{N%3AwdI zQHl*gXq0zcUVnJSEXwh@M$+>F1p}8)si?lVi_q`<$X0x+^ zX}@Af$QOrb#WG)?2H~ z{)lY>Y@BW3i&(yISPLCNmRSx+PaX2pkV3G*lIs;V_RYf8}WS}TE<#g(R5>`gjaxiLm9^u>iDbF4PYtC9m7A&(2LMbZo{(@-{gKg6;y@seH z__8L&>#>)lkKkAa_kuTLUl74#Z=rmuoSM}l6l3;>=Hct)@)s}IkIVB{gXN#ma2Bt( z9!6dgckERl?3*ty7(W3&6;P&K$t@hfX5M;8mW1W`o1vlg(Yzztp$aV@x>|9*8iggn zlx+taiZ&TXH+p;MNijedF6$OIy{bDxqtINFAZ^n`faS!0w9`q$ zn#~r{xs&LeI2Dhkg~HCCBd!*7c&+!1w(ZMa?-@lG=?mOo8Dg_=Z0R48TyQ+lMR|8M ztnd`)%Pi?RdQN-l(w84}=>7WzZs+mtElVr>v#QJyXkS<*W|-{H)I{<86{$9xqPEo8 z2j2~390~1ZT?FrZuXVxeIytPvf0k`|c3<0dVp-^~>txZT(Ux?jc+r%6r=YHEjk}9e zhuD35)B5JeeOrs+lB)fvZ8ZU}VpH3F5mv}qWX2A%=S7iy+NY@sz1J_GsnIiv+J3uW z3mzfBwyJu7K06)dZCK!o!S%@}Ks(<0#wMO8Ce{b#lTNm?^Z`T68um$DAoFw+go&cxNFTc^AT4CuON;?+clrr5*-f_T_09_!M`Ome85;FXu|C}Q>Xv~X z4k*1zIV(T5v_W`@(|PWJJQRwMMVt3&jOw?UApIIxWrH#L3p>KAWgWXnEP^Nq*p~fnWCLd^(xTP( zBrid$xd!v6q9vFtt`pk;JK(-Be)5*J<#;`k%K_S++`sQ#=5`cLoUBe8s20d)ly6{Q z#M0l|ovb3u@utz{rY>tWS_F1g^#st)OD?NF;Mf-|mv}ss;DqJl#2#!9vDpr>&LkR8 zQ&3(oG#NJi^-PkqbNag+u{L7ZUr1JrZks@C;hj-x&X<(!0JGuKmuTAvs2gMCrt%(I z27f=SMEJZG;OA7&{546KUN>HraFFW};>}|8Z9ShT%VRcUX8wOT$_zD*ST^BK+J|kg z)9%kT;%w8Q(IrE1V*PIXt}0zCbKRh9HS7;Fi4|MzSL?_03AJT5Qp8~vKqp1Gy0~xU za)iJ%ZjiDc=e>eY348mg;X{%T18?_4eI)t(M?HjKir@jt8DY-R^vZ+uLzjYpu#Z3K z>*HWD484M3aN&)3)`G^S=*cCs&p}DweLRxHJ*MMT)xr4}SQ)0NBz@u5(mqfxo`E7G zndflQWI}mLp3Iz$6KtZ86Ky*Yr=_UJ=!75p7L%J`GVIb8Pf?F4@gSCi-6Ghk#s2uv zi;CP<`NNteQBjsn<}+ifTkKfL=RaroIt(420DNPEB~vN%_vHkoC@mVH{^8baWRb-z z^0=%``2}X`C7mnKwCFOi@x5C|s5NRvW8;cL;;P+zu*IN&fYMQMoe2QE$aO>+Xz8Ts+p}pFb&rtD*o{R zC@xmPaN)0&)x#fOR#iGqbH&fmxx0ln6LQ~Z!Zvo@)80m1311xamz#<<&Tzb)V3wi! zYROFza}A!8_ubREH~=3v#0J&&G&eUi8x_NP6=&TR8cgLyt%OI(@C=Wgiu~S(D;ko5 z$+@~IL&jq)xS+{`r-qA$va}YnT4dvqX87fccjl_>KOa<1a1DF22y5%_=-#u}_JKGt z)KjnpbV8PclNAWG%{34=wWZsAzVWM5roELpncb+x>AK_vk@P=i9)HZedjEn}X643^-0M@K;R`P@YLu;IO+kDfD! z?c~wym>q`b?Au>sF^SbfoeYv;F7%bT4laDZhKS18vLNmS2Hv9T3=6T)+pt4J?@aN- z&NLx{%y)nh;1RizMjCuMzWqkoS>HgpxdLZvu)BJc( z6D6IR*GCLc4>u6=pcV$PIUXo>xYVtw>a~)P&zr5oFpa&Fh6BOpXLB3JQ>RTHOW&o`2bd^=5IX#Q3j=mTq~Y4GkS760F43hz9?)-I?j0%at_WW{+4v z_|kh;k+`#+yP|~-hZXxmxWQ`lq@Qh^JAhheCwA2oh0@#>Tq<+ij~zPH4>T^71iM8iYO9a;TnNy>MI0lEz+M=93Y)Rt zq;~Qwi-MFcFjXQi^DnWooGO2=%*BtC&KWN%!JngpxOn||QQU8YZYUB#8Mb6sm1W&Y zubqBnRHp~k<1++t4lOF`A+H5wAoW0C<%c$*M?SH}#%yK?*gOKDonRdjGpMCbAM06hBH_MJp`^wMVvo!Cdito ztNKKXi?~jVk^fXQ;Uc3(vJ^V$Bbi-(-Dg3|!%8D!9p)Xmh*gQ{}W4; z6jv`O^};&teV+Mv_m@-8&wxPKggRV(67O{l8Zgo!X(MYM_&^>yrP=BZ+gmL>vd%FL z1%I)&kfFUaV!{PG0qs4Z@MTEPu)4FZ;1Mk;vU$h`T5J$z#D;pi$lFA!kv9Iw7uy2S z4uUQ4H^Z-#UgBIMAhh&tq+PJZXx>bYUs4TYIB{xs;z6-%hkV&07~&e{uU6d>LVwS4 zQnhQ1RmkP-&5{l}virzx)^n^X-u*1;9MF&t$l7i@DD25!X@k0c*i<8L-o^D#E6AIN z8yQw~=BF5;7Or?Z;h3y4#lW%E_hr?YiaTE9bh6!`_g z%gf+71V))nTy%2OD&M!0R}^Hhy$3DiMk~SvIZ0 zOI)rW0U>E+Mf>sl`fOS-MfM4`4c9i4PrZ|QcllQ5V~$8^Cer)S0VdVcR;P?3a2cDa zui^8R>@Wd#cajyBe6NMf1;0_?MA#~F5NboJ~H&S&*xHJ}IkbyC@*z$`+ORt-W#9u4cT&28<&rKBU&doR8EEeu$Xmkx? z0XCg4N;q9Mqt{2angXF#)}D+IlxA}Ah~teZF>N9_A_|I^htHLn`Jsc|r}3Xj`xZJk zY!s22q)o)XmAH5~GwEb1q|_wZ8E}Cj37h-TXm<)lU||$U(_6Xq%`u%K6=|K!w5AHk zMrz(Jt|1D>mSk7GEU8oJU_py6l^5iE-7A>AomL4TLaDov`ty4Q5}2`ZL3?Z-Yn{p+ zG0RQ{QNk{OmR7f%oI>q^OgInOPd+sw%c+US>L+1ao}sXhqt&sDRobM{l5++Z83+AD z^27L)b+x?=&X?j*iAiFSc)#(hVnk*cb~jYp3Z^nX!4wR0Y8J9+w~Xs@4a8+J3i#3j zO+*SI4(Bm2BLqgp6@d|2#6(o?MV9zLgwkXY!ft+L zEQ*)(^(_KP1(q^MQS)(UBKH;VmS+}qo(W<(IDrnM51uEngtAFpQ0-pgfh_h&C-%^c z64@Vz?COrAxzhFRyVFzfyqCt_=(88VmH29WEDM+9y!qy%hNG}pN5t|;G!$=wMWf}V z);kclMFSQv7*brC(&#A><#nR{Jtk9=?Cl|S%BY)eUebcmly%g`7g=Vzf(SV)M}l|gtC69%6W=oB3U@FH<_G_- zGsE9>t_O`v{Ja(r3H%ag1SZL>OBr8RU#2=#cgHtt>hQsgh#-*%$N+ERHT7}+fDE~Y zsOc=awEazy#V#*UXV~XsZb0ViNE=kE`9|tsL2Oz;;&~HZAwMj|;2|7x;v=t~$x1>; zbJtC{`EoDf$hmU0?h`2UidC_uq*K_&tW@X{q|=kAQzHaerAfoKIX^HOc(#cP=$Qw& z*b@#IW-00flHCgO&PyxXk;4`e?tjSI#*n+iKW8Y$`?JZd z+me^r!bG5ks&1vILcycd$OzKsi8V&tJZGj&XD08?J#CpW6|g84H?#8vtx-g&5Ama^e8f(R5V^c02iXRhSj35*Zx)yV zLfme!oO9MfPEOTaTD_k%i(mffJKLJTA>)^RWoKu{D-L%q?k9;cvM}#TVZQ_8^~pE4_FJnq^Gf0 zB0$d@zT6ktQM&D!9Lb5DE=ZjZuhC0EQZ4|^`SATd9Lu#b_g3z7718|W<~y6+vC({C zO{UUgtl&k@9%rccY@Dy*K8(co&vL}F5f>fawx|$!)w>vAQO{SQe5XfVXpl<4Xg8h_ z^~0wV2%US!gI+=C$_uVw!^n_Kwj~XonBR5Js|n-ihH2rey|u9-;dwe;%G51Dqz9M2(iXI6+CqImNUr%|leeLdg63G^0KA z31F{qi&%c(2g*q_;U)={;Se3FTDqZpsabqc#>1Dcw$(HoqLbCeMTAtOqSshpOXS<6 z)SfgojD>uP@t*ODn^_-(RBtB9gmhjRQ9>oN5cm_#+rh_ROE)Sd+zfqJcrB!VZ#j71 z4ep%4k!W3DYzTD^EGW0VQ$k^$6d2bvzTFAQ$}DZj$`-9GhFyJ~CxlUaY&7U7^*e17 zRABOOMR4Z9@fWw{nLqINjQca7GSdX-hErL346MvHSfmf%esKs0&r}(q7cI-iHd*e* z_JPO7Zwb2U)UI>AjlkD)SAgPuuvMnQHD_ge>74-iKI~(jQiZA|%;fCjpLRH*OH5x3 zU;`oux>=9tm+0jw&1pI|uVYuk4#w0jyigj8$n)VQc#L|mSMS7a-`F=sA+o)d9?-E+ zs$35uG70}DH?Y6d{71|bIn&+V6Odbh0Nc7{{u<2u_XzeG`L0Jve#zUL*AGNgra6ek zLr(zRg8J=M_7flzQT6xmb`6yMKN2wiB{TmeOuf=ld&RcGHzELHW3)51Zl|NzT^qHQ zil0H)?ny~>Vj}-nve2Pui=N!}cD&Uz*Uh7-VkQyDj1?tbtLw z1?h%4YFUKk8FI`!X~MW2-O`p06g)hlccMTA&|EdbW7P^%!HZjXhVZNLST(z zVAtw_LiVL8xB-|KD^<(pBT`MoyM1X5qeZJ#y_583S!TH5x*9z^f+$SD#uV+NF3wTj z(oaIsfg=OTPju);d*OOy_sjuk+R>Aj!U^hAwho`$Qo5fVuW;LbVGDIJEk{$iD3c(X z#=ad{Bv>qOT(OSUD0_2lZd`|S&PAaH3`V1PHo6+_d0$--G*fa(9VK~Or`%YMzwy`n+Jb<_Z{7tTcYaJEg;Dah4i3}jjYnjIs>~fmT5~D_ z=@IW*c=(jLcx*@#H(V4#osLDF>$cnZ> zu2aSh_42U&$8~lQDuXW2k!xoXCzF48f@tuv)PV3Vul@yAS?U`GKk@vtrQzBoEZfx2 zbw@tvJbvOp#a)|zThrM_OWOPydOTIzhldMv$&Y#J)t^=CjO>)Tu!kX|kkphq!ay)+ za?zGbaE{XxeR5W(r6uv$@p0U6Ej7=QWvAqZqH2&k(v!qOIkkSmJ^XkTGQU4w24)-H zqO+Sw;pGNZ?i~Bxv)1+HFVNQ*CqS8}sPG=#5Nu;c7$(`oKnAGqJ{7JdTwaonS1{3S6DXBu29PszXJOcgm zcegD!NB3H#exQoFC0rgX>V5bC-xghB%sSq-3@mKu`H`gO#e+n{f`@gz5ccD$vJEi; zI)_VrpU$q_T`SEu;CX-)1~I7q7^d%~<@RH#pVH!ML%dLxZL&&RnuBlys}51>vdI&` zIh;Gd_{FW)6@$KQSTn*1X?jOYR?KZ*fO};bY+G2XIL4wj9!k5=pj?9NY7mm8cwzuA z7=LyRdTor=eJ6P3XljWku7<(rF9CLp$DJ4>S&qfi)ZJ|2^dSBU#g``|o27Wo@SS|4 z5xp>YWP&kCZ$@l@s?oInb4y(qf-721rG3xIk>`@Y_VV#rK-mz+JPev9HCjrJt_OOF z7R{Y?Q~8)S)J!nNP<)^SM-e0T^UTyc+pUadWH`d3gVegqgW>n?XzJ4XRSlg1 z9wpy0i$&p#9XavJJ|OuD)=%V$yE0x3aWVFLj(mx=E%95&#~hU)X_{1F<5EOL4H6wo zP{sxmto~=n+*_R=Ybs-I_OL7eu&KR~GFjqh819E7^{mK-QNaPPSKKM5~`~DX@>j#AFO0pQ^DX9?j{|>CQ?3jd{aM%dmIv5*cSlepT za-Ze=`X1P9jAtKyyH`=^brJ1BGGqc5(sioTxKUC(3GKh{@qQPH=}6F>;6}C7o5RV8 z{kgoNS(cZqTSZgpaCGra_YOH~YW~kF59lnn@#6M@PHVWq@USIos}1nNJ2VlE)^@oq z?Ik;~b=me&+c=tC>Cu6ertUaw()**>Lbbe3R5wnucE;u}`>4m7E9go2<~Pr_K)r?j zm|?m|w(%XigZlf`jp&92d^|%gi~%G*c7%P`n6ji(r_xSQ`I9%Wv!B<)!x{{ip%l7c z4Ov@pafgb(yz?SDLNZouiueD0NqzB;$ddOBQ-h<_9ZeCthOFa)cPIPtLPVean zxZL6ms+o}Q^PrTWuzJsb#$-%wPnA1YTC`-1VmQ-30s5@H1qr)~{dvWn!m8vaj_?84 zZNjFT(f-=y$Cu)A^#{HUO!W|_FQ>lltj!RMBo`1ldjCgJX7up`@qcR@LwiVP((;7I=S31}PGDB@?8CR#{&4zg1^;!Z?S+92yw3DBT&cE1fP zSg=oHZ#^Iq`wBgGCzRyE;}mskat>M*mlW~NEHhplDUkDH;ZaIf=C;xR`R42DT?rwt z1}W{bUo23(igGGHS~D2nE_VyVR7Z}){h)RtD-a5JEky)h3#GA>hN$9Twj{4esCCE|*L4PCVMxJ{YgR+UvA$~_?j)#ePY1vS+EaV>?@=6VuBUrnExMsdH8>ob@+pB zP{EJ4LAwt6`+p&mc8Cweno?xHpjY~a;f2=%-sg%O#HjI%mN73Rc;pNpdnUi{lG{E3 zZ;9^z>;EiVar~iuQbUq=zp~eKtS0#;Dh!LKDg^l3yQ^ZGL43aA;$u5TiSn;+aN$9- z^-sVpu?`SqvG@7{yY312j`2wR*8+)u1d#XexgcnqXYBEw>9^)zu66gB|K6LzUkm!h zIhc}jt@;m0Y)`<+&!8}xzZOjY%-|>Bf9kbs@*;}=2*h4wNObk7R|V6Tu$rm^#pJPf zQo%&vkH0{ey=VUG5uNc>o%vOu+PO~0WZrZIB5U3!AZbS9&4O;VxDm^b$1e!ufA8=6 zKh=2x!pxTsnh2r(Lq;hd;y~O|za5X_G>(O6H(i8!MKC)8yaJru3ile_yKPe`>#vy& z%z?4N0(UUOcgl%sXVZVThxH$OJiC7>S>suCiwb!HR>GbD%q^#rOB1a-x%Q9>y0&EX zW++zgXoi?2fQr^+Jhgf1bx~u~kXZTpkb7B71`de~YkCtg@H24gT);n?8L9YhhW=}T z74^Vm#-jCmCgHqed0_~)I)z^)l}472x#G&M$5eEK4nXp-_sI;!be41a~M_w73>`cS~?7?i2|S5-6^L0tE_G zZudF&od4cu+;Q%gd*AoV{qT(OWUQ5$C3F4eTr*R|ERQy&zT6Z&dVC7v{1pZXx!nr+ zl=eXLX6#3V%f)Yi3FQw?iom3opPpXDSbcEpd8;TA1vdf998j~?R+Rgar{5UoW%`Nm z&yb~zG3p_FP>lR`;-mOq^1hLUuD3OP=B zE{^iQt-zW)HT^U0%zqnq(!ag``y84XSG+lQo1+lM@}69tJ#!qbm1lX+@G&qZ#3$G= zVEGk(;b%7+YkSJ%%p#r0z{lLG;8OI30&_?+u)Il!c)U#6eQS;-e<%wX8nG! zV-)?1IsUL<|Jqaa?fx|wusKyKa`q)hEz4Q4XM?J}4Xk;@DW#{v%g#|W?bB8i0&OW` z;>bv&2DitQFsA7Z+s8FQB@jCYfP1>^)QZ|omoUkU-T3gaf@kp``hR5c|NH@ViT|8L z|CR{~(%y(jkPchab$X&oYDdXRmm6b!6?BK|cju;|W3Xb{p@DC5tSwL72^AQf#KSeE ztq6XVDtO9%NT;T8YRVom{TH0@e%G~E`8@oAda+KPkNHKIhwRCy^a=Kf{?c=ago>g} zQP#D3{PfsxXf`X6Zu71+Q^8v0RGold#iPF0pQj{^&Qy&s6wzB5Hqx5%r^1Uc&PV86 z=y+WJ8;ntv?^zONC%w08r|_(HDABciPWT0EH7ufJhW)tS&g>*-TF{A97V^jy6i8k& zdbqysC)d&BLP&W8O_tPx4g3e`mOs=8{!W_U7y0a_lPFZ=_NnxId+J^zQ~Q;kk(I6Y zW~S-dAueZkp;k^5P42bn)7cHbB9Z&D%$7)f+Z26K3&3V_$JnIGAjZP`$MRMGT=KtT z45!Sc>gM;iLgU4qy6w(JaOJpWguK!mA@(~k5s~?z|G=%w|AbrnHS>B%e%;KCm-1-?>oX=yFn)3DeX7Qr zgLUmCmv;Yl$Ne~ItC z*0s2JPpt{`p^^ShmfOUwc7AHg`!|63&-a%4>$?JJ9+jS$g#)#~3Bz4XTarRE$^)5R zPO*-fJ^LQ;Hn@URpr&W_;=p;C!^@R?d=PGb@S=2 z$R7j~HF~C~z_HbYp9z-Jnf1S^19B@FMX1N>@53F>y!}xb`?2E*7%J=U)J5V66UA;z z>qC$J2~vM#PyfF@4fVsWoke<>PQhI+c*3*R7Ixen$%Ud*p}n^@dD?&ADmKuUog!*< zl^A4`|`fR()?h$ zRNmhj@=eaxGer1flC^&v@ykC%@K_{3U+Ay@!=EbcFMq0F9vVr?{~Pgv#bv(%{|XQ+ z>iv3?9pbi#c)hoYu3&^Dl@&uH+eLkf(`CGG08Hz!u6gvGt< ztyHNRM2myJD36`cz7>!)V8S5`Ev!0JunKOG459e+nM=EFg>@}Q(my>4*Wb~zc@@M& zH9m1r@ASQ6vP($uQMfr|-Gw*5=x!o@r=921TH4_~*;Bp9__r8yAPm`-7mOe)>QL&V z4Ei71g+z{#pe1=`s||j9f6wvvMTcdzkA_zFTMhKOoU6EbOWJd`A8CQ6YpL}H-*?z* z57%1kRG*(1cP)Q|iLk>aqx|g>aeqvsuvU50#To6z&eea)gYfJY>TFdTMTixqIA^X% zQj0*+egj&I3;FK$psL^kBQ(z^vBh3K+C==xy7A$7m|l!mCK+{53fMiuKvat+_WB7L zlB~6sH~szl1fcKRua7bM$(`m*mU*`piduk@z8_8M61a%;g0gT$D)yLU-d}vz#76by zM2%i9Y;Oq1?W?FVdkA71ura5F1lzgm$}yeKr{~$|G%@h> zowM3u?GGuHO%hHCuN3Nr!!i_2 zzb2YnIu(=Qzz=R0_k zeQ`KODfx?n;<{W!s2cUu~CiM%JYt&_mi&|NN06S2{U~;XSaDgEuY(1XPA_Z14 z-=431Y%1o&U~9X?m9T(Il0Ix;C&!X_dQN*0uVZ|Q-3v>y_4mutQQWr$fK^OI0Uj7w zjC?rFGq3vS7O^fjaBZ&ittFDAZ@8ivo8F=@cMlS;&Hqw+Xa3h}Z>x9gBmxQXw_4a!=nOjOh_>A)H8i3A0u{ppK)#8m~3cEGh zb?N+#VsG@Kg!eJ>lUpCagAC88;1bv6UHxwByCw@#Ldn4p)$b_^Qwk5|ovALkv%1*~ zgzAA_05k*cHW2;3U%N61g8J=6isW73tem$AYGPuS$kU{J@4zqJJLjIE*mE~W!!!@$?zdpYfJK-A)&XXP*<*OLi8_eCiHjB z(isU;2;k`9d0u1A9wi%_)01`&e=+pDd$sg%x39Yz5_4>`@9a&xHO%;%{fR)obG8=29k*MR0D4%Vw1);PGLU}UJ=yIgfylrnt3%(Wy%W|C`DTSUf4 z@d{u%070!za4x#4fAhI|l%UG{*s;rd8)-cFT)FCVv15KXC-Iw_R^n0)F#!J5(hupM zwY4nMTELi~@8zl9ox#)A7H-xU)(lzTZ4WHAoA$lyhNumzPv8dHslAB&=4eo9!Go;$ zoQ_cloHCrbF9jqs;a_30!BXblq`j&*oNYzJc#Y;iSI^xi=lo+9#>weGx<$%Ju?1Jr zO_ishk`9(V(&g?EE?dX*0Sd+zKS=tw^h8YkIz)^S9OAs`pz%qkaiA%lT|N{$~8PGm;2(3@jn+d%qQX%smCSFnvccVvxUg}LEaA`fv&&pR zT~Ho+M@0DHvJxj@U>_=!8zy|#P(oFD+3*RhFc^X?Mr>5(+0Wy14Hc8gP=7{M*r{5n zM1Fx^N!E<6B5LZC^}e_P$k?LVsMduXZa+I~z%`_>Sszi8Wkp^>_Atjcx5Dd#7 zV{}uQGae`$miVYTRjb>kO2FyB#xLb!x}4<+kOy>NL`0afRtE_oIgTGJ-CdukG|}2) zh}8t3uUHk7ml|)H4|;O9NF-(YI3fi;WNPXLHDLIFvDJ(uOyj5c_`yc|s?kFX*(>11 zm7f_$W90e%(m$SZjcIo*PHD71vF%Ch7sc|y<~pF`Qw+wkbG)CqYhFBc(TBglI$6!i z+)&VrrQv%<9f1*wjd#7DdK^(c74kJv(l3+d{5kHkDBlh&9vf>WvOnsTzTya*J9B(m z-1^^bxu05K*FKpr)%I3C)qoqW6eeuK?$NI!&EYy{JMq`T-GB3xC*uw~uYMQDUW6~g zaB)}t8?Z9@=ic)1`1-$uD^>yincA~<`5!hYw17Cy!V5y*B$n*gJ(1d{dM=IAFQ`Fx%>LD>ZsLPS>V=x!3qhvtoEn^teCz8YLh2(u z^?L(Z%mwcOWAg{?XbT6<3Rd5({CR{FQjN?M1!qMCDa4+LVaN=i0d>*j-~3rX@s}t2 zJHG)+(gyv1G}~(RMN`?cQ!+6lQ}UaQ~{(z*(7`oL2oT*fA~bvbeIoxJ4_4>a8R z*e%^!&#?_`h;+k=_QWws#^<&SuTCgijE*Uwd?U8rgm}-pkfGhQ$yD8pa7EZ04qdBm z+asq9+~qfQxo2>gb9v`g)Lv3R(08oS%`7$?ro8LYsiuU%lJ)hU86eQ-a8v)YMfJT~ z5C_nG!fp_Q&^@WBHVeY%L{Sg&ruO?7E^CF$xJ#^v%NQz0yJQ^vVD3m_-iFO9@{-@0 zI}KX1yVEgvGh@B_y}}W+-O;}|(xzkBeyS+`W2pI6CZR|?!$)iCAMC+8hXke{c7~oB z%k6OqG}sB=eQ;+?n`UwZJwR;|A4@HNkf!)FAa~>UhDvIVmuENu)!9|xq3B=dbD@Ah zcZE2r(6H2)RH^3Q=?8bbWFMr{&{C~+YWeVRV*g>fJrTEr9|yiLB?vO1wUr&5m^fLC z6PB%;$ql9-{aoz8xN4cOowU#9)QlC))`?!()*dxEO9S*;BUC1#WZse;pq5$@wy)Xv zu-WRwzpZ>t27Mj36{EoCN@&P&j#EJ8E%T}2d!eoxtF*|Ob5uCOG)XLq$>R>}CVMhY z8?c>_?Bp;~w)P5ABIffmV{Pm1Bgzhw|76yezONngkAlRCPbg5V!-O5@8=sHr4C5F` z))14@*MrqoBQ%QU99>FOOF4h$H@qq3`J~&5CEetPHuy3@Q0D@FssxBsdDP=DjpEYT z#Km*S#nMGd{<4*F!##mTSL_&{g2swhUvc+TnZ0Zsyz#pkA0pYIQGYy>xHkLvd7~UY zaFCY&Z0%{J>9pY&Lc+9(`<$^4CIy$rV&6`l3B6*k$SBLTRCuS$4)+zoR#&FK_BC2k z&!|xKdwzvaPNNFa>I|KtrDdO0863cl_U_2+CQ;h@$-{ZxUfzv|8Kv3hd}leQkC$KE zd5rDkUbcp%cj*U=@ah-eex<^_vQ!|UPq$Iwoge{U5aZ^t@3!Y)?45q|1QYu4iTH$8 zLa)Y-aRFUV!Gm0TXD8$AvF`&PGs&o6ytNqh2o3gbvO}iGimN*rxb7j=T>J)o)9?N4 zyoLv$nsEWeolvVlvFL~w&hRn6%4gU6;H;5tp%X=5(w7KZkX#3SMhJfz63=VxW|Fi_ zZv@oj(H7)mDX`YNJCY|{*Q(DWj8v+oT!lxk^%S(VRJ7N)cJjV}zW5Xq&9qi`H-%pm zIW9v7*|MK7wPd)EEGvr*GA6$FuKG4*ZSV4#N}Fqn36-!mHhsD_K|L|6e26ztAz$O) zRn>CYoU7Y`?0)GVGs=&GRUaGApejnZ>e{|_y0*4Y2_pP0IGSjbCfC@cycpiRQaBO{ zq&Aw8OTDU}c(%&G2f)B65YrUfxe}@_TYLVAf)>}_Ip&w=Wj7cRaEm~A?RQQ{$$L|j z`&R*hG#{`Qi@I(7Y^(>oN|02ee0x8uotusO6^6Q9Wpyh!!t^mX_8`5@{eD_waRr?eZ>J96;&1-uU;SaeF=`$(a>)V+_7O5 z+!~7CgMc17wPkLCtA4(^r$b91G&2HJh$Q<{9mP#Y58bxF>Pxueu@>UX)TXB@gBi{1M;@c{QZTHTcI30v*& z9RrM2oaytjrj3K&GlB1PLE^6I1w{Qb$sSl0mcGJ_SA2Ru_wL zBZWh*FJp>(FD>J6&lD!SJCa*FwEK@^R?7}DF;lV37Otz$dG$B;$AQ_Pk!cp&%}zXw zM+5L7rm&PbD(#&$R<9Yyi~cJurXtRVUT16aI^eWQ!JYr zDJYonY9I<;hBDbbK+ox;U*OgcL4Z_B9So&r^|X>Wit-rQT6WrP73wyPopLI3T@MTs z6xrVYW3XL1hKXY0f4p`^p~bKnIhn z#Ylz>3p1y4_p%L^B?{Oru}K|iEN@W9a#KSc^LjyKNVGW0xQn$aXEcNSnB8<_IlRdh zQK!2Vt(EK+%#JQOM|1>_+|AMn=|VSyg7b zOtDHycG=mJR7UhXPT$p6jIK9ll7EEkI|6snD+;j(xhd346CK)edfWVI~h4=}tBrrbm`Ix{TSrQg1CS^gt z>|t11z#6CUh$g(Q%!b&HaYcMv4J=Kdx47St4Wo#1-@_TmxT4ZZ%-+2W@Nl9*0(Dzq zl_}g5x*yb3W4A${a51#XDF-n zG&)F%w(+5{cVVVwWLTnIhrYkj`m`;_v?{3zV?ldt&2i0&)fuOwO@v02WOf-ajauQ| zJ3TbpM3>v`p} z7%s_Qj=8OHh|)7#sYnMKbsWv`{Og}pXO5R7h=~xF50#CpXW-p7l^?$W9|dqGIHASt zvIm#-rsluoQbYO*@1K624_5sv>4xS%v{+5&+tfcw6-6WD5;f9;^H7Hb{z5O#{aStc z_ZWc1Mz5(yY9zd;^=BDGdiJpN`8$jOG%4{+8#*9wX_rt zyBm{f3Kn#H{l@1wbz{WyYYlvWfAXn6gR)ncG$Kq|CHKv&y%Z> z9}79BJ?vfp*hv(tf69)5&HD(bBvIIIDqNy=FlJ{IR33CTe&=gJFUuVosC!-v@5`++ z%x1Z4%uz~@q6vG~?f0WKXAZW#L}|3By$S4r#9jI%{Gs)x$`IM7J+7{zwUpCajzIJ^ z*BGk_s?aq@T5|!UDpbTUs`uYNc85MC_#+krLAB;aJRj5XFg+2SI0wt`W@&b7H=H1-uXON-gmmG=QQ)Ce3JI&6&2D*M+&&}kX_~ESh zUt=k1{fmK{ssZOx$Go7(p7BVZCh8#%JVH^D71~P<*x!4GtC{NPif9>|%xYHUC};S{ zcUPP?u_eCKbd#9J^!>#E?awhPa4gMOU?GfrCr{JL36P_nqVJ?%&aUyZEn5I{JrAs{ zT;f?UI%DzDp%;mAP3Qeu0nl2y*Xveu;;eT8@WAk(^5EH;XDRck>u$dG5mNxZO6vOB zN`Cm;!*{ld7Qwh=xh?(E!mGaNC6Ad2S&^YcLsWImMMmYlb>=-O+;tl>dLM%h2j!4s z=EiK_P=MUJBERhsc)$3n%X*3A=ne+w^u_|>f^~Xq!?7%s&tb| zXnIY2W6~OBH)dRI-HGD#urnC7rT=!Omu3q`@F~bj4x>PJ&gFA3Iy{r{>vfNvIQ{mv zBka&rXn`Eb6v-}Xffiax1@NlPf_puUFwVYIX#3=4#%G9*?IGc*`wi(YOta{C!`ba9 z71?1ft&6QFh6%Dhn*S1KdmdZV+}8mORE4VADt6?P2X$n$hI8T-Tz*>&6dIzS&M_eC` zIdQumM^{Fdgex;cdb*+fBeXnBoUs`)XQ$N%jhqoP4jVw>na%_-OIR$X3JFaVQDFE> zKIg(DGxwSiLViSV#?lp5M>@}dmbxAhYSUkZCJQHzKEvr;CnJc2r_xa=fi(r1AqmtDSC49amA(g79+@uToi37$ z&J^p@u#+0BB0V7m3;qp=v1rQQO5NDk4Hr(`cgT1%P^XO5A}5V^C&x&*)Ow-*!78D7v#HI6CHFrn(~R}mRLCP6(G));;K z1u=?-!9KcOFCTHqGm(DSMX!x63~|((r;b8D8#(jXohM8 zpV{)&0cNKn6_`Uss;-ayg~4h9FB;(&*~1B7&^V^GqxhV9d)UvCm5pbYl{vddjgksP zOnR~9N%_SQU^b4sakv}cXf`ox+c{WW)tkaMnR^<<{8*sM=+%yoNHb%6Vv#+>0ZC9* zyVd==rC>=_G)p?w=;gEkiC#L%nEA(tK;3|(NYph&;ZL43%#H->0KSiOZe~t0WnFhnf&`jMm*HVhzE*3(#$oBi zygKTpD)xQMq^^b!*Xz_z)#TwR?Fu3ps+dL_(?|(19x0UX3?Tuw@oy;E)1AXNgPK1Q zfEY8huFjahy=32oE!{7`k4fM&_Fl~s&xfJRyqPBPVYkpgd$8a}3FP8Y@A4(Ej`9U< z;>D2LWS_}wHi8nzmj+k`__8D9-Qo3Q_^Hc%;f=?@<=CDXS0mTk;!@290Z|)zH zH^B`Nt`4vkuGR_eo>bMoR|LvuMBA$XUsRZ;Q`h`Ldllv-i4!cfGag{H`}k><*>3(Y z+PPkXl#*~%s}Ga{>R~iwPk4!``_dkBqBHLd^J{4&a{i0feVAhpKY;j-66$kKoZ&mF znQ6q}iP5P%8bFM8Th0AL+!+M6P_c)*=#Q~P`S7>}1fPGrT7>6TA4kFNmnO)M;ha2o zJ9vAUAsHApXN*r)N%HK<7KBw3UR~+LIqS!Qc;fjx*P~5q0{O)cq;W6<=fn46gsLpM zp&g3BU)O`P<(RNMD%leI*{jamB73@3tIis@?QyN`L#ueQXBRs)-tA!8T#ie2h^cBYt8+B^<3vu^>&f`4F&Uf`Co$wN=T9M^1XR|n_9k(-_ z2ySb|KO3s>XG2X)OqIM2+{V4uLdA|Qc|x8x^ifChmUd7=-;%Q>&wjrh*0g0=ic|ucI82sXnC|o@tBW*M~)k9|yCxT-cVwm6$W3K21{ub7ZY0 zktsUo*3P83w3pa{c7=tO=f&lfjuRCl%>1gH!wWq%jcs>#LMf*K4aT6B@-Z-;IQ+DpPy<7dJT z4yYXA=H@3u?vYIX22u&b1-jOIr=IY%MJ;aA4_PvF;epW|iTm4l@B`Fy!<*EEy_j*d z^muZ*!P*@CZ2B}SZmUcqUCB;=WiHib>pXx&Gs-CQ7h8X)Q91(V0_4JM8cWjSJ{SLK;+2?d*1Ya`}4px~jjoIrx|3F~=O2~h9x3yNE9 zQ@&3AG;m9tI_xy4HM)s!=vX->H9Ms#l-7&2D@$T5wNc|O~uY#r@)#G=&AmX)^usX46AaEWU^;Ble32`4i0vb zT))7~O_F1ksl4=pe}S&YYvNGd+E5y)fX7SAem&BzwAzY`h;f@%3YXb0&2rs1Vh@}A z2dlaPqb)-9`qMKaQ;Jc(DL&yw=|!572VAlk)xz2b!#Zouq#3z$2qHc}NOax2NbY z9{bJ|t@aTkvGDn?_WYU?{*e%}lo|hB;ArdH`R7!hslM7E2WWFhDK;(qi>y}YVmgTTj z%7Y2}S(>m}&f>otk&6nL!>*}73gv5w&e4#>1E)LCb8Ie|o6|>i0!qy82G{@L{b&{0 zwDEt?PgwBW>o)*mc63W`x7j?sfLhOAQ#7%c3O@ZsPM***Qt#A?@xsygx%}%_@vJiX zQlfnlUiHTR3dW84yINQWw_P%BgJx#Mk{NI%xIY={Xx56a1=Dx{a2UU#^#A5syd>as zoRi%Wx3KRK`Fi1XZ3`Vz)HY1Y^D-g~mRLMr?!2`IYWTwXUAnxkMGb@-P1x|zcLlx+ zMXXZM`LniX;+YMNcVydSm$F~hfG~G3BPYfdg)7cWS)fRV%9{{Kg`89-+S?3s2#N%j_53cCM{>@~^M_Z0JM2a0ybtE`DAEG=0qy ziU79701Eh%vSpc*dV2V9Qbt%~tFm)|cso6D`z%-PUQav~r`Of>V#Ee%zg&!0R<$)7 zFAn*NKp`&P8WxnK z7-loM-9{QVR^QG^=6>9PMhTk^zIB=&tDF>2VOzmys`Bb5kwi?m`eRKz3K4EIkknMl zu!Hx|ZF+gHCj~7a4FjDFzV1@a)lYeQaxDyz=Kz@|9By`#hj*M)4R@$52j|GE1B-q( zdt2V*7s5%nLOf;6<`o03R^T;`Ig@JD<0$SEIS;z}>E^09+2}%E9JhgAUunAHQWr-u zeJOqgL7+a(!lh=4R~)}Cg)!V|4D%9(A|ht!(BX%+CnA)f+V=Lmw2x~70ErF5v?FOfQ zy#9wMvjGWq-y=s5a|`g(^C2cN3ty4*kARu5u$8>!){+-ro95wGN^4lq97;M$@TvX9 zsI$!2uy#eUudBbS$7g~o5Z$-}N%b?I>H}Y$6--Z9S+sV~hv89zW;Y0w@M1kG7M(&5 zd6_)YB5UOfAi|c0oh$_hV|IVtLvH0t#6915mAp{}ec3}$pu>GhiiaavQ?~K+sz)(3 zTNBj*{LHjQ;YJp=7Ynr@5;L*EUs(8|=2|@gE}6YVf~_4H{WE0Kc|`w`RpZBhWL0G+ zEV8ez%ge{W;EBI8r;waaNhW8iQMCKK&Ejz+qPg5K#BQyP-ab3KJWFhB)5ql+nJYa`V zd8a^jyu!)&(($&|iL2qv=F)hpCsLb)>`Pi_bfa8qpr*9xXETP!s&u!P3Wj!Y=Y-+PWQ$oe4rMzmNHq?F1eTdb;szJzU$9{LVUzB4tY(M&-1P^@!95?yC6$DITvrUzA8QG_<;5%oWNT8D$hR7 zMuvTzEydf?BUORR=k`fSbtH@TD@sWyNfrhpt#7sYa1&2a<|o)uX<%auL5AMtk7-h+ z4df{9EPsxfGVfC5%lB}Qt*h}qqN-c9XwJFI63W1s=1XwMKVsDO^;;%1^K_;76vdM2 z?DraIWOQrq`3JZNSHE~42)pXQo~U&~AVALA>NEK^M=+(B$&=LSqTqAm$+Y2_pXILH z^}Wl>>99v`){$faTcKROB=a^Fq`_zv`E_9pk*>XO2BJzbZ%JQ=5^1eg6IDv_ zt&hP{H6G8nyS{7Ph|atj1TiNo#PbmmSo;S5lst;2>MJnA#cx#JB9)m0Rv}au>10Xd&!nZjFwV+hLYf?_ zXT3?;T>IcpHr7!K7~qqPrm{{+^xM_p2~vbqm8gk4%#sLQenO{+;&bn8T4jm|ElW#G zUr!=89(3m*0CrkNGNl4zKBXs^XIN(vDm9>uh*ojaM>GbB@dhDRSbW#Gt2lbX>pMiv zP2BI7?#;4%9Yg#B1O4fyS2&-h(6S24hIOG&`y)>@=l($I`CDw*vGT~IG0l6u)fN#x zBA_o#lsdnGH=UZ$ZvabBY-NG(8W~?$=Qw6zk1PP7u0m!m%b`|uHxbb9uzr)f+VJZD zxoUkEa8=0L*sB+z;02?2;{B`@lHX_*v!3!W#+$NlPl#qGDT`@i150)0r|!uL_uHiy z-L0*{(xoMr`g!_`{yH{zTT~Ek0`L8_Hb&?x3bfM4Pg?ZnP8nd^oxn*O)9o^(pI(Fo zi90r!8czgZjA42dy?Pn@DPiCsoPTTuo|8j(nwIN_N zsnvAqA!$G@?xTfp z&wJ3ay^X2>jYY9!+r)9pD!6*O()BKU^cAc@7pQcDD>KtZ)e0P<8#WS~SeR^#_{h9P zt?m8j^`FaH*{E`cw|(Bg-AO&>bg(k$<$qnKnD|$=Mm`LZR%Ut)I#6Q_h#PD?!gY>G zu~=Sfg3@^^hy@qycAwp&9^Ads0B%;*r8Z~LMZ&+Q&cZiTHfG`XzzU^S8@yigm%VJx z33CHl1^!2-BL8W~CDg;bV186J{y(TLX4E!S)$ZuZbxz9OVDxmGE!y3xlv*DlvI`)RJA&8!tujT$+`p9H?&~90cC`p7+yFqED3?yJUIOPT_ScOL7`BBH+a zjs*RA7{o2F4yj%Yau@;zNX4m7-mJ_EcPjlNnfn$f*0(x!1Cl=VE!j%^65%KQB_Ut> zsEZ+*Mrnz)+YyA9iWzO&UYXqgg3bLdmwCU?bK8(hcs-YMlz)hp7E>Z zsl)CU@BId~2FIKG@HG{;*CXMyiX(ctXHjk<)zV>%d2suVeH=7+3xJbjeeB(%@NQpOjcUmXKEjLNkLoT&StvAINXD=7i81@(rkot!VUpn632z9;a!{oD-6Ka(15;bab1 zaBrJdrvaaZ5&{HGg8>VxqWmsi49yLxGK>8WGHgj_*3$^UoEd*oKnH}zyV{#U@O-_D zM&uiOdTs6pL1nvnNg*&=m9{dr7ZP2x{ZQy@pEYLY zxp#eAXLQQ*8?f~p+6GDWX*X3uwJ;fV)$AEIU&X?Q+_z+BHHsQmguI1(EUxv%k#=*M zg~LyEGf88N#lRSEzGf5K+hG6<8pU?Ks$GI4AZF@QQI>RR# zuR=W@LpUo+@{z;VYexq9qL*!yRa~|i`woQSZm1<3>Qzw~ zs1?DPoBRSVpQD8Av5aRy*XMbG`g`bA_#zMnyQRj4A2XXy>^`VbWG%EY2o_Yp;Lp-M z0*|rpiTcWxk*WWxEdFelE`rv5&UmA|`o!(f@;HZkWN#f|yh&i6gIHJVqI*bV4)5oK z4{^^i6=cx%Q7g4B)t7d#XJuZjHyFqmDsVhD3wY4~30OR`IPr{K;^LX@fIw2!=T)lY z{kiNuhbMHa$oTl6?%th=+QYk~HPkY%QI(JmL!SD)9`MDvP6mfOVSM;wD+&C?lGJ$# z#6Zty-UjBxZ90|bogybnSxm`efi@uNiN2G&r=dcYWTp`q^jMLDGBb!&mSgdw3gXkAtegun=OZ~N)6A`~m^ zR~k>l{UNV@xw1eYuyMMB2?lxL@F;)Q%$4BHg%Gh57vySP3FO6`6gXamI|# zjVS2j1Ln)wdjGD*A9sHhIR=JYbOHWLSb|dSUo|!}3V&fie*MweJ0&>ViPun}@YQbs z*H5SOf2>3iA-j;8KFvDS-0H6p$3WrvWJ&*cT9wFkC?JCEHqjlPTkarH_Y_%=`WDL= z{z7Z_!6cR1C~hm955Lg21oj*74{D|V82fx1PIYe8VHRbovz=%R!3h>5$z6(%)C1vl zH`W+X>|Jj18{nv7!P-W=sX@L@k@CKD@^T2vw8O%OSDXqtzasz7xnFsk-(CJy%@pz* zu;ax|H+Zau*2%H&m7sou*ZjfO^D-@&FIeeBpCjqN8xz*?|7-t$?f+eS@!vB{OCfcB z1)cr|eC6){j?`J&T~hmi2LkC!A9d7E@nd*=!@>^Xm!c5Fw+PFSriL-iVz~-Z~y5)H$cx2G__p%o^kvzpUPA#+} z`wCzX4;tne2c7 zY}N-|7N(fDGy6Q`xXk?G1DF_d>YTCRW4a69R_*&27aY~{5uU@TMI?f6%zdYa*p*Cd z62&Tc3Tqmp%Mw@A0@FfD2EpYv3YYm>gO55QlJcynkKl=0ONTTg6z;vQlt0NecvNEK^4 zi5z(fqI_7Dsg?cl=-#79?y)y66e|*(YVQ_6+`y3PSMKw-U6 zwBaI{EfLq7z{obkcQjU@+4dShuhi=)BEeH~S(l~1u=8MIy1iAx+awQl$Gbf6wfqfO zseMswqVUAur>4O>#YZHAp&KE94CyYAn13u^(y`=H&k{$I+wm;ZI%YwI+-R-{^Gfd- z?0K$9=i-kO`Q1?}mrfnlkQf1P6Zg4Z-5mJw`Y?ZB5cE}Tzk=Sn=80>DdI7m0G)251- ztvXJI(ZOrtd9U~S0?-L#YkL9*$~%mdr!uy}i-Zy~K?aVt%^fPe8 zO`d5AQ&B(34GG1;yvK-`YnQ8V_K~PhopbdDPcs>0liGUXF^Rc&jrB?BvqgizXFcM9 z-tG|9?lyiVj3Ex55ypaPIoI#x^4?n~6D}6eaLo7wS~zqX{TvHdClSFnr>@3R~R`4p|BJN!h z=H=!w<+mVSZ&18|vw4NvtHW%er zYNoo*A(_Ob+$10L$QOkP3JIK&ryTc8OiU*vWM?ZqvN5ojNo6efzc1mHA5%WfA33m=vbz;tE9ECPzWY2U@%8bNLn@ARHak3~=xm=$K z2ZxbC`vuc-+mY*|bl;msF9AXVfh?+%%L6F`-mMFX?{S~->SU&2aJk5j%JB?Dp(JgE z>0eUv=zH`!z5&||4S`{dFy<~RYR|o9*Ie;$Oo?qH2!yG%T3{@r+NSBRXdy`56P2XJ8(23c4>ui+-)1_KCBruqZt@SOc)nn7 zwPgZQ@env{y&57JbxtHoPmbyV(8c!*z1g@KFy+-M_}HGsdz+m`Ms0+M$hUmwndXlE z{=QaKpInj_1e0PZ#vTzLP2M%&29?w8S--mOkmmFo;E)Iuvvwp*5wnmzC34dM_d4T! zt6e|od)) zpMj4lM;gt!vk|+#(o{hRa(mM<_V|89B_rJTE=KB|5b*fk`-=`J#93q?x6fp9%?b}A zVg-;FXdqtWkoC6Zj^eQTXCYyrDo3a!jqN>yE7aEYoU?$P6Mp8g-f^D_NP0g8NB2V;G$J)Qoyw;y0kI z@#B{R!VgGAoE0gr2D|$q?Zi*w?_b*XbuF<)TJx0M>7?RKrV12s{!#3mcD@H}OPe{o z_l+6_#<0W;%wr~4>j6ZzdMqlx?h*%jzM>yfqpz)03vk)#hXfWUTNtHxjG1SNZzuex zODK#mfO~<9i+kC|)K0bHS(Xe?FlcSgO^MDq@Q-4a>{58n_A82AuC@99NHi3C5&D05 z@Shs|D}w#FY2|bW1{PY6ErMo9H4~>=5SE9D>B)RV<+T32Vs2-z^_wLgVQ$-Ji$TLn z&%?#eB8o^dW>wLBE$o>9S4x_Pj;1P(RnAA18^EJ10^*HW&f3{ZY6Nj2CA8iV?$qV| zt)4vpx_&qY%_dIIqjV|MuK~O%-)9Qyn}^op_63gbDTXSHi{UU$&k`ZL#sZql9H1gE zwotGs>UL-b8{A-zixMMZRvDE;F>otvZnjvu4E8z#mnH`KQEc6I0A6sP7l`aWkZ4Gp zC3C9{F1z%E{xV8K5kNz3J@f40&Fv_jo3kAQVmNi`?OTe&!6m@4$ySTpf!`oCE$w#Q zAK^pnL?N094_Rl5!n1H7$#|2s7DW?7^(onZ_HlsR(qhN*w{;b!!~@OtC=~#E%i9`5 zdNe?RXPgbROFiFbihCx%eR@}tQ=(Mm2V=oO5p_er`ViFJSe3AeIq7E{#A!VY>+(*k z0MRJT5!LSOZ)@*M29pVaCls(;k=?y5C#%Lh`yb7HXH=8jwk{Z?_a>1dkkE@r?^2{o z?^Sva5FkWA6cCUuy%!OX-h_k%5J7s!&;tRag(9E`D5!i__ulvH&oRz9cibPh{Cnq* zRmOVPn)8`+%{3oB&h$36t<$Rcp2>}qs~N)tw=Q(tsOXT_a^HAbKXkp%Jgcj+oKmlD*K%+NV+eC~v9UVSipM zQxyCm@cB8)f{>YpxHS?A28{}~)FtcW;*~7fsAc8wrMhFv zJgo)q&cpQzA@i*)U>Sy5?q=CBwjyfO5%m6aaNQgE&s{&n8)6ZtG+Ma4KkoR4dQ*dG z#*`&8?nuZ-M@K%%aOa-0=zFArX(*P34S=GSNS^*mFS;kaTCmf5oFx)^T+>`whxb8cp zzncHG78zDAW0QhQL$`%GJ*Ed{m--RIMFUCYZe_dgUrNob#f!K`F)pq^zC(qH6<@6u z!ABGf5vH$O<{$Kj+_;hRMNs9-MM@qKrzo3$yk-Xk-dz@DLpsWL3>ntP?0<0XdaiBR6Bj1qNqgARvCr3ZX(Z~1qdZ$Sf{e~U2 zl}@CePE{I)I@Kf`9hS|MST({}!&?GgbDC@1IU-`FLis8Y(=_ljCUeAXBg-H^>#=TK z^IV)Uk9XuO$4!e|9KXMyd<=6wHlO*(PJeQV#Vuzu=vEubZt~5et3Sf>yEI&s2D;t} zg`;fwu&0z@Ck2+y$rj96MGhB?bKp00aE#km_k5=%B9gI@zaL06zLiB zLLHosM{`;1qX9$7ZXIk_Q0aZVWf^px>b3ec)uQR@Qi1Z7vqZB zYr~Vsoz?S8j^TLPE)ISD{LCTv*bm}^;FRLIUOvH2P11`nXry-!rs>v)tuX6&k=@CqS7|VprTr>{kbf&=NBQo6?^)i7dbwi`aM4arGe;LeMdpALHaiE}WpRe;y z{NY%2E`C=RFAKy2>+PM#EDDs&A#Laf-wjBkp9;H-y0N%DYPSnsPB$5=e1I&I>R8$l zfbkz&dPc7hww$5>MU)14`O#_B$dz z9#U1FwVhP+WC)nY_x28x%qHR?Z9=GzZF%$86SZB@5@H}hHf3s6JWtkVqi>H4y18f8 z3;I4zKq^?QW8!;1?Gm!;To{l6dk+SbktB%8SVh%Wh{K;X9SPtTf=LGrLRA8M6M-wB zC`iw%Zh5TyRXGgi-khd4nkjUz>l9bS(RW~NIbTq3SHS^^H|7Doqi=fXylNSv!yU>cagrAGG$=W>ID8rboU!3eck%VBHyI@r z1sWETnp?9J-3CSL$lkKi*E4T#LF8Y}xo2pOrkp3d6J(eg4~I@F%=q~(n|(S(zPA0D zp;IoKoOT~lR5SWHE#Tp?l|_eN9ps$dW~cA)MgtgQzpTaWXA!`po5N)=XY?kFA(6;? z_w`=81Y$e3vf{2+{Cy0kdCvV7pd*RUpt|c$Q?aGtjd#Oq%M@LQw4rrfMINj{B{4S# zKOLoqzQPUqfs9@bfJW2Q-sXKYgZEGphnc}|O3jvHeRF!or0e{ltbTS`hC(7mpCg-w z9!#bpsdx6~+CDt=o%mVZK|;(RcuWHPj-FD{7mu*P+-Oa{pSqBLLf-7CVs~^fdb$;s zxK+`PN-~@A1-}Md@#cy*Ov4;UM+DXZC^{4%jRcTsXb-aNY-?``XGVNiPFKn;!jxI0 z$2jR8f)5o8!GJ@(fPFvfZy6MA>7W9PUOcme1kY%mSu14lLlK8KAwf};&5f{UOE4i; zll&Vzy@89%2zc=EFR1Na_T;=U>J_5QwJp}kL(O(9H(X{^yN3i&^m*ERjmZ;kvz0@q zs?bZHe-BdzG#XZ6JLeoMb<;0xp-a2>CV;6%@y zc8)2Dj_=Kn3DG-Jw;)M3ovABIx4dI+!nWsTEpLQ9g36q`EX!Z3H2+GI9q@P$09ppt z=eIRH))VrPMi#}-PZ9Gz^%!aHKKCzb=4xqAb}67`f0Vfw=-r|!oRd=BUon_G>Sm+` zrhY-UXJWS>!W^VUHMiYGKX%o?lWktOOSaQ0xg6ffuDe4Pya^7(DZN`IwlA{^Amt1B z@HNbZeZRZYqxy*#VlvkscAlGHI-wc!ZrLggYyfIYNVw1pNtlPHOejSR_M&J*3PQM+`giJ)5f)XUSak$k<1PFh-m zI~l*-OW={7K9BgJoXJqVs>j&eu)UN6&JICN$491x0v8QvWXr3A>8JYXar-8V#SF$# zAF%GBH>s*w=*gD3_+&p)85C^S?G;2^R&?us(QK&!aK6=Fxr*=>;&(HoJus2 zbb}(_&MuT(@y$!6;)Ng=cv#K@nl+qvSke4j)D6p&>tnKl4oey0))Cr*Jx{u3iR1T! z?VXn$Fq^Z!Uw@XU^-?4=AQJJrP#g2u54IMq?;kyjEn5y!o)tkdcvQdr7YE-~7>&Gg(A%K*pkeF|rt%SM4h7Pg z!}+ts%z%_Ebd$gAh~ufkfFgl5ZjA$BW3N1D+tyWp!8Mk%=oCnamTH2y(fSHn-+2a$ zL)nvtLM|((uso#dEP3Oan?F}Rf)s-Xy!Ns8ZaQoQdn~r@a%4zK5 zzSqadziKEPdFb?XW?7QNr8?IP`P{Ixi*kzn#S=;Xizwp^G3cbA1^TY5&Sva3t}VvS zgD5qW6Iyh3Xm^-hH1Y|n2lWEOY1~8|`PFkBSLhb_q>7p1Dya)YA)$U>*7SJl-)+bi z`f$Q7NbG$3pu0gU)9ua5DeSIc_4+kBE?WkjgvwAuT!xr7$?P=+m+2xl>$c9g^GVh^ z_!{LfJ1dc!_OPtt0??&$MQ4LVM%QBV(6sIOIf-(xNS9#S05ThENs&s*25)#ywaof} z*w)5&S*l??hZJr>{FDjX_)5*D&b{5z4jvQa1Rq``sw{nw5^^s zpBtPm`4@V8{sJ(&P^9IY@vN<7#-qIpLT;At8e1+t4wM)peA8N*=gOAqqh%@+)-dqn zJO`fSzinL+9j5?Ix-!^VV)p3aRM57c_aW!xH%9b4L5w-8e{Dn7kEF`um4=JIj z@6>0WF0V9wCYvCB)G7XM%6XIAsUMs|eJfCI+?u4dj497NP1w!{1-{-CZZCLT1rKtQ z*asLQPk8uOorh_U7Q^DE?1B!|=IrDbPetGCS5}@{X5t1|9Oq|3Z=+xe=BV>N@^MV? z_6+Rc+aaWT%Juxy>ssDfad(ye5L_hsct$E6R-PGN^Pn=RaP81GBpM1_0sS0yu4-KI zCt(W+Qd^;32EFnm;)p}(vD(JN_#H&#H@_Rm`8k}sr=%IgC=Yz0p(MMrel27Z!NK9> z3-fA>jY(T(rNs>SSLu<86SL9w=LV2nL~a>(l9bK*6wEcoRuwMyT&bjkoRd%~)K6h(W$nbwtJ}hJ|B?x#KpaZtZ@hrhy#a4&xgA@|(Hr3NH#>Wt`t+SY)M0p}#DJ$^1pAxA%DTAQfmU2BJy`LeZ2P^5K2!>STS zcqs&{q9`hkqn0nSXiD;x()*qwtt4v5Yd3z=IVOf!Ts}3Xgz&Jy-zR#mu*xXLJGzf* zC-46HUj)=L*9Rj4y-QkZraX`o+8lZ{TEjcy?}vr~k4ZV{p@Y!bPeKG<(wCJ3byMZ9 zRXMVT)5hrf#ffk6Pkp9j<9IVUj!cZYV@nDaxt`1k6QTE5yokUfcL+^c_r^< zEJ8lKe(hHOb)l?gO!&e_u+f4JEz{rL&{$2&$o`$A$M_upP)l_b9&(d zx4TqXGWDfLpyzo_*Q~Wmg#-pK5|()lNI9W;;~p=ZYizvl*!M~f*E0iM6QbBMVxFdk zL9I&YZpd)&U!C5PlU}UhJ0=aR@B6tU{DjcDBORRj4UG>bP@xk=mub6Aj@@#=Ss#ao{$#P(7?$kFX?cX8C?s<^!C3m&q?U z{oClV8=K4g%jk*WmGqxy>NJbE$EEq+A?jg{8b zZ?UkSya1(H8(3FMUlEWFt1^;#Mza4hc1Jn{*^$!laUo!N6dZ1?SQAOI4Jm6W`9X(i zv=mrBAfEAq)rGPKuX(2IJUJeIFQo8TSRWQl`i}~te~*_oh1AOb4ci^i`^3{EdOSCt zjgVf(oGpaP4?E@rK9ysLFy8cwRSCh(2=_`oIyQ%sYRAl zK6Rl5u+!YM5zntTTebMZkw~j0C;i?E<21AhvHWLKFDm8N!HbQzn~2mXRvkNFxYsZ< zo;b{+L(JLnec&#W$+pN*i-&Njg0p@Smj#y<+b7jQXvxavo4~7EJ{7rY1$xUhTeHHe zdg;RTqjp4`v5L1%l#K*;%E@o1`0jXtbvWJy$CKrouP`a7Op*;6D79j9#+j?`oeZ(Q z>`H6^L5vJ2*gOCWk=`~Nk`ZcDwx*wcPz5hA*m@oFyaSR6$(}5TN_-uB&;;Ub+Ha@5 z9si?2_sU1X>6%pI2$oAYw(#MF_NofmNzvKfefgVpP;aTBc;UYYJU!p#aQ)~O?|st2 zN}`OqG)McD#qCpgJknD>76~v25Dz^Z2&4$-JO6YGf|4&iPe^G{oN2Rl{Ls~17_xpm z7&I7e(TxzdIVb>sk)EZ$A6X(kplr^8X92ts+GV#9wOQH2rj~=xC&8TvQ-I94SiP$3 z6s7nZ%}^7G`8HQoZbskrXlgQ&FHAf0*w#DUK0_{?jFX`~ud=6=s1qk`UEQ18-ErR4_4QWS zM9_?|Px4zcv8Q~-KDSDz=q^x#0hY4srw4Wh2t}iZ&ur5D@lTDd8d8b`Bsg;n3sYWf z-2X%>*K>McqTFaZkn@fVE8~N2FSya|9vJoD%F4yNMv&AOU)6AWuk8*kr-zYlJZzE^N=we!BBz_V*72+gcisXD9%pgW0FLe);M z=?C0~h#aqdyn>}Jw9h)MH(n$*(~A+g5~j&AVi#0{(Ypc=Hn_N5<6i{g8s?8W>0&3v zB%)?d*)TS^-jK#mBPh*7RyMjg(`dOzkScgUOmZ;1a7d z-e$@0LR6Q^7`#J7uBj2TQV~N^2)!$Nx{TuAON*!>I}B=T>xjF=2o?VF2kOwQM6MAu zQbabzZ7q|#?%cqxXB?*Vw^A2J*iyrsQ4<29r#K;@^EoFngO zDNZN&J85~^l{1M94{y0Q_XjN@X7`>vI`pdTgOHB|9KGcA{3>+qv48iPglnqYMr>U( zyYS^)8@$1VdheLFaW`8VTLqLGq$VVa${gNIxBQUJ7cFNRvS8E~m@TXP;zT(P72jxe zK!!YWsb$@p-%7lM&%`x*U4k*gXk;V*)wax|p+9 zb5}*=5j^C}v=@D*xS-6`p0lBuVM<1MIM!@jNfu8rIl5$?sY6MIt;e`6mNeoMNtVJa))5|j~V3aQvnM~7A zlq>wdR1*h-yUWA(xL&0ifo6@61s+?H5c@0+%~iP}C4n{sbwc5MNPrb~2tpLjo$M&8 z^L2zTBWPt--3&=3pYi>LVoFRaVWe*Lb|fDV0Bj7~hiE*~kj|uRZC-^DL5A|)t!tGU zO0b39?E9|bX>&e$xgVZAa~FfF3K1K3HO#v9So5y3nM*92F}sx#jaGqY!-lvX_h4kC zbv%LVdSJwaxDd*tWP@c*+_u@;k_f`1PSZpbT>qTqUF$aod}u)J`%cEd3Vs-Pi#C8* z-*Kg%8#RwmP#8;dL?OhoP|nHZgJe!c%BuTI<<-IRg~jez);wkEh_j2tx0k-mxogTgZIa(uY&08eK!3IDGypNf;pA*X}R$v{Nbkys`E7 zg|6#AFLZ4xdUyY`bm9N~G`v{VeZtE`8-79pz>9K%kjnp@&ZusYxcYCeMHn`D7C_?tJA9Pf{#k=4<1jzQu(`H>iI4Nqi&QNo zEsoP&f6fB^wD$ZgYM@z`qYj&l+CxPTso|-xHORv=){Dc_nTUW4J$#!AZCwjInmpAi zl5~Xen99D8kRCVrX<4hPzel&9vh6iN|E&$DcD|Yk_O9My(aL)3JrlKDWoSm=Js+yh z@rgFqPl*P^UXEzwyd>U7A(!++W*AiyaQC6pN%JY_Q+>nZ%NfJZ%+H|VFse3AJAn)j zQnVlnsAwVAk%G_JJE}muZ-Pm?qf<5G#p?xYf6b&$zC;z+gD+55sIZT(%g|;S+4rvX z4l!6rV%t6T=-=0@!rLK!Bge@b)9qkoK5T){xqwbVpRP9V#A)9~Ky-x) zv+||FgUMUP)atn`t_LArvz(}c5bVC})Eh6lI-^II8bxop>ZD9WLo*2Wjx++L;jfWz z{N6%}5xj5nMIra=jYS53R=Ee1UlV6#%beY*eb~4m-8s9_*Ua=MUi9Rw_q5S{WB>dXo!+a9Tzzu%Y+$k;i`wQG$yEnU=PuML z&HJm!d9PE*A?uRx)b^Uv%;2K|%B5eMz{0oo(;c;0h}ALQOisA%ffqizypytu=SfI? zr?!JU9Isda>OjU(@FXO+=*Og*v1WZv(_v4QKb>&h71s)cS&8`Vbk3O7E|1T&#bmsd zwI%~cLMI=BQ|HDS&fZkTO4eC5I>>=qJXSBW(ynK#T-TIghJlVaNGkbWV9>i`;!1rg z0Dlb&IW=NxXxt##`X?GDWfD8e1(_GCE34k3Gs8!$25q@sclkqBt)iwGqAtk$qRuGn zl?TtUM<+g=ts(WV?@zMS4i8_WSK+LUid6cdzlX}{#~4q z-^_9~-yyTm{6bBV3xt$+vIQFtNx=a~p~)su7>}(#Vl5)y58|-HS8%aTA%y1AoKrZj zQK9|3@YLc+f4{rt3D4Oux~*WAdq^TaN{Hh)QT%7LN=!{%k;JyMl42Nk}L2%paDSa0iKX<4^S^BOTX$Mvgq zpYycccIi+9_S!KUTuj+LmK4#1o8G=?o>2)#N;@UXOF@&zd7?A&aZqu&*CdIbr%heL?#E!}g#ZUo7fly9 z#q=yRa}QY9T0kE%l;atvhW&P=l<~hFGniYSw(K| z2j5AZIo zS%LVs=bZEvY#t?TSb(mNXTxn#n4RtsWDZCR$X1)^**6@2qKjszXc2lvE+4HB;FC0i z-CtD_-CbMN7yb%o#$2>Y2yqK{Dmz4`Bz+;woYa}HjK?`FfnPsZ6HjQM4)eV!hz~_FdnU`gB4b6L-+qqmZGA%+pshD#a6LX!Wr3 zPAhrN0No!I^jaj#Y|ksj7kNXQ3g5gK+I?ppgdjL_>Y$1)}nMkLPDA^CyyDyhJmPKqu_$C!;|+xCYP8$M38zPY4Ns}Uxk)mg`@*&i z?cZeMpnPB~JiphUQ4cw3;pAUV8Iqe+8I+q8QpHCL5c%zb-8{&(S4L4IfEobk3sav6 zW{3)ZZcqk=y4Shie-)CJaDNd-X`nTh+!!D+?T&=yl|5kg3Yq{7723v6UyLVC^&)@Uzi`p#td9Q%JnbQbP-)#r3!+P-$Dt)`fK z@Q6W+(vl@UyM-HkCou$I7pnSK&6JVf#KD|Pi~kqis@i65&B-WGPm!_KO*L$?GNVSpx|c;-Ek z{DsMM>uiOzJDHb>rA$L924B7#`%_`p_ceQ#E_|X`rY4H~aD!K_NW zr^?SGg`U}~-TTbQfW2s7n*B-}_t4R7w2qgTsny$iN!KW@7X7ec{G6(bdh#v^Whz{!PzbK2Y)&exbQcwBZ#xXNfnZD*oCo zsql-_;re(#(Z;joX>0;AZqhXY63xp)nYf(Sj2m$##wZ_$O(5p;O|{Vlo-qp|0qwqY zaPfPMDzd-}ZT7njH-0-gFkZlU%iUsLT%ls4G+qujBX_vKG5c*h&g9CpJj=PE?J44! z(J!BH+*7{taIg*Hk+W~b(|Ut{L65wB6(9&w6d)-N8Zbt5biAJR_v40sy@MpW@=y0ep!T*?iqiw)ip^8?C(OJc>|R$or9 zlOid8yMUj7SBzXd_M#c!LQ^vLwtVHmKpm^l*nFq8FlI~QWsRn=I$;}4?kkDRy*XW#oa@cA-A1`V&Cj|48*WSr6fMy<;ddmlT zhd_M58ABB5JEWgvnqYDyPuEzK&%zQ3{N6{3iOEw2S2-v06OxitzlaQr($gT|B@T)z zASG!KVI=tF0r9^8{7w-CT+0MtauNx|e#bTMQ{n-VsNWxi)8uyUzgmka@%KzZCw?`_ z15Of0c&Gl2!2GAt-wDhK9{eta^oNII^~r1gAAFR|Az$ud&HVn!N4aHQ`VTt6e==o7 z-k$qIGnqVb@%lI2m99NV|0b^XiH8lu$1CqSS6EyU`@KV!4IEp31BSp8ihc&lM_ zHTZ8XD*iu&Yd@LPzq9K8MexF{^yjw+pUVF(yr4KWr}^9Tp8qk`_y7H{_J7xyLQB|D zUK)RfiyksKr$Wyz>%!;y2?^~Pj!88vtn98=acEQ+nH}|NHvEtA$%ul|H>Wa6Ov!pat*%Yq#YS!K+QOoo)Z`qc<1@%ewfsD!~0;tGAC9Hrjv8cF%{ zOf;xuhECul*~>MZnfjxf8}sk5z(R$JR3-~K&Z0DlNs?`?|9V#RI9QxVfRPf@>Hkef6kZj3NP3ASE1P8nO6E8w zHO-)Cm9t8FJ_Fk+q)2Ra$B1%30(|RCp{2n8zwU+V`8|wth7M@P7o($2;ufVEu=bE4 zHE3q?&}-;Tf)vG20!T-yA5{od1*8Zu zbdd7#1yHI=7X(4Nbd=CRM0yjD4w0tPq=Nz)N(S$`Gk4~G_pZ4!v)1ghov5n#~Q*3$++AOHZJUjSsC(|RVrwnbyxwr$(CZQFJ_PC9n}*iOgp*tTuk zr_a9I-+qC*t(vpe8sm&KA6iL8Nr-xsxHhBC$;I^n z)==aY_TNj)HKve3MoK?1F>z0nifV#1l|g!fD3BajSy{Q?$_VezA3P~w2jIgWE~y(J z37LG*Q}9qQU=|6a3}mr$u-EAsX@qy#e|Z848%sn1xTLtSlzT^M0_b;epAidGMh+eb zw;?>YAtX`kp&W?jB6WuRWkHAm-Dv%wo(yqZC5OgBqQ0>;FVp?;o>9Q-ogo^>;!FMbc zbFaT37vK9`@@ot%Sdj1!!O!oQyPOy}5Ma^#-Zmk#mq2@?u-~wH1x6~I!Rx;NZm$6< zZ8j9ws`c`)VtG$({4UAzwJ>u5{nd}~XUxVxc)HI(@n=G#zylH>CZ^LaFCz&dbS{$U z<8YN9!=oN4NpQ;e)RMRfzQh4%zad04w64mv1Rxq7>ozH+>u7)_MJ5wK6s;(&MhFLnV*+{d{Krw-c3Bx+ zd!2ANOM)cDhJ@zL>6*mk)XDZsLzzt0-S28~NqClV_XnHhH%CNU&!SH)-TULZ0|S@@ zaVAkvjLX-|{aDn~rB6+5Kiuo~EUN~fpWI0}Bdy}^T-*?|>N%%fSizgg&SVu^Wfs1E z2_e!woJs0uRH1t6J$XWnig2)kg=>n5*Cz6m5rd0H&WL6#2ijZhKq`h_GL|rSJ41MqNVSl=E+##NqBe(bdCxRH{& zHq>I>ElbTZzTKS|9-};x?kEZ=TpQ}*g6*h0sl8s6pZf$?idB-94&=2cey-3y-UFhu zciYxeORz|>W*F8#w1adrKrt8|) zaLY5^W{hsiAe2lSb7LfWFX*L^%`N8lRAm$UYZfkP_*wWfyb`Y-p)t)u|qM+$3D~^@1#W-mrb@l>AJ7>>f@iFsQC7((hVmWmk9oI z#WH?*?eWtpPaOs##!G{SZn!=|bsd}gAu=(jdc38G9{R<(x0CTkCyzxSPRDwNaKyib zW|_KklF0lFxY_peObSFKc~Lq@HMWw`2gIpsF*;mzuPv&7(l`P<>`}hN^IeXZ3RA>h z%h547Ioz6i^dD6jL0A^4x|f2+v+V6I>_OJ=6t{YRORCy{5lSWl72J2kBlffQKB5;2En71$V+FU#{QAPn=}zk=X#ikJ}r=B`K08*2P@-5@*fK`9+0=+t#k1&<9 zKhh^%XtqDXN*kw@60HBF{sea;flF!5+r$wbafP%qny0*r; z%MD;v5}I4~cP*KY*jAcR0G9{(J1QnTm^Q7~zrwz4{X%#==EyYHN}@m%>rA-d9->pP zwOsA;2pOOcd2s6Ir&aDXY&Fz>(ck!I^ropW?M=R`H&qEnQzuisR;b%S;2gA36_4pI zr#5-shoJxP;F7}7uP%i27yB=m`@V~8_WZ<)O@UnB?sh}IDOG}q1yL;eIbraeXqvO3 zCd6bTwryE!#<0dLcLuZd)Sz$x!i};eRBClX%1KS6>sgYlfPG$=Sa%&Bya`nn5OLCS3Oi?dVpdKzX4|&MV zC8ongu(XI-RoW5&H`U5Nbtda7WHDmAR*D7xH~O`2ONMu5>w7biDh@<)deG8D`WFx$ zGY-vBr!Y0`m~F8fIrb&_9{u!r@jmLF*$!Z-{?L%ZQ&4`qg{A719p$RaTuT|<&2u3; z8vKy(Bj7RB$@KDR7q4X?lQZsssnO`|p(OzYM;7k{Z-O`m{i~_c#sx8fGf(SFOg0IV z_GIgoLL5Yd#Q%75sQx?nxhT8?FFbc*btd4#Ih(E=wfslHK!Oz`q!zbf4hl8a*nClW zqM_)9{g)h>X+l$`qh}n^-#z}RJzIWDLHd>SbVM2gn^iW+!1>$a3ejIc8^p^0@+!u1 z31_55vfXq_xCXk8{s*c=_NdNEz(Iuefl2Y#Yy^123cpN?<48;Ws_w`sS#^Ip$JWucgCjfrmV*Z)WFr~Q z$ZIT4rX(hLOF7P9sb3|FfVeeX@LvvKnx#G>*5nC9Ep2%!N% znet=|#2KPliOIgQLpN zWVumQk?-JK`>*(U{Uq@=1{7d%IjSx6IG=n;L1-GLalqfucuG~)d5|LJ*{$^pE0&ke z_k2SM_Mb4~5vJ}&Zm6cqLYc*hW1?{0cA`G&nZv?ePod@eXGhZEI{<{7v>7ver4xRN zmQasS*&{!rdJ$b_a5O1}nL-z=-% zVpV4}x}$h;Q5bs=@6H`hksu`tz4MsMAH*htMhz)Cxb(+R+`7@WmVbY9Mcvtw8eIJj z<>Yg;NuUhZKMjr`r2De-kMMcAjBpLtJ<0o{l8n-SLx1HrO-uI_Q=4++8}#4kuWiEi0$znRIGT^wPB zR-p}gZzBHhvl2IV(LHDDEUyKV27yD~j?o2jc-}2Jh;XBbc+;fIrdvC@Y^~QXVY>DP!SmY ztFotm3+I4jX)*$1VSCI|?4Q%m>}qjaqN8g!I(DPXrSKP}z%0WmNEf(~ic-cSlElb( zJGZn7QpGkHHV&6@kT=qrk35D(m?%^p#bpDB^g5Q0A@?K?C~c+c4G%4dMCACGD|-?MZYkq)Xay+JK~5B-Nk-MLW_$wF+|pgn@KHt!@@;QA=0T2sc|Sm#`4W`Ji)g60Jh zgUm!@eOp{bAqF74;%8lN?y_)RB)YUKgB zHh1$yTCm|5%-cH?H}E&&)PFHC2qqB%$2;I(GbH9IcrQx_IYZ3@%A(CTxW{zjGL*vsdUzfGnvi84>o8l=URGH z7A}5Yb&rQ2iCGDwg`BMmGSQPy%XsX!rV()K!m7~LK@hO@h((azaJA+N=S2jE zY;DHm?_ zrbzQ3b*7WA#qqM`YV}%z1)Eon;X#RPoX71 zx_|fjx-D=K1w45aows23qrVc~Tr?;iMeI28B11`E8N7DYTn>+NYkxuxt;IzG47drI zYxsh#lj^(OI3WXS6#_B2|FI$mrV&e6c=%vVR9fpiLKj1Ea`|k2I{lnWh!rI7``BmU zpaXT#&)cNOBh=X-ZQaX^nE2K<5e1G0ZDG+>hP7-#06ebAsf%a7kcbF?^?A%Za0ZwTtn@0~DR@S9qppE9@b z{btv%wPzMF)I?`V%Ie1*W37_=E(pA{VFLB+S`Zc=4dkZT?Is=)RgYO_j!AY!zwEI- zg70)D=9%dZOUq^Z(Wr%z&n|VtgRC&P9BFVGWI%XX6O8=aEd1TOZ*m%Fyk6PPzK(Isd z*2%O9^&W3CN)GZuIb>xivHRB1EJ@bvb}IC%puQBL-(z`xGwQx2!9_A~GFWA5Ksv+Z zF1^Sxkk|ahj}%4h)?3zE2Lfr8cPBoAG|oZf;ae_lRTn0Z{_Juv~s-pR>kJ{b@wbGzZ>=QMn(HgTV(wN+SPYcd^be&`KTNBWcIE!IDz~vEVA@yCMkx|Kl#c<@ z#MK!jWWd;lK0RR8gOi5uKf?nx__Y0?g3evBRpK?0turg&sEfc;Jlaz*r;dbL z5%#rOV=zB)qMY?wv{@oIX?UYr6tD;QB17(U%|yLE6BbPBYsL-d9k#;tAR>O_yidKE zQq^lz;uPTbS)SKWg6537ZzYF8bt#&3(#=_~^k(^-2(?3_(I`HTi@_SbQJS#xaa7`C z=BvP`>d50&<$Z#`T=sdSa(q-o8vjUi~p1=uVT;lzmKutLBFU$szS=^ zl{(o9veoCgon_f(dM;8OMlRy4c8tK-en8!gKbq#UU=pTWFn@ck+MUq_m^}qwwE!C5 z=NKi|J(t~EpC;p+RN_;c3)YC+|~V!SP&g=3y)!w zH_Un)`SXG{bek!&_VKp=T;r$K7WKVmM0~b|=af5=6kvjOByeOK)on<=hm@fOutR%dRtsy`UC_nRjz;3tT#V*YVuF>*8;sVq7g>} zL4g6~3qszu0gVDo}uI@LEgk3s|Xk(E_v=ap2Il;@c5>gSoA zm{pV;qUv4mg2BPTt+j`W#ooxh!NA^rJW!D+C@2s(5Z00@%|0L19zTC(t{UKp`hcQ9 zNJohvfTDoHMTAY81iTUy{`Vr%pP!5yxG0pJ3G2MxWIg8pyS*BiWm(WRFu9w zoT0AJUgK`}egh8|PgP%HZ+3rzkHgQ^-{SA~{{lr#R$X9ia(#$gYJQ3{%+}rD?W8QT zJi$!YTUPALCNe?SvH(8i*LPCCcA#P32&q35jekmDfp`BM*~MoDvWxBH zK9GhU_T(9T3420RTPsxxyTp0{5}g|Efjq?JSu+>ptbxAh7Gjo>u2Pm%tkQPzK%$t? zH0js*_$O&BiYQ!x?@vrY&t5X?>%oU}+oN)uxGMKw@vd8}RzIeg|tS?bq4dsYN}O`jm1AteL1Xscu-u zQ3=C~oy-~L>=I4BV3#2DT!qQLgb}CR?6=-5J3~BE>i_JU1h%AWg2-^O2$x1{S=pRc z$1HTM{IGux>|J+R%!^LFLsk$zzRvqN-2>cooCg)wRtpO{3Sn@#LOZ0 zgX^WPdc-)I7^>9bALQS+AndD{ zlWa$ljhHKB37pJ{JWAZS$}!us`xdsBlp|}#>0K&|yTi~s=!V>vhW@7LgkWgY`0E*K z>#LA?50aOwPC`nzTmsOpKznBWyf6%qv{)cJqHU9fKTCX+ZFZMWaZ(y}cu5kBDVCr(^sva=R4s-5=o;+4qN1ks%s_nr}F{jtprnR=&9u+ zsTITr@M=G&SyFjwX&!lSu1Z^d58kbcm3+j0xa8uQ#e&Y5ZfljYr0K8!g7?v3=Ak&_ z7gi}t#j)~Y@~xFwtBFG}u7q^ArgTKH z0gl6=_|e_9A8en>-@_*=0110uE~mbD4XpmPhha*(XW1ayXM?e>0h zc})BDspismhY^@WqcEMj8I_>*(T*LxS(uS{4D=r{KnvFJ077NdV(~rQ`_h{eN|ELw zt9U`nd8Wf&di_{u)ft7KDG#d({fejN>zyFIOq6tG_w^cg%IpDsVE2JH5Do`f=51b$D!{^`E9ZCFb*Yt zj{?c0Ov_o>aSB$_QjQTe%LYad8*247fX!Hb;& z!3#BjSAsmNvSXft<=$N*1 z=vsAOc>kEFJLirOXTkgr4?6nUR~iIlM*{%z1Jh8gwgZsYL@*tcK!`&K+%;e^CfO$f zmI@N;u}B|tQA=%M6$+_8rCyTf>jSoZRl%_DJ)8TWKifr=L&mfCvw|mlSo)i_;!MFt z4*%II;PM5<0jtp@LgsI+&d1srA2!U*MltswBv*(5pKTD7{D=#XW(X4f?`CA<$6x+xk;NreT2$O5c5|=-uE|)-NbQQFRPd?8gHuo{hpsDv zXmm?m3(xdM4&Is<4oW&Hsza94kk_2vmI14zK~#eSYvC9CN{h>6L;=wMC{st2L+nm) zzk>6F7I377GDlWK@bMMg);7R|k?3RtoMjA^Ce#ETb)npxOz>6g3cG9Y0 z5yjKG`)rPIn~_|t5mQVmQXM{t*R=={kf9YccGjUi$iY^T+N<5MAZrBexeK6~*3Uiu zkZu8D;mnnlMkMBrt1!DV9htCm#V9w1$KF5mR_Ow#iDEDX#z!%z;eWBs0hK9=@(c%4 zEujj;i^+MdV>IO|0~X&JfGokb%FecH+D#kp!+k#bz<84cQIPU$vctzouy8WKlAUM_dd; z+5%Y7rn1XjaXdRw+n)vX@7zU4#uSsLwd(TyxoJ~htQ*&ygRTT<)Xr5QcyU%U7Z-b;5Ca=YM~+0D z2BL|TO{+CT4f~H{jZoQek9C4hJ&2#a>MJf@i}KX}fISyKwG|#$rM~2t?sEI?PNh7~ z*bX@BjxWosuj)qFER$rqIx7>r4>MhKkR6{A`mR}>QVwRQew5q0ldw+IqTD;;BWP2O zNg5%m8gHmhK|uB0ZTMwN&9Ba9zlE)AoX3D5x8D)~XQOGPL;xmOdD*q89n|xIe<#ze=hWExCkCf-(-=C6{h7 z&P8(Lj!52o-<>#Bie$zILzGZ&f>VJ=F$>9vETYzMOZvi-R*4i^+5j^GI<4LTk|Q)b9qT@ z@q8N-bo0FXZ%U1`sg%w$Se49)ttDAHrC4dP%oOLGqOQLE^*-ApngLn1t zf}B!rb{DnIYe`j6{oi4XP^^h*%sDwI>y;1#4t4KF-1gg>zL_?qKAE_y)vC;xZES{d zo#jUZ%n_%IsxB}Xd^|#^(|!HUZ0+zlKiUZ^585!TcZLGpIw);4Wypp2A4gXZT8ZU* z`^{yK77lO{%QJ@j;q-*zBeNVOM3^FN?F_6HdHTL`Ss}IRr(*ymC-C=W#Yjj`f{e29 zZKtF~%1b@&C4`QSbyELE3S2M@3?(NGC<(GZIF=u6$CQQK>VkddHJ37lxNwK8FpLsn zB{L_ehH^&-i2cdU9gSutk&w~+1`A*{={i5??S3K@L+Y~kcU*u2sz30Nz$!wHhshTcF=Y1m^=wBg%CBD`g+ns%@ zn-=z5XV1kaCJsJr$iX>XSjY#%Cn=3ytb+tK@##Fz`fge!6O4s1FrFA$gUn zFT7`q)sC#peKY3IK;Dcmi{GA%Vlj&KM~^3?;kH~60j?`qysJd}Vt9NPm15p@>y281 zEJl=EJbGK>S=O|GcR(e?Rhu=86m?aJN=~hyvpiRbLikmL052v^Lm5S3W>P-X-U{3)V*_zIfsg(7y3wjLM(ydTRGf}Jy* zkhAdpb_Kn1vIouVapN>r<9vvnIP}p)a$U1-P~h$9^aBs0z-Bbw^>mzd_sBy>Z6mo z8b^HTTS5#2^0XRcxt+3S#`379N0CxE;%OtFV?>+xY@wv~pYiZw2aD-)OYBAB_Ruv$ z?l=aO3|MU)FuN!Rgx@t~D_Aw2=&)DV*jO8mTnB-%Rw{Z%$|480AJ6ybOXhV-=ngH- zRb@(1Qdeh5o1*l}T{7QSK(+H79nvF{t9{Nh=^!6mtR=0RR~6~Ao_?T3W%6WKpypVf z2=yw3bL{An>K3sHV2QR#!6ia%?^kt|JFGWSjLFUFQM#qCABp(MSOr+9S?X5e+AQ=to6`~59a1I1>-C-i z{fb!V3@DAtl^2#V76UxxpNtX{zAF6vI(-u`0QG6xP1>CJjT@D`!qt=-^SI{|EbZFd z*1;fiF>^&Tm5;z$K~FCaJ7GgXr311k-_dB2#l9CqS+P*Bdqi4A^8?bY4_@0=neXpL zKQB_a3PMUAc&<3+7swd43TiMKzN(t&;{^ifb$eghnu{q5?7F1o-<2J>`1hFB&JutL~l-;udFLjwz@fb>}v_{cB3-U=0fpu@!Q*efwh6!kXOI( zElJIhkO!-7Gy$4Sx>+^65^|s64M$n=3^nEG#N$WiH#p)E343WBQpl|B5OwK*qhI)- z%)&?p5wV;iw>V981&o;HbdO3+DiwHN8|EH*48A5<-{1p_9S60X4fs57CV~22dDf(G zetU4NfWyx$_eaTKnthMb5PKy1KM`en$etdmlaIupY~YXQ{`?Nvl)03-4#iv@rCWyQ zOhO#BEJ#Uq z1ZMgIR5zB_=e(OdB=235Mmeu`zwz9Tm#%#h7rz2LA-ReVhsadBo_zHW+QM&4`o8W_ zmRD^*#FvvnBrsKbg2m?W)MMdW`%$4&X+WJBQNRtFH$2kvywa_g-7c0N6F z+GG(m-!L{RhQ;0XkABxtt9_Ci1-AT5i{S;_jCg@?OPM1~`3v;GEdgqK!j&vb=F0y1 zt%&=}#ge@df{+!Gz`Ej{i_K%J<#hqgscEe}v?n@{VN>+P!`bC*WNyrATE1D#blvD% zFLG3AmnSF1@rWlA7xov#JuEv8%4EyaK4^iZrjB{AymG(&MvQUMW_=k}nYCkH7zxRN zD`Q1J58wS4*X5C;l7F)NYwC_`Ta#g^?1GcegY8yT*P+bgS8a2v(=WRs`6moOnc+yKTY>?~@F*?j zDqCu`MF6vOkA$YST&(QLH$P>7fFA6LS~yI?Ww8A_q&cnu*b?Z`dgwZ4@4&+HD7m?H zd~I?&o7`GUSi(82k7H)^P9b{$mm=!6{&ARu>EcJV)PKnIpO!w)+>;N9fcsdZB2v^;FgK9Q+FWcONCYv3w&FUb#%F zk$EDJFz(Wey9RV%Hie~H=VBz3H1VHTkOPO-%%p(AJNUBlI`hVj=<)8PeB-`@YVe_aWeBN9;E6GqVo_)F^{XuqqX1E$i&wwEMtVC?Vf@56QTcKPDP z({)zQ^bn!V()vX?8=;Eu2@GZfX;j%LL~)FxKA~6fy(-H}rE-BQi%2CAcD3sw-n0_w zqy<2IhDQ#H6~?I!7uTN-eur+E@3P-+UYQ?<4T9Jlaw!<#A%vDDrct5 z1FBO?9bjxlr}ssj5zl)t@xbWl!p&legf`xic&>J@VN#ISPam+qwgkW?09vW1KS+Pn z#Jkrh)JaG@gm9zs$qB?5J97z}g&!0GFNpgF zk7v$QJ4hHm%iNG`=#k$rR3%;!j;$W)ewlt#clR)Uf%YD}UM~hHhT1BeLF$+eZTUQ@ z_Pf-THoWwT%sa^5!Wuc+5sokHmZz#Hu?+G5eeva#U&Jc9kJ z0^yzCUzB|p*jqJ-Ar$l1<^1h+7rzPNxCT%OYvV3F+l%MtSxfN1l+t<{O9y6rFU9gWI`%ZikaZ^FlRy!DAM(9{KDB z6%zEL7d7K_5|UeC34wJ~fJrw&4Y52;?Tot+mR&TEDF33_P^gA8U3&~YOBoGK2^P%9 zU0U-HNZ+GXX+l@)y+3c%Wrg$o9$Y<>(5jGF`6j`+k=>BD9u@Z|BSa*X*CyL}SA%%> z-X>|~o~r6Q{y`9i1aqv09x z%DSYS)3&jWoE#!gLD%HZ9-TiUFOS}G*WhE2r2c0eXQM*n*~z<^{q%FczLn~VfOV@% z3miz@)d14=9pE#PdXZGxB5-g-a#tz++k9-=_gcNI5Mn~$n8~mG z?wgt1J04DaBx!nV{+SN~;NZUDOZgKH7$b_RLT!_{jQpnhvo>C$ z9)>dloD}0(7!&ofAeS3}DaP&%5MI5MW!Ucb?^%3J!7BTRZc|}aay3=PSlv)LS8t#ifo_9Ho4pw}SV`Z;&#R8HqDx`GqaTEWh8Y`sQ%J-UZA@DWe8?6h5_U)r zowse2leUh+zGc5!1NhM>Dhn#Z=EG>Yy%>vSiS|8f#NI{x{(HiZKk^Pj1yMi%0>Ste()k!pTWu1xSc(^pWUU6 z72_mrie_5ZXGb4PaChhl=W*d?GKrHFPg#=4I=5+Xe^LQ8)-r&wOXozk{9uUOKJKr= zc6`yJiK5V4ybBGd<}u1$v=Pu`C_T?UOR>l;FMDa+z3lj063cWp$l8}wuVg;Gg#Y}U z!#+!AA81Ss5hBCh1C2Uj_ISV3HC~@|O2K%{G?SAOqYlnqd(yOru;MdjSU7i!56%I` z+r`liGgifk00<(N!b~mhR6QD&AD#pe54roJx$JD=d4Z-|EAdK6oX`pBtpd2q_B+%c z$rk~TVwoSet$o1LE3y`O4%DtcSbU8hVes{uW4(r49%q(qH2l+4tJN4*SyjWpH??eI zuYk-hrxbAYX!CWcJWP-;&sc-}{dkR2ISpOs_f)V_*{!k=YxZO1UjQ0usLUhc=iTXF zMfm6F1siXOEz>~59^t^!K4erRPS?6YGsaV?r@S0ELrNMjMN#12gXsku`Op!Za0{!k zgwGOqrD7m9)*w3!`*#5w<%V(X*XKo)N-C;9sxYJk-QRwOW7t6xKNeUhM=b__lzuIA z_T6oI_>}&7DSz|}-pZteM2(o!Kg4VQeTKCv6^n;`a@?Q*Uq2st{`@2|zIR;*TSxx-VFXGHaT|<63bB?Q7NW4=VbrVua0%hPQP%AU1h^>MWIvK?meuD|! zN80Kmvh`5dG9((;F$j;jri%Hs_HMA{#52!uBp^3~*A>n{EKFmeR-&0XIey&m>JS8& z3wmg~`)2Vpw@+DAk)!TY_u?q4ZnHKR1R#T#4Lr%p2N0RfXlJKpZktRsF)8WzntxFm zCdldcscA=|cmNit7?2u{j*I{KFr&3|cZyy8@{O}l@TX-5H<#LHe6D_?L%)z;=j_?M z6~^eV_3OqqyI;zR`iqJqyPjxEbP;x0Kq*Ufjwt)r6AAES?)UKZUVZr|{62(smW>z2 zQtKcnYU(=^+jOW`4ii%T=Cy5k<;ia)_VN<--Uqs-AgGG~({1|5^2q1bDkhwtn!qop@1&d5PuwfluJyozpbqX6wPU7oNZ`TfpxVSjHB0U@r2Ed@I_1d;j`|94sHu z_c2hXu(2(~h=z_kT?c&=KU{xMhPd$&8@jzt^>u5(Wu10iRYk(+t zld;LS%*bT8Hc($zJxxKO@%dsi?XL0yyTAPWNcnSf+A^+W4B-mP%UUY|<^9XaLQGlK zR?|e#Hl!~9tAy$AL$Z@SU%D)!A+m#zpe^wNwHYb1@=svBy%5GMpgxBIU(*_+zpne~ z=hJDVlNLSbZX^ySQ@GSswVN_r%(A>W0~1nbi_e22bw0*(2v)pAfG&mmrF;OdDU9J) z*F*k#cH^cp-S28n;HrM%-RF{pSFT=Wx5$tLd&|oRGcjAtBTGd?zqF9iw(3)n%9k2D zArrT<7hR~kf|1_UgMtg~w+f5V^CPdPs}q%^Tx-e=PUyR~@s33#o*YfCmWqLq8vG(f zze!gJe8!j3Rs=D#!P&AW#0kr>y7A@j_UL)mPIv%$VPlxH_4x>YY*k1QuV#!!O`+Bk&9qY5SU#$(y zLKrflhH&R1+@Z6uM(21nv!9GAttZcjV}MhFGphzJqiDJokLmUesvt-{S=ATL;HIBt z&(~4xwh?^`VvfCs9;6oqt?2y<$@~vu!ov^jf6s7z`(|5V*#H482K>(q7sr2QxGp=* zwe)mbICQv#Q8$T&f{glejrv7qcf-M3|89}Di3Wi|U0*9Wc}CC>wP894Gx~Z0w#K-- zUlz7@zOG#ZbJS-(mDz2kn755xC)tmEGJLfl`21;!>4AfSfq{$&1cM-A}fK(V?O7Ut}dPG!PIFTyzYC z2{?c)JP=xTD1yE3520~raDaJufHz!|PV9c3pJpMve!++k0;xJU$}pOl8DSlSXA~UDes>UFgqe$@iMM0tT^Ry z<7J$t(&ii|3*wi=Fh!}w@iW5z?+w;Ed=r9#gocQUm>viWQIZ9GC#7Vj<|b#S8!BmO ztLv-kYVORg&aEwNEo`g^GBI+Y;>u5YjL3vl!E_O^AsJAdIaU;*Jx z2I~Kytu#sM)!*Ja-AeWDg#^2QUm?!yBIh-cm_$*L_}34WnmvdQBgc)ETLp>?)w+dM zIdaB_NKQ4}@4s?d^^$(91igJpj(!6@BkCCe;owac-RbyAiF-jdVL5 zJgH44K|C2Dy(qW@5=MRsi|9os)=?+nR5U@rQqHFU^JY2^*(YcbF5}^9t;6B68uM_k zj=6_)FfI?J$~`tvGL1=Y&*7(~UA&T}CPz>m6Y>y;?*e)|5*4?{ZrpB@wzX}`2b5OP zl>iAQvv}Q2Pxx=XL#K`duC~iJN-m^kWr9?h_;cZ&j^sK68q!)e+L?L0DN9{m^UUap zx+(z^x|TDAx=>VQv0*UVXN|)~Im^!#gft3tVOtlo2oVTtA5y4zpK;xyZ<*gfMz0;! z^Hq3me$&r|7nMtBI*UATR304H^&;oUzH7k$k-W|!OWPeHo2sikUP!Sr!d)%dH{KTb zKAZffezDAOkTD5{Jd48;%XF!J1W-b#|n}= z6uY-y2!`J2K~r_o!~LDFHkqW^DmUkF44{_>ADBeJSWae78*WnA2feafKQm}{he=ER zd*SeAo@}n3ZL#E|u{lQEN|L&wP&BNq2q^WVoieLic*GurDcEcxfyzxkIun`(bbL?d zQK%{sYliKuwTo(J+y<~crM#=GOL>`i42nF~dfLHqU5UywZ4BF})qmR2;gAq?@wh(l`o0tRvfE?$J%ua^5V) zSNeytd@o#*Koq3FGfhR)ZQ2C<0pNo-z2ZZ|J71g^=~1a~w>YsHnOZe3(Earv0&z;) zFW=p&G;oKnywkFbz4%uh!qUv0$;1Q2tN45_o)A@gej=!^ zWaIBj%#`_-hupR=!Tr2F(0-CTirHQ>btx4}h+9%gBBrBL~0Z3|ABfdR;l7Qb{ zauWGb@9O&5$F>a|*M~8$mN<&Yvz)>jT-Ej<)>%S74WJ1C{LssnuFTukE^Q@D6YdRq zwuoC0!_iv_QUr%v>F9&VuT+|NPKBn~m?eg4TKRZKNB88bjAO-tnmR``n`5T??{S&N zLd*~m7x*24h8SJbUi^`PP@zG>OMaFO(nb}tFQypJ>4`a!w8fL$tcd--B-R6>G_0As6u0N!dMFDj$QD8tVzVvYDBeK5Ds~j4 zB|Se`tgFvnY&aNpWH6guEDqUEtPbEdqUpj z4k|enbIjII)@lm)k*$1vl=aZ@4OmLy-aX+Pd&_L_PH~oA*CWbnO>bEBFXc>fMH1T< zn6ST^)_!A1wye@H23ykB8fccB?$J~=&m}3BNwB3z685 z$$$il?|(4<9{@!_y1xtO?}_K+4_T@21;;avpt%i%N$xVq0d=}B5jUKuKloA+P$h-+ zkWn>G9u#wEzhuTJ^MI6u77`3(Aao`Opf_x@%jA;1zw|9dXfX* zr!p9p2Y@LM!T{{%7Di?5)!`$WZ9Q&D^*72D$@#+W0;sao|n*184 z#?1$XF7ubc;~l1ZB6}|XTPDlGtMa17ysAs`zVpz00Pvj=KWg&Eq^`LxbQQm6dsBE| zj+YQAvU;$DZ{T_nbO5DD#eJT@Yk*cLDGEcd8j#N3*DSws6XCoXSPJ$i!OJtq>vS~U zwLLA+5qcJ*?vyxb?v38;>S>Q3Coo$f@F=b0V5#Jm&RH#bCXHS?D8A<1RKtTu{0CY_9)YBt~G*->}qGR9b?z&Z&i7w zx_FLzC91pprmq;&-OX}%G;rwp-hbbLDhqsYHz~bx@5CoUlg;h6ElKy2s8#N?6KHEe z9u+w6cJmyG$XOD@;nsA_J{ARpyztdfz(^J$@xrABJ4Or$SIt8PYWK--U8aKP9E|#w zqZGyCi-~qeIVTx8wYk@rK55ogI%*`pb<+4YQV!ML+5l&7rKH@sMqFNN8QGWVP=Y1wFkEQ*ng^>H=ZQ5b#L z7FixUn9%mM`flH!S)bM^gt+xhuUBQ3+6;$okRy%+&ACs`yw%5=YD@rRkw=qQurt#b z5&EX%exZ9)tEaj0#6BjiYqn%KS6wR`l{3CM#HxKoEkr6JNVI|cCE3(X7%G2*Uc%}O zVRjwps5vH(wXQI3>?YK#sFt>{V#^zEKK8U@C~;4(<2J@=m+-@~M;94};NI7XbLC0S z2LP^)wmJDxEY8Gq(*4{IU1s5vo(|D-B&uA7xf*mTxoJgw#qyeFWnM*Fls=s6h_=-* zS@L(~zR>;Z8=#Bf&2cwMX5AEwzcdpO{SBGm@)xYp-f|KB3tRBwP84Ig#!^eiL63;t zBKe%EQ%FvC?v-_i4nb`aQioBOgL2$3(jU z=dI#*8Dd<9C$vsd+k9&5t1UvE6<3rqlbv;bK$;mnHCCX6Cz_ZE74Q0ti9Z(1TD~P{IB9N|2v~hF<6LHwM|Cym;Qc{o`0lHr zm2txj37N+(mYG1!B4uP~FCo?36ka1ni~--MNzOcQAU(iEPgxIB0hx4L$J2jo^)&`i z9eAZ$sW4N$%J=(+WU=hraH)I+93pVK%w9g<3u_j>EV0F zKU)dexloOhXR675I>@`o-b2mpeqwQ{TxGadoh zJg(LoI?)_V6yTb&3zfuqusm<(4IlK?-70Iu(w(_$F^IM)aMwcJu-@kxP8q=~GPmV( z!i(Gz$Bld8bIDI;Nt?;(npdat(^gqEO|d7dQWHU1=nsX75(19aBwM8^ z@n6~$^RXSke7aActzOu^2Ay{~8UPr*@2NuA+uOKO~qwF*S5R z8;_eR5QyrCl{vYE-9Oevk1*CH-6fLC&8ZFGIt6%1+=`(TCfz1H0MM%~&}lUS zncm`CxH=?MNvE2j1;Ga)Ss@AXmO0#yR^50*?gx>;7p`933Ea@L#aXgxqU~#a-Q@F0 zsQAhrPk>n36&|~+13Dj}4s+n9HLQ6EX>SZmmHx<6ZWy~xq)1^Z2?Q7+gC%S!TY5i~XC)JnXq0 zJiJK*SSiprfft2hRlS4Mi9E?7ZLo(~fhH+~@)W3g53ly)9PrBhBZ<_m%RQ} z_;1x$-leRQ#M?ap>csQjz5ZvdA}Nm`3vxx{(JvFga_rYSX+(GR0MO-(J&> zN)08kn>)KGCGW;$3hDt8Cr3T)%@dyCpOMy=&CdvC-Do_ZNI555ZIK)37?tx8F|t6f z7G9^O!?i!deOzuuCO9<`Kw>hLO)(PF?qLqmzO#UG0mYe>^--dh_*WjJ$Jk0W{KZz* zYb;WTxJPT$Ui#GnV$?CW!edFVo{DF1Ur;^(a^D8;@(M8%_zt^Gn(^81JOJjQ29}oP zNb^H)4SMV^Z6j;Yw}Pr=#n;>yX?ixY6oQTGBo`B2rrAA6IAOihC!|%+%6`+@wdL8me&o*_{L}UTDom5d#`cG z4_=+%c6#tW0HVqWyyuLqH?*%5(&>G0YyeP|l42%C@OzL28jUmCTZ8adpL>hA_|oj9 zcjsa&rGA{upsNZ2G-d1y2L#yd3pluID@1)WwI2ZPUQZ}uCU>;Gqh5imJ>)Y@U*_qW zYZ`qdH?8;UAm<&~fRIVJ!T6`SogHWHSmb?6ZFJ19w37k;K;5XIK4CcViW?<+s86_Q9p+HCCuiS9KdtQ#V~b_s(6&u2|f0R)h%HXK3Jhw7s_x z#J~_jIVUH40QB?C2cV?G}k8;0|5ND6qWY^X|kMu|m0My-`J*w+m z&EDCQEb5r5tJQp(YJ8)m!e@SIn81iw7~N-qb@^B)nJYd|-hlMe4A+FFc-^4ys!~{8 zE>1X_Q|9H{$@3Q?o(3R?ryFm^8KAG{N#0uu$`drEy>GpeC(CianOmDtvZV(y0yEx6 z+$g~GA8K&14^1WZB-`chs;RAaU80H)XInPB;DzeMt&6R@zE*POclzNjvEXKq zOOMLLAU_EghDvOqu*LX1+h%0COMGcnp874tjE9gT8%^0o2;~hG<`R3AAF@u~ z9u#;{$KqnK${hE)jvg#}Pae5w{28i98Pj0rMuzTGr}<*&8(Z~MR?WolV_jep3$Q{x ztu8XilRK|*&z(0{2resLZVV^+n8fLbGz+h!O@2N{R#F7J`1MP21hrdA>y+bJT zKK$%`75e&TP-WP@{e?^g9gPD!0lFimXe;%QY8EXM-Vym60Qp~WyrzQ<`U@nuUZH@D zU$J@mZQc9Lwq6bi-HPjG`q2IDd)j5!2e`QN_(!Tk8Y zG5;5ki~R@4Sr7D@LU%_vr>%||1BhQ@3WqOvq^7H+{ms8l@2`IIuguGPp|kJT``@pb zcJBZR|7F17e;9D|cLP>X9T!{cJHlm|hvoS}N(Z_IaHUmWs0=PY^$x6kRc7@;My;v_ zn4P4o`r3FgzxNOW!-f|sY$>#lFLZ|2@&Neu;Q_Ep_p^UAOOeVF4g(bb+-D3;2saBf zc5RjxmfDHx-FZK<;Q?T~RqD5L2^3)e3+(?itD?DPquD4?P07?oy+oGZ@Ti;{ zTACHQxIw-w>ioQU?DHwB8R>X^-53?Awb$*ROjT#rUUa5_fceWWe`DSJPgy_znRW1gV;%e#tiS)v`tKP3jP-wE z{0r9q4(flF*Zw`$|F*&j-8|&+vb@S{se3O?JbXpAU496Y=iqYwtItVzpxF1~g4Xxn z4qMN-i*E$EX5W81O5q-3JSvT#B3LI><@spGN7k}8#zF^B(nLP>uI#nV-l@fgy%={1 zlv3i-wslqXa0Xa%f$ z7EDs>i>!0a+{(fnuGZ^-VYm|{-6U<5F`E>G=(ACpP#e~8G^NQsJ2#RCfWJoT3aQlm zmyc@r&uCVqkt-|n`_BL<+oqYm0XT}n2>-&sdF8$K0FZqw6^9=HnM-A<@uI(E92aQI zbk!A&g~)0xKKzhSrShBZ(a#TnCU7Bjr^8Csu=SOnJ1{K6I=?e_oCBV?A0e72UZOlvgDW(ECO=*y)mFsym*@J!__gDMg(82G};Z}%{wRM$ia`Wgb zs=<@vkp%;Oml1pA!?R@m;ARVNrpB5Dtg3d_n{hTs7Hr;?oO@)=_UFv_>bmH|l2L)# zQjpbwDwE_57m^I}(#x_8GfiVqSMa02ut-!)ec6>j>C$HG{M``L{ujRT)mn7a1FCHP zw)cz&y&jt_Pkr2cC6Myox|=hY@`ci+e-Ot}fcXyw0c}xzWneq^~CU|9%CvFwP zeKbmiHQ@D;g5zu(DPtOEs>E;#B9HL^FjK$n$RU7jM)MCR%gQ*^Dw)YC+y=*k<%qXFUOEC;LIVNUbP@Xj~mEcl~GGN?_k!V&xgwcG?|1uWSC=$ zsf`!|uAbx+QBPIVxANIC&?`>7=DNUcX6>aH?}_m~_*P?n z3ZO-zjjS>0cv|g+R}m``!i=-fdNaZLm<}@(5YPX^D4jItZn!EwaDNJvJULLT zP2YX23afjTrjLW)Mhqa*C$O%f+*%iVEkhmWIAlsX_42vMPTUxFO0%e$-f`T=egQ4ynU`DUTKZOBJrd*(a+O;3O|wi zIw6iG?#0TN%^C3&wO2$3rei_+1L-fREXn|Ip)%TtXZ-zIlGxv#pgd_Kq}@^2xg6Wo z^lX7P&=9U+J*Pr~H;K_|+D)9%Gzo>jjB;YcH)*+vc?#{Yg2;#2?B+J3y%c6-mb?4JBHJ^^I``BHG$9FwI*;3W-jK=)@WW#jO&~rjL z+)sGgj8)h?NRrtfR_k885AJU|j`&+AR!8He-&d_$=RZMX-9hAGzBS*a_Q9cgpq|Kdo) zCm5X@v6^q8=g!h-i31_F)Sy!~46f5?82Cs*Su;r@F)T@SsVePuA-W+o;I?{W6)UV2^oXSmlf(}h*X>f#{E|*qnzCRsHO8eD2%y);l zD1yYQbuqg$N58Gk@FZZjlxwIF^lQ1H)YuwWJ8~9R_BNEH^gm;im;tNt9JULZrT(ec zz7q)E9Ot+Rw*HW?z~Nj;yA$B^1ulq;apBY$(6W!xbbOTQ8)Gt zkh-q;@bL7vQ-vSP{FTQFI>RJ@1p~6c9C$ZG6L9e4{G`E7>vpa;Mg3c$Qq|h8pD-=) zdvG>a$`Ug7V$wLL%2OW*x|xK={iT#Sqe1%z2Bxj9By8GY4dZfe_F07W?QG-U`$jc| z&KLf9e^?kl|9`3ff2Sh+W6LL&hZ->TDxfQ-pZ4HK1PYqo#f#RjI4~T#C!~KA#pjAY z6~j8|u#YA9zcUbd!8zq}h&Ft)u;1|*RUZKRw4JF`H;S^W(4L$qTBZ7OahgxV4 zfD>&d?|roI*DMpjIX*7nv=`;vj%KHsiPQ{psSI?bjB&!7D9y+{Mdyv!chT!UJcPZQbgE|DcjmkdrcGW!rK79-GS)a6+n6Lh z2fKJ*Na*Hk?4#xEQw14>q>g9eO3WH_Hp)_ks!)F%HTqmB$O$9ClaSbh8@i?$n?;U; zWEv){luni=<>E#Xup1OAc;L@QDVr~5<-Sb{a2Hnmffs1JJ=wo+Q;(ZPV6p2YnnXporYxt+WBc~Q=lcm6I>P?+N=yGod9dB8KQ z3x1A|Qd_ZXSxmmY?^QsSvS$q?tC+zvuZgFUMouMWvO9~-1i0FIsaX0{^gC%G;F2Ya zkb*0kJ>|F?8HoVJBry(A-f6YcF?skiq@_wPdhg!Epw@j(>jyxUiglP~96Gn$*oVN? zRauE;!Vk6K%@HV1hj1m8Ty7&Ij!zr3y(GQ|o+pbeJJ0C1w6s)6t$&prAu<&2r|T7B zC7`0d=QQr^(Ui+rArz1yiDmj|I!a*!SD;fU%(J*NYOCYCvM38Wiy}6q>^bPbtdey% z0lDHQ>=9?6ab3fOtK!A4klJ~pgEfGUPTawt5249$Sib8Ow=BCw4iHMr;htTmu8~fK zWM26}bdL5lr?c6^Tou0>I1*n`8vtTb1uYVFLob-TEF}YPB`?yGhlKRCSL`FYowvx& z?N`)p<3Qwhy$^sfZ~^22&~N|9q@3*mu&rPCcCt={)@5PGVH8`_yfL>RuM=&LE2*!F z5CjI1BoMZ(Z;`%)uF0~Gj6bi_ zIG~IO7iT8fatx4X;96wJ9c%Ngo z*=DxcGdB-Y4g8!q2sdfPs-&p_R0kI0C5!_*TAg?l=%dbkpJ{9KG{!Hzh>5SN zN|z8?Jclj$1t=i)pl9NTKE6}=NCi&}d_J)S#z&J3vTErMCNIvMD>XZ26<;cUiN;qE z6t+rN_MSg^OhR&(r}FnSQ9o%|7#^&XW^Xf#JqMBDfAfJ&;O&sY`Ma2}d4hb(WAhLZ zQa=Q? z@H7>$tb~dx;$4x462N2 z$%<|hi4?BnGEXjK4y-9FPh-a#68c}-|2MQ>iqx*L zUGD8knU{C-i!|(G*8sZoCkDSfOer=;k{&qlJAH+&8!%Lq$7=vpU=9X$C))n1f> zHdBGyTPh)n(~!;Nw3RlM^Xw@ojkmI4K=5Muiu5!_v2Q4W-El6j=(@hfSYanjWgeanGBncdU7nR$&8XFq}JpR)iVG} zZVVYE6Gj@hDhBu$TA8NkImdC_G&Wd*`ReOu0^yFh1!P%9Olc5oISE^{Lu_&^DxRxaHCh+2ZGANbe$^S6DZw<;z>NuI%7R5MZ zcBDrp>|_~vT{Dc$KUlV#peYaw9JWR?1KGmSrtSh=StG8tUz~5YxZBK} z5F|^vh~<8Lk#D@fQm-%b^hvM0`8y~6Fd2Va1N2T;i*GDj1_z2Usl?$?ZhjDriNjKX zFj+@ zgr6DTaOicdT-ruIq2fK1oo9PLvAK5@g572C_GG2KV|^h%&X%w*sz7djFLiFSx}-E| zb@hOK{eD%!->@la5owd)hrA%~8d8fbo5q4?peNN0-}1ctxv73B1pYzF`uxMU#4b?vc#zqdLkk51L9C?c(B2f?h<&NnRw&<|Ga& z0jX%=%1F^w#~mALNZ)SaH%uC-AjC5+VUr%*D4dWdu-aS7y*^ z>~wQ2YZE;S{SYF|2oJRhXGHFcg?s9w+Z;|Vmh2)snhJGFpU?NZ(VV7_?B=oxQ-$~quk6_lRZmO_H*K~&=Y03g4%zH_p^!#nr#;kA%;)=AT> zpClG9m#C9kQX>kB#vL>;J#nQnTMI4cY>*F;jRHG#VnEYO@Zq3 z%(h3D)O`}pT4Q#<`lY2oa{|x(ywIoO69m+g1V;NgJ=p;>d2W3KOwTw zcYJqL5&1FF##PCzO@g%5&MMZh6^}K+B}nZS(=~F>`74P`Rqo zox5@J^AkMx45D~2DwnW6>=sgFX7c_b5 zi`ALsmUSASU3nFwf4?#X3&CQ&=fV~^Q9k-H@!o^0t7{|9Erwr@sL5X4DA23%z_TOt zt=oqh=afOrhV$43n5gL+kIt?hZetp2V z{pfl}q2Sg0?jp|anKG+rI*>p<+6f2?Pxv;)BP+!uO|vLNv)`ih%I60r4% z@~ptw;@iH3G#!P{k*)hf)k++{GGBXBPAXQ{CtKacyeqcd^Knyqo}0W^hSO;`vo6Xp zpUIqLSzAbK_cYI*bn$rd+sli;N?YcnBc<9FGJf0O!2(T5J7h$fFJgXDa2q48)LxDm zItGQtlM>1Djg!o>-!BH_FZ`dJ%xi9F=nm~%N@)mE98Ii{4j5y{rOob_&K835Eqooi9)cnTjHE)ra(Vad72k?w8JnFPu-| z**<^ui{_3@$6~Raq-w>1u`ATjtSM$9)*9wz9&R*72$ZvJBf;W zkPcHTWgk;l@HJay#D7|U>IzS`>hmHq)Ngf_SUtQBD_hYI#ze312@gq{l5jdAu`!=d z20_wB$C#J>uj={{Y z$as9*l>=UIe+WvDA&*x+qlFW2i_)AIQ&wu5!pc$NAjuICKxBYa zJEPi_%ei!a+hzRPKU066m&odFcZB@SY;_@fKc zW4o3C{EvH|(9o9#sniLyY7uQlj=b<>B1rXx7ew*3c_gu#O_jaRL+Y}gqp`*W0xof2 zoE}x~0?IlyiKmincjgDM$pQM$sZoZfIL(S337EvIm5Lt#jINDuVv@f-tB6KY!tjg$ zSdRbJpi>CRG6lb}*=^|8adRYb&M&qGofAtPlw_Y$MjHX)Jw=eBMfTkkU`)(s2I(xm zOOC4{8f?nS+g{U0wY{n?;Qs8OC~4J&OaPC%v_TMY;Ym)wR{BGjvX!{QP}QAqykY2C?@2G|3oo zCe}>ZF=91P3a+EC`%XPh>yBFoWwfa;U$K}_a0)t+Vx6ictDF*boRCuLQJnDTrixV#}C=hqCG0<+pBJPk+0`r6h2eN)XBDq&9(m9o*l zcly_-Y}Gh$EfG!Zho_m;IjTiuf{mS&#imuHJ1{S8Rn?>`Rmv4H5Q1*q(V-_EIfAY~ zq)9d-UZpo_Wvvny~Kbr81!Lm86MZ3+wgL4Z&A6Ah!TW@6M zz5_eaqOc69ei-_}E~llOM&&Z(93x~dnYEM4THIAKAg?74*hn5T7=8$v^0Z(OIhryv zDquQ~31ryIP62Y{%!|UKX!!E#57wW!opVS!+kOim$Fkrq=gRTU6I_3+F9;Y}Tv1lU z*s6Fj?2!9)z8nIhmxgJ>$>w6#9{?uV?M~r=%x$-Gqau?$dAcrYl2h6B?nP$AP@%mT zlNc?A@lNX_iU8&FaUzA4PR-Z+v1A`5b9es}qI2Bn0oe@3umPDxqad z19ZjRogB7B9N|OCn4h0jgSJRcr&O&%O3l?2T=W(e8EW>lPy>|}sON~Sc-HdFw;f3_ z<)=*|f%#g4PwC4@%7{UN%JCHOJlihCE!dqbk2^+&54pQeIb_rG(UQ+qgAXim4Jjfq z4VIF|F$?5C)(W9AH&wRDKvL}wU${yI0^cB|m~5CVrZy85SLflzQ_RFs31plA<4<`5-$zycMUKLAm(le4*~od^|i{`(S6!o zkVUo(<`-+r;DXbq?VoJgec{P|APG$DTq3VK%7EmA;P$vK6-P}&_?p?+I>=Ovl^}jr z3eMPlJua7};LW8Y)01|PD=kDISN(ug`RmnkG(hLuG?pomomth+D(uB2;pxX%{;F8k z*dZD0wk^RzXic+I!gxDjbhbs!yU3BbOJnM^u1U8d*s*oWV}Yb_c{`I6#uA4~rtN1z zlupacd>c-!aD;uiSDptBzdha4JJRaK?GA}1{#-I1lrVtv>XX+2$x$cOOryF3DKo*V z^vGd&wF!V#EkWKj`%Zq_vlPr6-FMte7_ zf|A_C4D&k8EUmD;fIthU09@D#J(PHb_CO>L^0!OJOdHe9TzD7Gh+vt)t~#@65!M2< zE}ypWul0mTC0g2;@-hrEoc^Getm5e0iy!JF{weDx?o*E&XR|^uu|;2VUmYTVRjC+5 z1pevcn#19!EBCQvd! zDrtpjMtIi-|B@EL>8x*!RMt%M%0jw2@PrP^U9t_kH4>A%Wi2~>j`Zzp(^&N?Ah+LW1(ud&7{QhBMWE#IuHh2%Pg5I8Upg3=@BNR%~O zgB+k@in>DY5=;-qV|U*)m`(ybn#Nd`rwE7-Ds^zW{g)?%ZWuE9HBLAzD6*M0|a#Mb1Lk!y_$IF1TuW}Y4%+PfMn(s?_+xwtLF}+LaB{U34?bBT-tVSi_|)uPj|nO);2aUTm-4A84@7G zhbF+)+NP-VRYTORx~CLDpG9j|>ab5>rAR&Hb*gWO89e!hnLq|7E27c+vrN=M@2Ug8eXTMRkw2BH?KpwH3B4gK>uxQMl z;q#37&bg3yi8pEsZ+l2dI_HQXipWD=is0xL8IZSI$FiW^{X7-HC{%sZWggCehhBuR zEmtV$tZp)6G9n-7qB|5$Rc>e{x7>Ds-oM4m%h9OLm$HB9MNvJT88N6a%3OfMI!tZL z-YnP2IPkG_KbEIg*rg97ZaUG``+p#1l3Y?0<$ENJ1T0be2R*X!s68g$wB5*Ou-Bm%+ z{8hoMsX4u%Cg@AJT|=)|!>EU?%2^QioL!t3yT>{>rC5h#L1&mv)y9^F)R68QiK za7ZLF%IV2KxQ!`q@WGYFlhDCb5T;-`^p8=}G`pzf(lzv>C^w26ip5x!aXhD<0BT^$ zENm59bMk9TN&rh_pcT6@{CouQZ{A_M&?&>!<^QO3C7E$d%_+%^F(@7_}c9 zNID#3hdYCoFznM>Mqai|hn(|j8>q|>%O2z9nH6&8U09Z&u^>lhA*j6gT$w<9z|#(w zhuDK~(B$vg!&rXNtg zw3h$hUOf6&Uqqt*xz0WQWrJDh#n77e?r0b~U4Y7$u09tIHGVGATWc@OB-{A5t#-_c zkr`UbRAVsNDd$Gq6(SzODQbr75qo-JSP~!eqHmXqTQGsB75y- z`Ik!-+0qds`|T@(XO^|vG z;d?wPp4V5D^}}k~A=NEJa7KI&V@_#4o_h={jXnUf*i*hWT5x<|WD$vC=$0ds>TxNDj0HuE;LVT7 z{dts7IJPyj#c12x*A0cB)d&gWNoMFig)IFAR1Y8Pou=%^=#p|~#8pI$wJF2*<&ob) z+p1;`tq)S>&BAC>()C$KvQYY;Rkq z84JskWyX*uFDFKLthHD^d#L;v zMs4UuHABf;K{rqOYo6uMr4gFI7b(N_Rz{1>g(*icNP>|T1%Dj%LBapEJlPF6y!GB` zJ)dtq15WpI{{U4Hmpg6cx+}R+kc!(hzBz7xk!-;Y9xg4_V*KVV#k6kcwR@xwmWLw{ z<267bB#l$iE}2j zLS{pW7=r`lr%$d8Lpwlrn|spJu~OpkcX7zsuq#f?8>(oPY`zgCDe-F)l^lZR;2DTk zimS7;re}Gwo6cP}hl{Z?Ry_J;d_5JF;8iXjKbV2E=4%~Tye=jU3hy*>cg$QA(8 zUTbQJf_+DcbGSHq0l3Qomc>zn|1duZ&jP4iX>W(4qL`5kX%>Oqot3#LuhNXn zgjq&B2)a&)tUa(^H70MST5CCgvXTQQ-zKs8tDK+>&=j=E|EId|jEaI;+8nY35fP9K z%7EmYlLSeUa~M#N9EO~OAPNYQkwJ!>bA}-dS#o9=(hPaX5+o`ru)g2k{jTqxy?4W( z-Tl$O`kdguYl>guO$3KSr9BG+y|sm&huKN$7lh@%Z?|MW59$#yWk_nPG<(yy)Y z!~uI>_3&}Bf)1pUko;{@%X8z?-W^oxdCP$tsl&0kQO-tC5FZhI@AAIdC0FS|`+MGJ z@5jb+1&0$dq+`G88ypEUby6QuFQt{ z3xc`I#xI8)JmbsoiDVV8Z9L-UEf$BXPPdZQ3fj2_ui_QQIS5Q)KWLGLf~LI|ZU9s3 z!6ax;WOp}-?pAB-!{ME+u$h4j7AIoD7O1$71hXm|hc4$7?4^-+{ zQr(ShL9@8p*s_{DNJ+lKBD1^aF8n|9NdK!|$Yo6HKLFjZ=?fu0FmGNJ-FtAno_Ox5AB>+kanM(23Lu0kRaqwaN2_PFxFO z&2CO=`(X`7JztRQ-^P8Ax^wG@0l?HTxQQ;k@mdXhcvSpgk{A>v^%aX99l6}2>`8~J z{z7XL*qJ?-!14?|jW8J4^syZIEaNU$#mT;B`Nb={b?SmaMLl~)XO<o5Y%$gT?ZS6;eIh|wQSglf;hgvM#MQ{=MZUB0_+U=^!dzph;| zH6vCyRqSBZ;4@shBVisZMt@OZuL4!CV%y$0ALaR=IyS)E>FC2X<(_N5T7m%?=!4&+ zm+a+OwjxW;{I2UUljvqTStSjhoueITpK`Z#4C`h2vG?8Lk~{JK!Cjw3moriuy3q@7 zCj(dV)70@6$58%WIth9+uE#z$Et;}o@#1r6yS0&r+h0v*6*`CK4v(Jxy0*>@1A zSJjfyD|*!eo?4+DJoyQJtTmf?DBW4)OJL^qW z`&oE4SH0KZ^guK8a+f8Vd@FgO#P~f{q;$3yd}hzgKqqY5C-km`(`mhSh})&IkLBG@ zLbJo?c}LlcmnPE-tIJAmm4mj|uulEHuK}?Wr3N3RB1xwwJ7x4 zG})hg(dujIXj8W-2s)9t9ejZxPz*B*Vi1m@`c+ZQ9-8R_NM^ZMkNq2^>J zKDU(>ogE1bouqY#BSIfZs;D=ehdAHL)-(hIKj1MZwwm9zg#*JDDZfW@2?rlM<5^Y?c=Qv?DY>xX(bz(%A` zoyRK%izG0%I@=rx4!?^vvpo@Kab2Epv)>%mk0oE{YA#4b)vrPBQpy<7^*4P_;7H))u+<)F(BrfCylflS$qlFL@&@zuvlnG0ZUN0;QCqSsM!Z z1D?mgqedat6F1v!vgdYb>ZChD_Uq#cGTIvO_F2Tb@b?w*0uVUkExUQ$lIIes91g09 z&wH|IA8LD?(R`qB*x>4Sq|o6tAe4Pkq9heLDD^Z_qxai2ACn{UQO7O7I14Ts+z~J_ z(Rs~bGgV`Stl{-u)&%Qar0%FRlPC5l94VOK0onJdf5!y0>}FVRgYsXY~na{*HA)KRUymNFJ$RK@gmy5fkXn6!!!5sapSgIn@qL8y@L~arnMi98`kV|r? zH*s`|s}3r)V*WKM(~?dfNI8--6w~*i_a4~M1zc00KE%6nXpY7q{iav+%qsFBL9D3P zgmYznn1o3?hXf3+o~2|9`JxkZm1T*-Qe+x==&^S2C0l5v$|;cKVH$1REOJxctK>TQ znc*fow>r+!uVn#L^KRioaUOEDnqL-Hf=(y0Jl$jz;ZnWRCj@HY6e z&>^%qJ!t#z=L0Dhbk@(r8uOFboeoC;fxMCqOhANzaUZMzctD50>BA#=1?COTX&By? z-!3RVh!^7^ArzN5o|;`|(fXi@SgVU$oMZMpp8b?;l2Znp{lVc~+xx#zAWbCNbxPIs zL*-W-h1ox|_Bz-~zkLY0>&NBWTYv(jVBSZlz`?IAF=|3|shFYzey^=CmGHZ(qKb{ zi9H`HM+n^U>CgmCCbN&6!7497RlM6@_xbbD!baOlmJeKeyRG;aC0t0ov@T}}oeLyu zn(miZ<(}4B33~BO_TU^@r|ulv*HCKf%pZD>zd#{QRdXX9fS;B$*_AAc@Fg%=D;*V2 zwd&eoCsgT|5x)GpHyRC=seB3_T+|tTSfobt%#F2o@cyLd4l_xh%}*np6MD0d_j4D-L%%-!e4iK2 zB;l)27y%S@UpjiF;u2`&a({JU&o^{;-Uz0*YCg82nF|f_wzH+ZDYWLQqhP>Uyct96Tk6jfX5--D*K8?wK zNsTryxh$-`D{Ha>f5nDB0ldfC&9DcW z#4RIXMIh=4gl{HZ6%($!w5VB54g-n+3G~02A&X1DV=g)cpplTq(n2pW4i~suywnW8 za4AOe=F?KQ5nE>P7|!wxVf-A-%v zmaXWF$#J;ymAn-{weFj2P`IRT;j9&uWy4v*do-i$LQZxR=>AX{pH<1ol0U=b!P))! z$7!DqYOE`fe2`J)RwQL`efOE`e02PbK+ zVt;Pt7SPKO1dfDa4)_=;TzS!V*8G5TW_$IZeMYL}m7(1571b>cMr<6i-nu~?cZQ&u zsZ>8}y-{;9voV;gE5z6J%BpLXf3PwLU*>9~#$;Ipp`o4fvlS|^_582$k2R|f6{oc| z3+3%wfSjWhGGa_@#dhp*zjbr-h&Z^KjEaWYMu0$i-f;arTlig7%?AT7bz6K$iu^c& z!-bGcW@Ia|tNAhPfd4_m{#%3wG{M-rVux!_8A|<`e~xv37s2ypW-evn{+psNfsitW zs?9)!>MXDD(@eNGZ#3L4~Q#2xKy;et`G`fT#wtQ=bX(*Vj|Q1=%zB=|z#4xc zr8IqzU4nd(SCxg)%8n9PZ@T?UC`Xav$PtcgL3}D{T+M5D}+BmZvz zce$O|ANo7dlaX8RSRRT-D7=~QwWhwPB$nYhJp4uds=)!Zte^=KB(dyXygP{FEBUQo zwlcL`1Io2|3wSqtNWO1N7ymu(Q~<~;&!1UeBaWv!Odo$ySN+8|n`tKE5dAnWl?Ce) zuR8yWk}2}nVe?P!W(_WYy%P@5NoD=z#8GYhWEs!;$Fl82GfSu^0tUDWPJG(uWf@W} zBeuPvG`^3IUR7{5So(<*#83^n`I={#BfzPQAzBlx-p0xSvx*$M%G%67W_*~)_Gq73 z9ba%cyXyy542khy=+1T#jYUqo1v|K{Or!7-m}dcbEVyv;7OS2C!FwWU<%---`e1sF zX<|Z7mLW-)uzJBysn`%4!lpM*1sFUzoQUS@7DxTu?zSzB3aSvIqr4h}`>^Jbi5#r$ z;T*J2vVk9eujPawnY&5sIYEa(8{!twC@sa7?u~|mLOF7#VHiIoqjOq)0;px`!s69N zPgfHourZ#{ddXMiGg(RXHgC7zmE#rmEZany!mP1D-Kd4Bwg(;M$Hg%Qp_FibH5&T0 z^NKHCu82`Gs1Q(&hJt?tTTqO25vRkGmcr|4?D)tnz)9W3`-~?0bWDyo8jA?w z!ugVN!HKw3g*Tld-bXyN;mAy6@?%kbJ(FDSkkAo_OroQ&>v-9?kg{-2?F*{d=fR^5 zOhd1~+$~)sAjp<95bb0~R6mBOx$&%-6baBU+AfThQy;jjhfN|aH;E?FLu=bLnz2Xr z)gR6z&#{1U)S9M0MLd#cc@#;AiEqj%*h{MnoJ(QBBpuu;nz!1EdsrJf$(+o`|5W48tuE4urENW!Ebfci?@KeyZu^s z&Np%TiCY-t;LU9APu^#QUVQeyUZuI}5Z}q3P4lXjcPn2Q@VP4vG9S>I&oWZbA`;yE zH4;F7Ptla|$&6cuF`*Sn9DW1&;)*2Bdj*(Zjz*r(WHl;p!{L}##&t-s^f8?WL#B}^ z*JCZ|t_{z)a5@$mbAZ6}ALhPrDXDR5&6&-`pi(omC>C0{JPLP>QM*)xb)vx9-if!` zjX83;F4`uMGxNOX3FYL1=fb-&twcfce-e%V8@Lmh*(EAbg!$4)ojmQ4pLJM% z*pvMF^XtIR`YrsRVfK%_U+a5-N@=rxr9+#ZTzX+doE^(ZD)*~-a&C_!gQaD`F^YSA ziJbia3L}f7rn{-SE7kBr1dfhH6z% z=L*M&zLNl83N1e&n=*fQY@%eWHMIG!qM?7^bbf~d3D;sbaIu>Yfn5gw9qPdpmLXe{ zqib%a`8aiy-%(PSnxMcLi4CT-hcYwRw18)^Su8VJx_~)uO#UpcSOZKTZ7t(8msidP zom+7sZ}(DV;SB>PTo(`1`(eZZQ0Z<&ez{7h8&9tyeWW7rwNrf=r!lh)KV8uIgwyhG zeoWgUD;P6)+QvzWB|ep<`yPD2k?>Sywq%qO9~8zaGGv1}R#z22e9*s{tl`iNOsD>g zEhx7y5bxA0ITW+olN!b;Kg2SZBZo(sm1wOr z-|0!JV_qc^I5My2LJx~cQI3i|zoB@xYNI}TmwV!o7mZSMvk*>P`5l_!HOB07tO6z7 z+D;1v^n^*#yCcqN4Y&n0J(&v23GQ1|jSikVT0g+$>(z`roI05bweOYrcIejtCoH|7 zzqq5XH{i(C)l_5tK`k#@nIbqBK#+@5R`t9*ZSK^Ge33i7B}OD^h9Kfqk5-_k!Hofy zQ%v~&wv?2qE9-JSD|e5w7T`b%8s;Rx`thNdeAT;t3SbKf&3mE}+}O=Gb76dj3<^ER z8%pt)`{UEi1kJX%C$VJR;j;O~ZLPo6$~k@2g+I^F*pM(K+ znzZfx?p~Ceqg8=1@`-YTYx0{+)`&13T_yR;7FqP=Q-RmhTUVVgLs|zyB>~wnoQ)54 zmxM~0P+p6^#631*HzVfFQwhe| zB~wRQU+Bb~C>5;e<|>?0Vbz?}snATMc8-@fLw!b$l~DrmXom*h)8z1Q;Eu!>4M`!X zLEq`o^{i?HXVG};i0bg0?OX{?l~1Z&xrUu#Nfkn zjm_`z8y0%os1P0l(}9$aI=IhA##%ogd8&-v(;#Y@(ysVk#&cA|2i~|Di8l&gS>M1` z_QmVeBURDff$s4N!-?UgN3Pu9;_Rmvp2Oq~d{aqD`ga~ZWW$VTOP4CLO~V}|1_Cj_ zOr1AZ^fE=)69taz70y5RFp)cl*p3CC`p$&yoyu&PW5d*XX!@PM^RAcFBYQd^hb&0@ zcn;f?fQ3SU&@Sg?MbTATurDOgHQj@#69e|mu$IwMrVNvi_*v4y7bP4yeZKejWB-n( z)Fg9+Z$9Lyk4i4!UhjvuizXW)7oc&17oBhr99Vyl2a6r!xrbJ{~J8w_SPt(VvXmQm2vm->6 z@>7CF5;VbJ#<~+So!#5JJIKB??-9wKHRAr-1v8}=SQr&#k$DSG zM*(@Shs3Ps2`;LU22A!*huEPU(ra+s4CS@f388r!oR~~~)<+KcG5G&m2Dp`37KAlV zK&ka-5hYu7CBcLBpNEg{Mfuk4^AW~~w`Y7ZceQ3ywdF$Axh^}Ra?(njX*-H8uE(>Q zsy@15|DLoZf5?Py5*!!nZKA*obT30?hW7hQ23h0^>9cLh)muP_weXh?-p@MzE0-gv zt$c~N;%M`-%b|^^QXW#!XR(J&u2XBC)5_kgNqM;M?zQ53e0lq0cKj6~U%N%IsmRun z=(wW?FbO>|eat!iCb^JNj4^fUI-9AH@K@nk_yIYXE__FP(%goW-Qkh*yUe~w8@&&Y zbW`=iAKL0fLBJgKgh)kr)H27k#ig0diX&KllDHWG4BM(BcCh?#CrD}n$LWH ztAjl6&^Bv=s6qyMtk??=L2n~JrtUr`Ar16;5oNgE*!+f3+%iTuDShcNfF?oD1DU;@ z5g3jb+O%v6pXvYFl)BYF6~b%m2i+<@y|F=!m}J3Q*DM)2XPeeDqPM^LrhBkRH;8<6 zHCnmfaC&x(HnY|eVfSw;a)2V{6U%0V$e(~vl-&_dzT{T`gahAJJ&0-j%0Aam?%Wt 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

    bzIjY$o)|MhtCC7eOI1VJbT2sVqwTAR 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 z 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%0DhNG15PAKcdle8s8M)U-yJ1bgI4p#jO=D$SW(iSF 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

    iB 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

    =gTt|GuC7JT$ArL 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�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

    _8wbvsz*NnnJwXVi`fEDw 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 ltrln!X64Ngf|#Q0rE|l0A44Z9OmHz| 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 z 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⪚LI2^fASbrZ6xjB`;XL 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

    1E;B)IL*J=ts~Sys{FS-NZ|fF>zWG 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�I-wh=Uc_ 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

    4Vo8{4a=Po7-`H{fwZB>ly$qzwFxiR#OtyO;v}u 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

    Q1AsC19N&L$mg{?M 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 h(C?`~~?L;Zl6Dx@TmVZb?tNjKh`=!Wf||qr@@D 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

    3m)}q!rpW(4S1>$x-N%Lt1f)#) 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 z
    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

    3NLEZkVqMj)cJ8u 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

    3E>n^#{fO&?et8A^Xrb)Z| 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 Uvp!PVh(Ig zYAE?Nfr#GGX-NCW5^yg6p6DOIF#H2l(LX`m%hH^&e_QuZDZp@qnZwc;hTqb+P{XQQ z52E}|Z@@JyJEG8QKn0v3)tD5vA3CX%X7JUlA2hcCri~b`zNxnoUP3ulbL(rKvlyFlY;_NKsS$|^ucf=hV2sKeAOe*%4sAY~Bq-aj zTf9qq?FWkng-`*elnW&G7doLt5^R8_=HkKpy$Sc3gSKv`h-ZN92h+!e7kNegx?WUq z6GI(BKUzgG{P3s^7k`aWly}SrSC!Y+-sEGb@P1|&j6)v>A1h9!OCaHA82F9-PREE` z{8)0bj;^G!{RS=T9(DDf{`0@Zz{tq!t17Fxx%l#?&JsDBjhxtb;njjL;AD;ne-wIn zEcsJGO(eDGKV!7dzhgAo9}f8p_;W;jzi=_reuSk1-dAK=r*=+#LoZ-fJNgGd#%lTf zD`x$HcxnW$POIr8Xp{aju7-LJOnY_(T|TrqYi-YhM=mRC?3);oLki*$Bg(d@fy&>Z zlo@6eBB7ylUWw9)9`W)&17gbmIcwc};QXr(ANG?N?aaQIJ()LgFnfiB4Oo~qGkJ~k zlQEN@96SS5XSvc6U84rwbSY)GEVKm)#1r|uVO7qfkX*!?c-$!dhJ(z%1^h$JT1Ype zD=QU&f&xACVJCaomh>jUbuJSpd;BGZhBL<&(W*_JX5oe`CnohFx)PA>4riU<$nIT$ zKOvr56`Atiz|s&i(6{0Fd0RV98oraLDIUZgd{HEPV2dz=!}IzxWU9@%9NsPf-IcP| z&uec&^#v~~TZ&urCj~LYtf!`Dz*C#@QxMp@X#W{-Sov~qKLdU;YZt+>&Pz;}or=uD z18aUSiN~g>I}O{ZxmWlc!-5%p1Tg%S`eZp6gY3*Me!zVy=d`5X6P6uU?n-_JT#$Wx zYR!5ENa%G2_q@*IN#ann#_!HhEIXdHTFJfZ ze-|4QvFMb*Z+G3fK05&7dIlU*@GNIHLB5I&lYRy%m6T;~%@dQFZC0ON*H;mad!f`f zgb$KMc+kb_X2gmu!v?35^?2;%TkZ=CE$WWmSmn00@jB@zJ~*V7Q6xOxELXwT!<)Gr zE5ZphUNtMkyIXv7YW^(FJ0iVJQYCPHn-+Vh2qN#zw??OTk&nl1c)V6A@xB45b7d%= zW;gJ@VrjXVO16;lU1x)-!9)~?Cl9K^?IE0hose*p7>dR_eZp!Y)xfe_bTM>FBBs^( z;&LQSQy98a{$`6_s}Av(kGaSE%WH=`M=SFWEvES*%xG4|nRH+68Z5jtwnJHNo9^$m z-Zk}()I+_yzQ)Q~+{T4Ea%2MtX`P1QnrRB-RSt4-xcxK2)cM(u& z5Knr9w|W&;bl1Ix0@GJI^F&hUd(*(HKBn2eSaa8DuCr6lzG}Hk>_&~a z+~9@kGVb|nW{ugr)H&v8dQ}B|S6%mXkq($UPdIm%aWz3rUw^#^!KF@rJZwWrT!T8> zqU0HXV?I$4>oO@LzY zPpPnc#Z;FDpwq2U!lHPaPr|l>-MNv$1pUatKsylmL(^;9{GFY>rdkgJA1Q!oTfnUh zrxWM|iX-wHCtg;XS>LJ@b#<8!-#c+jdq|wpgD%ib%+S@RE-&Lt43q4!5+lv~CabXE7je2+j z)92LZz12!L7is)yit8-V3x~@BbEty~*gzSSM?g=5SmpZYqZPM0#&As2lzPBuk2}(^ zxYJiwf}c!3((hq_b*OIe3-YmwdnYQLl_tE?p#VpDr%DT5jDm6S4$~VIseDu)1g8Y< zPryt2{0y*OzG$wFw;%1Prv2UGq75orufzGOZj~sVa7PdH&a^4WF9s)kR+j-JTIb3B z_}Vt1I{?QL9Kadp=!W|H?dcQW6z%K1388Ag0vq-5w^ zUeMa2beanRck3qsuh2B63m^>;;*?7&+?EK5te8{NhF1U@q~NK_PGkK1czy9*5LIKG zbZnULpo!dXMa@|^?W$Tx>gs|)YtLj)xY>e;OD8>2;8lrf4=)C47ZCU1-71MBO8T8~ z*C|W8z5DUr$sUAJ*cJXw{00dc3pum?*Y|O0;vn|Rj3j%+^+r(!TFV{Sx{5jdJX2f2saZCblfQGlWtRSA^rk7a1XggzGW<3Z0e@O&OC{} z7pNmLH^xV+fr#kIZLD>=zvx%+h%v3I6z0NCnhARG_=u;9Pij)PUYU1DUKL{mI35T* zH@N%RZAJN|gFbjnj33V)@ml32c*o>_nNxm5tei!wyhGLTHG7H1Rfm^rkdxb@x=?fQMI^_t!A&`O@=)|sJHKv`;g}C zk&RJQmqw&DX&L}y6%hm56Qaf@L!TbF#vPsW%kAn>x6&+}2;Ye3Tnc|A9wR^4&5<*pjoxnv_4bh%33@p4_u0~cALYANk5==`rt-sAx{S4?5W)=06Zt#)N7(y~ z^#l}ea^F<@8~e@GkXUWFdD57TJuVIaS9tCxtG-D7(3h$Z{s|Fl_azx~3B#0Ri}+n4 z+dsn3&uua+TQgnY#iBX^kw&i=%1)0dk<%nT0+bQVUHAE(e}h3!{kG6oPI96`9N_F> z^tjd>n58P`=I>U#fWhht;pJEZr!`7n=rE=5;;qD?2JoExc9H{S-ygVhOMkq>g!<3d zJp=CXG?lyKTT&(ZsRM4Nglj>xL8{@~mh_|^^yCE<3NK6ilJfn{A4_j|GBQ^hWl5Vd znxlQvo{+2@UDJJhzkDbel2Uz(ZNu?E!nbr{q92J5y&4%M%FcjM8#7Dd-R#r@BH9pI z-vY};3izEWCC;S)D_9h+Z^W+tM@hkMNr}`K^%PA4=zGGgHtCt9)dZZ~c$j9fp9Aw6 ztou-33#+YrnGemN41j7(|=vZ*rcK7&UzL~cJ8%|{hCGuB+ck=xFz$RT|(n$p-C}ojB}wqWnguwBN$LULc+Ug4tZ-*XW4U+ zE5M4yln3iF{p-t~?%I<137uwr9Eq*(sL*sVOsx1YB{9oDKi^h5X+#nliK~W_d~Gjj zb$V`*xkz?IcwA&a4%Y9`Q_;iEqGR$wEO77Z6+&c*dIf5Pl$mP~?Bz>vG{vt}n5?3> zOQ)X!N@vdie&&=f2D7Yn3wpoxh`=O_c~T+7@6EM^;`$va@6mmx?1#4G_Y@2FwNgz6 zSYkV4f=+2GX?PG3b;J1Jvd8fOXHUu8_-(K1Giy?kZY#kCL1+kL6SDO5q;m+F)y39O z>V9VybLQN%0Uqh$dXpmPooVwarnKO>>e{kGuAw4pB6Wyym3}OuzG*Yh1kWC7ZUule ztHQRJS;JLpm2~RpRO^7mT^El{%)(s*<2I<6PJ`4HfEv}^eWTTGCtVvM#lZF>B~yHR z>tv%rJkC#ZD_`x!+mAx7%lj8;o5POh7*&a1-Hq4TtM#0T|Mc3*|2XMTSz*sDXuDf) zS=)fk+!2xUy)QZrg-?{XoR(uJDh*Wl?tCfCy?T&ie1=)~=s(x6F6JS$mLL>>Ly9Bz&r6+GFmv-$Ozo zy3H-(7(EHIEmCv=_PrlRm5_k2;eTVsQLd5vihNrwp5xJ?w0XEBH-jhFlx5x z*?6lKNk6J`~ z=F$vo0r*V*L@Y1J!p~i4B5(k|xA5(!#3^YYUr^Oe^dkV*W%AmVHg1I?K|+ZQ1HhE#0eB=5m6DJ>|Z4#|iK2AE9nURYj zaVVc$`zRk3WiZIh0zpy=&P;xB<^%`Om|#XNf&y;xOQ|7g!e`0~ zMRE4Z`B(Ja8-gEOct@>SmVOePvUGc0e$Lz#EQr8| z(n=K4L|lTMIhP{TPwQM;niU!mj;iRR{8StTrmq!^T^B*d1WCN=%e6qK4no?J6Mo8)E zl2pnHHW_eileK8AOtk2&O?233G2Ih8#>o!NTNGhGD%j6?nDALDc(F=UCPr<@N4GWv zH%d#KXF4f$y{VdDaXqcRQ+vN=R&VRd+7VZ#87AcH{G-aP9eoIhm{mY`cL@xMmydr} zG{8YPvU2Ivke)p_h+maS8+c6wlFDCQ6mCHZjLa@IAmy@)NS;p_HSdL zERnM_m+vl0I!e2WRpfvj{;%#QxLsLmO>Z)2hICG7DmqVuwe12LS?FSAjYSkYd= z0NG<4J1FF%yPNVym#4cwP2Y`tbHW)#&AC{j*@5;mVJR*cXIkmkc=*2ujV)zVTB#~xYJg}L| zDgnu?_iWKnaaW ze5MYLEWW??IYvd?nS}hf3vjZ3n>L&j$*36;pYEdN!0jW*Ea`kvn*Ch@mW{UUIA3fW zi0OIQnd4d|TsENI-DF~e@~Mh1gU&IrEuY=O-G69?AUb^jwj$V>d4iHJ0ae83Cfm^RGWX7(NHc?Qafj*7~ zA{8apihc;1EPkT$sFDH3cVFBv8V^8?1D}WAwcW!1_7U>=!k6U^mbkTq;LdDi8 zB%`j7)bd_SEGe4ac#)&|m^n@`(Q}*pl{9)64gZZB61@iHF&7z@ z&wlRL^0E}QwIZ>V?l~g2;5mkhEoCC_ua^G&MtdI>LYhd(4#_H%!>bf-rq0W1HekjM zax5PhplNllQ>jBL?mOU#8{A^B$C=uxyYlRvKy@GF!Ajh48Zd~6?Pq?3R+uDIfa(_Q zSPkQKeL_v)xFmQu1R%dbPjp-Sh|Q_WHe%QOk7}d(z21gfdR`$$nRMwAABUY)3S^P2 zHtzT+GF%|33ggx{o>zlg4FYzPHW*xVT3%x-jTS^M4eaQg0p9aDlQJ>W)!%Yfbi2(9 z_9uHlJ3c1+a1xU-gjS|Oi2TOaW414w_uR|R`Gg~YB0Fc8?TC9vQKrNcMx8&nV5R6` z#0wWRn&di1XrW%iUh12C*Bm`m#@1cQPhMBOeQ?_>i?J;gu7#J|N?jO#R*K z!JKzu!QfG(Ne_tg;_DRoo>5*jdz#Y*Y0_;a2%?8P%w7IKB0Y9@xr}f4 zG#n9f1zUH*?f*(&!53E~y>D#Nf%r2kZ}G}Q74Mm!i_P82ylm*v2)=n!)|i=Yrb;_g5y{%F>BV;Zp+3Py z*zx9fbR?AyUuheqE7V(Az1;ug3$;rk$A5>E`L871vB3Qg7#+pAQ1n0Ze|b%a3tQ?= zx7>)WV`I%JQLF98Za4edAD<+v{pV|+0Y4QK$jb{AJngpH!9F?Z9kq;3QSGcQy=3A? z&QOaCSMEbW^EfXckfuR=SGP`3(unEQ^oy{g229{MxAR++k%7e9)VNVw{D?$$YVqnI zk+qaGr(r;F75Qvo?ysP6?XU2e2u&ozOTeMA0Ct1e`T9cd&%c8B=sz3uzV3EhsLx~$ zaf|gn=|>72?4WcSJi<~#JlpA=ZQWaPLrC1*#0!v3e9%kkw|Uy2}{M_h!pnZ2Wn3BWk3A6iQ8?1m*uUQj~fQ(bL8WZN`a2qEO? z$87mvL*1qOcJ*?wCv=SmWseVkIzzta!#7+nKr{0TD6GG|kH>5hLK_`CxbMNenZq&< z=LV%4>~T6+%~3KU-|e~Gs!8>@XY+3}tUtweGej6jpV_mjAPhk^>X`ui7*iE1I%pY6 zeWxQ!H)?zK%O}gt-Z#C{LXtnevvS*#1>O)mNSJyQxXeQ<6oq(xl3S~B0r3co5al{Z zZ)rCp<+NmIimlc6*`()^)Kj2>U&Eq$cQI@D9UIgys_0?D`VGRD?uL0=(eVeaeiHKka;SzRP1GT1(IQF@e^)8bD)Vx8|vbf3FWx^bVMTHz2*qf|V&d)yZ^ zu=j(FxEzw7<=XP@Hz+9$Mq#SQPHX{bys1HNXBPO(FJrihUk-@4XHL9V%9*_^hc zK?o(m%Ti%k;Am6UG?qE&LP~fhbk=t=*~>v_;HZSs(Yck$IhW?{L4MFXJRmY_F5C!e zv$IR9PB$~<`)$jyCH;NTI#%DX%tOEnk^ckB(1OGl=MyA&+=+A5pWZEMR{pka?O#g< zGz)ybrf|jvkiixo2*RaKKFv=nCM|_L7T1jlz3iXeE%_c6dzp2l^f7RcprrSppkQF^|R3$?}!I(00*0J>4&+K)e9Kz zy7N(NTBOKeM#}XI;X{F~kF~XPN?Bf91Y3i0IC2GOEwvoSfZIENJzvR@(97;qCl417 z{Dp9jRL0FW!kxr;703h2$n*_|3ZRXfkYn?>(~(r>`sRd|78K&xc!1>&fUTcC-&(PF zL2tPqBz)YWjq?mB4ck#Uy@KDK4mmDGFm}SmpbAquAC3shT?_87&PLPF6wFZS8nfDH zYN-#>^`FhFDXDc|#~qdNEnQsD8T9}TP4+wx(ZG7_k;sVpWM){wNfa6S52$q?(mw@j z2M!<>t^Dhk80qLuyx;AmbgDyojZMr4meng5Rd+L^jHS>i_6VcvV`Y5|MF*B+(b|P> z@{(JS%kG~KYyI?NKw_6|ErLGO~xERRK2T6$-#qb#bJj_nu zx3QZ0Y(I8SF6%G$S~}&YX+c7$IZmZ3fcgV<;2hG?Ib*_R zf}R>7?Mc5FXJF>tzINTH#G2N0c01VdY%Fjl2$MsA6o*6LwJ%_|oJ&}KyeIA;kE?pn ziyE0Y3A^W@z4hZw{afLi^YGL)>E<97zWkcJi31NpOt}x(zgO~NyvDA!Dt8Rc@tRpX zm)F&$=HG578*~e?-W%NX=3C*zM`^>r`}3?~v5eaPoSXj$tzA<#vNPp57pvyX0cupU zT;Q-@0t6pWe-;&>GexvtkiC$jO6zC96+_AO-)ghkU-Y6jPc#(t<3YF_+>4qQ^{gIP zt<6EmW6Nf4B~YG9vd61{@@0!ncHyS6l9EYui~+pNZQN$0T~dw2Chp$4+K&2gs9iZt znhVw#TAYr<%B^!xV7Rr-!5^5L*m}i+%v$U9+oUkok`9#zOhYn+sJ7u?hn+%&7ZG`Hd9v&1PIDMDLS}$#yrLyFl?tPc<#lj&Id$}yqbWb zA!;a$V3=v6tVl5VRdd8*bT`yYYkG-Rjp$88&t%;N$7j*5?D`?$Bzy})jwvsCk8dsp z5-dA{(W68wf%DNV%TZnx9Q|5pa&@zbP`*wcr zUuS?X^=lWGkrOtgRXYBaPXnotSmFOCT~?_{l68ls^9*Qyd!Yy5dInt2zuXu8SNNr~ zGRn^YL;q*MNBU=gxL&Im0-mZE9>tSn>_2&w4!c#oY*iHmjrx$okR848VliuX%qNKN zP=EXd*M;`O#TPrLD+bxGH{%ddIEG7y{h~oHgm;l89@~eqjMjO-IdqJ45bhomHz;ZN zI*jTW5Jm!JU(V4| zj<-p7-)P*QE0{1#-0FQD5vN1K0R+Y5nA65gd8o-ur*Dxl=f1GCL!w>H5q0UxP>QZ@ zKAN94Xr6T|tY$Uf`k>i-4C;P#aY<00G92-?&on4ZZ%*1i3*=+&?}29hWRS zh?vS{$bQG!+gX@X%Q92Y)|!of2yC6OcUH zDf5~IJi;q`igu#uF4;+B&PS8wq&%b0IIL&gl$Zj_t6#|6xVp255-0uo+RaGpyS)*I z5(<29oHaziJ>L{F&5b8{dhk`FE{obbV5l4~GwcZ78JpJ_$yr6_$rCd#SQif0g)Ibi z3vg^Pc+-{YdfCE)+K;BNI|vSsfknsB$?Cr3awxi)7@I4%XRV`^WvS(I7H138m06A@ zEux3xQ$rG0h3?0JPryPkcPyTRJAy`4uyh}KwlGo`8!}jqcQR_U=zvax9mEAtgZ!0r zUiNKZQ4NEz7!8eR2K@pqU;V^2a|Wxv|Iu1)i-6=p2nQ7*ru%vY*23v(I z3vFuJQb!O!3rm8yxn^u`?Be%(b4L!(-KLSK6ylPk2viv~y~iKKS;OCrUf~4~A{C9n z+)sNL8UM1;ZkPk_ua1^0C?K;}Yf*mfSIevLcBKb%K45PDQo9%t`{qJ7QVUP(cm95- zD^9c}8>>I{XE_UtozW}ZPIPQo*(h4n?Avv9u7{ss5*H!ypfGYFHoy*1@%|E%6C4I9XFqyb)9upqnMwG1AuLD6U7A zKcTe8h!2vHH1rksFbDa<1f8rhZVIbupckHT!HoRUdo-%54?NC`Jbi0F1T^C4gO6H{ z@pc~=7}cA(N~yReQ!}=w)varyrQ+8KL5sXYWT)u)_ zX%L7rWX^TP{b07729gn5zM;X+1*5=<<`uEVBfeiB?cHo^a=hh}+&69R@RSM=b@w8) z7o~H51_aLQsz};8*iUh>Ns-7eZ8HQAIH*Szu4Y`r*Hw=nLcG7+q#5ix8v5pMYFw&r zutBC|ahQL1pl7OQ+T_i7$E|XQFQi~!ziZ_TQ(=f^(%)ferVJ7=T?4xdAH1#YzR9Zd zlG{68+y#+9_5@w#iTCiDf@g96Qm(XlRQ;olS&;ST$+ZF`o+k2qq;UEjA;cE%HXpX~M;XrjQ=GF;Ae;c?7FOSS>x zObbXz6YIghX7wYL=FkG|%&;8gqu+2gc9;hAdI!$O_v0l7T+6VV7aXb|%w4SMj|8$< zhD*Bu!VDqnl*;MFoe#@%ebH`okx|k4D|+J?gY^qCLqlyknzRY@!7(z2;cG?tiG0*v z=5Ft#fMfjtn3?zmbv?xGIxYP}p25=of`p{81m3<5SYn?{Ofm92m~lif1K>wE1EA!E zOb)nDKeZOVi2kGWTH-I+84Vb9<+*p~xUR#b(LUUHR2si~b*m4@X6c0)v(94mfJuHf z1J#mjfyAcn9Br7I8mw|e!Z75Iwj#c)H$zi$!+H$0?LNPta=Mza!HJme84Z|TBu%Qe zxi(JS2p1&$Z*eYc^CM)t=;g#oJU|1K*kjYvtDmt3_RA}18tbF1!Wa%42-FJ6*Dpk0 zXJ$h#M_c@@kl!p_ejQ}Osuqe>pZH@}|L4vg*?*hY>ltA162K?&N~-pu+@mc7XL;&U zAT;T(v_O1P5as2|_~ZF{U!Ekj{jd98mTC323s)lJ#@aeaIASJWg?u00ALA1J)bTz~ zQ z$aTW;SNQoHwz{!w5zL8laT@m7(^!6F;OPM%5?QEctkiatHqCCW{h}rrctsokn5v;o z8=&`&5_hefBzrMQh(C8QuiM=MwPrH%~W|Q#me2InblK3Vwe3}L%Ty7)I)&i=-xb$X@(lS6EE;vhm>MwP(0@%MF z#43F~uL6cNwntgJw?pOnru+ka5%ixHs-6Lv&wyWB{vm)5KZ>3Kb~^s!{=c2tyP}W3 zVcnfR1EP3;slf97rCiqdu8IeHxkb;lWa1EZ_aoEt&L&XSyyNbSBzur_?$QP#x};j4 zb@9!EcwxokEm${AeYzkd*LrMT4RhAW(enUNigGz;BX1Sjx(H6hb@JAIU-jKXB^;&` zuoWCJFPdY0pOGJ5k!yb;=TuOmk017Bu`4+F>ybXw;ubCTg0>-IexW$L6YVh=k72o@ zA7C0MtvoZ+zC=KAx%LbobvVn(>og>F`N^Sgon<+FME)l0om+|~>S?kal;p8Zzml6} zJxjB3w&K|CE#V{LDjkQ|IcHHURLZb}^muD6{7@7E6y0lo;#=ELc&s*l1_(a`&ikGL zsGy)Dr!D0OmTic)!KBs2s@Mgzyp%>hJdgk4j3{!6gMDneb6oI3cWK2_>0qjFFgHkt zPPTmeYauNuM)|F@H!OnHe@9mhk_eYtZ(P_G>p`C73Mnldgoz@NS&qZ`f&duWE_Id` zzAG+2vd{hHU~7xeQf+`H+cF?=z+PG$lHoV7%YCGgukFF!KMxKqxV4XAq_b@eTT)DBn1sp1bZ;}xPb%uhOzP|u@Q>9-iZ0qxv(ft37N|wsL zX~G;Al?P9&#|`7_pW_ZUUa?ANIVwDTq|uv5ZBd{T<8}o`oO5uB!qBTzwpzXy$8e0GP`a{)iY~Hp z9S$6Q5GO5^XbFGf_Lu*4#x-4=8` z#a_~hyJRO(QC3xoBm2Uwh-eBW6?uJxv_UQodqOU2t)(S+m*) z_ApqWaWW%3>v6Z$9^cKWUYviIFdcM7&emq0#{P}1UBl9?AER&dVYxqk~Y|7k8pSX3hV-z^Wu`~RgEAm)WL*k3+1NdDd~uC!ZkuT7mg zV5h~Ul97-d%FGQP`J!3Q9D9a|9&AyBB{ccU({ z1b{h#GJ%g6DL5P~98z~fPYweNVdJAtu;cr zGAT;6o^))e+%PAB>3H#*oWCrDe}MpBXLV`ikiZr_?W-Khooqka0R!yV|Ml>)0EXnT z0C+atX_wht<>KUtXU~f0h)r(%9Ch;4ATcfHP|v;D=G5OoIC1GqM&e3r#>!;q=_+X^ zCMFx8kH4b6mF$(<-;Oxf`qx*|rRuWO6{L0%k6>{OKXi3MYJtW|8l-!>NWs0p7JUCfdV^Xv?Ox}5+3@vT^iW%9l_n{$!2d!xjO<8OWh8}D;! zhrS>1?Qyj)-Scty_ssR*N^ezfw@hPsAK_6zin@hc;R*Fdu7rnF;HqSdq zP!q0vK@sG5qdmuqg-U4tAQ3`z(qm~g{z+3%kz-R7eNBh$l^pX5@{@6hwg;2vPqvN+ zZT@Y;1I`1Uu!6_Ttp{w-tWb|&8W0gR4))$G_=w?v471Bn3vZ643}N)gz4R^Dq@YV9d^4#@WK}*z zi{Mpa51*bqJ~^__homV13wEtTPOg|Ft7#%mR)Po%*aRjZaK@)BrnrO+Vej}Zo!9Ng z6<1Sk%d(E;_Ra-#q-as_s3MB@a%H!yD8D}p!O$SJ^TP$J*xYl^&b8apG8Ob~SuWLd zm=1yV`#;6kJ!lGxzH9xW_YsWN75ib-jkGfx`_)~)16w)|vXIk!KALusF!sdCGr$Hd zxi=M>%*LCd8*J&k2SE2-S&L$lngx=dALHCFR+z%KP;0VgyV1GCYBPU_RLvOAt}=Vt zXIFc@@%ns>CUt4gFVQZd@XB!+Cd)>Wmu|M4I)&s4vC5VFhzk7_^Rc82H8JOFZ}q!eS)CXn@3|8HdX8nHGpqveC9WTUysxx>ysN=CkBwCCxWbTG5J2{pVk2wqs<;&xG# z)D%d|5)HylnEAOO=6p*1#0ZQX*w~Gtq%lZuMnL+>8Go#sNnhRG2oBv+P;uCBE{;PQ zI8bdANx^sqz~G5eMb2Iq%GA_PpMb<0%^5ij`gkKdKvML32! zTT5L@(S@V72vrZ99c?=Aqmvt!ktl;2`N#2>U_#(37=E(m7X1hZFon$j4greP`2Xbg z`%fi83}&|Ox{W~kX~8hQPJFlG!YLgz=Kad1JgVK&!{5o|vJ-zsy-oq;JE3DXS*Q2y zBQwXAR8#ze;?x4M#VpGS4QMznY{$GdlMVmZ;oSt3Wo~g1G(Q3|XAN9#WDhlfxI9jH z9?IEVKS7Wnp?f!Nsng1@W?0@Q9_X3lvYNsb8)pJ;OQ|;rvIcck^Pm()#?97zNaUH< z{Y(4M{M}~T#~g>Z@z@Q7aBRpDO))$OcLPF}ZXeD-Ezbb6hUO-t6CJ&t^*vXW9sG9O z#`f1nSG@jpc9Dm=EX#<;+AdrR_jWRCM!7MjK-3kjANorGvXYb%HI(7Mv387}(NLv7FUSC6^!3RclWynL4; zAMK0Bm50EtOQTb5nUe!=z~OJ%lRxFvTpC9n^muJxf~f)CnF#3N`N zNkoSidqSFuG(7~~Ei`6lECb6Q7R}Lr;)icXwYCb*8F;fy0f8(*15G_i@5K%7>_#sw zg*!>z3iN)~-#}7j5L z1_n!Fn@3i?&$QG8#z^9Fxj3)i)j??3m|Hd>@WmGp*=%zItI!3ri13Ln+j;| z3GdaA_B-K>T%OlAHwTha%~S|wCtmgfB#=AJS4pCC^n3yN&j6IrcmyAe2ED-h9yd(L3lSf8on}S5cQeCVjjew4pQvo z)S4n+BQT&DFy_gc3lEoNZ=HDWms79|U6C=m{A$svj;<8&Ini*S+XW_qVPH(!TkR)r zTj&Tm)in9CBHaAmLnyZ7>J^qDe4GQ*kHZkVAv zW95YlBULMFdYv?;HVRC|{Cq_4_rdSmXL9SBYU>}Q@|+E15f^t+dmUZs+)UH4`fA;T zsclf}zWo zchi`Ky70T!tlGC9o8pZY-)!BA--U{(k1Kh0o@)8bi(1pBDn713jblS|ikP|vLkBK2 z%p2FuUpHZ1H6f|m{O3@}hZ0`V3xb#JoBPM@x{m)@-Qr*8KeU~Ny-F1SQlhBPTasZj zl=4edqua9ONcv8-YHZ;&__RSJlCcjbFe-4*B0tEQgN{86s0@&vWAgS1uY9b0z2cj> zi-mn`nz=y^9S>gg|) zW{glpP?{b%%{BbG(mk?!r)QqFG%ON&NF}E2y3V@N|M0t>KDBlu)}oDW1|cK@;`kW8 z#@>Q~sqdO1r~~(FE8U~8sxoIhRvOUid9YU<+LaeYicV0sx}>ZH zsOD(oW;rQv^9=SV2?*RnlzwD+{(WJAZ*vOx6D zaWLC&{l0e`f!zE#hkQaVaCXJ;*2ERhOv~O#}G3dn&$vGtX7v zt~C@#%$xfBfc7>fq5_~ZwyTM*@!&LpI(JUWOt+eP>t3^B{qw?WvL9FOGU1NsN02N9 zFW-8Ml@E%&{?s*^;DX=0xy>Pd-#%^HFiN5t;VzjRrK6)KnKjp_(w=H-N^f(wMG0)! z7W12}0byAt8R4%#z1E%Q^xO-YxYM=fZeK04#(TW>3YVm*%@LFP+2b>9I`!J{07^i$ zzx6$zaf}qFK8;>~;h=qUqKaOpjI6Smp*wc7=E`UBZ#neIyy#uE- z-R#~X1;p40j?xPIVW}c7x~l%ux7UfnxUD|wo}cTEzJA)2XRc^qq$V$ls7iGhUNILg zJ`}%r{g-*b!MAN9P|LLyK8SpgP1OTWnl>SiOdvOa8TuZS61%g9x3Iz%Uf0GiZ6-@B4YBr|c+0E+-|^DlrO5NDExPx~;N(S$o)P?+b@*o+x`F6UuA2R1wP zo!iRqZzL7Db8PcL-QrmTy#3~ud`93zQ%K5Cl*uYBT?~-lW%hIilQy&J;fz>ShI&}T zaSvBQq6ERrO0#|jan-yvZy(BqY(hcsbN%w+CocX0BMVoGm^Y4k?FFTnzW^Z*1|?=M zh(A+e7Zwj4CcjhNeZ|c=&{Y{6J^}(l*f(4t81fU(m^c7Rdy^((2t)#e$Xt+IfJW9Q zX~UVQiJa((`vw#Z8sD;;pXO8J4Rn>d<5FCmB(i+3l!y-yQ)CbH9mzHY542?O3nO5} zcqoERYgy=?vLr`J%`|et6mQ9e5<;cZdbvt(;FvSPPVo!iotHUD!y&xBa4H`-byy8K zI26GX)LK#@JkwY!AM5*;IBFGokZnklsESD&^*4LN=uQ}xZP8e_FtxHWZ1pUwQME#q z;v(1-J9VM)G~~bJ`5&e^bbgSH7=!m-sfQF-1l(%+H8X<3@EO>KCGYb|eVDFxXT9Op zH&hu3`y0Wug@s%HzMgf2r`kTPOxD9R+XP^!fQu~KFha4{`aQ0J3s9F@+ zm2ZaLBhRbsTH@h*Z{+SVnkkZO#LQ^Z2aJs}uRWN=?M99`$|pHi1@X(j(5wc$v2hwg z^IFXHD~H`6JgF9<)q_H$Rho_8M}1Nb3G_u7*t3qkHpR!5n2~QPE$qc4f?U|VSnuDk z4r@s?5Ixd_>!uplzfi=V!D=OscK)#}kl>YocFG~3Ff*&R&}4$73JTz40N{LpQ9eAGw$f~V1*UC#_+1bIMF^6 zI6o3l2>R-Z^|5rAC;h|t)0k~Wn}AYBzyUrfz8`u*gd{;~qs?c(_aHpe=gU7g$a4A3 z7%Q;MN1-W7W)(r_rhZr;(2uAUlV-E?Adhl@FzuA zW1M=kx?N=!x1B%bt3%-TU8`Yt`@2~u$Yk zH<2`&lI&ySBiypX$3{dS439KY%WqaDZQBkl8%VkW{dS@IMcXU`?$-A%ZoU*BNO z>P3#OEx9yiDvsXBl>(`xy;B?O2b39Ws-i!+3SC2y{UfCL-@=wcB8gnJub2cvy34S< zeg6NEEPg|q|3E9cId2UPxuBtHLuRa=1)-X=O!~gR07<(c{~=&n6!HqZy{R!>HM81Z zpq;)ckK(HUvR~~)>gIP`Drq@5DR{IR6qRGoa&z;n??H<5g(Hg;^pG@ZAN8?C)u>Z* zZ%U>bLHBu@DwmA{?imXtX2WPN(1r0cAL?O*wL~-JKlj0?@?TJ1rm!<2dL32YaBMC- zu)mF*zcsfq(Plz%=7dBu$B16hU^$l}xvSb`{hr)}HAIcS@1rM*iNH_k4-;kGqf*|b zZOkC3;5%2StZBb6UDxEQ7p(nMyM;kSRDC9D$GE?_d#_6n?V#ZC)Mo(Uo6VC2ACqpd zO5WqZG=`R8x_slCaQDNy>34HNWIS1aBJy~R^9dT0V#`C`661{5gwJ|&y$e5A^}^!= z^etEwnXoWPC_X-WyBq9W1%r7UHXU0_PdDxJ^Lt8q28bP}F2X&LZe3+BoqTUIbQuH} z&rL_Mx-lIU#a0C_cSR&K(F_RSK7xth2OFtWM<2!=Ug+-8y%oliHG@$p${s73qAeNd zFTTA3Qbi$J7rei+>Ru{vjc^cr5BD-~S#fQBaVxhkLtqP(b)mKm8$_VjH|k^e-4V## zFVb`!=F!N^J#m-p4ztsJ4pk+kE%P6`CbMrIH@P#eyaorjk(u7BQV9YL-D5S`_@N0~ zIq$x}T@Ao*I%d6(gPQ79Zuht3>R-j;Xg3q5=3Wp!bZp8XXcGGVd2AnzAxmFAZD>eG z8Jji>`=T5n0uu*|B^M>Ah^XvUiHzuZ$|V?W63(>5%UD#^26%wW#Z@51Or6$>P!>BU zoK+k~r$L~5z!5vu@p2V6w~zpn3Ug8;U$>3HrQcQylN)slUPFSCSaBnE3vy+(U%V#1 z$ClpQ6OX7h$PN}>TcV5w`U$g1LL^iIF!d}1v+06=!?2#X$%(l$nvZXDSO zeyf74@A0f}vqTojlo5&Pl;}}!xqE7OA)^M87yAXhKBe>>oj2oGmeNH`MXYDJ`nmeH z!A}{of^95&tAIffX7+I&WruefIYgZSDZw-cFC3==)Z%E@nkg9%J})0?I~zh@Ropx6 zfEuQYJ1-eujE*+y8#fPA*zc6?X&{%Bub##_rubX14jbweqs#W(QpfIA3(;t*fk#E= zOl<1rVf)Hcf)*|%6q{^107^>i4WZJl`4+0)&x^%Vm8P) zv_hK_rXul5wdgg$)ydJ+w64gXSOdB@uJCcCG=3;}_nQv(}ljo1whN5-s= zy22@nB|}G`WTMc^abblBQ;(lW7Q+RYp1Jwtur3H6lMH3M)|s<>wHYgpW;T5&^)fZSS>jr- z*ROCz{}0Z@w(zdOHDDh2x9A&FKeZQ@=*2wK5aWIe^4Wim7Qz0eTlBs}5l8IEX-BpR zC+05(6u4*Tez%sfR5SDbe!gv7Zc+0^%Bgpx`GOFq$8VG_EgmlfQt@G}QITzl_v5$R zK~N6hQeuXB@=H1r>WVLZf;G+bcOD&WQ&^|q6r@%4$A6)4FUSY%ra1r1`9LG~Fu3(- zkGDJy`21qd8^am;LqoH}ao%+0-dq?>a`zD5ZXQFddvy@-+CG$ju~+Mn?5X`|F#^X43_X{tP6+3*FkpQ+_V_h+r z#C}W75B?M)VjcK!X|%w zxA({a0uFHH)UKRlQy}4eIEKxHzxf!I`faW;@!9V#aFynoi5H`(g)5sIVQncJX!Skr z?iNECc>ge&)iaJSYNL2LnkJzJg@-P&chkPnLi<}GU3b}+!sN;joeCsPhIJ2jpY`iO zA6Kl0s-|Mf5YKtBN-WZRFfmiH+44`-&KKcwSL-3Fi-%u8t2V}Huh5punr3y_5NRYs zauCmDd*<2{%}(r1_G=HFqeVXx{anTU-SurhFIQ4&-k6&+h`=5O9W_C~4n^4jyyE2w z*PKa&$(!k-&gaz1J;lJ7iA{}-3<}Jkr-lZ20@XPuw=qIRD$S@Bb|rd4EhXxY54?{1 zK@bQTyxsRpf%1E;w?zd2%ZJ;nt(~BF2g9Z|M~NJ;6Ov59HVwrT#q=2J(Sz02?KQ4z zK;maeUbgxhh?)%kSPn^y+7Fs#IeX|smEA3s)~hF7+~xP8Qx)ymsq zgo3|ds^A?J!#s5-Un(C0SMYS!Eax zVx3A(*59j{;Vj9}OPQFUG~|~YOe?&zOj(+6SN`st5o2*jL%`_jnQZo>e9c5XJ|at7 z6DNN zrY7b|<0GHLuw+b6EU)v7NIR5OUn`3?0KrZNonOv5J2eE8|^vxS(4(%vDUnxrr;U zh~qAfwUg^R&gUI3=CVHQeXs3&zypZ%<=aVV?)fau-skFhWg@7f=}LBG2yq*0s#9Y^ zlXo+kM|d+zMqx3QV;l=M@qGOMU2ujM&&s3Z5dgtaAr5dmXhPqt3~a!C(dr z=*n^gO+gd|hSfptexrnn(Dr9ukb`@T+M;lG=ZxZ0eN6Z6o&11ZTfb8H$%AhVYyA87 z6WJpRp#F!Slwv@kgxE|D;i7kXw=iMEmv17lsa1tV+cHY8E1~hVqYM}_avRz2$UVN- zSepA;nSF>N1;ZhHJnY?h83f`()nkVzRJXq3{8KhfaozOwVW#l-^5-=X9~#FCEFZa% zdD;F3BR(8u95LBkp8NKEaWA!C{!hkR%|SrlY_zwwj%f`xO|uEo4@*D1G<)gf_tKd- z;0uV8U>d!=UxgBoqNpf3e7ArVR`Js4Gt$Ly#yBp(yWRt@yzZMR85Z^KDJHKNz?+fu zLBasemON8ZIR>Mfua=a3H>K#2JK+2CI6LRKr*ZzFZ|muBcuVSVe}58_bBk0CaC4`H zr|BKV!s{-NFq2`8Fiac4NDb|YQ{Dh<+Eqi9VvBWkpAd&vRsnDtrJRSP1_oNadz^j5 zLr0G2-+f`z0g9pwFPZT@P+G#z2V}0O2_z#OmYwdH-Z|gXzH`Jn2)AxJDomtG%YD@= z83;{uF34URIeMaXr1_}QI8BMPsgBJ~OBn(LQnBL^VaePXSmeM}O8UzN9#1A)MJea) z}Ss5)Liptt^S; z(O?f)D5dSCEpH!vynCUH{xA}ty?R^W8&}5F20wvaXr?x9LErCC+kqZ0Zd_Eoenw(u zz9RJtP}jSQ3@OPX&NA4_Es!bLg%+L9?FBooSY@{=M%a`>^60}sADPm}hhpTDPA3t5 zI#?$@D8v5v_k&OI{N-Mh5V=t3Gh!0TDA@X2{{&@npDgPIM=mgNxP8IWiS6C>H1^2# zK^gl=F}60(obIF`kt$r3r9q$9KrGkRvCWf;$bxj! zoqqGz3R=&YmBm)(EDe5U1eG}(l9=t!b7Ee6sts`6{|+_ua9!H{xC7C+atlQQ000W~ zzYk*!kKz}gnK9m+b z__Nkz@z0Z)0{pb8sux;SU+ZbhZlhCg@%S)G*Lw-i%eKFqY)^s^DawP(#knJT`34F; zRQ|`8iK>T}YR1G_>BcI$;b^@vUJbPxP`E^l20eFNhLLTWuP0q#)mF)O_t0v337b4;& zx*LBySX){BRlz4<0n#vvn|$>Rt`_gd*=f@v-v#C-dQ}>En18)`kj*CR1zQx%09!5Iq zVYB$Sqeb#{ijXFm+l1L=zYk}y|yXGoIhK~(47 z<64FLIyf@j{U`8q2^A0K>sIdkE}NFNlxfz>pO!<L77NnhXFdLo|J z|1-zt2D9}g%Pgv{tesuXHWZJHMZWh{Dd1L;{d*@p7}NhmaA>!tp*9wkGrnXXy!NST zHU-@QGZ8M?JG9j)W>J@M6iKHG{>D0ji*0<4xdgbm{j20ZuY;dh6)vJ|Iu^1x9 zx_q*{8Z$k@WhD%P4`STtn$uPekA*5lcvn<7G#ew7b(7jOWC%J2XBvDS=?fl@+UD^= z_=mGVHemMC0lqbP>VvP2D_R>bj1V=5#_RwqMT2GtzidY=Y*4Fs^YI42p+oU6=cf0x zIY$ zHI1!IQ3t$X9pPI&C^2lEyY}}fGocdn6$h(x)wZ(7$`ibKzPhyOF4a(7W-4D4KC-^d zVwCDUhGK-K!rV&FD~};~PUJ}v#K_v10^xh6tW{2j@-lm%62=E{1N)Y3QTm43PP@>R z0B}GZsD~8Fmqf2V0*RwrxWABm`u;R#KEf(tY!~u_%XW{KtWS zT7QVzTlKdeyhJkg1ra359Bolf=o*M4FqNskO_o4h$y-1e~ z5_Kki)tBzeOc&yhx}%Vhu~o8+q2k%f5+Wrlm7B6m`LEF1Tqp0HZtBq|_@XeW!-XRT#P%B< z3m!gwo$gc;6JOr!v?LMFG|4CcASD@7`3(3#L#Sa@hT$T;ZI#$)m3Ss)-r4SP7(4Sm zly7f(E7+c+F#^NQ&dU9`C4dDLQ-w?zmgw>fKMs9CCh6%6tpx~+pdIo!B zPrna+SoD`$iMsT^7Wwi&7kP`nG!}ne|6W;8{DvBRZ?lH@-e`V z{E|}WP173?6){QOhmgc1w9kAK!Tv2?mCoeC$QiYT8BH5Y#KS`>_WER2?dIH96$4(2 z+4JIDac0BrRuFy_9s3_UmaR|@*9o)%fk9EqafA6QJadzM;ruz}gby4M2ko|l;WD3c zMaBX})Kb_EEoW{yoCJPG!=&+efYl zV6|hE2s_I)z{&~nfQZ(%N82crl{9$tdyWyS0eiR_K@r2f1f`u1%;wL8s30Uu{Z`mW zJmU$};|Ux2#-bk9N0Uqhz-v;+$d;LDGmGkNQJcnDA(!`ZwRrHvSMo-QJD=hhl=v(?1UfivD?WP=FrG zR`8JUPohJxH}Kt86|Q`?GwV7;TgvAcJLo4+1x5|eWXfc&2u7}<%%4`eT}r0WAnHqh zgT<2?S+ccNbdHd^HpSyCh6&#$z55GZMNJ`RbMy(l4z-~eKj$WBxgr@U?_XeywgqK! zrA6cBaaR@L;Z^>o0W=p5$_dzq2usstE^BOeh4_-<6Q+Gphk(T;n-Eqvz>aOnqi>2m zn6z0}jCA*pP4u*<@Ik)-1S>CBhdIp5hC0W*pH4c1;yaYG>7-|wxQ*S&afa2cueJOviv z%K20g1P*Pj%~^X0@UMsAu*{kovC~sTUn+m;Lg+|WqrGAvj(4Fd( z(k03{cT|PBI_;tIx5j+o&L5O8-*6>Qh$jG~B05~O6+-tTsz61UM67aOdZ1s}FB#8i)d1 z1yhMsHdsWcQ#`scpgUhGNVWe}NczY1r}pjl>~#E7E<5BeL(fniZ3R-mpVvPRCiVZp zRR;`d60fQRyG3ZetX*9jc1->D3&3kjm|_S4q|v?FNO!O}KJVH3A%3{?Ms^PmmawD! zoYD2bdG|5>S-6ZSh7kW}Kj|+irh?k*{dN#P=4p~q$~PGX*p@HfF~1Xa!xpVb`6@S$ zGQg>>rqiqoPX1n(l_KSiYbPqrx972tVK3FGP$m?YvnHo}QV9bYnd>;^yFyFSL`K>) z+$p_M#Lu&lmHytMn;rM+jeB$KD{3`G+{;-qTBeM2n*eu3k8u~>*+TZM-xCb)Ur_QN zlT56?^(PMCv8}*^w&r_T%U=L~DfvgG)DIZxybKvFv-@|bb7gTwDJ5-BI7oOXil>}J z6mhM?uZxv58I;`hRjBm1O-r>1LsYSxWVep}$2=wb`)1)otxm-ptx6BI+`2K)GN$jK z@J$A0@AM({ixlh4ge{0YG7AGp6$8cWbkNV|w!;F_t6tGN2(_8^`UHS6knrNpOiIuujPEF>T-IGY7pe1rE4jb!O_{7JHun0};30QUa_vkKt! zZvrvof>TxXGS8{iGbctDFy%9kkoGq}8^Qmwy6^Z;PkuJ^A7t_;hM1eqx4$A)(i9_qb9fug4MW-Cu zzr^WYP$|Y*{frs-|7f++e}`cFE6YIYPsjIAo@qU)|4k^w-z_i*TAm24cfPff8D_Qu z5Z-S`)-~H=-0pBkAIB)pY8frJO5}mWZCXgq6?MN zCE(_ZiWa>d7y(TG&m(p84@&FDe>CNzik-)gM&~Z1-WoVR*(C z{v({D%j!>4eVHd^m0Mr|Al(A@Z56Io&91|T*Q$R1{s`Ekm)!mcfYCLWap0_|G*2nT zNB`s=xcNN|t>}Mx2>-2i{RuG^cZ&{k{gJ}L>rxXCr9I3IEq>mk9WlvxE#%Dc{1>2! zd+?@Y{RJO2DvmW{=QJdDzTQE+2HU6&^Xh@s!7l)H0Y0waBV$g~W~|Y=5IFq&_jVG$ zJ#rqwuvddirGYK!4B{a$Us-A(_(Co&;Y*2`+#zp!b>GE%djp@WS^bZ|jjw+_`(koK z=_|7T{wPdkI*V_#8XM!=xn&)9^q9Pd0Q%X5|B<5bpAi~!joIoeLUHxsvY$S=2TSeo zF*(lv0a`Tw@oJUtuNw))2{7;80*XU9V?(_yUh9+M*Z+@2knM&J;60UTV*uCHM|ITr zr^+v~F>@)WB2us2&~$kDj=&9-qrrrljh!O3GM}uCphJ742u^(!WbrK>{z3^22|>x9 z98a>n2ys8OA-k4+7FU>zNfNU!tTw%(`Y^PlB?CwiWk!ag+bxq}aTP?dxdr0%0#~ic|I{TBt@i5mK z9;fDujT^h zw%1V%0H7wDz_iCEbK4Db^j(RXEwUv)YW1xxi*w^E@o0Jz+8vOsZ!0Yk4X|~#=yXP4 zT`d#2r*VCLU#i*9j4g#&@L&fbhCYAU_0`+c;!IM^)Jv&{3GSrsY)3R$M<$~t$FS3P z4q4XOK?v0pb-IM> z;d)6u1n!X5J0r9m1BN9SiIikb zO<-Xkj>ar*$UUbsb6l!&rhWnN9x%G!h?SkTiTU^OZqX@alvo%@3@US0gV4ZX{mb(V zIP2CZ>jKzXL@uo`G%(vco2%_OCiq5=Bats>!sC8A6u$Rk#^YV)#qWKmU=RmrnR_dK zL5Wi}#?+D(MlaCtcr`3l?h<>~cFhc4)dC-xd68L<01TC6Fc$;JsGC#Kf0D_Xg@dC?Ut@2Rh@X(|nkHW5 zFVE4MQ-Mez}E2ErF-<= zw*W~e?lW$m3OrYSM^xvujFB47C-rCn(!x!1=DV%8Z-Qm9Z(s`YR zt}BTaULDPc<9hAWC#NpVu?wUDFV6U%NzOhd@$@TP?NAoI?&o2_lFAAyGdpT!=RBr< z?&?K7O*BUHKKZdbu!}*Kk+lk}WH2XWbPcIJL^;MbK|E0sE`8~i=uqB);DEuxio+tK z-WvgGTH}VH=uvw!tRn)#F+v>z&wyhC+JSXYz2{*TRFTB<^`RK!<(Yh!%+y}Bgyu)d z$nooNlR=usG!aee&tns|n43hs0JP7Z!R-5`m1}TVb8Ud*LcIc}dejiX#}s$jA#RUw z@rQ9HU$Qqi4Vs#!l(3UvD880tV{J`9!8hCP!{#pmaMMYG!;D*&?R{(q>&Wo2qe{I! z5PJ>2q9~JYV0bGpw;LpKDxb1Y8Gen!=@1-$Fo9+P!or{oY1KQ=2V3{*5PkK$_yssQ zFF*vrF1F1Jn}CL$|`YeYxVWrWwT& zwV>Mom!7cCyqcoN<8F=_i%%9(ev~O3^Z>h2MD#`#HgqJ)LxYskCZN9(C|33qShl2* zeiBtDwk!1>oGQ{h)blH*%3PT5NmurVX1bX65}Bq5hwA?bpsKi*`;AOs&y1z7o&x&b zna=HWwx^QYk05_?$kPs7Qi#g7`JSNTT_HWOohuxI%Z%1HRN*cQ{LVk+6}8*PI_FoZ ze6et;UB82igIR|AdbWo0eeyN)Ivvd0G%fgQ{SW)GRqE{QF8sk^-n{|)GO~{r=Lp1g zOr(#8Xg^?oXEHo14~8wHs>rt-$ahUfVyi;aM^hVn1_)NI8@$b(u0Iz0&p#-aCuYU= z%kK5!*?jnuC1pbf(J*J*7Bw%g&;mzmO)9T{zABtsj;{G7;yAXx;PB))w?kZN; z50|t-56lE=6V-ez8CC4$PDAW>ZP3RXa7fPH(&j8$}FaIc@#CXdeVvL~zC zl5o~8wsUAsQ8^kX zv&2GLe^h;5{#(_@L11gmZg-)|J5#Q}wC$r^fOh9A<=1)==!%;v2N={|eSzeq!KFq^ zKMGbl@_JX_=qZxW>zt+ZzjcX}u(U~NoP9*wZy`dowViiL98p8R0!;9l+C85|=3u@1 z@cM{C8@JY%J#3h-9wQfei|;Sh&}!^P^U@|~_PcD*4e*EjiBlG*$ya4A<{15X#X0+s zt^r;{8bY$#q9cH0}r>r1618=^oJ56D|3J~u& zoxups=Op1r8%rNOG_n5wd#?5^c%=0tsVSukN!5S zE&JX`cJG@z*+m|b*VdY}rWb&_Nxb9^)LB5{cOw>jKyY!svf%U#t(o0cS#G~5M_4>-zz)9jrO4SF*5>rmE+h|6buW*l|rT4NF(Ri4TTq#yJ zIBnS&tEGJcj{8*z^1zriAZk;Ke+%RZe$}7#BBTkfBW+R*;W4@_>(_l5X9Q0$;LPG zd;|L%<&#L6h;8{J0lp5858`oYDA-Yrwd1#O|dwUJ?am+%oS%(pjGdS0hq zCXbz*yo#i9JOt|*`>X>f$~^g?UjUO^YUXO@L1sTEn(KpxP%_cB)fAn`y#&Ku^)6A$ zNg!DDk;c)PZZ=gA6Ihw~!Y+5bF~ah3qwfWl%*57J`E5RV?Ctoa5Xau*_e@)AHsdSP ziNig=0Dc(ADy5=I@zk~603VW}pSDd$hNFH1Yl9rk?%04(kD1WVHvV459ehSB>phvL z#aRr^0vW!x4x)A(-N;gGk3;0Ua_82_=(nfijR+)sdlnYJ2o4XEaTwN)fYAkcADh%T z`Ys$>mR)R*D5Xdw4_kI0B;F*J$bR&H&82!{ni>><0dnIiQ8otnU#MWSD^KhU^<0%y zg?&H>_(;B{fH#srk?4BVda;Qzis6RMM+FDQR@+pqw?9=Q*CgF_CIq`rdhKIr zQ`O+H%$V6=`=X6(Ub7&$Ur9SLnAK&??_OlRsw*gZAtl#BF}cX_X2xWHWE3SL66Zx) z;m+g>ZS9Oi7MRMx6YV5q#U&;l{64uh=li27u7~u1{bLy@l$M zH|DaowJNr?l* zGZER-phXb^IDFEnNNt#Eb+pV(q1J)Dj-j#ui(VAN@#OVqNpNLDZR`ZN#m0eUA0pOE zi-xQiY$DZX6U5;v4z0XQ3*QH2CZ&JMz<>CKUuj}6H8;O`JCs)_kvO>g)5J4DV{;Xz zmHFxyXlh)Ip{Y)5mqapy;~N+ZO;+<!(NS-YE{oHteP(od;(8>5QVNIJVi3lwOUv2^KV5w&<)F%rQVDUJ<8ApFJ$n_FxKUxPO=R$>xH|& zW3EI#Nc-MX-#t`%D2{*eqt#WR8pF(7mOo})fakO+xowmRz#PZ}@iO848o17J-C}%- z4;ENeaxn^UV#H_}q^k21!A#-Md(AO->3J^&8qLAvBGr3^a_<>V42Tv_{`z`kW>9cv3cP6-wo} zmKrGr2oGB5PpHPf<3Gw^0h;=bV#8!eS+>byL@^k#&ntsLy;a_E_eQp@?agzxn*2`Y zqSq6~u?4N*IY2yF1i6E;d8OZaHNU}^-VSaI_TTim0b z6&%MEykBesuZ(_F;{XWMC6yH?0rY7*G+D}zZds5<$a0aF7o@X4{}RRr{>3EH)%*{a z9*X(4HWAcgBmNZ*kvpaAVj}b;-|Jo2voF-Qq(hArpcoeeEC*iMF~hc<`-@L>rR`HNFrNIZb>4>|mcf*miE6ClWgid2!B z+@-up5^=>49q`DPbUF_ia=!hS_Ppwu`m7Hqn0z02Z_EPQQT0cuzF3ZMr0Y|%cd2lI z<|cfCH9b}7(3FqWhcP9;J`U}bdSm~-A@3ljIE6g=z)q{rwoDXzMbg8paMn~s#JU&6 zg`aH=iL|k-Q%S+4^KmVGw=G(EZwh=@cjPhXKsP(yU*EvHBw061A>EEkMWP9?C1^gJ zT{dAY+(b}ISF_ytkzMAQh97b}3d-Ivb0OxuY+TnYV$V0|+R-Dp zpK+e4E`FKQHT~=%&#xRM#;k9MNffU5Pz;5jxar3b{(o5sDNp#5rWE?{-(yPauHxM% z{kYO9XIFoG*nAb+9L4Ne{_+DhfS~v%R^uOHbYtJwPhtmk#3LI%0Y7rv!TgASqdFzA zrPUjtvSjUSDyZy^=xb0PJix{t@nuy>aA9BDgMm%O_s6zyF4RFHEPtLR@vU`Z_|55I zBX;5mD(LC>Qw%1X3PsW{yn3!Kw9y?e5ns0Dv9j>M#yviz@>%bhoM#A45mxdvkr;zjjDkYld*W{74+m0k0u>6S&+(P1H%-G0X5}J<) zF!3n57$eQO!BvN`kAQFZ!uC4Y_=V0OuUQm3d|*bF!fFC6Z9M&^3*2%4B6gpR3{xwM z(&Rbid{YE$uSI)F$KQmb=f_7s|A~R4&&tp#!3SxIad}V>+ej|PI9{1IbK|+-lME;H z<#h$>R1k!wFSd~O1y?gZpY*3b5?&AecHp)Ok4t6B&HAAmOIWc=wh*3}nH!RHmsSZA z|EA1ao%|a4yz10#q_ACY`=;SKe=?tByLgH$(5@sGp;cw zFmhFF6Y9{xykd_*)(&Pr?R0Wr$l@4kFk&o)ThF>~t8kG(uNb2C?tB-lY|R$yXJ3QoIrx+sY3wUg9andf+$B zR*sD2gmu$}^NUAG9^Me^aH;iHNj98YF!^yCV5b|7a+ZT0^pXQ2C&vJrJ8)^8#Z=7> zQ&~GdFZ#$*2)*7L1yQC`tK%u#{P}l~E#U~$2rY1q?}ZyvuE?^7z?mVHh5Bk(TLL!V z;bIQxvQeqy()Y9x9Ngvw%{>tN@!S_ZjrMtc_H$-OH?Hk_0rP&&5de&Nz*vSUp(q?} z*TY!8FEAdK7&zN6u{bTr&#C+3?Fy4+3!3QzuVw;I(Mh;dR}>>`W?{iJe7d((GQw4j z9G}RI`aC{Q>{x$i>R=89u{gTU-q#0tr=EPE3uomlb+R_)8Wsa2WPU)oe|B*;DGszq zTf8MwZ}g2I0ZhUy3v5JLSr=-nU#YMOzsCbLADHeT@~6}Bp-+V^(N+zy_r%s#a=i>C zK(2m1TLa+|jiV|ACTzn!B=nq5Si{0S^79Upz6RR(BK!<1xE5E)_m=69Z#eD9WH^<# z>T~m*02$f2cM0+PM)LkC4RHKgChdl|hV)_UJ=ly@%5>+8LXTi=u67>|VNJe<8Brj6 zA0vHP1vw0ijwoJJfbCWHxYXIFaq;g6UXeSq-!LXFM3`k`Im3OJCL!cuhVqw#8>8Q| zgNm`#I7E=bs3~gwXcR61aHv2fxN%!wz3u|*i|Atpwy?ie&aDEj`2F5mbc@#VGr5KufG6aR+(HD%4JEhq=QL3bK%SD-Q@b5TrAh0noudd6^uF!&oR-?9(CLyGt z#sJ0mtohc1FpRvRLFi4tdP_k|<1Fpng=r|<=RkZwq?|v>;9WlLQ^Tfc#g3;8smhexFOF`V%3dlknWT}QziGCNg)$hR zc_H$~hbgg>W3!F9IbW|hkj;-O5R};0X0bR}R!zgqPe4STfvJn6z8Lk}6-e`*AQuGr zStknl;RR^JMe>Ep4g?>zV)7f)kQ-HT zYa$Pt6C9BSw(JrEX7oV4@S-H_PDhidv9%_1MzhW*$&?>b=u)hZdNRr*dGV2~&;v?p z1C*@bmle8zV&(ZPJ#u=*ZTF)5-J}Pa|4A+RA9&ojTy6zzO8(E>6BJ{b|K zJcwpZmBT1`ANxF1TY(f!?%B6T>miFcA-U;+^;5|e8)TG_`u?!9ERNV&p8W0Yd9Fs_ z@L9>s>C;mT_p>^Wy`4Q)oNgEZ-)1KDsiEZ4*v;s-?=want67?j8ho8*o-1>(?CKc( z0^s52rVde-H{H&zB44h^zWyoGUZ)onblZ%q+T=Ah!lDbCZBhqlmEje&oVtEbTZ?{cy~IbU`Y)pi(~I4xnP zTW?1eK52IW98RyFndxr)4OxtuZVYQ=gDsH&LqNR0PD#VeeIEllgqwc!E3x{XW%8(5 z`V^l{fyd@&h1$4Gh8>!k!xf1uMoB#@8eTv*cM9*e>l=Oqx+;qC5LfPmlM^?DI2+=R z8Dh5XqN6doN!?No3TZ$H*HxUz+WDB6KBpMh;sZ!%GO=lz-IO}`U3s)S@6~qHg>z8I;8_yZhG_b{X3Q9|c7Y5B7VjPU{W0`$8KPIPO@ylFMKFiZeHH@)t%@;vr z<5)g^p5Vi|ytY`Em=QH0ey6Ybcxhu5+2c`CCi104Zy00Ohi&zpTGTHBOZo5|rB_#j9iFvLe%5S0I4HMM>X&#Qxk^(W%_MSuFtjHkP709N zfxEtxm%NRF(1D~GoKU+82+kJ#5gE(~1gli@0bFF4sj1n*KlT$B`{~`x{`$FVZHIN1 zGG-F5@`U(Y9oYBfvfq;%1o^GD48acdF@mwyWh;a>J)+!EM0e1Gnmn{J+r{ACvw+-i zV!b0OxO}3}s;t+qeATGCIm@-lb-AUf9>V@?Z8waZGZ{IA}wJRHjR>(3y|H(N}0N=8ErLb7i)j3i6; zT?}KaL-wR8lrT)PWGAxA7A6$RzD$~bQAikJ)ux{ygD;fJFB31ch;|i@NbB2oqvhi-Z*&kiixRe( z#~Ld~yB{=9i=2}9R##$4T>KJtH|%<(h4!_|W*oHn!t5h}q1>>|%vc>y`bdlUht&)p zmn_ogc;l3oQ(7~;3m>0^dypXn<{J|Vv~C*ik2D<+6NsN2bVHcJSwN3W`5~0POgvxu zqcuoNFGmVTQZLL)Q1M2_Qm=YRrAx{+ZIqfxmsne!*=m+`XCYZ+TeSJVNf^&zF6=u1 zFj7mB=ALcn`=N_b=3y;y#1=)*9JLt@`ON=CPD?gP{`m%GQw`&Q3kJ%!xM;<+DTOn2{ zIKXV8Y$5e^gy5;ki;5yD=ekxWQY%E4clkf%VPO2KEjHsZj*!r#iM{EOpTlL9cA40l z;@Su8*{os`I>O={Z+d3{kdAuW@>-^PO{u$sUP!VZ-eja%0Kr)1f7n=WL$i!lX7wfX z3WyZAO{jFj8&~Tm|9Uf6>^}R()gG?6L(Zv*pCkd}?5Ik$TK(HQS~bl9$z3*)dbl2Z z4KiVEWf?-G26I!+ddewIdz8y%cUfbX4I3&E5l6}(e#GM`fXPJt&cLWmzBG|jgiC{5 zXwNO`VdXOSZpVv)_7dcdCIN-#nB>x2?M zJ4E?Ab5sHs28{^v@Vd$!Dp^D(T%KGvqJHVbSBZXNsdJ>hVD?^U+!1GO3eUpev!my( zYWF);3`%z>_X=Qn#aBMY3*0?I%j2^^I^6n8qrH6&0CY!Tt|fw`V^DnO?e5HNNED0w zREicI3W?&H*a}GY3zviP?>NLmtlEcZTtw`tW>o8PSfKK(|!)ENiA$DY#b8X~lxD>YdpgP#~Q zYeb+u_!*br4i{<|8}BsFti$FSocA)m0W4@fl6kA|zPeWRb-9e8@fM^1Bo;|&u+)Ea zcu3*i>w6X8TYTNcoVt^$=NvPu@!=nb6jB1%;0V3;>Bp2m!TJpmhn^8RZ!bvq0FVVU zDg37ttbB?^o?g@O%gm+2B>*c0!%JN>3?a_e&K>9z%A9ym#+8jB9lP?5A%Uaj-IhyDVQ+K~+ zKl)uy{!*2$Dv+r&3iyVpGvWUC{qFy8#QziI{^_^w<@qoFguSnY!h^MLzLI@sRZ8y{ z&emi+HalhM*4m#b<}Z*Js51=pE@anB89<)c9#!l~Qt^}R4fHAa)GLDf@HXn~5*h9M zq|1qY*g)itApTy5#I+zyEhe?*vWseZ5@WbbxH^ir{)txQLqqA)=pi+V>-JBbZ7Va+?&X^Bj*v8(%3JcpN( zQtiBRX4iAZjlV)dO`1U8;;9G&HNRSk5KP(2GH8W^wD7dXzOuM*i#gta$0gw#gG(!` zP=mQ(8R9YKN<;4B>Y4O(K-DjShPT&WR_Wx8 zN06xRRP%dVUqf_i?4+G1`T=}82Ibx64T*FsW!IIsT(eT~+)N9fO`K%QP%zW&^u@IC zJ%pONVpo_0xeB0T6_zP-w31a&@dOR8TepJiup;q&*X`|OBE644j3w1?Q!J@*(sy2n z<@w?uCPlvAH|QGs`T5X#aa34wZkVH~_R5U{KpBk(ci9ysg~2k77l}$$UvzS|Z~?~s z>MA^Ffh_2XJ$CIRk7IC^71&%mYg*LHbSa z4oYXuel8W-*rD2X$3Equ+0NGoz5;fTN^q&zs&v5tC>iHkyy4GANrlB$Gbszoa_EJ+ zx&z0Z&u0n-Gm>KElVy3~rCigR!55{ss||GIk+^$Acn2b59>RxZRBF+C$N$67&Kz3G}Dc8dL) z7GvQZ7cu3vb~zgSRH?I!3C?Q5#wLJHY2f6?EU(VO$CPs?S*~a;C>XbZfW2y2mMwg# z#eI(N^pY3LbkFR&1E!z$zQpB+-_0jl=FUDH$xT-%ieMAA!kG!4+?&h^=irSAToM+d zRDqSbNx^HX{LFYk2?&lO5#Z@j$o;iiKUgF6D1w|m0OP{02n)lGK6d--z64kPRUU`;sOi=gNb2TWG&GuCcFw}8uqkl=RC z2m?tkJa4PiXM<(iK!JKZUfaT13`{aOC#o)d4LuAT9Ju-Bg@gWaoHa}ocmWgTz#>bN z9{R}=(Xvoklc8H%o7BRWxek;5a%VJOpR3Fy2@xaesW43}Mw+K}FJ@|^y;}Ij7dpG= zU5+6B>b@d{A;nzP@nfu3kS_@iVoY-qeA~JXvKKYdW>&sk`D{0l?}SUFR!jn!GvK}4 zDK^A-r{*p=HKxQK#ZGjUM-&@B4~--0C;-u?^T5a)F;6E>`xQwqf3hlXtQ-Iv>X>H9 znDCCPf1%4e*#CI3yIJ>nv6K-9n6YTBsOoCqc9Hc7mz+fPbnVfC3BAeyv5OUz!k)~x zK_436JF1zCy+zzP>_u+Rx~d%2)xQ=3+aQBme64sl)E2Vd$b;U`PuTWyh=)*{t0trq zFh4u)@9NtcIOtpqs;eFt-`pSFt2|XN*t;f_h-hD~1YME9#+9|be zR2ojBbM562s@WK|7PC^u{jvQ%nFM#So_h1Nyaa-RR6e2$Fq5#H{?+MzvcmR&dp0|J zrC`{TA~00+)7ihm89I5BKAx`z+Apg14rSNY-tQlqPiuy8tvV`&UGu-Wr*Y#LWfXM>!t22c{qGY4I-eIUg}Ypl+Zrz1R$Kef7%=m?DDyAew#N2CTU!kzSU zQIM<80$yuKo0&1seC=eSp`u{AMoYyELneRPQ!sfT#O5rHws$KEbxt5ZQ9E{5)|rE% ztKlw`ylBN9?h#TY`qYV4x^J%<5gh?`V`!Bc?T=A&bulM3<(p}uDc5d0kV@LyRjgqq zW&N%ji{PN^aW`&J2Oyj|FsbzAU|?M1bn^7|+`575C4wsu`~#O1x{iohCxfM|I8jL0cQl`Cj*9{NF;#=N1%EqUT&$jF+wa(9=^ zvZI-wFv5y7>2R!W5UY84NC=Oq*Y)AcIy|%p%R}R9({K*zg$9)&(NGd?&5yfpC&;V^0A==!?Uj&dkRAo^#q{bQ z7m^k&>71wHbn6{_&b+dnId)sV4@SvyG^e@-I}Vj6pNddFbFY;Gb4&h<;Y%Wq{jTz- z6Pw-N<~X_ECy*O9zqfm0T6-@iWWM>+{$9-bp}khA(*4Cs1`#5+dt@&7#&@=uNtT*^ zZqRz7&uGgTkk2r+Vbrmq9P9>+r8PNt*a!d+-~kRafb=L20KcWlAc8l`4h{NC`>)9C zTTEmYdD9;^LXdnRQ#Jtvo3US1bys$~L*AX;mu9$l03d`-9ssI;z9jHpva1~#jHQ$E z$k%QdY2DC$c;Y>W0A`JFNR;XT@PpZq<)rWHsr!39X|`|&fQ+Mr-7S^Ym_H^vJbe6? z{P8aQ8`bX%0s{d;oKNhm|KJ-H-<#QHP_A;VjzhdjE$-tUG8>Z^@>|4jkAC;ID#gS&@X8C1P{d_v;&*)j*O{Y}4r zNs7PI^glT)de%`pB-%ET7fHw8eIKAGe)v^s4o3a~P)h>@6aW?o2ms@NT2&!FEmt)> z001dK000pH003!iVP|D?FEB7LI5;k9aAjw$yLD6@L7y#paCZp~ffL-_EkRFk*Py}O zAp{F{a0nXQT@MEj5Zv9}-8Jatn>X*x{qDMV%{Oyj_1g7ES65f<)m`=5yQ=$j{&gLI zEiWx64S<0G0ASt@!0Qs=BLEo@5eX3i83_pq1qB%u9UlW74Go;w z3dl-FMa@h@Mn=!az|79U&CN|oCm_PlDa^{n&H0a;z@VU@prfG^VPFt(z9)On`Cm@2 z9RM6;7$O*dI2dXGEDj7D4$Nyefby-M2r&Pa0RNs~VBz2q5Rs5kP|@BlsK*At!ob17 z!owjTz{9_l`o5I|;BgRe-*ZSH;;9%TQ9I#t2E^qc(@55I5~xm`1G!9`15r>3-w_d$ ze4wSHXJF*!;pO8O5d8Q_N?Jx%PF_u2LsLszN7vNM{Hukfm9>kjo4bdnmv_*Q;E>R; zaBzIW&%~tUl+?7`y!?W~qT-U$+B!%*w4t%7`A=7OPj6rUz~JQ6^vvws{KDeK=GOMk z?%w{v;l<_E_08?w{ojXw@PYxr!Ti7Jf6EK!jTbCDJRCgIKX}2wdi>)89C(EH9Ei9Q zDoDmoc+{K$$oP_RIW?UqG+e6Z1SZZCsDwc7jSm<9p!RRf{xxEO|1D=BXswu6%eNE;lruoL$h{{JE$rrsxvyyWuHoTj06vv_&zqi^Ck!$EGr$d zk0#h=?PA14qmaAfDNxvlk-}I0zXiOr^oOX}b0Ta%lAh-C$}Eq911O$X0rzhBdMq{> zelMp}B$+eEi2Z~trjYu$ePw+hw8V$JwISBv^Q!H42{SX`$>U>~IJ>C+m9B^AyTIL3 zx$jFJ_^SE^Q%iZQy>arfUaHF{#Ke8|4igHNSZWx;0`|#Aj&x1zMyaZyjvk}wWeEu>Z+gso^WMA^k`eS+^=O$;YqZ$L5!!eWcFo)F}f-ZXU_ zN{Dn*$z-J27;`es#hxAETwv8b!D{D!#EHRIHQ_`M6&!4qkS_ z;m-#L!SyS5f9osZaZ#PbQ%*yf-Sp8b=0o1|kLn;Zmo-uk3g|>Cu$mAjs`2z51wu)S zOySQQM^Dk@kIVCG`tm4JdJ*}H%Y`{Gf=3{^x2NXy0oj29sCJ+1nkX3qogmI~Jnd2d z^{MjQDc2<%`Ur^oMY*;1_BuNHOf!8pEcpK~FoxumSuLtEt*v(2k_O}U4{0cz9ANT8f2`*iNd9uP?X4}}|;@i!w z(6(9BEP4-~d?BX$(gq`B_NA1U=sUGP_kJ!IAg^2HBDlCDCzKzFZO=rKWO@uZv~GhI zkVYol zdr%EE?6;lELEp&g5V z#{hf9ec#;k3OX93lv}282RrSHz{=X$+UkhT$Kt5$PU-1xeZLune09D;n-Wi0jg!`% z%`pAjKS$aDd1XH1iIcdhtBBsmE$E;D+@YKz(flJHZF~uqlVt;bE)5&ot@LZy#@Mpw zRrojjZ$>*TUO?J5cRPXp>VbQ$61s|E{V>N6B|k_1yq2L)On)F#m2jjM_cuD?2pQOe zSv!FQPWZm`QkVJ=Z!=gCjx$+7&hrb3q_3Vo&YE!LP%iZu)cKt&B6(4c6*%twUlRxWAY#TdTCL8Z=7|*lQ^N*_p0h_AtxzqL?q5_a?l4b{3Iz)u3e_Vm1+=cAT_@ z16m+(WJU^{9I348A0BLy+Q_onCarD?0J|1j1b@(T#8Dv$#qe)tS>)8$Z}Y`3htukO zh*zaqBu}SbH#-5)pITqfirQD$`0kqagJo~+9+w8m_Mp7qA;>ue_km~wW(`>kjtzLd z*^(RDG}Rp@?0S|1fW0bwX!9`!`E~gJ~JV53+YCcD6T)U$7CV#5y#ERmNP+xW(yA$DCa>k2$VP2V5S#7)px0(DqIN% z->;~{EEa(lz$Lj|*vOz$yJe(dm$(Bh9-*?B-A-=0Je_Rv)% zWy;M6ul)QRWR|Kqk!5f&`2$Rxa3K?^9lClWsRzK@f+w}aGth>`%~s)8_mmB&Uh&nOir9w48fKWW+iA%*R0B;TFhZt{Gem`;B zhvr`KJLDpwC)Y?6TZD%_`)t2 z74erVmSfi`F&0Z&pVBmL5o(h;mk3!(`SuYu;nwZ4N<)UtUQw>kIdqp|spD}PW_*V9 znNDfO6lZO|)4A07x2-WaOIeBP5e$v4rE)bIl$JoE0{a47UIFvXAsJVe&FO(+f3MqF zg#DzPJ&JZa{M@r_Hi4j@bu$%f3au{n@Dmy zCcGdE2cn-?7N(bUPsm`vig6;9TaW3y_VULKWM;D%yTOI9R8CA%dydQuo2>COw-u2a z>{&a}40GrAye6i?=L}Jl^xGKgNSz3tx~Vs4xr{Y2h-j!5JkqV>P53KY*=ObIhtPG14Fl0puW zbO|1-g9&$G!ceR#`D@(@8)FOeUEicxWZ|x+r{X`SqDACZYkHv|vereno1K-JjkeoF6YxPz7B>Bpesh25I}(w*OierSFkZCSO-pf_=s5--7MG3b0jPL-20u42=}? zXdeK;DJK%__?;fS)xApmdzubUB2Q1|Hq0)-a`iwtl=Z%gF;T7FQ}|SP9b+K*1=mgy zWZ%s5voUM(&`n_BG|Z{xapdw^6UlpbRj5p^BA*i2KT&-HZ}bWf1oRrPY1Jw(8bT~0 zii1>?xJ@U_3@Sw{ekVVA-ws86k!}u_(K&tvOy)lQL_yk2xhr{Ma{4e94CzbRHE+<~ zc?I}N&%Ofse$Ms)RHo|f#5AHZdvDSFi_mEtdzA7pOMRmZ%U3>1O!3IUH@K?^AF?M@ zs%pFf+~&~R14?CNXO6w5c#0B{WO;yB$rJ(8Wie%h56TD`9;!)y22>|B&Q8-MEJI`U z1D$;nB}|VCizXrakP2Qj`f&3|^3gSK89L^Z!{P3lJD!09-IN3*rK+7Onz+Wc}Th{cBB{)9Y`DEBvQA^POt5(Oa()rZSMSzhH5*ODQ}7gnMXko zZOM66f2a|W$Xo=q`nV$y`B)+wee9UDLS}c4hnQ9U6)=vIOcrFdZfP+30NO-!C!b_g;LgwS*szUEaM+6`x%%W$>OVe36cD zjdt-c%SULUTs8b7E=UnI(L#{W`3m3*W~O}wWChzqKKzaRB6fdcKaL z>t0_^4@Bl?l-Opc3dEucWZZG_2J?khnavte?&GlwM$+WEUrl=lM0GVs-WYm+FzVop zRgVnB(gnETtB51~cVJ?3myFYcm|;pg^mxbdY2B6Fa#pQwOWopLZ z2D;0+J2|!p>Ej9_k+;A1WKe#9esa8*CZl$s%X7}uZ)Nl@(OTv z^TGOiGi^?Dz)D9MdM5kCb=P5ou}Q_hB4~VTad-i_U6bZ?`rRrA6eMu!I^@NJoFh5rTx4Dg z5D>MZzZv!l-hhoYU=NX@` zPD{bu)T(far7aP{dtN2GAzmtS&Nu^b)?CHOl4?%6l9_H;2E9}ts-T599qdNc!rXj? zo27b1<@$47KU*lyX#DQC%Vp+?u3$)bp>=`b?I1(GQWJwgE!|@!`_Mg( zc5_y6RngQAq;8HCUJ*w2Ol$0NLDt;tTPQj*JmJ?)xFB(I1C?3U-#xisR`w_qTH`II ztP`G@GAF-j6#vETE8A~?wUNVU8-{)y6JLjGG3xT~2qDtk2z_%{*fzTMRU0g-q@?p- zy-Xg3dMmDSVt;fo{Qdc~f{YK-l(Xa;AwFg26hl2re{oPR{*ss@g%9Y}aAO=qjSEEX zr>=HYSX6jgrHmT@b6*{!oFO`@i41bUJ-;tNF9Fw!UO>1&ou>J(bVRXf?3ILgn9Sf8^5FYgFeWxrx{LJ3dUl zN*7Pn=`SRUBy9Gr8{KV8;^R1BVGqI3f@h$_hqM*0A(oXcJLmwizO+*^>ze$XaK$4o75qq zrtD0i%r2WHbUaw}t&eIx30eIRj+9&6@uCq|YTq;`EM`uN#x&r?Du_d3`_wQPdQM>d z*iGUa+_&&K#>rb+s-QO2oMyW8dE#`Q;u@wxy&gk#2;>j)^&n{GSS*z8G~LfD5$#GF z?hA7>EEFM`za{lYBqIN(H_Y__P> z+9UJB1gq;1VmYcWK#3wZ+RtuRwS^UU+{5fG* z8ojn=h~pvNQ3xG#rr@8Zb+X;6R{*ZBB8x93ONQo}GF*0y7_j{uk&f=MyzgF0VoQXv zOD#wdygSM8A^v5RJGPQso!=d`YgfOtdOaGYGRe|3^IeF#R@8J^4lz7VAo6vO6T2|< zg=(TzzB&z%{rIJyx!ztZEc5+y%QA2~ zp%96A|3ZrpWbA`Z;dM-Z7?j7VZ^N6kxC2dKFmG&%$`6aXgiiI3-L(W9TlYj=Yn^jX zAfnc`eq!$&(`2G zjoH`Ij*spnNi+udbDi?Jmb4}QnRAzM0+yh&Fr`z&c5m^+meCf#^@n|AOBW9a`}=k9 zbTIB1OW(Cpa7}UAY}^D)E^>-{`DcI+NxY=)3=zHKS|nh^a%q1KP9N-EjRw@>lAmj* zJEJx?s)_b+YLZ3<*p^xnmhL|H99LUyZfh^gFG*OcBzRwp${Dr#kbF%j@w3*J@noTE zh}O`GR8(Wmhs7EkIa*7Lk%MF|b@3)8&@P3YX!7a@g`h=R6zL8{NZ3U9VSV(qjPJ3s zR&`CVp|=BP#7{(gP35N$_zhb+){vHIZ5&+&*R6!*}`;+*QfH~Z+IJVlfmvE_6$>ecIO!@D`^@w@KP zJ@O9LrfeWMPuO-zzH-ue$>k)I;Rc~r=mEoGfA(t8a#r(>C3Q2HVDw~-o$PAuNEe@- znEEU#nZKWgXUy*p6Uji%U;}fV6}Wh~r2DW`9g%noew)H6;mF_vJ`#xRlc4aOZiLmY z&M&2q*~4WnU2ZAiUVV&V$GxDyY;;WT+2kjhhIl!a;fF{icU{Er`1#VDFeoQqe8;K4 zwiZZ=9MDxgzBqY_R@8(mpX)+Pvq)UvW+FbYh`4N;Rl)fR=!#qGDg`Fg)*puh?IS{h zXC%wuG8LtL+*|1L$juhI7Kizc276gmFy$$sQjH2oio{su8a1E zg@g|hqUV#q@hDQ26p5NhV`;l*b@ZlqBp>=t>K2j`a5~vj6YM==F;{(zV*OyWinB41 z3=zMCX&yMaxL~F+=Y?oC{Or|~EAS0S`PQl3)38Ic%e2I^plt=!HE&NawIYCc4QNlZ zDwW)b?xpoS;*(^BwSKg4{(cV%W>0n;6uC($Tk1wSOaKk)?$PzGq|SJr{oQw)jB}5}~l;IB5gjwA9=&7Z< zAQTJ|z72)A_#RL{dAYrrs0Y;jeL$&TWe#Ct!Ls2Xangr=smIao4Gq7=ukU4=2)vsX z{5D-S%|p+0teAlbA{09zDt_yz9+VzxGnQ~7+zY;Hp ziBU4O7490rn~Lw`?6=f{D8p&~lB{IImafd}e#vE7Dd$72X!=x41b4`#S)2_I004;K zvJ3uQC;s?|yUe}GgU177FY^By6AlXF+AmGRV62aiq;0a z{+ce_WDisSQbak?4o$*@w+L^bsesW4iRFIqI>r+d{&EiMjC7|BbEm-i)(5-_LlGP= zNT}Utwh#NLX~YYBmkZWuCDv*-(*1W7dqX?-6Jl0}z`rVuT^|9XJ$)w5I-zBz_fo7G zFEN`d_Dk6rEN4hf=9V!p;a`R|Z;V#`@;v+GvvODTlx$azQDw7Yb;JY#tGQr$!2gVL z7QDOWwXmY=)@TCJ9HYor0I&5*IUCy3t=62_)sjlHzzrIcwAd$n7zf=czk1iX1|8v& znIEyA5kISz3|2qj^q+DHOrvFu~LjS!b9JGw>Gn?U({0g`L z&Y8}rn+)E>uU@;$Jl237j!pN~uXO?Avo|ya2enFM-|dDtdmJ#GcIEq!+dpS28KInj zau3=Uy!ACl=rVXgBOFAWgMBVF4>fe;AxPF^&{shCTzG!-k$FMgN2I)EoN&??*dn7l z3-YquH?xoP?M@dTuDm(^6|hw!NB1(IS0Ci}61VwGu@Stu0y6odOV)88*-ap|izYw%38|d};Sn-q}{U(mfi&Jtl4iux&$s}${ zQeZkxR@A*xaTjRFrEo8ua#!356M)yc0^ITXUB)BkkYJf0X>T@UW(m#;4qh68zH~Aef_7Me(ZGg zw61e^r61e_N;(_wkX{yXUjdIi`g4`vdp1@S&-gD{J|u|#QqDS1JVaRfsK? zkyrB}c+z>aHZD;|(Z}q>zH^k_);lj%2uZ=LWyE;h?{Pn2?~MY#fqx&%2i)MpD1jWH z_sQDrM`Y4M$T5{22K{f3NDlG}Xwth$%{e$L*q^$OMhY_!vxf9wig6Qc`EK*i=qMkoh@xdk!$hc-Bo`47pRYr!R zl(g2hvqau4Z+ai zHlV{~zAuM{vO;tEiG}>nlCI8D4?(Mw3`*>Be|b%w8AecO$3f${g7xp-nq?ST1(Olr7wr-cP%4KFdp+8+pnS(Zsu?8G*=R-5qsE*43C4DFG?1dT3 zwLpa)PKE(5;3}xelL)Dz{SksK7HdWvM$98GpcV#7heT}0QZ3nx| zRo687rAlKIbCs%$ma7L4D899f(Vn{Y0Oxsq*>3#N@xkW9{OJG>uD#g9$o zYEq7tFjq;Z2V$la6kjtogt1b~ZD#fmo{%6!^Q6}{q%CQ&KyU&vJw^CO^rxyQwIMCw zT{!!T&$p-VGoszMV%HhSeWO@&3M8ByoK+Wqnd(yScg^5waN9YzOW@;?iAVS(rby*$ z;srQ%M}&qCfflIR*UM{Mj)IwmSt{-V+j8aCOuv44oqcE|NeLD{8XzNhCn5PX?8wo{ ze{iIA=GL@b&ygZrHqUxXl$$YnlJkWs-&RMy8lC_ytHACRV7};^-nsp9Q1mEa(3iZ{ zF5=fVDyXiuuj@M;d4?Big?Q^MgdJRdZr?24ZFU1 zvG&Z~RR2VO54tsGX#M55MWLrP^YiBRQ{S@@0B&v^Q&7!k89l>6)5pMMk}8?f9Qx72 z3kdvHHdt&g!IaS*kkv9-;#qtsD1268xq)_woaFM(mf0CEtZ-l}GEp?Y(34<%^?*?K z#}Lmj^JrQ1rnK@<`iT)TI@kQRM#K<5+i_uCbCg-283Q#%WWLcj6tfUBgSM*B>Rd<9 z)9Dj?w#LY1yzju$0A0LKyaLNp^Y1)kk&LmBiJVka!RIC!r17n)oMY?WU>{*FQ0^h_ zyEcfj>Q~|At_ia{<2${H5O4O1L%^1+ol7?8XfF`q?fVfq_VbSPzASp*J);f1%_IY_fbL1l zg@!q|N73F*p?r!6pmotJfHG=qOAi7Q`dn1yH{RNQPnPwhK>1IVW_R%aFN?eH%amse z&R2F?n{j)S-`frO){s7%mcm4Oti<#}|CxXO1>YE9^4m)(QqSb~wQZ&tVbooS3r)J-?@O; zecB#3lY!)w{x7*ED9D!%)cDQ{cM!Nl12{mTf~hB}3z#SBlNeL0w6-hK&DEnyd)a9% zla+fs^~sV_Niv0JZxXl6Y|77 zx}F0*sV`8$1!H7+Fky@#Ky4=qXg)BYGHwb-2X6DKEZ6jia=?R}bE_0n8D}cA2t{*t ziA9-N8@{tKpb!y~*SmG7le60`uURi6+mw8Yi&s>)KRVK_yLTo{o&D(Mg8emk2Q1QJ zW*Nq)s2+DGz8(n%6uwX;vZ9_eJ~D-mEut2}M141pNslMiBTY`Hus*H-(0Sf{2lbdE zyp*z?$}4^U^-nw;qN*6P$}0eQrN+xc$=Sr1wI9SfADOy3bh$@IS3+gB389_Z%#uq` zH2Fj4-yti!Ub+12B+LD|J3+Z^@{IdF^^6CYG;3uBV}dE4a_&vlfxfyYawyj-=YUvX z^!e=8rZK_tc@@PSh7=*_uJcdan5|~nL7bc${P9^cks$#w5#y4x68U!(ovd^45_NaD zmwTMdHer;!$w$nU;Bfu7o{b{oKZM%~dx8bFJ>wS-nOi5MxJvCjVubv=@ScE?{+RUV zFOY}CigFKjC4wnk838NF04n3aAxOH*{QA{oIR@rD@Z+~euvZaTw66F@sA85t--fEL z6}HZh1JLfhB}>wb2TouR5nXhv>J8~7m&M#(vR-w4U2sp`$^d+wAZ(=yS!_P91cFmM zM-R)}Xvth1y~vw7rD+c2Ni<1e8;xA@K#9b(X?oNc|CG8X3s)@Vp{Yr; zvogBreXc|x-}i^tvCsR*3R?!{!X0}UZm9?8>&P$WoY_c21Lw4lBB6B{y~qJ zqK`~H5#M@%q{Q7BK)OUMx<^Er2oewcPd?m2&#;jf{E0Ki5SzDS zCnFM8J+9$+dQ+Y%@pQfd{Qn$0?ck4Lw|o)#9RSB!f2+ImbG^^Dan)rWDv5O$PU#+h z>p9g+c%?ukYYS-!2Y%&8CEofQGcLVWA=FhpAh>L!B|G3!OkgHMWSOo1*Xr02g!8;- zyy(w6$sJCBBbn<@Al?CRg)O!APJ||YoqNZ;ZI2w6y?oiUAJ*R8eN8!;JLC4tmmT;? z_%8keAzzzQ-Z#`psHTH_L~{!AE40->OWQT=i9y>W=2@dOvov+PW`EdA1ONvH7?3J9 z@u^xbrhGX;NjB*vbzYK651YOdLF2oiG-7i8U%cGEh61M&UEMX^MJ0YvMD8C1qwmgn zK)5M>ZWwoPm4gSy)aUoUy~OBBokT`3G+8E$-`35>VJ9>QUlz7e>sVz~^Uq1$ogmlt zp@mj-(<~K`zihi~<4MDtMRx^e_pEvMOu(H*ex}P zT!DrCx4waj7kY};4x7yfl}ugg_tb?uy>Kw_I5X9oq$H7%9F^1z!^ujRZK!!Q{EcKB zy){LfHtZ<7+56Li(;(3yT-;{)zm)8{;zgomic2x<%I+=X5iwLrmq=y(an}BP3Q#w~ z;(R{__ZX=FC)muC3b~M4o=9#w-z~u{GtT7iV)adgHa+|(6FW~jKznJbVtM{PVJs~E zo!MWR#vT0U74T!IE9;sF^5C!=a}T=Kd)w~a+{zRY9RL{s4i`h z@NtOL6}6rlDl&W)N231#A&zCmVnl}DD^g|n&0QLUR@MPl{(Gfzn2162M+Xz^89 zv6NcRqSVi*5)UetWzl}l(Ht|4yI-G^0g00l6y2tT=TDzhRZQHVMEzMrT9%E{(6;>x zCWPO1n&O^6a|51ltNC^JdNfWz|4h*IulkJ)FlCfWP;&Gs)-SATcljcNUFemag-bF3 zX+W00xu(d~gQBf1siGH=*MkYDqa>*VIsitf25=?)z9D`mARhLAveM2! zRw<;}gOAp~g;2lK9%`5Qv4p3m+h4y$P6z@@qWU3?u`jCc27g^PE5|bzsLLYF)MOC< z$qiNWtMc(Xm}nOWW)aWigbWC)Vpsugq-R%j;g*a2k#F(t?=Sbtv-T@fcc-i!y`TTS zJC@IRSmRl;YQVWS(3qIV6&M+g$~G{199i>Kfc#>V!Oehm^Qv2QWr+dw%SU!`_A8P@ z3i;)a2W&@~oDnx}m3g5|-{xB^EM1Xll8o}NizmbG8#8$+zqi*K(v6@fe|>#4Qa}8T z@2N14esO^MM#bf6nbW(YICll_FTh6z85rFDvMZqi#W6_4)ziA7V<~saE{jA<>1n8o zmjVDr0DgQb{!r*|o5DEL_D5UTGbd4tpT!@MTie%HqO$GwDsB8!qrF-w-3SLLHjWM4 z*OOS)3I!9=7ITw92sbh!#Y!&bF6Q*n2kVc(nq~>S-#{VM9d%qmKDweUW#)I9tC&+X z>dlgbge}@bUQ3E-Ta>)VnNDN+S|7O?9KmG234$;x2c0oxs3K$RLyGXb%$)Ahyjq$< zZ2V4mqD2J#814pR+MNl|<%i`v#YY4&P=pH~B0nA8W5bdd|tuJg3qp21vaf$)@kHt3v z)zOF5XEPfwzOXFQNNkO2Ok~k+%HE3c|LXq>h4v<=<@fux)<mBX z4_*QG)7i7vQIbU4mcmJF4tT#Dm_2#zos z%3W}9{;DbxYX)fz$+C5TZ!lht=r$sT^j8=m1PXAPpiyn zi}DQ?q&WZF;cy$8(w^spp!7<6iq^B&xBzH?EspZXG>t*$*6TV77!3<9uo3SL*XC{3N(a+CUCLHdB_ z9q)BobMe=Wa9i5iY)HEPxGY%ds^c6|eK}~-uAE(i8Gqh3Uv@4!6aavWE^w>tJkSVR z5_&R$Kh^|$$drk0dx*@K%UxRR^@z6Iy{83v8@}J#6xzI_&@AAo%CPYSmo}hk2>_yU z=7cLn`UvtcgM2Zo%D+TOqaWhrGWz~}+0Tu|^mtlPB2#hONO7aY&^vfncbbMgE#-mw z({n`{u8I!nVlPd}1j6NTBO>{S4K-<+Rog%w_sqPx<+E_1UvshSHdZqdfyiyW@G8@I z1@kEzRiOK?v1pJactg!`XG+8uL$76=)t=Rr!LtReAJv*1M)F*P;$=QS3KU_d| zj#@J+exQBj8Kj!rsr!7=b{y_x&K=>v^eIretbxLW;7_I!fhuG>NX|+;B7FrDqUH8m z<3BrnnYCbYzX($k+Kpy!6EKbXpjIGkFG8D&=cTwLFw;z>-83w`h&}MGU;%*Wpm+rZ zhXQLMs=!CJ=-pL9X&Ad(p+o_Lk;b5Yq+sG6=0(!J3b`_?Ilr%sjZ&bLRgsI~cc<~3 z$VUAAB7#9m#YwYVrqd1;HzH~hnOj%{MN2FW)KZ#@a`2q7T8_qZL{!(swl_nsfa8Jd zHpTVM@(*Q72*cJn_R8p?;t~d3d93_Lmg+xCXeLW|q=? zTH$5B8QSpfZer2zYwISHo<{1AfR3?c(@2Uv0%i*8mZs|Sl_pE6)6)C_ZZl4*Ps=;r zfh&MR7`jTv=icz|FLW>SLCV4Sy1$IkmI&9Y-=uT2vj`)?xm&rnLR9`c+#VNGj>d*& z03j~Nhj4OK=qBoeGIZL(7rCCatP0)G>a_Mb_s{K#Q3eH%rc7+QU?Q9tpR&Z!EQF^* z6J+zu_ZiCA@b0oUoXAW%tR>a|)Enm1w`6kv>WhLEZIKJv=Bxy_Qx8fM$X}c#$#zQs zF4~G`1^ckV!o`lip}pqkkOKoTStMuNiZ&UE#N4*(4BJ_&m|u|s%hbxe!E!};2_wCw z!M&zxDJNGal8E8{1;Vv%+bPfmlMwB>XYok8!2`-rlAkt-I01)P?u3p=n-gj3bH=)_ zyHTyH8FU7>9YcAW+g5IlK3FQ*?u^^idMo*<U+rIVc7?G-*y2<-h#67<<1AFmAt42Xyu}u>h6TEKK;QHa zbHsWUJ7dTX8B{yNA^~8QsuJ)qt>*uU!5?I}%kY(G>=#Sr7W31w#0A8HLCX3gQSHW7`BlV4ixw0XBk{c8FKeO#~eDzk3|kuGS{l9SzoPj!97 z3*GeO^el~Io!`M@W64i6w*-z(f?C1}`KcvO_p+6_(l$0*>ioz&69fFAU9#s0$s^!kf`>uCb%?^Oyci?UGe6%PD*ecw`Mmy@XVakyTX+Y zJJl{y?H1@O-4i%^iFgGWI@r5WZ|Nn4LgIKK{S88uM>}fejdkxmN~|BfKe7fA0X$ zn=$<*ll@fOG3qq(k5fV_0sC)S8XbL)Yy#qqHTYJoW7LsL9N_wwhyVZ{pa1|70001KZDD6+b1yJ3FgQ6bYH(#| zT-&xN+PDS+!97TD65KslI=IugTQ}ZV2o?w-1cE!ky>Vz+Zw>%ZAGsz%jXbIdtL4_|XW%ss3Cp1zS+k_R9m0RTvkKfuERKo)?Bj*fwj zhKYfJfrW*MjZ5?d7Y7HIobVYw5j6!Z4K)Q76&)iNGaWq#0~HmEAS=f!ZazLfT4rH! zAs#U?XJInPRCW++j2|=dn!5&JVUv)Oky9|eU}j-u&D{g)>E-Pc{2?UtW7wzgnAo`Zgv6xelq&kIefMU)Quoa^e? z4Ln^VO6Hx_ToMPo2NdvMzvlf{*dG8V16=+a;xB*u^gaNx#3cgAFTa59-#fM)6F&g1 zH)(CB+qSm`9{@-u4}eI`pPA@>IXVx3Z>cYTq50nnDd`0PVUDfc3ar7Nl=~ znxOtCViMs1n?FzZ6EW57|AQB2xRZxH03-!WuCX5gzg(kg?0=k{Sv>#(${zr|?6EWN zpU?kHiPc;Di5L`2qK{NO2vh=%W0^H3T&)qO$BDQBbN0|3R<_u!;54=fXV<3cqaLq3 z-(69?-Cw`|Wg|52|8M=sA+S(j>J-VJ^zUzDsfbwSf*}q{(@A5tSWcfQ~-_>&-ri{|)TfRI1{=_}YpGDKK^sJY{ z8eaGrE$DP)XY!r;QfI|LMoIrLaLt5d;o8E&aHlbT=xqoBq=&+2>hBf9t-Mpu2^D-l zUgAGGoOqAi_5h&D`I7~7jQvu{cv02h3lf)A)sEm%_6EqAwy(y-d;8I1LlSH<=63?WBH zt*vATiQQ@b5?uR?PlQ-pwA*8e#EM|bRTF%Q)Yl>ACgtex``@cu{Lr3+_(To(4G2B- z^w3sIymy{%`MKtZ;f6(cL$O23yNo9d(-VhsRSvFuVi@?r?F)T3)xGMYc`wfE4`5%u z{hfF#_`X197TN`FI}HtuL7jG6H4zv|3kt$$QDOxBk_Iu7q&pg3iq~;sLERQyT7k_^ zUEt(B`zH~TzHQGr!CTO4pV|}(th_6rh3o+!%*K~nNQgbOf-!1 zF`_T9PUz=g#>Yio2wHM1FnCnZMB za2k5>i7`8Xhln~)3#o(rSJ7=~ZNZ)d#W5tlU@@=zbO}TnDC~}15ALjEpJu424mt$Y z!%Tt60fa-90f!jM!&CQseSGO6Gn{Je?{(E-Bf4!P}f0 zT}4fMfy2t;&4OxTqy!2aTuu7avh4UW_y(>s0@9>5Zb8!*&V_ozkgz{=G|uHdp!u%|~B zFG1n5s+so=1q4-c1qc5DVB{%@?Kr7gIqSI2*o&TjQY5aZhH+lDJ25cRBM>=(V0X9X z8YD!+?Jc77l&Ase8_auuv#JZHTdtONT_xk9n zalCh)-R+04s|1o+u5T{+pA5^#qPr#cN&Fpwqg9=kdCH#!I$AXEvKrSBiE{4){Xj;l zFDCe(X5gPBgo4Y!B$%7^bwRu0k(ENsXuhTo0Fl0r-w~5uuA)pf4}cFoAnsz(?c5+P z%@aq8%lR6Z#F`y*N)JNcDr&&fD?T~)E;oAMPOHSuF(GJ7nye11LguOCd<1x5lI%da zy#HnWGx+j|e>+Ff@dH2sYFb=(!wJ(BB=drdrVAUTZL@TrsIV(=)O>uebSupcq}^n%Fui zD4Zo1NsdVEzY559ZKvcdk13az+sQU-;T$09ViFTo#MP7FKaupiX!R1 zhh1)Oy|1Ocbbj=&gKc+rI%WTo+Urig^sjbLZ92%XnP2sWLV6C0Rd^TjUhJ3gmF1v*cvFtOzZBtQWn6#IbY9R|$j9@eEK59_sR>0AuhB!7@EXP|x6#2NGb z)W5rRCTkV*#?4!rnyV#Q2#0YqyC{X)9iyir&yimKQyL2Y#FQyo;x2V{1w3CF;dofP z;1)y)Kf+6v_PTtow}3@Rm9+BHACHQ0Sv~rF-`jfFD6m?nh|P zZag0V{E6{dr!+Ve>6wUqvh#IvKKXqS zF6Y{&hED_-{foV1PV?_^zPS93*wtHi=(W`GMn3o+8=El?@KY>YIidb+FPNaqyRe{y zx`sKU6vsEO?HJ(ld*31>4uaP97vu`}8k-v(#}uB7q~om^wa&hheSyCu9o@gZwSg~d zAV?AaCC>KB(;0-JF}O8Q@|8P{(7Q*DnhQm;`s1&AqX)nb#Q(&q(YgfHa%WC^Io|R_ zMv&|I5@@KQz5I(s%f_XM+Wvw-lN>UMTD3x zi7hDJmt6R0&C!c@( zg}q3uYgAT$Vr*y*B3raFP$HJawFy!cbJJK@Tv(Q>UQnhQ7hLk1vzf~H9iAojxxNgD!ZQW@E3v%LLSe&kH zCbr36kT=TyYk5M$0eSyt6MsIQdCKpwamEz;O2$)hUeZT}rO5rq4es&-V78g|mZ(Mz z1@h?Kng54(x4DjFWj-D$B2t`Cyo_OE!>uMP03c1xgpB_BnD-bw^d11`%mownyPYZ{ z+s}%wZ53AU6as67AtWGcZvMpymd-54Eb~|Bsw&(nv!z^rg!(*<8GRC82loiJXIlhK zbUy21YfW$1QXAN1)9Wj3o7J6|TB0w-jcO4`Nq}MzGD1Bp8oDC6p6hjNs@;ZgIS0g4@pdy z!w~|h`S!G6zC1s2?Q}l&faH!w`$kY;tfUu147$~V7fuo|Vtv~^*(K--S`dme~vd+Cq4xnb(sq01F^5cQ@mvJ!~^IWt+0f~XJ0L1B*R zuJ_(!souGkA1?mJ>yU3lF=cCZ(Ay9LmFezZ!(m=W6z%eQP% zvGy?{?m`&LjT9_%H2L^p1QU-LaPw0jhtAbotJ55=0SZAiXdz=nw0@!pXwYh%MBwd& zA+I-M4^SygjcZx>raHp2tS4M&(QZE9CFQd*d4y)KACd#f=he0SKra>;o^?V;?HjZCIEif3;@5OE zGP4k_tzFxB;Bh&wPxvKf|0V%JWB*tGS7iJE=v_{I0GK>^0A%Nu)F5pE%^VTpzhT|* zFbTvJDH{DJF0uR<3hW&;`Wl$bVl)>GUWg!N2kKM9@88ViIL)l9N#eF$3DtuN*Qt<3 z4fbvGz#O7`ZebHOdmpQgT^HvElq5~EQ*%WdDwgFQ#LIH&gPv$7B-#QkMh#@4$;kDLzmA zaeEc~0FX%t=ll28O*lyPw7FWOmx9$A>c|#26+5T?FSYF+Z#V5JoBadeV)NyFke#5F zOCB^ja~9g~a9NPS4@b}rb0LGp&nAgBGf0xN^eybPWvkH9;#Hg#&xIu8y+`to9wQx= z;f^LRB~FvnB@g#VZ#yTJWU`546yi&bf4v_dy0Um;}yYwzW&6W1f7G8{`EsQ_4&bwlIr#Hy!Al3*V|4h8*5I;nkFd z!|Po8Mc5*E3*QoCC}?)u0Ns44D0*_hUK)qW8luGJ;p!HIY=Lm9H13VFBe~j&Tf@V` zvNzk>Q|<~gW(hmxt%Ig7pL?ro2NSLo%>fwL@ZV0&RNF%{7$-TIr;Sf>N|dZTY{wNn z=7X>cZ{Ax3-lhQ6e5l2BTBkT`7A#!cHyIX*z#2nc=SWhF-%QzgbsCxz4Js#K5asM) zqFAxr@X-)9kWa-Av21(YJIz|WHc8{E-BF3_m1w}Zkxi>86&3ZNS129Wj3W5aSx6_DIWV*G|y+i zma*;vJp>dh@0t=hM>R)bx+%1a#eDi$R_4M{p_L0T^A^YP0ko}^Em=+Lbk|VyDC<-&3UY@a*nFX6ZF-<`7J*x+Y~;&8Iq_LD#Vpv%}q|Ipxl+iLO%G4 z5ou4!9$&U0yP~H5$n*qlInl%GDjL>ksK6K&zSofaCOs2bLQR1jhCqP@{hQVdwr<1IE@mG?9zcttHO1+D*UJOt8J7+3!8XamZGPAK z=}>=MJ2p6!M7PnS=}3_6I?k%PAwCheJuQY(V%o13l=)8iZXbv7iPLFR?5mIG+gtrx zu~1zKU8snNj7$;Z3Q~-!eg8xTP!hYtjj`HDk+b>I8{}3^yeR*^0J(UFy>M|S+FsWn zE13({+zTh5ljCSW!lbMp5oVT{T24GAoEdFs!5v?eiIv%5gk(ie2kKyCp?VaTm(1no zH@c+ZzCv=Uj;3}2a{xSz9g%Go3QpOQR92*f~85LwiK>gd;2y+urln|huX@Cg=LTt zDD|^%Qr-s}9)?h3kyD|yd>vi20au0TgR$_)|?wpLNx^9 z)Z~fW;0ydy*AV8}YEoua1v`0oL^i$*$Yb_x=ZXC58$Xf1Tt=G}*|p7IK?gZAv5~pOz&pWH z1d+9Da|=uxi4HW(3H)CcTsF00a;PQ4?mes{w!X9v#dabr69nq4mlD`bF3^}fysmq3 zG0kqqF+SEb`7+oL*UjOst(08~e|=>-KjIVMpz@faOMG)YT{QfiY?YxW7OG=WJ7yWe zkk8Yb=2_|p6Uucf70E7nrYitG1=G^#?BYHzk!PkBvk74 zX_Euk{P^kfK96VE4ToH2|0Pv9CC>xEBRsm^mnuAiQv!ig#AOl2QBL@J2y2s6R9*xZ z!f(T;hHjZbGs#$4TP?6(Y489jWMwbu?GZAS#UH7@P{tM#6ZXj65ui-CNjBkmSDA1( z!EKSjox$T~L`?*tB!^STWsPg}?)T^&M8AvEMRdfOK`ZEruKM=g){Y-g0>jB+mQo|J z&8{O8Jbk&Z1|dupQilq}C32#B&O7Ff^B~yW57h2K`AS}hSSDj&WV%ubk-Fl)YbF2L zU#*gpiG>&VJ^*NaoPNI(ybq5l8$;*0)|6M$?k)lAE>|R{bx{hVzBowtD@v&gvGDh! z94=52s@Ej$`s6%bC{;i?^=erZ504iVr-tg>K}E9TL~#(wkNG)mRjQrpP8&xReFR416l#f{OxU*(q}2Abn7&P-J&JY}V~vh*sgzDC(pC|Mndr zH#EvvH$i=hm5h2=X!vxYE_5L+Vw<>(j8KX$dKQro2}dr!1n2MdoHjHA45@p!z8_qy zM+z00!o!#6IW3ecdIE`+Mu>2cMr$8!#6~*H?(*{TSOF&twsn>zA3w*i5*U#IK>gJs zUIgI-;p9NA;kb|>?_Rej3-5QRjui^KZ8dDDZBZx{$6;nlT*lw^Al9tjo-g{7|8qOjFB(~{uIHk{(mbe`$t1f!P_>muH1=Xpm1(b zmR)`wLyYIE!nTIt1E9~xsTd(_nZx++?D>BmYKZX*p->@a{Et_vXP}6EJOCY}<23W{&2Txa{I{`GK$_-vU}= z%rd|C{PyXzr;UA7+-4Z+CCx?pn(v&2z&E?Psv$WDk&$sJ2e}HgV8GSulDgVJ&_{fH zYO`(9X=Vl(HqERXJfyRbUMgW03W#3x)e`g}UjH%dX;;|$Y*Ff~iWU3}3nz`|>0r&T z-b$LO^n=Xv`rZ?cD?&TFd_B&NDNch;+-h$#BFEJV*zdz>BQbp_nC4cQVW2w5zj~27 zja2tZWq6?>Pms?Bt$j=WweOvTGVA^1mS0dmOkzuL+h%w+s%bK#re93B?RDGa`{}4! zL-F3^>cd07>mKj(VVy+gESMkPvEDF$Z5!gnYmSPe`8Mk6;9=7!(%f6^!y*Uk34IV7 z8q_>rfe~GeyJs;#wM@Z&sV&Gi6)Ur@;f`;lNeA2%zFkjFb*sbio*?Ln#GP``*6Yc` z95wnL17QqZT-A5T@**2odDBsqB8DJ4imAHq45@{dtr^gF-{Okb$$lcOPZD#*7MtwK zuz%v~coMhM%8I-C&2H1P44p?DtB~^?2R@B;0DaZAa5i zMEgE{Q~E{zi>g2YInuAhmyx8tmfI*}*d&Nx0ha7=!2b&J{^X^oR@Tey|LnME6byaG zFh~oAzA8O)@NBHj&)YUzO73o=USvDAKzN~K{c`Zy^AhR1ll&Dd|NiQBbm`;ydYR}n z5Qd`J26tc|wgsARIGI!x4-BRqaNvno5m9{9nb0#a>~t#0OPV1a@XC0yKU65Mc1R|w zAdHd6>}$*KuZL*6@wv>IAB%`FQA&A#}EHXu54D&B6^?aF+>6jli6s{^p z+QZW{ivm%|lDP0$?xvqGulRZsU5ZR1)U!frw_fMKGb!5=G_-SOpKl~?>fkOHz!9j3 z5EM{RqzUky7XPvGX5M7W`e$Qz_Vt&8E)qM5Z2kV)7X2_w^3Fo_nw1Ri?Y1|**Nqn( z`E4Qsdn{!cb5)DT``?uVgW^%pDyIW!F04m8;T1pZVhwlIfp}?U(Q?#f!|i25m5bgq z?fCZb&B9GGv2X8me>4fwSdS#94lP97laIDg7~yA0d@ETTE>n zwJ>YH61+ftJMG)FBq!!zWrr<46J^6tZ}%oGR0>3?${>b&7CTWRS?#~(_q%B80WerT z|Es0#0J4;JPu9(I^fm@;KdKS5YVM`J=5Bk1Ax zA!BS&PquK7a%7fPBO=In( zLC@fDV;i0htL0o}$X$05`cJPFs_8*-5>ZZNF0)vIych!xIUh80=@Gw^iORC`dUw$$ z+zYyqBfd&ZdWY5@xhq`t<3m>?=R`j;92Y~;+-zj0bEgjujU7y?m7JU}_fxMd%Y;WT z3}^D(-s6O8O&o5;FRQ!w^7XTGjdClk2JGVrU3R<2LC>Y9Z$thj>i-p>PWo@~K3b6R zvHwqvarr-o9su}Hy}QYOJ*TBJU5h&5o?3GAv=P)bL2L{QocNecbJ#t=t0(YSU`B%U zxmK$Zu#&Lo19+P09snd;jzZMO7`19mQ*W-zp7DYlLsi*?=U*UFE938)1T#|Mo;wO4 zoV<~`@cxz)u6Q#~PFU9|R+hFmF`efeERCBj7pY@A&t8EIhz+DHkslz}SCPi}>L!Jk zUCnXvTjYMF!$DMZH5?wdN=pr`qy!zms6MA9F|daw$gD|IFSRq^JS%lv7uGfxhz*=% z9K%qMbJO&S)bpq|pO}ZWAxL;d8QWNeZm<@ry?4^r%ilCvmBF^dYN=T|=~InTP5PZ- z@%@7Y@SRcdLW7dfo^E12lLg9o$6rILL=Nn%sAgDn0zNd-I}?=`FP|c6<4b1}C+G*z zI=De%Wn+;Awi;T`de%g2h{`ZzHr4=?c(VY&h&Q<~HQQxY z5yCE-VX05o*HKQ}+S5r+8#VTvXgM`#)_jRL+8eg;0I>ASpRvJzWf}0<6N<+>O$>Bd zH2>yQs@I*Z;KzBLK#W8IH7Xs!n-B=VbUcBRkCJ6RdBX+^%>x(7oPzj1useEq&6BI} z29+XF`>_j*cCmUCIgoszivAr^L7nZPLn%wB7vUipwxNc;Njz#RQZmeUVz`UGd5IO& zZ-2}awT2*<-=H!*^;0V7U8lx={blClgKL?&b>Ot+rHn4_kNt>m_JHN=V!PY)`~u3B z+=yk+zK5lyhocQ{DH0XUS`k-cLAS=w9##O*Jx=ktD-Pj2T4fC`%eJ`Jo|Jn-rJSXK z*EgjW9bey16#VjTtbx-4<;yqW>kN~^MWy^pk{aombqT8cn(zC~yyj!`SEz8KT)F|a z<9e6xSted?g^KznSa7pHY1)bWpxWN!KPW${6?vsZ5iTq8y3a^^{rN!TN8A1lSJ5*) z;M(au`DCsC%YkQ$azx)1)6j68yIql-%z0S$oc7d28rdZlKow0vTekV8bwBnJ6ql%l zM%mg0849Q-=Jo^(;zpk|^)boejSu2<-KolBuMmp&5+S`0@2#ID`O$URC>^Tv4Ah)D zLuyLK6TpMc-QR!E<1-D!CoyP-zcNvzj}h&K>*#$m?F6e02W3T3D`q)Vh~q_u4>vd6 z$*MZo`Ou|IM<0R)7q#&~C=BFu7Okv}&|2!lh}+y~CE}`&9_FQKc$L(7;6U~h`wD5E^cGbBaqBwzr= zLTKP*BC-xIQQ&8(pM{|jv)UwQ3OThClclwy(PcnhJpx}CCF*U)H2A`SG4$3#fUqmt z87kN(^HIFvMp4W<;FN3J@UX4KFC7;1WC9XcSwFQYIp#AJ#V|%qrLxdeygf&R$${6RX=gW-*g~cR-;(DU6&x3a*<9| zm91lQ+vWAwYxqP$UgW9abc;{y`qOIBWEhsvi>zE%Q#24>@Xab-oIl( zC@!+<(E{1brqP}vU{sDiBi2Rr^`N%9)kzn7Pf#;i#!IwkS<#9q3W7}box{S}!0xlI z<;B)`A3WH7fkpz`z|$B65~U%QS`IM)Ie>ccVguKA8pn_1MvOnxfbyNHgC|ie*XE5D zH-}pq4Zi)JZSizl@8OFX9U(vS!7iVuZ;mI1Rli}>s9;D1S%RF|?DkTP<@pwT|DX)k ztXViTGc*IYd&aRl7-FT7r}r!^ZNrqnKz`)eJ9r*wRBuS?$Pvse=_xegyUs7plwEOK zopPcQ>+j1{gD^$5(XFWmcR<^(7ne5``)IZj9y3X1J>S$PLdzha4RvF-Vxc(;hyEAS-fWj=26-0#2z9A*u?N){$kszc7XDWi)z-?37S}) z5v=HFTk8NI8eOP|@mw z<%RY-p6|n+UN5YnmJBFvrtb>!#oLQk#>+|Nj$4{QNK6sqVtWnmr7EjpXEPLcQg#b- zOnLb3*u%tROAY%{&FW9z)%D%f6+P)yABAxrK(bEUmN~0|4ldReeBrxdbvn?SK)SD< z77;VkL`b7M2?h!2D@g~Y;e1m$aMR)qV*D6yhVY!cdHYkZ6r8=jBeA6Y%}*&inSD?z zI+mzPgwJ+?{a!H+NXRikE=2!z6<>M7eASSvPi)}6P>!ebjzw~?Tx(RP0a^}d%@=AJ@4%Dx*rEr{m z0DxoA?L0pTB%7GIjMv#fTtmAv z&1I%&`9FWl>aiCAALe!`toH3+yl~c4SBk|7z3T|2uHVdI z<0Ea8A=)6nZYj5c$M*TtQ(AgF64GNNx769xGMC%#mH5=qtzP zOu@7&h0PBD*Dt(p+a3TPqEwn#ECX_t!>z!5&x}u9XxQz$(v8k&s@DAjODGf1)+HHdT{4 zSYkE#Wk`@T${Ehi##UU}kB7As-A9HYM9rR^9W$|UFj{@vpkQypg63wz3>%hO&v=dyi#lWDrQfi7+IR5wlnn@QRI`Z_ln4vpiSc zAxx{(vI%T>@!T!qEMi@#L|eB(VD7P$m&Inu4)}NQ?9a_@3a4M8PX2q#_`k6YSdie7 zr!(Vs7raPK#(=k4GT{V>&MTR z=F91*$Kdb;V4lCIfpM+2)`afPUv=_e$ahf2MFa;An_hd~i}U}u!(4m-yy+dMi&dU@ z$LjWEbAf+c(fZ4lwY>bNBtXHYAu$;p{=4xx(HrXY+Fc{VrPtAKN+7Ga5%uzpmLZ2O z87kaB4__zC%G%C-!hy<{11d(5L@q~$pMNa*TlYnIbEqrBTAHhmZn8hSnW9U2ekB#J z)^w;-dy#Bs2ljViOV?QB<-mu-#{?y;z$=h<7S5HaU|BCAw8I z1CTEGV{=O8uRm)}%5|MCDB$wSGsovzaTvbB?Mi!>xsu}2^6GlP%etNwX>xp={5UnZ zbqgim1Mls)ZMC*X5}b4vQ5n<3N(6Ld}>WM{iqW@waE9O*||cV!Dah8Y|(ogM(s#R-OXc{0}t6s zo@S8a80rOJZ=I76copbZhu-?8+M2=HszxSm92ZWJ%vH0tQ>=4~eAgVB92WLI+j5p_ z*y^w%==7>XEo#2ZA#yMnGSVg>eGYCKw1jrCKgV`Ugasx|UrcdqwlxyFDqRu_#QI6( z*q;rfx;%HKw~Te|OG14mL{o5DM*kg@?Cy`P_j+(+*!q+ZlJdj1Z1Ks@yhdIsT$|&v z&Q3cwny*D}F1Y(uA~~`zlaL`o8gt}kV`$O(LD5k1B z7i`Tu331M9)r)^qFHGwTd*jOkD^c)PR3S>UnbRdNu_vwbgr~TB@_h2J44W4?OPUW; z61WAEy%$$@a!6#&|H;G4Hv~|OPf#uczLEmcq-B6k3MSS-3Fmt!g^1+t<}tH*?6&~N zq8=|sg6rwVm5Hs}0h6ctx z)h0PzKL`UCNl5eCTRgi%dK6DEr_R>=RoBn}r5!n2w<^XW#mkqR`-OFIN_rEM zVLKubcTaB20^2|+XG0|BQpC$gJ&i9|RoZMgexJ-Y(L5nuRo!>ckhEUJcPmM++4A|L zZY`L}gXL|k)Gh@#1>tCH0CE~ttft;_-tWR>ix`HOa;lQr@sFqk_vFM~ot|!_!D7Nr zj;n-QX1K%KNzSh}xQ?+5D^Tcc;Kcl6Q?PUPBuaIhbQy$D%JNBm46%*Wz{mjBuB!0L z_>Y;+pOIVP+vi=r_(aBb{cbLt+ zT18smp`bH`p+Y(UrW?5Kxl8fAU`LNB9saz{;oe}2=CrCM@u;LB2@R@zw}VmsQQKHC zh0bT4#fwXW{sg2z&W>n3%+DkU6{1jprA0Zv&UD%LpULz3%L}_CC2o#)Yt~jzY9ivz z3xW@y=-A`Xv%Ex2Lg%#d$wTHC{sr^bTJs!_dr#yWUW;P-5`#nnTyo z{MvqnUjL!4&a8E>AYjv zyn2Ok+<&X?N1AO0)-Q1>l17W0^e-!q>ZlF$E6j zh|VA^DoYyn597$gc9|em4>2_pM8Ag%+sN+O5HeCChNp}Q(!qgp)fdDlusZZ~hjVj= z>**-f5RE&|bF@@p$93|{VQSgDQR(b@P-;mkiwCEei6LjHL3|C3?|}YVxSUL<_jVBj zznK-AE(EY$S@`#HmU`c1^G72N*^{|9+MAQ)k_V8e$S_aQW1S1+!7e2R8izzrbxQSJE*btqNFAj{8aFxmm zC;_;f-BigYJy|B#zJ&d5R2}c)13mdt8!d!rZWytPEGf=95|-WiMmd8>O!uij zNypYxZ7(H=6WiJkm(4JV=8lYv?7Re9)PFJ3 z?p^Xg4EP3#KDGBbyDooO#`m(Caz{PZ5Gc(^io5^Jb<^`Jjt2vy&Ibcf|JoCvibzH- z=kvO7TQ#HBO(+-EQu>gDdVmsD28$CgatZHy_`vb>#_T=CWLcTXyNQJyQ47jQVg3^3 z5>YJsKkh!f`rm4p{HOa{>dQtQW>)-5L#cEjI8CPM#pp`yTLHAx%}+}|Q*mcTf3DX? zaiht-jeQFewF<}VZk7?kd{rnN)<=e>0KuZt22uN}OqJo1OmfHCBo&{CKva*oRs``B z80fP;cHO?cQd>}P-BQ}%{@z21#Q;!3bVKW2d1DYEWjY?b<&goealh%#RStG|HWj^? zVku%3(u{>FATa(tlJT`(99#X*cBGE0LgrbHtck;;uBNOy&o3iAtJ8Jy?Wn&Gh0v>B zzI($VV?1)IP&YdCP4$#|=&iTLQ1}~ny2JH0`t1 zOQy?u=Fk1uzq3jsrO_Yo9xnk)MnI27@BUzEzNM-1Cs2BSRZ5=IdXTnJ3FfHBP! zULtM=h%*-Cm6a=8Qt z#sCRb(Cn7&5-5UuW)pO-UJ?xOjkCu~%u{JoQ)-2S1?(VBzvk(z9YSLm@MG|YkaPe6 z7&1QV{1&P+jvn&vwch0Mva74^iv>AP+95RS^xxE&5`h&N!yKEHb-r3Xa|TQ-ZE`(m zdZC!GRmH3?^k3wO)n$sKOj*x0P?DzJiMtfp`{ve6(ua-2@FQ67Wa%qR>lb!2pEVWO z&o_+MH1!W%iFo8r5+jTiwUeUWMo*Nh%MWzSY>71*&Kfh+wx-j8KrD-(5XL4^01gd6 z4L}D_aWklvr8;ibq*tQE<*5oP702YeW!W)hS@?-CDi#6l%tSMOs+@kVjoY>)L=~w@ zY_mVJneB$_n}zxsikr!R;Z#87qA@N-+#O#SXi72`7T;OyNU05nEMk;-kHUa_1ct9I zQuyMrP)iC;6@{s2T~hprkZ7Yx5fbB@%;|8O(ZrU@u(k!+v zR***RQ^EnAGv|Y;Js&`NcAi)i@$yZYjU@YnA;L6^?t2Cl@)?af(RQX~hM=y>Lk7wU zk?8>z>=2U13Dt~W(z>WWF$BMsOp z9hbs=`kL7xkOC_inOxvYw{#!*UPNrSL^uobzve_uT7PcgAOQKdD(RfN%SvXBv%m@H zCt%by39m}iq~ptEn!}Oh)f{2@1b)}Hw~?$nzD`VwbwzA7$Hg__k{<-$-nti^Nj)`g zpPX9+_0}3FCXz|QQS+0~KT zIkO1ZKWfbhlt7m1@eR+u8ANU?PC8kimDSwoZ{k$Ht0)op@u)6k>QclI_a>Z9@`lQ~ zr0)CDe!{xZd<9~``PH+od#(5O`R#Y|D-9!yx0dcjESb11sw!uE4}fX|J-ah`%jKCX z);fWH#tfpBjcp%ZWHqTnt90vr}Hwh4l(^vc-{ojSkZD>_dU^>?v2Y*dh)GmZ6^y$<1}y z&->P3C>e2TXiDx)So;$rAWAzC^O8ce$r;lCtn>-Ot4d}bF@kCXyRN19GWaf1L`VC<2qPQ^2f>tgr24ZPiDYE& za5K<(N7zCGvnA5qJUuxC5=NZ~NS4RmA2J%QW1ui5Fs5NI6+*ZU4v3!&opezLu||JC zv>3y^keC9*=r1U{5f3Gdiydz$Fwk)%udG~<7j&b(lB$p+a`~QPE2l<;|5odf2Oya1 zdp{!(L}{yGa`Bn!O;&3?)l~Mx90vf@gG#$AKYrIL@T)bA$_0^Mh*%>^er{)>&xo3x zfRuz+PkkaqwK@B-%&FEr1*FVFHnYj>P^fit8Uh|D*j)e0<4Kdwo|}MKfcfGJBX-9W zPjKx=8Qw*oDJM@CLOF_J`C?*XdE~$`q#dmV zxrvNvSgJ~m1Jvz#SbH8$1}wrt;=(5!P(qVzhAYET3Y*|}VUhbHg(o7wJsUXumUC4< z!;HvWS1n>yeoH+K**7ruW-3k%<#`ahmj;=IVvckz0TEl_Il#SO{Qt=bD4Xl>35O#* zd!2;-Ry)`d0T22XdjO9Y4ChZ*t#dDQQ1=hbmh9k!dj^L6G|xk4ymCzy2K4CEBMS~Q zGU7++?Mb3mmAQ^o32=awwBNQEIGW6zu>o#D!onyt7t1r?vcLlUWt>7&Cw@=xOZIx@ zB`7-~sYJWxo^xG-aMN#5eIs_w3GjJOnxQd&mnX8N*4zX-U63b)D#C*1!sl{Sv$l0c zV%Y4m?}AY(l2MM}m2$3-Io=~zTs|4>h1s8t>_z7nxA*xzr*b-|x(aqU<^4|1TNHNg zUnrM*QF0yI>FO1%SA%!jZCzK*SpF<9!8}AOGS|v&=X7OOT@HT;*teBcGYx^%ke7qC z8LMKn)8l9DD6vaeM&(!53x}m$@^>rCif6|ANc@yuu;La+@rgctrPGIS#n%w=Af8cI z0DS~fy_TS9Yl5E;StA@?w}vypNp&UMxYg!y7m@zwKwo|>6t_2D z8k$0|RcW>{5H+^>NOD9PfA?kTAMm&Sw1+Y-Vx57U2?nQ0+?jQE`0w7#{@Ah9(43y2lC;WefV! zW}`wDKVZr)KHB_lsb?|4W)TQpb>wqxW4eU5{l&P?bm4t0=ucW!84iJ6`kr$FMk_*;Y! zU)0_2NMiiCP9-_%p{Q(`Y&aG!!b}0Z=ylJ&KROK5AI7z{wH*!Nb5(J={gAY(`o8mvp<|j>UOmb=Clo~akoPl(=0NJ#PnvJ917+UD$zg>Zz`)~ zoOdM&;$$u%+fy!Y$N5fN%IztBeH|pt&=K|8(ug2p!Cg>g(<|H?A@Z4l-6tiU8N8hY z64h1RMAuk(_pwRiVs@ZLnaHsCvVZg?YkUBNak+ov&za);dfWxOw8J{He!rXJJfE@1 zZ@aMgyS!_bJJqYw4opTEKUmVhlqiv;EmVxrIRmE%*=$325QP)~i|7&A%&rR+Wcgd< z#`1@}2skI-b?IR_7eRW)p)^ARLl6-QN@SAB)L7u9@PVghTfB#RjTe2*q}dNqMcQ}e z@b}Y}R`VgfVy8YjucK(9R~LY$V{a~X-g|r>cHkeGwHid$TIIpoxIHh6(m2j*&0*Sd zDyI*AuG6UX0kIQGs2M@@u78q*ZUmY zo+}JF<&HdmrIv^g1EA{h>I3#9ox3=ASer$eRVRx_CY}R~)%o}YS({d&^|pT4dc5VI z_-2%>=ieRCeyZ3VJ{4TaqX-(8(w=rrt_!1sGFc=Pr0m6klDTUe4Mku2s~Sj;8}2L5 zf_d5ebnAa|>*)z={8EVAOJ z=hZvLp`mi?HYPAddCTRcHrdXqNNdX%8+6D}&pu!~ayy_8|A#8fBUa&N3pV1+t~+PI zM~p%848S_U6C~|J&+or8*ZN4^T%V-cplxQC3?rzC&dSI$1*3c;;%%1eGU8EO_s3EaWg(7?;53QMI5TSwS&wEOgdgH23kCMER-#Z{pX75AKc&J8zxkO8;iau!ExAB5SR;GFT1{*U~c;*9=hGY8$g&|M4vFQ}9Usp+H z=67W^_AjK<2%yuviRsfoj@^vmB8GLen`uqo#Pr*TgqvT}pXpjGG|*bbrL#|sT!v_W z&IbcmzLfpeZ?A&?77+Z;8tR{2&?x>V3I5KTbL6LBHUhx%KdLoFS^#JRtL{(Nbk=BE z?A~D6;uo%KlQ8_;G4WGn0xpZ?dzi4+FZ;C0>!lFp$PY!j=Y+h^MGWaWjLEx#RiuqL zeQcmtx=xH7#<%(DACP{1WS7)b(?YfuT3~b8jc?NcX5pD4R+h!BgiA_yI9IPYd$VnX zXSkyO8zX4>aFyVB#L%5(M>r8lkp)jR7R26M0vi(r!ci&JTkQ?TqQ(wH6g0@bFsSp9 z8+j`94Z?9RSkvw_2zDVOl)DJcZSj=?Y3jduvu7^QbLCei;>mKWZ zN0Sza_+rJoJr=q)J|unxgabn~v^A1zPLU~?FP+je>rTs)U0X!p zbDNsN=TR9l<^`rafSg_M)gP2Tx)xm@-=)f)ZnnZZmWi5MSaef9nYMXvRqZ~_HMP{$ zHalcq&~{`pv9AHL3DL=FifOE=)6E#tXV0r{g)-h~lI802IM#GQi3Am;p9GO)k+gBd zkQeXD$p$BBni{6mS0*TX6Fsz`64d6j3FKi&gZdb;<1C3GTYBq1WD3dhCzfx3Il|R+ zy@)tPmMnD?0FDwxF0Y}IV+S$U<^w{_hZ}qFw{nWOTCT4$cxRTTj)2o2nMlqqwly8W z-kP^kEuC{@uvN)V!ghOzJy)^8s=sZ;mo&2whLFp%p}fd$f!g4xpZyLOVXIOOuR9FnTQ?9t%Up2d0fsg_Ds+dZehIqeFH5<( zF(ehrvrP+^9dv7O1|JkUi2%;iXH=C=+4y^PCGQ+~l0M%?bk$N$kcf|x1ZCu>NWViX zwaXDs=Bjd4UFmIaV0baFF}!->f5Jh}E-*iI>s zHiYGk>S{1@?0lEUdIZi@o>)BtvNQG{uZW)kxH7lgzkx~d>ghh>w*`@nrrBZ<9M__& zqt{iDV_^DOnS-=Tfa2y|1}&Ll78tQg%mhrp4NoiiS;I)g8L(IBXZG$9@%-I+a_5im zcmMc7nm(S5w4VvYwZG)OSN@Q_9dIB(fi2fnJxMRLqMNW8E}o?_6+DSeFkhXKK1)Opsx9?bNXEnxHY*}Bi?>r8L08hO+a`7J0dZs z2nt%kO%1*zmmKon;LQLUtG zDlfc@;)SxPu`{+v_ukjI{%OnD{DxqdhI&j5ypH+~!V%n|<}=_Qe&$cl^rz+!x4arv zNpZJd|Mw*uZ5}Y+T*|3ETls1b{P%A~>->hI69QBT*3W={HbCk%wLyxt(D@}kDUzPZ zIA0L$4eeEGwbDNu41fi}GvHs%s23{#iuU|3r1^g$RsDC;DaAiX(G34iiuC4hq~QO3 z(wsj@`ZOp9^(DQp-1jkQ>Aa=+xj_~;hmM@IyT{SdMeQ#$;J-ea|9|oS|Iz*i5jx5QJTg7yZd`KfW7*G?EB zl#X@O1IyppM(z=r+;DW??G2G$6SxmOZo7J&X>8t(ZlAw$Nk@S0PiLumlaU!k)w8UJ>NbX% zhb%!(U`}Mr4ZXDm(kG8zWvB96zWotCn=Zacos0GIJeg-wnydI6M{SRjN)qwV8)#z3 ztEsj(Wj}a72>QB+>|8!(Ub2#)2~u(Mf8TKDE%e#AhX`wIM)BQ_gHB#etxfM)h^y$C zQ2CG`3rF|F%{>DQ!rhl=4@@q;1ofrfd^tp&sT(0^1<@e;z_&sb9i@dFS>C+A2#q+; zuAL_rt&f*#i$Q{-l2*`&J5uZi0>85$_q@fLKdFxn;#gJv^bNDNXVCkkt#1!PhlwL(z9Vcjpj3JAa@^|0$@Lwid!0V4^jFceQ0-=>`3Ps|kVC<4%pV+u>>bZ|N3XJ8`XH z(qXAC@R7Cxe^^CjU?8OW z_Q-vjN&o$^Z#=Z<2xbrBXbvByx7@*OD<;{`%*|&gWX38x5T@KJeKft&oN)_dGi{q8 zm5hT4TI+K#1bUJ5S$q(_&}eAgqV&QWX0h}_oNR%-@C@QQ6Qp(YYYj*gwrtMeo6wmS z7ThYBs>75UAO4lcN95e!Z(&JpFu3cFAe?1eYqEJx_(RL!``GDN#+Uhq(p%IQ$u+I_ zN^!cPGM0ja=jx63A7A@ey9yzH)0`DHDgW{DLEu&5ybjS=4DQ}124-hPJp^I1b_Y*l zqm~Q)V742*Zy|!aHVCZD;{Ii#8*$#)x*OPml{d0&8ZLx&x2bt#t*bV*H3VE(o1mle zdn>|)U#vB)Ro^ia>Tl{A?$9oYq3X=N>`D@n?hB4Shbv>>&%cGvx%v9ZwL#ZdMu?JO zr--aYDH}Uk$;SARj=m+Qjh|=Kf2c5o@wVD&X*I^~_%mHDhA@`~f_4Jdn$~}ayOBR4 z8?^<(wq|td=g!z!GjbVcq`NGnWte*fPE)m}eo1(J-|tx?sh_cgdKGxFN6oUwek&Or zuEF8TjuSX?QfmV*h}X40=pVHqm5cHB9+$Q%2*G-eX2!0{bHqz%Rbpfrgd^Q}Qwn~m zXQ}@1Dn2?StT`6)RHH@G8+nxs5M50-j$J4!x*h|5dr%5%6MIo?f<92DU6*scxMNLZ zp_=2|8)A|POxNNr{(-OY4)eNPLaC-DLQT)Tp`%Va8N_NSuEi1=hXr&U$X8o15~EGb zw8}m*OK(={fz^^=Ae=K5hE#I!B)H0Q%*b+DgO287l_k6o_I%fZYc?o4XMpg#i{Eff256U3c^asC z24qtG_~{o#wRlT))%)A1a=6GwpVgo`@xi|T4c*a=Kc@a4)&D^%O}4!x>m*(8G7C-l zzzT%MQQ<;?<0H6V%=@<@p})RA0|u6VS;OBD%KUuU`{e1jefq@XXSV1!f&I(3v)})X zin?F*$-Di~r?>0dGXFPFNc^3m^Zznd{hy;k{0Au~#7wB;gN^Mt7R>Q|kKl{CncqOtQEh7I->{t*|)D6Qh)Y(XOy=% zWZLP_L^;3E`Qp#zd1M1z7AwEunCY7t*=Su=*2~k)|Kiu#@F78~iza7C6-#VFLi6l{ z3T9{+yZsxGwpm@c8>a+qbfOi8tg>US?NvbJO<5(Or;&2&B zOqNU|7JwLApG4*5otldsUcN!x3BxKyiqGR(qh$}9u7;^I4Uqu7kU~Z5ga$x!Jf&2a zD-ka;?a*zgn;M{!Sp31e@*HY`xsi7T1G%=f)=40duyC)NyjEPV@Wn8>NJW?EmcnRT zp+zA|x`NI^!~Bsx$B|o$b*?dTNfk#$Sz{~?Y!QK?6Jhy$TjJQI65QyMu;r?Mp~dl?EUwoCmO&x&jK{+O=+oDPq{-M48FPK@?yIw$K}D!7gl z#F|8I5j{o@wlKy2ISL;a^mwA?aAK9#M<%r;lgyUeg!fivSewyM=qhNs)@_7M(N}XL zLT|Yh#5TtkH-9&%y>s74+{;A0>viAanzt-k?xK75P1nG`j$1$Rr)gp%uJkmiC?F$8 zj3E$HW%ievgF~LKt!BIoU0YIYH;oXVhCJ9IDUie)ccET=+Ewq^Y*R^S-C>c{kR>`r zDRCDEZXr`_$1)d;u56ueRBPql(dh4Bbo1&<;_->+@u`yhZ~MC2-qrhKwMB{7x<%}W zc(*xJ7RE0wEv?~CBhs|@byirS;Lzg*dh?Pw>Rywq!7amGauHAlIUbronE&Pbk6P7s z>k9{wI+Wb zCQBN}(d6p7c7#uIDtf79Q`CEf_F0177YBe9E|dwH$$3@J4D2wIK+>I-kV_+aL|IZZ z(eS=xSuMMCs3-)mfuCBw`6#q!EzIkT6X80gOZ*|AK3P)TtWxS-0)1BgQ9mZ~`=+W( znrRCypH5yKI+V!LDuhJVu$WJ zq1vI+Ez|bf+^ZF3mn$MY{g;>0n}Pn3&d61y6+voqY&;P(9=>l902Zn{_<^GYuE@=V z!SwM?mQNIkBT8>Ipx22o!5|)!1yYP12%7g*mfYk8Z{$Nr8Uf$MJ(T@)hgp`2dAMvK zOBA)>?mjGW!f@tXb9XZ%puu2xl^;R`cIjBvls3%E_vt&7|z88au z_M`Exv`0X@7WJ7SDosE@N_`aCx$5kVADg(8S3X;boVMA=eF2&Zj^1>SLR~#ut%tQN z54S>ck`wSw zm*TR+OSYi$E{jg`@-S78sMf2QfI2G%Lge6+3ZCD-@uJSE%kQuDBuOQ67!HxMBlChYOx>Z@;yBB-qI(88>WG-KG?4j-A?n!WyP zF*BY#BSE(k&$cz1BMwZu4*)h|Yy)r{1c(eL?*%3Pc*wRBrQ_FDHjIGnl$vTDcP!(YIYtIDesvm|#YF4eTK&U{aLfi~ zS+;;_A8WK^Q!uybc@9x^NcShm(X<4(%tBXGJq}Rh!P-Bf)#L>$w)8aPCxVT22!?Sx z&Tiq%)q3$VIH5AU<-`#@HWeR&TTJ_19Gbc|5d*5LnhkPlgsd{>k_v4e>T0a{7IZz9 z%%%n7{CMStB`pA=g#y4D54h=680G!<$XoICN4k0%p@QArk8_>wF43(Mr`2*S&E0NFtCewdpr}_*6c@ zl&b%wz_oH;Qc8R#US+I!#Y&} z(jt<Osx>&^mH zq%_*v0(+LuAXMf|QKN7Iq(@H6>-7KyS`d!{MK~#?T#Qf9tmen892=Pa1X~?Dodt@a zj-fP~APgN(^p-+>o-9AHC{83{SYJA-J}>$U1Lb>jKcqI&=MM>2x{bGwY$MU_)mup=XY8aV zmk@h@E+O;ifqa%j$3_XGdJ9{j7a1j^bZx;q;8qgW@$lpHQwvoDEN>j!@eI$#TO9pT z7Gz})##f*N*$IJbkv@Zh`RwFxQj#d)grWcd2jH(sTsqz#Yq4@&SV0ahMBU9Vt#8Xp z(;*UvvFpe={U|(e#ZrWtPv<9^zZuD;uv@VeyY2K~9`GuG2SGr}oM7TNnvT zB*)-5%89M_OaK3DcPy38-`4CH_fv=7GeB}kt0d|f@av;Z*3ISm1HD{54WhJJIsgPi zeHXJciTFheNEKP<#U54j46ydvlpq;Tb0k%dgQKxRpuU<3U##zFY_|&zxJ&bT&-GoJ z1R%R#iKvWJ!dPUQN!m+d0pjD7X71VyRd!nORz{pvQHSOtCpghFSTs6AiI6QgTYoByV$x)^#*aBhHx}$5+nKG9&HtNplsyAZseYtmzB`%O z>9N4yuos{Pk2_%(J(g&%rnP5kYcD}BOR40 zSzok;fus6v5_1WUxoEmy4ymE(xd28m@n2%Qa`B%1;4cs_r zdD0liC4J_of}Ft=n?Qf0;D=jOSrnwhoReo{o@8lGC&ZT^)5onu>(nOqkQf!|=5#1k z))Z}_FNJj38o12rzaM{(c4WwtKuW0*8-f-aBQsqhm3tVYJ7kBIWkaYBq+nGi=-KZK=Q! zP^LvwN*=~xRfxgB?mNy6V;{{OGQK1*MpbvgQXj!kjifB0#zH0vLhR7SLuws(lY4+E z7$cTR-8q*Tiwo{F9edc{Dx=qfX6c8IGT89=^sXf?fApO#IFkSE&Qdy~K3o^2;F#-M zfkx=ITrFN(ctnw&d0tsMsX9dh&BFI%mCjIh_M1U=tD5QZY4XZC-oBbFA?IcoIWy-h z{uQ4Sti>n76SCpSZUVK|H_46t%V8-mpj~(O6#3%`l;=?07cFh!0@p=dmk?6YPR}m9 zt}}r<;kz-_hFORk8@^<1!d~X(rlsk+y`AzF{c@r!(&rrtthRWA5}jqqql;xJa#mAn z4Ztg8slgKwA$6`pGH_oBY^+dM9uleZ+EXI|BuER-fd$IV4=Nvjxpw*VQ+&qQSKO6B z-$yzTJ;c)bOXo-@psK51c7pU+(*bhM6QP8sE9UEL(qQL8P%CThsrnxIRT`~7mo%u) zUFEO=S30)O0unpGkQ!Fai1rLv17Kk@WY#5V1`V~?S%W)fguwLb!$Sf7v@5taF zE~z^5MwIeq;9~t1-6&oQPI=cEBo}&qi_d~I&wz3Rky$Fc+C(^-esgK%i)u~%NORoD z@O{?_^foR2M*L;%#m}c72NQ1*b~I=cP30=Ii?Zdc49RDC@}-A_MCb@dCD)hFMM6tApd ziX;2PvhGPyQyXvKf4Xn#*>H)}G9auYI%ka)qj2DMh>aCxU+mY076LF*p$qS4P731m zvP6k+AX zAPV;fNP>-vi~9oJAnthflsO|^!mhGjjehG&ua zG|!TK;<&-vsZ+ItfNa%>YgG=$1MW}Zw@=4nKRG*7`JxTwIa!J67G;{9J4^tLs$9}` za%@by7cUD7GPKl*Vs!g>7~jyYKzF-=wauY}9H=z$eQumK-XCznzE(HL&WkZh2LF+p z4EWiLklCibZuLp=Dok1K2sfQ^rOOJCnTL@nGRCl|#r=!T>ut`aFW1@b-2__;cLQhQ z0DS{933WIOF$5)!F~&sYFImfu%(gzC?SF$i!ar86GyVtPXioYW@br#n;^E%m5ueU5 z8w;}jBuDuScnmUr228~*@blJH*{re7<#e=$?@ix=Ug3_9kT8dRG^b**%2~l~V3|b3 ziAZeHj!_&W%tPZRM2tZ__6KdRCEJ5_nYQ_=lJ{vxgJ00n8Yfa-0**n}l<#Hh@rlFh zC7W9~ds;r=zi!>sO5v{w8n|=*_@x6SN~?#6nEJOoNwU+&uC&UYywHvVi6GhQAA0*< zNiVn)EnpHq)bcRzzD=R{NGOcc2ZonG1QEz`6onJ2djkXrT#dbEiJe7~LhFg<*`L;Z zic9o+ZwnTCUCtCzdV;$s;AYb2Bgos@mLgN$_y#bX~k(-jxm`jBVNt z;ZQ<|KNNrJ1o)(5EWn}~Vz-t#J!loIDA>?tJnt~k1$Iy=UYuZIzh98B!Dumx$gU2* zJhSsjBc+Rl(A#jn76J@wXEb9tBU1{Lhq;2;*HEd06l$TQqIl9VjG749)EE>#vzIUl z7Gh3@wB0&WgIwq0Be?4grxT{e^4|Oi#9z%67k$oeNm+dD>`GQ`8yQp*W$^UU;&3=v zF$|4X$(LIA8a=als`@9QEyF?dW*f zaCmou5}HdUF#>YF+l%p~L^r^;DNHfaA6 zd)B#PRgwEc1D7q^8@W(9z5LIs9W%~%?Aq5>g48}(Oyyd+DnwzW%bE(zl_Q3B8q}+a0Q8GcqFUc_nl)rug68~%K6+!Yl|B{ zmG^(xP&QTMyz>4I*sm(2D{pi0D#oy*?|%6`n{R56^!nu&Hdbu4h=$px)$D_+wXtG- zLxsI9px~!B98uv!9xE9F!W=^)m|8RScCEh56IxBJ&3p~IUv87&Z6v5(C4Ws~maEoW zx-!4Wv@4sv_OXj%IhnLcbv-3r#o$-LX3|cN_b;RbZMc=d`a^HW2oCv(ZWC`C*&@m? zo5aPyCB#Tj&iF_x9y_0CaU=Bl(Fd-z)gcy;7ma>NEB z@;4&+n(?3;7NU9->)+o#)aS)XQKXhETN+4>2wXLA-IKe+MQ*1Dj4An1j^_3)^s04+ z+o7WChMkenN*T-iZ0?0uq7G!K@Wq$&sda@}#5S{1j2f%%1`G=JJEI`;8ZRw#jTfxp zHBudSi~St`+gSf`rb6k;9&4g6P=7LT-C&#-h4!c11h-HvGfRkuFw?lFKE}(0#W@!+ z#E^kQS{FxBq0R!11gHcN*eX+l?BvaF{i$w40?4|g zZ2F_C^O}kIVymd|?>=2&#Je5kdB5XfheyCPWYETNa1rt4r;lz3hOqn{_h=WqmBIWt zybW%+*?`&btAvpGF;^xwVSc_S8hueJWhOEvwa8L0`)_AIJ2?>8bYXvNTi&aj_`vDl z*noxeb!qgZwTgr^X-B$S80TXy&uLNo_5|I z*%hEKg^h2WafM@xT?Q&47nPl(8R@}}otEc}tyMTy40LW8XMV-}1nJo!7z)E-?0l-* z&y;JgugyN%4sjPJSvW(?gX&gHWErD!8{5Jz69g^RK+5;r15RiP=w-1&A)0D2Vh3Wy zF8Vw#Y1=}3J>aKdi~39J62{?^ZH&YH99aGL@u3GUGwtBRmXK`T)^ZkAzG)BzsuM-S zMGcdtCAnNJKXs-4Rp#u_VR5IF^Fqk4Ut(3-5L0TxOlPFfC0JCn`}S2$vAvfL$O~F880i ztN$gpwZ&PiyE_|!MqqFvUqWP*sOY6v94#vWca^esI^2Y_T}XXR<76zu!nIE79#bQz z?Ay`uX9#JS@lji3B$!f2bF4paW~idB;k&GB2%c`D>PH9Kw@M<;-<+UKd~r=WD~ClD z{PLail&p2jdJ!HiK4QKieY5sQB`5A*i;NWoNm(5M#|Co37mLVExDf#__fbF!T`rMV z;V;8ai1JHVJ~dt-f2N&rm0wWch|)>qm69={OF@6Z;IzVlJrZzpt~(Fw|BA0&*KCK> zRt1whZ4n^V@pxejVu3nyeXP6fjG?3>96VfO$lTgjtG8%XS>ETF?iMo@RptVnYIhJe{nQHGOfU|?oPG~4p2zqN${l&v zuhd-OC!cxt4&xZJXiXPHzOID!`IRG=C9}H!PL&9JfE%KJ1P6a6yeUb&MZisRw^lWr`f*XgA@NpU{(3kvKb)yNg|2r=9Kv9)Agg=u!xL8bM=>+0T+D9K1CD^6oI?F z6sms%UNpH*P-!XBY4KQLFu`L2`%RSe?b>SW^qLEa!pLxZH9@iMhEmOL+Z9z1NC+JW#r-*lH^oezrWiVTTcrSIM=b>2`MU}Gu!?dBYwtam zUQHwfKoO#fjgUi9vi?0nmoAU9&&`YS8+UupYH9J8!LASnX7wEkGl-C}mV^|*Wy(`^ z8t4;dcy?yl)CRo;(OIyYi+^%e2HYc)-1M`6To;pc;?*#oTw_>~JeTX`IRyG$5=D;g zyn&N1+}7eL$BS)>J{N>+Epj1{>I-oqmcnBr799qiYfOZkVnH8l;vAUH6o$aP?%QwD zpvnDbLayZ{jEh)ys^6nJvfpg~^!-J&uv0&ZBNXh;Owb^gNCDR+AaJN#oZtJh%nfJU zlJD3dPxiBzQo4;2 zmoHb;sVE=IeXJ)Wd0p#Fz#K4p1(jwI;{jSkfJ861@suA68uZ`JHC+_2+mN>+OhYGcrsqrRh+RnY%-keFC(K3SL|L}{xzB6mmzU5xvI^1CB$MDJiq2eZ$79@f|;WZ_-M9F=v8M;=F4Y#37P3-m7qc7 z0t1`&qu*;L5Wq=~D1`L;ESXxddA-Y`Hbud#*Fu0Mt7sMd^DW-~V`G$g2E1DCe7OB< z%`eR#S*q)gK4O2Zc|iT6Gy35+;*TQ@B8*yEt0ybj?O$D0d=0C!30!*HM3L?`@Ik%! zA8$*&fJEg5j%~?jbhg@jsR=rRL#B#isA3ysgTH{BiAD4=6-T8cuEud3tz|Q68s#FW zPHcH5^-dkl&(|vL%Tb5mX^^IObfGc;Am@k56$zzBWMjd5xi7OI4eaA&^D-VW2`qJq z8n8}2*?j@RR31tL>iQ|OG$p>oq#<{T!8I3Y`t`t8M{Je!7$;cfDfJR}{#?ChodKDG z^rax5G_kiNKL=~Kqlg!8lG~Q*1Eicx&p>;9Sx4lXonu5I3Al_y8#i|H5*Y3Qom=nG zk|))O8A8!CiNQ`yrd7v3&~3=4&v*G?zm@4La*{1enIe4>H`*sgDzJeNtp+;Ho{P|Z z_gU(&rlGm6wJ~#VeJlhNE3Oob6uuFME!Ycif|cm5i*$x1oTX`ecA&FXUO~E~@RuuL zG#wOG8$$39oFM$DK(;a=PXI6tJi8E?!x zKdP?_*30%~BRx=h`-cY5NL;J8xbhi*8ufL^am?%^8~9A2>`sb!B&ru_=)Ms*P7tsy zyjAI$dg=SF=OJUaEK~oxo^WgjTrXUVqi5OBFQ6AgD6g*o2qpFM475#~j%0-aw_Sl` zZ!Cj0#JM}$g8n@o+y=EU z6x02pKUTW>Yp@2KI#!n}!O&t{IAiudJD%>p7cRHCJbqXJRY0o0OLU7+Ps~J`! z(99WY;)KgRzf$XXu+HcHQLrhOqX*U!f$bAzYwPT86Vb!R9Eye^v?#IYGZM%MBU;zl zAj8@9F=##e`p6)ukMANw2P zNx=q(;UG7`43@F9i4A@Rh)-Ba7`!wyD)7uT5 z5t}f;tyCe4e78AJY$0*)VDr(7GB(m%9ka9fFh!ocZ4g60*MBA^KpQ72Fu~J7+tk`H zJAXm6p}Q=zC(;9>xknRQ(TFG(q?BGboKA7tJhhc|8$qah(H9VIV?>3KMwBK6A;+eSoATQRgG z_kPb?gyL*;Hv@1sv65?5KZ6CzbTD~%&|j7ww~7uQM%KowhVpHR(vqBoFDmA#G%R7h zX)o&NGg&-!ZSrKd#F{e}nTu{{uXBx8KpP=@+yoc2)p4j=%3U$e0&hPdsLf%@tB1ay zi8{$yqaN&R?PhR6LUfs-)i~|Ce(g^b9%vT^?jg;W4XTo2@Alw4c;Ov?sAg_Oy7#*; z$ER4z%*70`WcQq&qhB2Z9yg64Gg(b-WhFnqEC~-{9!d0yp!#hWR)If)mAwPe$?`Xd z_zAu}dDn5|%|N|&S*x$!snCZ777O<{iH!NOaN0rAu6>)q0|~RWx-VzSvNSXTB2oaM z|6(}=8virk;=aIdVZ`qsh56<`*g&AJF#sE3fZdk$xdGX-!Yo}~oWf_%YNn{>e$mxV zh+hN*cwK%n2|uMQ=7c#au1yCrqxB!`3KZ+!@tN6)RUvH&MvM`<0JT!nel50X`6N`3 z2KI%o8F0cI4*!9HfD!4h#G6%Ydxy?5&qq|tyUad#M)}UM1~-P}X2WHMvNm2}ZKIyw zw)`y1s;GNs4c6;IgR~gfR0_DNjtykMSMTyzfe+YNEskWvv;OK(IJa!p?QGAtZ%n zSXwU_!~5z43%FG`0yi5VivGV*_xLXZiE!_B1f70&P5B)ty`RsmiI;APR*qVm%6+XN zWeN0^Uh_O2ko(|wN%6PkABNKFWD4nwQmWHdbOi>3B<+STH7iooT6_ltF@1Al$c_k@ zaW2|pKBjBLGp@iS&2|M%f&DtCM1)hs-7mj&7oxMLAmQO6LNEEI8d3!VlLk$#C1#Q-OJ< z_Rdj`9!L~Uoe-Dx0=p^BQ~*MDZW9~U3lVww`TBFTUW7i^$vze#@air{lq2~&w*X3P zUjE?D>b7NvhSO)jr!=4YpN(EWYnCQ_lMl0!Nc!C7r}X>ix-(r9UW!jK57dt6V}D7{ z7!VZPF4yfEcNznJwk~se;wQ57!~X42ZJ%VpsM=REnl7`>{c4XhIp?dx!fb?+t5zQa z9*dD5;@rJRl=v;*1-ZLG-`;qG05=4moB{#{2oi&Y_l{5e7T4IG`j#G}Z;>v4Mc){@ zFRa#5xGtr8+*OJ<{GRikohwwsxi#TiIJ-talLg5_{`a03uexnz5At>4S#ORstas9Njh97nZxoX_rzw+BK;QvUt zqH2sVX&GAj(Nve^rAw|&LyLR-#>ld)q?Xzch0FW5*Wr`R%mYn>B*+CXm=hbl5LWdK zN^Nda({&@QtG!qkf+b5@8_!9k4L=_0Q)m@$MPlqDypwxV-UkUyIYyRvTDvg1Em*HV zi8x8SYW0ZY+r+G=&ZCDG3V{G*E8}96tPDBB0 z`3D4S$S8iqR3<1Na5qcdo`>)_owwt<*Ulb^23}qHQdZ{W7kOUy4B*ydF|&A?56KD31Wp`3Rx*q0Ft57sPh(xq<@>?+bO5`da?p5sO)R zxN4D`d6d~KJgD00rWvF~kTSGJObuoT-isqhAk*$*4+yZBcn@9b zGydV?`?!{01_CxEdNc+|!?UVXt3+afzyk~-c3iM~W!pwSh!3c;{sojcd}V@$miiS+ zHpON6I11^ZD74>et08zlQ!<Cn1Z=ARoa*UtC?ZCsnyr^ z3Cu1#eWsJCU+P2W;i-idbbRTQ9n&!{r zOsBtQgpXR91tYv;zRH?((p9x>$^Uw!Y4`DJFzI$a@eWTqpxZZcBUrf*ZGb}U2pKFp z07%D&_O?5DpXIZ9ub#qy!rmfnU;=9YawjGW@^Nnee9v*gF#sEl(B%uJ3nXJD^ST=AURm2h21_7z2OuO_RT;bj!Y4+bFHw5x$83k>+m-6 zt!Md^(c@|Ey9ztSG;zhPDJg)cCVA=Fk12+Tu3t0HzRO zUb2AyZiEbvJ8&Q}AkY_%&{n?a)o05@>uEmbl9LT4R#9c_W@>Ex1@zaL5y4o4eiUHx6V;pF6oCZq(!*7q5j_KE-R!vzOPMN@Id@ z$U?qW_1eA`{|eY=pz|PN{uG~%ah*TMdweCVYu zFpv-MP#>a|jj65DpacmJ4uQ&Sxs29qaP&>@Z?M^kVTD7Di_o!1;|)%g^h+u2i%(o@ z1@VPaF0AxNj|g5SAZGtTrBQ5!z%0qGBU=O~v=!PH>i9y5+9Q~wxun!?)aD=E20f$o zQm5GSs^%-&mNihS`povEr}xRt<4pi@qFpTEu$uO!mW#K!a89>Avab|!WbhjHAl{Fw z>6ZSBOQytej>s-LE_M(4WX|jDi+tmK8dEwEIEs$hcus*zlrOxsM7CH)N(VnkFf4x@ zv&a`GklLmByt_!XzgD<=9|PcU$+Qy!8A*TNT0ZPKeOJR83e%k@_l;l@9i`0M*};to z628gzWe3{E9)$hIKXFoRcobnAn;#WiVDD#uVodMrTqV8?$b7?aHg+91R}65Q4s;Ee zuc&tM&G&=|KFu0#t!7{CG3JgM98pCYn-l%^BNE>P6StB=k!0{rV-%M087l?1=;b2y10Oq;Jo5-2~V_ zoU>0K4~31#mSwr=1bO+r>V~XGp*Ton6XVqPcF{?2FU_WEXvl-ToYkr`HQ*Hwf4XZj@ylD3hPV!3Jg8_47*3wiYO2XUC#>&%Qz(*Shv%S>c}lRbQ~_Yv6dk&_U8pN8;pXdGa6BXBcPsD9`5vc4Jklb`n8E!<0NGQS7`c+C#TwPltRhJz z1XB^#qtK(5;2ycX3v`Oj(x-TOQE^vcIL-FNR?~PNe%N9>z8yyO+v{tVB$3E3I4aINRc}{=eK`5@%;adfe~0N^#!n)OR3E* z)4P^kdq2ChvhN$qrUsEFK1T_OW42imfAp8Qvp#XUdow>Y?7>Ov-5%l#bk6wKN9}x? zwg2<)^#2SEz5f}GYkb-o|MTzW{|pD*{xdwD!f<=GM$Jq8NjH4Uw!P(Q`oXj0dA<$L z1k0nvyX4zlto~GWTvomOVB59~g|_N`(@#f)dyH8F*cjM%J_vWmH1`kO+-W`LVUjCe ze2ZGyxo&aMN1^0NmQiLg9~@E@9(Q~r$JYgDm?SXUtg3N6j zZ@cquySi=e^N#%Ft@q2GS=vnAyX*Pds2!V{US(&d`JT^t=F#VI>!{ar*&oT*uPsIm z#!8e}@ADP+pML&6+k3l*dMT&3pH+H$tLodWJtdEqhR$~1y6bvercPSSv2~x9o>uaB z@IYG$m^+y#StW$N*AD&9F#opwAC~-omhPyIP7wUkt;zbMqWIg#ZI7QN#N^(7ef;!s ziPhTqLbtgSnon_V(9hj*%wB6fzSw5u-PXSRmg*!|;nqz$xre>pKYfz$xX>oy0pHA}R}9Gwl* zZ)8uINU`I&ViI?Kpnf`Y71JvP{MSk>9nOL+di3oU0|@Y^yuOuuT7tSpLa90 zM~Te^T-%~pmrk8FH~;h5zwZi{MEc3tzDtF8fhk-=Xt<|0dPT37bEw+%!EuOUj+4rb}|FKx+SoClin6tZ&`Y zv2M~+-4uPEV-=In7j-J0^IDj@%Fo|{-Lx8?Kff^RyIi`Hb*pb@W%jq~-G^3e6yv#g zq=A7m$n8<3h5ClKQPX$juKhFZeL-K!_Q_{EFS)se9kW`=&LSgt;rn8ICNt~*6TEBn zIAn*>%gbxxl496?2UiAp?=DP~sA1w@nY7sQebl#a0a0fQbqwED&$Kz|=XvM0)AMz1v>Rnq!u9?3*P!lRw*u z%;8~Rt9O!Blrtz=MgBjb~x=0m?+ z_ukmiceA;(_t>?$H*F4i>TlV0>85SrL{Ib9lIrf|^Ssk_F0VbTK3~CEA;CH4?siMr z!n3hhGGipv3bPyLMqmEwdCwQRn|*y-8>frYwVRStXDFy_mR-^iG0*Y=f7SdWV)rw* zHJM*}zCUzw#V0)$BbNsSr;bkPTasc{x3wG;jGu5M1NrEgQtWMsn=fACz7c*l``F%$ zt2bIEmxbh=i_T!4e5L1F%RISD&#v&knRawpdZc8{u^Z=h92Plu=`iyo;{&Tv>W6;h zkalQ`%q+Zl_uk!~{VLz{ByWB^5ZD^n*TC~HZA(@^zF1~`r8T1EnNV9t(b3Tz@1E`0 zF-tRLl8M7g$sUHK{bf0SAO8$=kpF)Z08mQ<1QY-k2nYb2<|Qk z1PuY2;O^RJAUJ_Qa3^Sj^YOm-*nIb#GxyHSoi#tER`=?9sRq*;$A!l=0I8y{ z9TWgiRb>Y}1N^-`9s=+cydVyK00aQ?)3e0W&>E7Ht*57}7!QxL2e*Zli={O;#Knon z*TR*DkDHeVAR+DRY5{Su_N2A6wy|@Tr2pC0MNeyIB}s1}sKKk@DsOFTr{eE!t?RF; z2l01+h+5H0OVLXBiupRZI$3*K(E2(#I(vxuO49#HTJiJdIAuc`vF+m|QpfK%U8vPSD zcPprvj)Kx(cs)Hy(*H#$A0HoXAAW8ZcN-o)QBl!9XaIp+PY_%le$Jj2zFf{841cAd zVC?~Mw{!Khb8)8qy&(GDG zN5|U3#mgOH{RGbN53K$@>K}kls}a+3w|g>*g`q$tYACo2b36y+C`m6w$jRRRKK|4QSZ;VR1V3G<04%FFS}EAjC?{Q`l4 zBEpJ7q5`raN(w-wzv8Modw5znL#+RbYxj3txqpi*Chu--;pyV8=i=h{R}WBiezJg_ zjWeyht{}G{EvqoMAlo0d`O7k`-R-=st(4qdoM``4u9)3FF!%C$;w&ogBqmT)luJ+q z0_74AvasZ`;I|Ov61A`v5fByHmUk_0ObM;8PM*kQ3nNlN0zuW1@1hN}{|1 zqVjyavhs35a`Ze;tKs?IT;;DrPyY8u_iv8>^zgUPv37on7x$;YcsvH+{3$HJs{1Jb z5gwNSZvm*t$jB(js3<6?=%`O$%x9>m&oHqtFfcJNu<)?{Y^~X;9sm&$0SO5a5d{?!6$u3q7Xc9o83lk(Ku3tmM=wjH z4P+ojv(QQ5_t0~z`6@T1o7y)mND`9FDBxLdS({eiF3T0Se?G` z3I2a#gdqF)4SINyZi%AzuLX&3~_p1AJ9Vl~q10VF&GoAY<(_ zCeeN$VH0nnx;fg*Kl*RbL-b=UN-tMrkBr~>U4%VzM3LNlbxE-+`Fc9${tNEm{Ivku zcaf^)9}nZfsWSg!F!ufn&3_H@|D8eEl(Q;{JCW149LrjJ8pe}%%(-ehOX;*|&YQ8O zq9WXnfZY7!z^;?u$ICbx$nM%_#(YzKV-03U&@4Wgk(WSRi~Vj}@~(F$H=;kAp|Hwy z0j3cy-vcsCP)M_=PPweJvUy&qEMNO0;AGM_PkbZ^&dtCfrU$Rr2XANeCwzr*Jk#8f zQt5N*B*&!IPd%j}>D72Q)(4Dze ziaCLoqf_=vhQ+nOd+%t~32#tdcuf!5s|b{V50&6qnzAZHbC8bZpDVHxg~z{fCJ07x;JTU%If{KL>cZZVR=k@d?Iwv#T1p z;a?;v3)qfzDC@5}4L%e-=`3;3jO_Wk9vC2jVyn7ZJk!HP`(7!P-TQ4%$Y!a#zf<+q zuE2wG`pHkq)5W_;9wJ`LgF=avD8I(3+Co4~Ni@_|2ubEa43}nTuCT}b!xoRI# zaIH$T7K()I(gAgtY)@cVui5BQzeSAbd9v&|$ULS?Ae7swpz+5MxJUEeyetFD z&I%IlThp`Fbz=Bjj+&~akvp)mBy+3VH(4B(yK2fXEt_#C_+cP0Y{(*#&EhVSF9FmR zKWx;m6_>&_-C!xiEV7nDJM|MoXv^oIg|Z&B@*yjTX89yK@Efwy=`JJ(%t;QTWU{f{ zlq_t&0n$W7RY2$C=1+GfIusn;LDy4X=XvNNBR#yL^;#r?b5L)vym?MzPm0*mV~I5} zas9!CRo_I~IC@nV*nL!^p7pTIHj;B}@vxrUX_x`eUJbtZKCoWfW~RK%cwm0ERf!#4t}=n< z812xKAY1oIlGJ~f)=z8QX3ZeZ+IqmcSk}MYfvdSzz{Q z(OqKH{HZauT0}v=vi9ea%Q$tiC>B9iJa@OI9{&$oCWthVCqFh%I8D`F#n{lNG>vJ! zZy=DfUiD61d}caTudhMpCD^+%Vuq#*$$<^%B#Sd>Q8RD z0Z0asb0|j-UnLl`WDe?t3b%x1b8KqouM?;;5U_%*5jsk*TWL>Ue2BURVRZUnB6~ob z$dG{&R3Dky$XUKq=|^_p_Q{$Zzc)B`4Tg3N=S%Gk1nr>xa=6Pu`v3HxF;g5|IiZfx z%Tkqq#mY+&iTQ_-_P_c|L)&}+M>J?noCV3R=h?*e+c1|P zgJDwIkPKilDz93Af(|eN+s9H2BkAS1+DjP6mH@mC;1G^s<^n+8c`~~JH;d3Jp$^JkxnAnwPZM7E@~g70xM9qu z;yQlVXwoyS(vLAUR}*R7erW4L;{E4x%gvlz=*Lz%@y5?dS6awo%3DDOUVL=N9QaKp zonrVrT$_<2(zkrG3D=Nd8vh6y_DDC{l#ZdI-|qWVg{<)4=t&+*@G9xui<61I_c0xD z-Ymf1cOJ|;?pJ$1l0m3@vjy%3!T0Zdccm4cH1ce6AnKID8~zC3DBB_(u5}IurNdqM zRbC?=%N!JtLvrsVhpvlsif5g#Lm^ais5W6&?={}wdprW_nv$6&2wFBiPi5a(Zq^r&Xcy#`iIcIl^{;`2 zla&pp|+ut&|^%wkq!6hZoi8 zAQ|zY53%a88fm$@!e2j#Vd+dq{CosJ$FSLc9~zwrhMKZK*SL-JoD!$&Y)J>=ekVR~ z`)aLigH8Qcq=OExuu`eU7Dfd&@dj6~3RrdT-#JwyNBn;Bpx~9@y+q2}il~uCz^Bty zpKPJEb8+>>tuBqWcP<4O4;Zo3d|P=MYf?%&E*v%N+e+pxooe;nY_7&t3&TTh7yI5+ z=#wzX2gsA6yk8a}2VZi&r|K;K(1|)0OgkAgy+&~D@@4VGBOukXF6L_(2+I=@9Y5rE z-D_BTL_aqE)h|rxwTBy*B+yAK{Myfr#y|d=GE$#dig0?sGxCzSt$T>*^d?!|0pZ14gpe zVbwGMV|Uc>7bh>^@s@!Tr#jNKH7KeHvYcR&MS~XEiq{_+9$F8L^U)4)OJzAubw?!R zf{{;gDNl!}dC1RVlSgLv^s*@}?Z=pFzv?RxBslfQr+!+#v1Pg%v~T|q@d$`9C5}_a zG$TWm+eU3aQ8#sI`>DtnOB$gM4*H^LT2w`szwA4o`amKa`am;1Jgm8V&MZdB#Q%JJ zoLZJnAEXy=Wt%6wED&j4IunnKg(H57y1H(#F7Epon!!ypq)(!=rBrV+F1W4-OFjhz zCJ_4pE?y(Vmm$;18JOWBT+>j&vR9nq{aw0A1 z3ju2Sah+`Seim!2A(blWIVJYK{XkOu{NMiq9Bn1N3kZM63*NQG?cfNqPP~_R1WZoS z_=E07X>R-;0R{O|7nRo;(ii8C0C}1J-dg?(#J}vci=X@);>KL;q70++1a$FBNv_B} zpXATF#*+fMEiNKoUC1>wdnISEziqyLIM0pZvC&eT#7!F%SO0vyJy^Opul&-q@m)pr+4Zkx2tS&ry{*eq8zg z+#*x0cz3p3Whs~^l89*K^=u#o=<78pDjatu@YOWt6@5KeoXv-htW=l`HrSJ5Ln*{f ziqsjh94<{Uv{DfCOBD8fpiMoYj!88~g=%mN;!IIRE4C}XX^fp(B#0Hy(xTRTl2?Dp zlp<_ql1&c82@Os#m*5#pu{ynDw;Tw?+O8yH;DHB8jKEu#JQ^QzP!c19s3><<;e!Y7 zCp#jw>EBp&~3 z@^z&y+>tnc$=aLk+!0*>YwW-r^} zWQsBd&Yhn?!0Gahzb#db@}Q%T=*PiKkw^l|N5C30VjJ>N7#@1w( z!~Hed?T@)@hTtve@m-VDjzcDH#l-if>3mfQpI%*DR5IQkH~mtQgDIlzBgS=k-eiMF zrDKBCzI^8+X^M{2g0z+dyEBnGI{1=*Dw#R3icH+8&u!SB3Jq2nOf$-5H9Q&MpxN)k z9&JDNy$vsSBi%{tiq0L()@9gari+yHL-imv?p*_|*#q?`cy=!O(7 zH_j`pEX6>9X$pc#fo*AgZgQ^Q0c%3&W+4LT?wU)bxUu z@W4LkyK3=hOVm_XUN%DfjS|l7EpOJ%@&Y}wU&PL+7!J%1ey5n1E&PYzLKHZ-y5~&4 z%T>cgm1ngS#Z(1ZFm9u)J$F4h=<&x!dYY5+To3;R{i3TtqYu4#zmBcco$JOFc zZ*P(3J_49S#&UTmMkbU7mC2nZ;Dc|!UgZI?{hdH})i%}eIl=Ju#D1#Y4BOxA!WWVPIQOd?Gy(HtuNRawi&0CAEsK}e-{juf z`UV(OP+44F=Ev|{1mnBgw4A) zCS!`!8dOQQMbZpE+6b_b(dj6SyA<%$_K>=qVu|!B)O-Iq4O45DgAB>(VJ!P?PL?x*px`qA81Rh)bha*Vc#7DD?u@{ zU>*PI!cpYYYEMtMVG}YREEvv@c;x-XXy{p70_9*Kxn7yEs;oqI<*2=oj--&bp3@zR z%%&fwXA-D}>XT{5iZlywsDydDWV*5Y@Gi|+=*pJAYV0lSLUNG zUsV4*iF>Abfk_tqI8-kjGp|5iRJ%({12LPkxY5n#UeZ0SMP2{f7gn`iL#WD#yDNhy z=Lg$z6JzU5={J#n9=_$xJ01S_Mwj`{vlU!GPIO?CQ&Jlq0zrVcq|e?#{z3ex3AB=F$KBUa z;k37na6}12huWR{CB%jFOI$k`y=Zu&7J;)FmbIs_hed&aF+rc&o`B}o3J`UpINj_X z^Uhn1SGHF*&)xY{+kQ#f;lo2}c~Y~Q=G3_#6py0uudXALxBM1)eN}k|5ErYht3dVK z_n*EwWH3}dch~q3iq4F(z((s*EtP}oTeo>&y)hD_1NuQOPW+;#IW_3hgR{g{yaeyWg+T^NrESHkYE$VH0W4 z2W5Pu$Uk^Ht_VTVxnG*GKCbOMuiwVj zu_HGfgEB)VM{WV{vmzvfU37@%W}&s0AUz?7VulJ5jssW z0JQ;H+^8kv&;ra!nL;h(%NIOaIX@C-m^7^zN_Cz~M4LqYXVX#xR-RWSC`e-H#l$dG z0(=T;t5)UF{7Exo{hYCMke&k{y(%X{h?goRGSuuP3}RmT2YoU#kuhyjBa({MP}XC$ zkLf$ZuUGXV;@_*BE3JLhDf$*glg!`-cSp>i5RM5OL!>7SpzYgC!?~CNzIA-q6`=2jmja*!+ zs+cs;_VD_Mc#HXH6If>$ZHvsyi_8HxfUjibUoIa31VEDoD8AVMWU3^DC>~Q1d|W?d zt3evh6MaDv6mR_~wTKB5l2TN6Ci^YndXHVrBWCFXsW@!>;5}Wr6NRTQVG}hyzliRTPg8+ZXubp{y)1uhe>a~ zsFzs6&Ti2OAl?1+y*$G_!dRLIYRA!<5ks6jqfV*W@kJcFIrW$#^mo;Kwq`-7KOVU?TcV#@7`vHodM;)s+0+4OR3I6B zpzk1L%0XWkp6N#h(Rb)EqVh2D*2gDhY6%ApdGHwVfU1HqU8A&r}Ona`; zN(k#toS8)r1#Eb4aUnEd{|LZ)%2j=@COACg;*7PE%Xd4QRl3EI~W4IC^+t=B0U7(>XAyzI`5KGd`EOvMtXzlXkyeQQKiTXvLi90xE z?RPZl(NwSyW$3Wj?h<#!WXC?57=6I2tj z_O(dSZmeZ^WB|#GoBDp zGTwbwQ}5#EQ>9Z;1R7MAkS()chn z&AwUF!@dTR(VwBzZXM-d30urO4Cldbzc*=cR}SNTGVp0q@W!w z-^%1F;W6nkc8mtr&hkr*E5+0~&p>CsZJjh>rHEEX@NC1BN|7D2+&t3h7TP)}7L)>3I)=?#1iw)_Gf$N`I8L4z zhO?golOjLpGN`stN4i9OLziMnE1-tv)}dN{In!xH~67=LC8_F%GV%kOsO8%gHaNd^S*bWkw1A8>jqFntiWPskiN5+I`nb z#7wCio0t1DefrIPTNTlT0kEk;-la6R`yw{zuTLgOK3(_@GpXE1QJq(Z*y)vN!?ab4 zaim4rTl#iyYn2IJV4i9W!p*%W`E$TU(n_w6~RzujH8u=C(69vBpwl{}xoPk)C`8?Bgmc&G0ffQZ)h>tzonlF^~2gULE7g)I_v_ z9syw+KlOgzmB2g+4X&Gj3rE8kwLZn1Tbt{z#|)2ySY!kKuNBw-k6q%?;PmDDxDVHw zA(e(gGB@Ua2h&^OUPTPYkROwl{4MTwwM#hY`v}O;Z~(M46?6FR z+35@zB$u>EkE&`=t@~~m9W3R3Pm;(xinzroa2ezS@fn7fS|o1~etVZ@mA)aF&209v z)U_7-5x^Z-qI*9MDDz#Bv62D(^j7t)*V{!z>u?7Wo;z zhXIx*9Qt-T!8@qTNFPiq6fb1COxUH(QRNxV=(wx8j;n#Z%2}7(yIFUQ0j7M#yEFi2 zDjCxJs;=>aklqNNUIiN8vlPvCtQqICOKyf)DQJe%1IiPMu;rU&$Y7xm1IomV^z9)# zdJ;Q-V9zGQNpz$_al)`8?G3pE=_avrRv)#7)cOP zjT?tJvzZE~`%tt=!9U+%iYyx>EuOKSXV;hMm+NH2i=}O+bTf}7t4q|XGwM%N+RhTO zXcnh-c8mR}A#q(ni|_kp6(DlxNX+6J&1(9LM2OXpZKL&K*_P*Dr5gX8E@F$zS=)!2 z)JFi@Q%e26Rm=!ag3okYIQl}zc#VFSCEy_c&LJ5|U!-Fsk@o?dg z3tQ4j-xOPj6_`r9#2G(=mc%L6&E#ok*8GN>!8!LiRGpxhuddksjQ6Ff(zDo>r3!Hr z?Nb&fG|mXQ4pOX?JWY9TbDcs}FkXvFA2HUl-UqY$93-+J$^@~>D(2OcEdE<`ECedS@~F%{@7)05yrNkwLi0i<)qoIQ(J# z-xw;FfK%~c)UX8gyH5Dw(p5dy|G0?=Y>i{`NVZyhjzBqgwN5jq>cE<%`!JczIPf`U zdf66mYBC}BTW{aSj|gop?<9^w3NHTQcA|91H;oDHrjKEg(PyKWo4ygx`9xLj5}*~5 zabBuFoC+%?vlxw?I8PVjK_ptTmo40@dg1NVx+CYhs>z{h`qf`o>$KTav1-A-b_@Qs z>gSliLjHEe^Z;e+1;UnH$}YUKG(HwM5R9%MaA2J_%sh~Aq&7ug{)uz!xJO^lSruSQ zRJoO{zCvs~v=dRJoH8^?#0KQgVqfe+acx8oYAnJTTlU5uKKkvt*~2pSb0GPQ5~e-y zVxhYa%e8WdTZ^-exwkar`24lv0};LT^*m?A{D@%ow_Bozg5g_CC*KBkyP zrd3$ve2;?UPmcUD>hLo~V5?<*My-_ifqFv5_h*+0@{6vF33Xr#tMj@$73{5HktuoV zJH8(1vVL*w&YVG7{Y zGxb&{XqE529G-lFbntKn8_qZVD%#x9MaEC2UG;6J(?8IJ&tmRmCEvs@%26doX~ zJ{Auxc;@0VdN3sKLOQSOCpl6F?oQS1;G3WF*9Q-$`Qnog{*QomTjsTI_04-5$;lf5 z!um5wvZyopVfnd{r(#z_1W9Ad4N;+OdX=%&mt)$!-RxCv^y;`vvIFWvnk#L2tvE!1 z^cd4?Mvj-a=_dp}e6vvdQ0Z$s_D@Lz$nL6xYzh61x0ljXNP-d|4B-`fvUgs#>UKZX zqvI=bw(VXG3yqx$?5B(jEP`Z22^+hU^NZ34Hfr5BHtSffol4peL)(oM6IAAt%>8kG z(lx?e1qg8?)gND9Tv+t6ay*_f9vHlAydg znfnFG3b%AeWibNS`}8+hVwVfa`H;ct8Hr$YV|=5r47!SmxL+owHrz)H{LPrdEusgF zA*6xIRMgztoSQ5u@f8slZsPLoICGs&Me(7itkC7#Q9PXP8(UU*bOBXd@wzup#@acc z_OP8EFM�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≧l(wpg$ch|4PSNN*vvoSOZdE7kO&z! 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�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%0AF72V=m4j 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%0Ar5-sIJJ{S8%ts>2v`jUERB>MpOCIw8YS=7A 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

    *jkrzmo->c~Szoq9fTJYXZed+Q*ORGX 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 !hHsh}?PRhwbz*D##YC-aQ2?pQ-Jxr6e@Qg*3 zpiSDO262l%?}sfCObHwarI-mKH(a<|)7jPp($YX!w8mUp9kg z*negP{wf6tzFYyHabI1zbm2!&pDQm>{@lt5xDWg0xf67enoQI4aEkd?+=q%A?Q9p=47;*5X zuPm#sh}-ZB4a*Fr&(o4};2?LUk%#xCr0WVGLgpq2uJW?Ku`eghA&WR4EreEbGOV>S3~VG+*Ky2 zXZ!etoaGbtWhisS>vIQ3?W!b8qA?X?S<}N?i*%}xx3_^%8!+4Md5KnWoJZ|gR)c{2 z=k`poAi_+0A_XJcW~S1NoNtPkp89g8n;vs195VUQVD^yL@hB^G zZZP}R<=P46W=*ZX!%axR=ey6}8M3X?Jd!XQ2StZ)I$rNWPMkeFHEZ1$Xah!XX>1j8 zkRempupho4%DNXMl^DMl=70(m!~BxD)16wPRApeqd2ufv$?#q2AU&*kM zMp%cedEsg92t^K&P>^^fbPRr+-yhK>m**z9M>*mHwt|~fV7wNgJ>+cxSh9KF*~*_f zLzt_8egjX*hgBa{`bm4emw01WUs`uI{L#I|$v>?>4_4rlm!XT`b49bQkCh&eG^Ojh#qaY4 z14DB3&|LY&R9#<~Zl-hU^on9EAA@#c0%peW>3*av65uMFQ(>8L&jMVnP;o(gN!U50 z4$$Qf%P0LYRD?bVJ0B^x)N9gs^^oSwk)3Ps&I@+z*0zAn4tJs)Q$)OHvuLp}buw>< z6ER=bxu;9zD&6fQ4n3vWpSk3g!hkGYdWcfn=@b*ux5cY4Z7Pyz+nAauJt=*vdi=Q> zfP<7!A?>OokO^ZHI?oV}qzN*8laxFmctgb6)?=CpLYH9oQkH0$OPQKh)M$gQ@1c1Q zUCZG9f{zLBVGV`P_rBbz`A?-`VThu(d?pVoO_`Xo9TL$369(C{8{Q*q6tQT+a>3{T z`QDaW@}8mnIegFK9C^Hk4w!n*iuCbHH2G?r**;v;3M*=mA?`c4^;^$qJi9z z9gRk0{-JLgwu+_?8Z{bnZ6@s=P$=3plBTm8$xdkew%G`7@s7J=TDBo+vC&RqE?q%6 zvero`0`2>>W_R6aO_f9v8X(^blzIOgA7bK(2V^)+O}T$6rxqFK4RwmAO7 z#u=vHsMDa+H@;I-%IjEf8b}96uDb;@$c35VWc@HhW}NtBK1Zoui{dl#w16i2N3>j+ zMdg(0E|Wwmu9fgq%DP0yUF?U6gyNI#L%|-!q<^L1&{7Wd173zmYKcB3+5H&Up~g7) zfKRTHhsmUlY-WBswU>(_R6VmXZ)^-g(C0yA!IJ2j^($dU_;eyIkDlBHhVoG%LFfyqlT2kBN-fMZ7tI( zE~0tjQeN!n7+gBtA}m@oKG_Uv)4lD|Z#3}DO2+0A^Idq?ps$71B4%zOGPQw;1whYE_~3S6a1e4AZc58`6lrD8i-uS@Je(uAS%VV$z7AbRL%&=|8*k2cZCt zU+h?Mz$z~KkzCxvc6K=-Zqdsa)3kXB$D8t*9tCg)*l6lf#hS1MZ$dAFYIivfZ7#8> z+=ZSuj$<(;XXFElz#tw%c8nP$<*JB53?&67A_3&vP=drxc)`a4vFR!P8`AQOWU@&4 zB|rqp%pioJ+!vh;X*Wv@7gUbSgcR2N1JwNB6q@<<24=`Jl!Ux>yRHA(S2j9++LU5I z&q8rMNsDuFxO7bh^#vTDZMn%O#$;y5b$QrG$YadpeBZ0tM0A$#jZl5!1-XovF@g_q%ph$Y))X?+g(f9w2H0^bL}5rTrF|L+s9ec*lcRwvSsLC-z{eR;(PeFn zMd-B9u?8HVX1Mg$+BSqqRid1k&F8d?cmFY4PQHkbfZra5e4Q_Bjc z)pFpf1IsOI)UP;T2haN$n5(7!kmG+#Iv1Ogw=Et-ALl)4?$He2GpldYaaZGri|!#k zE$CV>kjtu6nxGgJ>8?k($Pcl+Gs}*dwWG(mGwgQp^dJJTKecixBA&{<7VV7bvP;+w zjX+5Ht_GJd1W_O7agC&K74!ri`>BLv)xCNTcnzmygElnw(C7(`64iGWVgo;F5j7Rk zO@*TwbWIEi;gN40mM=>o= z!l=lDM%`lsb;|I}KO#lx-(M@9TO5D>3n;?>^X0Q7Zh_X+4>>&I@puf@(Q%$~tG1X7 z`opEgak^+uNtof%ar}iReAgaMt48>(&?{=uDOwGXd8GwoVlIk{$qbT~&_%tp0v`pB zBR>9IU+c+Gur|42Dl^U{Su+aLs7y*-UCkFp$%ahrao^aUrK0GPDu(X(H@l{ozvQv;&c$<@=4348o+mI z>Hw9%DbyK=p`}E`B$vsYR9ai>(tXbH9|qWo9OiN8o2q{PtS8Mt;1LD3D%;5=7bBGs z2Jb6I_HpWZ8^RMJC0{N6a)zK{(nE1IUK}UO(~e~y)m3{_%bcv8yXYlJm830_$5i2o zbto5p#JrL?2GiyYxQ=){zl5>sw-uBco%Vk(@#a%Mvc#KDv=DDTeXcv++`r`h3;nT| z{(n$Q0|XQR76=Fc{p0iX*&4tZIXjEyXddOOcQwFeD*`gp~Mc>Y&la>7e^G)aZtZc@oXaXcC1Z zF-l@HwnhYDg@PoGEK!b&KzaPojQ&Uam&{(*z1BYaG&r8P$`lE7pUd8Buj{wI^}@^7 zhl66TH{R`!>KFgy+2v>cr0CV%(PqEidht)DlOKQQ&;I1)m;TEO)g*i@e6-$uajBY2 zcFvtW`;(viWcerGTON(K&OZBtAN=6#b@wl_r|o?u4WIzACGU=MP1F0KbaKW`N{oK zF4LWT6CPqPyIX98>(#|h_{?FrNq>I)`<-GkKl!BVKDzvecRp&~lpgq5xbcU@#j9^! zTzjp!@aome7uQ~Gf5O%I@%?EL?)Uo%Jle^Z;X&L}O~$j&>hPoRiDE0f%`f^WXyK*a zp2Ba2_&PPb=djqDhNm8n@EW*ITm7;QS3kK`?9NX%6tchv7L6V9(01CgG;|NVsU>5e|34R{t)n)BNOfUGrKbYcss%kOT`p_gSqU z*$)4`UE_cLxv0v0SkkY;7iahO!=1i8;Ki(~*}b|LjKT%_Pw-}c@%pt_-&ieHUSIo* z^RKkO+Lf@3VVh^)6odK6yWvRAPyP<~Vu-(hf8X!$KlEL~Hr%ZX6eD<{`}=N1;M;XY z2L!*5C!nz)vf(#_FwKs4XcN11K;YZ&)^Nf1Ku{l8d3u6(zkI&9aP`d}y?S-g0ht}{ z7ZphCVD@!*u01>gdvN0}+!J1oPAxoWkkJ!-jczr25YEt(KFO8ySJy9|zufkz=SZW4 zU-XAt#qPL^Dz-liI(GN$GtWHp-S02|%}#G?sVE0Qb(YV6Z%Mwt1NssbX8y|GU3%%l z?466nrHk{EpI#}}ubwZiUcB~t0S~qM<}24;Ut9Fe`SHD=WZqbv{dBFk{QCU(?!{t# zb#~)o@%V%J$`(<@fV&^0{rDjtpZCJ2HbE*- z2Z7jch7(Y-isCH^3x7-+;8=Hy_Gf~B4`RCyCYgG`g@V-;F9SgtlJbdFS z>Zi8P(Y8Ln^wMQ?Cuq4ut%{{2MS8slDry!q)a;;cx#M^Ef6p!lIryfJCghWSIuZE1 ziLyX-5G*9_{8!y`K`iK7;UA>xCS*EUeZZoI%M4+6$)Fz5E(Uc1reS+_G%Qd-fT;@l zV)>K@{qAycsX_s{)n^m48NU9vbulhsHEyGeb^K_jLyxuDE1Z^JZUk)}o@zHN z$W}P-@P*Hd4HPgmh$M-|PCmX3FMil&-F_IQHEgP&D)CU`Hwm~D_Lrd_M>{_vHGmqz>=)z+Xv z*rIRKp<%bC3{UYNN4O-%4}ujdM=zi9@Xsw5E8(ld;`;2kE3Om1O}N|jDH-!$gezVz zgYX<5@C!H{EUyoj5m7Wd&1NjTXaz3KL5=_U9d90)JNi3)at|!Rb~U0U04?=pw*%S( zT@re_I%t*(p5h^1V!9uer6y4ZEmZ_3U>9^x^t<3maJ5g{&gYj4@h#t;mNhyPw^YjT z?kHCFb*)<$oUN_kL7=O`+UX%4@=|sQzU~}B5Iel^lL_3PE*G!N9 zsZ-wK`z$x~&fq&9jDpyI68?&}fL+5k+!Nzs9ugeWFIdX?N$?k>;@%6A2G0b3Z}3*( z{QS1YvrmVRotx9v`Oo+X;rkD2lA&%~0k(={0XJr!;tfEFe~3O7-ebqEbogaS24$!x zJ7_ox0KjaLyPZ9LyCc+pRYsYB*LK>g{6H;*ER)k#V~8MFBvlSrhFJU136=9CP8wX( zycH^@@HSKW4GR$|tvdMD=r05V2)DBag<_3lBSi#h@k8j1qWpVxM_Bk+$wIJknz?)i zjy645U!Fb42OrDuK)kshq3j)hIboYjv1r`+A%%_o*=JLCl1{t-vt$On>Ok|`@5F7V zW%voKOCw4k8)f$L^HPokUZEO6 zC<1FZ(l{w6C1IsONKSo9v8TZU{aX;q2i*#f6F6^pAC0R0>z`xMv$ltydXEBAly3+u zKr@Et-RD)Ouy~`77o`QCfL?{&4>C*N+v_K1IVTz0cnS20;2F`XKe;FI>~s9;^guBN zv;qe~_D*;U@J&H1lE(%!4o`Ko?^H$pai8SSJTK4G^eb7()ojLSyG4?%kO!L_wywtK z;Z4Ft!HQi#evTl!_tYclSkW>bEqr5#Pw1lCh6Vbk z5Mn<5AS~X0e}irtmTz|R95~$<(5#^^5Do$E4wypRJTiHx@kM(ltFkCA|E}i!C^{v{ zRZB;~k@u)rVFiuwNxgN>Duqt4l4zfH$xY-lqo)N<2xNrFcJD!KX&r2HL|RsAg@Rtz zVZo6IrVv7pZZ#@0uW_NogQD5YbW z=^=KmBv@9-{0tr+f!@Mvu(NHWo#kQ`p222@!oJsA@TMVhfJlqvcR&KJu9sK4#$wZt ze$fTD>kCd!(i`I|Y)0~t}KZ9YPLg30U))m_!T{Ll;Ap3#}Q!WR4b2KCaGfB-L zEulFFi_a-nA9NMxCqL8mfY+iV4T_QtPJ)68&k9*x ztlGBvCA>G*fAs8<%SeewGJ(2f{yb7n7)wP-F)ayNmy5R~7P&LQ2X=S%U!}_pI15L6 zBa1tM|J1S4L7_JWK0)bqv>XBg)Ge;}B$%eC^d6gJ@Q+hSN83nqVCB_hJA zb3y3WM@eMyaEF2xh7+oLa5_5itKryvKJ8$d2p1D2fgTZypzvb+6uHbXiUgk&_Jpe5 zh@Blw^`rMU#CJ;*TaeFqfLF(|xrZGtbj`|Yng#h|bMhSi`e?>;`lRFWv7t~!dJ!0YXk2Ry_K2W|qMj8f`i zBRZUSIDP-2JFCmZO4zYYNYz=%Q9E><9RNCMX(}kXf%pim`I=^7@PIc9r57L3EG?Xn z)LUsJ`&cnWfe3mRjmh5Z8y$6 zcp2k&RMYVBW8+YvvD>bCQ1%W#=;IY#qF6&UHOAhp;iS#%Yx23?XD7hE2d6{El&*;h z0~3^$a1tNMQHx1K5u3@FWDMlksv&sXO$v<3X%LOpOh%Ac)LirYoH<>Fb#NEPBLXi3O#?o1^2KKn2!q2cz~tOpJ{-XdK?Q>Aty#QBvXhU!5BA$ zmGKZ*1 ztk79!QwQpi!hP{ZLB)1dsrv-6c)T0IrVwD|I^^)+)S23hN$ryVrjMBHxqR0_WO9~I+Q>9HjlQ;)Q^1Yp>vRNEFmgl9?NbWi+R4SJR$>}uAH2G!UaAfqL z&MI0ye(_P9wxRXgwowH`aeTFPJo}A=Uv)Lb=L>&6R^J@#k=1!pf3hapS5@OY@-VvU!BL9Npv|Hfn*@J_U?%+MXKdKOorp1{W?1zt%f4D^sr`Tq z#5`<1-Q!_sHkIPts_+K(jPZ3ruu2M#NNyP?lLWkB1sA2Km)0I7uTkHxgMxSP zK-d&Cw_9SJVVNP(8Q%iE1?Lxm7y9@%n&Eh;;xga?OtNFqtD{E%QyOj4oe4XZo2XIa zYLN#!`^>MH*@6z{Z57HGtkX6sPPQlG8K}tq5V9c~@ND6a_gN_f4f~)(Yz1s9FTAFw z?XpJ~7xW6aVy)S@x1=;LQmPjmL=A3}<{A;ghcASs02gP)Y^>4x_}HnQV3{Ca!s)s0 zs7_tDuvk%O!lL|;ihX;czcNX_%vF3)vKK7?I$4lgpm7$2ui(*B|x@AY@ZVYHzEESjWRD58%$B=JJTbwHY$ z*8umaTPS1_OdF#FZ0JL>TGB#%juIXt#8$gN@yEKsM!<6>^(oO_cxx04*6;F6w8{zq zYdCi{8`3e=_w>|+H#*uW>M0i6;b#Y41~}qzP%kcr@udhhj2<3H7;f4~T;-2Q6N^?! zpzov?K-O#Wq~&fUJqrd7;mMW@P$wu9{4S&)D^3)VFjn9%zdh~Mv>jk$Z}%4*wr1u* zY_vC(w%kUG-$nJxyA7{Lu}r(C49SD2zoHsttq}G_HXJv2Afyi_*<+K#c8s;FHa<7CPnSI?7Eozw70yrq)g>xtDEVqp7q?Xy69x0(_+ zkYl@MGmd%$(-&kQu(+5es&z*XwSYm@a=0t0WCvSCZ)kLVpTg&gJ3Q_qU{1|$kZ352 zq4@Hv4$JTrXNtDD3~ptHPPK7d&;>^98Wm>REccai+>ePp%yOaMJRns0fOBu*UN<_h zmmoEVv~@!``B*^tyhg+!VmzRw2L&5`LPt>6L!l+8C>Hb>p;6kQEE84QSrtn_V9{de z<$ENA>@V76XvcxPJ6ad5&OJ<1uy`=`nmQRP=wdoeZW4a1Nu;k>A~DyB;KraoEJGRf^v0yMnj+4owUZy@-Ur;doQUD#RLFl$Zoa?Uq3_4^v%X>(1eHeoDDZ)Gm~G z`;hgO5wVGiAouiHz-EmR?R=^S9Z~lFSuujm6v&s;$Z|?>t_g8N& zFx_~#Z7kruE6TOb;Gs>hD9h;b_+R8yaxU^{{XSZyMa3TmOmlhFfI&>!ky2Ka1V(`* zoG&MRY>b;pJ24c=B=T4f2c6?#JbP}*(6VgJ9`3MXZxf?rx=q-QNu)+i3g4p<(cAVh z$rBH>!ebxQ=k(Ciwn~+vBgjd?Z)lOCD?m2~Sid#+tWEQUxrLf9)+*rBpAFj@qk>jS zT?eCse9MJ)|F~+X0WBXtBIrvnalcbfK86QWWrAnl;w2}0TUX^&lGjo=nNWUr0?Ub| zK5jkuii{-pmBn;Y6Aq3mYOvyVQ#JEw0p3yp0uU`o?m+DulqHa@H>FrCsnOsYagk<)yJuguMG~3FF2* z#$p+JbX5Zz=z}65$Z6dQSmWdTrEG3|aBwh7B*+S)<-Pyx#K1L_kd|bLv4Lk&hzHxaS z^g;r9{pay*K-;wkg$R69gM)RSq3ee+EDuK__ zgHe=aU}I0Sb=sgE9N6*}2*erkiBR28m&JmnmsiB*s7#)A+YAgiESG5mWHlXP zVO81C;Rir!0_0HM2!1jdmk}+mhGG-Sg0{~jit|%+8+^#cz%~ow?C`%(YX>?0iVsg$ zNpPle7PSL{6~eGz`)oy~gO3VPtEdp3{WDo*0^xQ1stOa+9(T2$e2yJhHIWScGr7AT zGMEW@HW1NguOiiK%+{y8MV-Ra)WSE0K^1TZ|FktIN3nTec=1kE!}Y zgfNJdA6#JYIsOS7eb;XieT9hT0*wcme}T|xnIHP9U_}v-4aZIuFk-X#g;AAm;ycx| zqnfw~3}p%FH3vfBjx1p;i)j$}+5N=qE(|uJw=1n?5xK|tdGH!ty#O|b)(zkr(ywY! z65Ld=fw|qc!|A*}0vpxw*)7ODt3TUFSkOxZpO9>y%NV*Gasv$*`N=H0!(i7O*G#cu z_{iAbnV{paP4&R1$GCa`b2;M{f@6|yg~_uD0U5FcwwJa`W{)zp2L9>`vo!&AAt_@z zXC$wkuoG0`T#C~OzkGaqRB|_8qo#&xEd&Urq1^GXxdg9-7`|{Eg7wt4l5{ORBW^gAUxH^OGQSdcqJi8u1N4k0hMD?i*N!HXQAI)Q&Spl z994^ls-E6JH)$#XM%6ATJ|m4ivlMw^MFDoCGhw*_9LTQ1y7A4cFLrhUWb-mV1QjD z)p`$8O}jgd2km$id@@Mi71OC%qM2|QzA-J^o9-+%%MAFTEmSRtZqeuR5GTY#HqY!B z#Aplq3YFF`sId~`=V*=4jhFIfBmK1C97<^4R&Th_9}J3>LBF1i+8W|t9qjdYi#Nu- z-9c}^4VN{l>SBFd?u`bMvbC{(+~1vycB_3r=A=9c4)V7{+S#=ZV-S-0Ko^__896@S&Qe>`q|q4m+Q zSQ$_IyKOIYp;s4|`t{ZVA-Pg+j_SHiJg$WRy^V42Y9DxOH;dPLfsgbC#b1O~ zE!!mIud4n6(O4Z#ciWG_pD!2Jx}!-OL+zjUC;x4$H!cTltNd5Jaormiua4nO{zyAV z<&+IR^uf%nrUl7uaM{2~Rj1U|7?LV6r3Wg?JfSia-&gy&Ea21S#kh!JAke;@7!4Ca zC2b;)+Vwh=;~t{VMb9z-FLsEanzS8n4Kn4E*~6g}Xl&v-!78CO7;5VP{q}$(2=3Cv zRde;B5Rgw$?F#2$Cx=ytRjo!vo(zqru8P=gzOAPfO61Lr;|nL z@>*v)>%{`)kOQtGm|vEH+&(5iAM8ie5`*I)WrXjxC48Y&%YPE5Cs{!PvOS=}3_4^O zodu(Bled=JAwfW4WfXur!-kU+MEC(S$8d3bK>k$=4~#BTw7VK3B<@3OotJp`rblf_ zYoDb~qm-Cn6S3bHBF;b3d%h6oGsI6be)F4kb^2B^F~eXHF>zjB?49B}m-c z+(bD3kE2ez)X9=&qZzpG>@$E(aMYG>Id|=x)WXE=3^vs2Gl&$GI6n`99oll&|IY?o zj+iC$ww$R3zY2)BEx;<+Jt6w1C)U7SBv+;X2nDAmcp{{d@~$Y4h#SyHOGvv~=m04s za*Nj_5HhRzLnw7~NZpazs&+Lw1>3k|6C0~-iIQZC<&eZzu&o1dPV7fbnZ%`#aWjz* zIm6@AY72w5c{t4IMmDd+nvJ@oE7dD}#|;n~<6V4ih(`av%Ib*_)@!!mXAn9 z%*E@Hq2s3C#VG{D|C&(tY3f0v-ye1p8Q{iqev}B-HMIn!f+Q~vmAJ`tH*+ax90!-> zhDZfxLd;BX<}tT{;3QazAa%2^v5*K84k&#VzhU}yD2WfJlj@?blBDgD8H77IK+(q| zN}e$}iR67rGkXK`oS|SojY+;(d;HV2*P!e0*GTmDI{ft?*NXM4ufvaXREqx(Ds3&t z14%wZ#8e+ZAFS1Q24tbCeVti~50Mz)!#e9aR0e=P=u?#hU@ErPc26u4K;iN1z^b~u z$_`o7ZD@j%tofgg8;=j131B)0I-#o#^4oa8dHbxa{ z#FLLEPU*R{Bsh{$4^lF2?VD{x?@gAJJb%33$_?q*PC|DEeUTOtS^=RlilNL93Buwf z+?l}`+8PTh?3Ve+XyE+l5#QF&Wz7i%;qKI+OK?W&JYe28XTRw;3ZvWD$;{!SBu(-ol6l3}Jf9oCs$lSbCWI{GxPNS+`Gs61m=LzdV#Z1Sfz z(6TNMMBt2lEJ$lb$nzv8ss-EfH)fwvLkkr%dy&yDO+JM9gsJY8=mpVy=(5;>ET+@g z5=CJ22hD8X9waZh_b|S)n;J%mt&9)0@hyl2;pHOM^cHj21)VZnF5aR=09!zwhV*VbvJ_4b#~DS; zl>{`43?-}P%+qKo+4?#tu+UU}2K(Q^<=GrDm!4+Ah}4LlsWL1l%sM!* z-Ap${Q21mK{t;DwrwJxNkEjR7@m6WWf1mrfP!b^!A!3J=n;zm4x_60Q!|t@|WS~+xVjV|)TJ)zL zdiKEV3JHH#!#qghEvqOvRFB3&AUHsj*H$P_Y+ppT*ib^;g{Txs2rv*wwPBkt=|M1O zqhMR~DFAXt&F@xglA+MOOd4X@Pp?vEm_|PAYESu1JKcshe$S93xpg_^04(ESM%*DR z81#~!dBTYLuV*)5seXR(j|inBNxbpO-a?!%;ynLaeDZU}!Z12<8TD(Ho6TVqh}s-} z7tzsUT)VP%K{lnLCITluxzi~Iz|2~enrb&(qU!?B#Jrs=mRSxP4U>Q)KKj*W93x7& z)F?^t$P0s3L=tb#{v^!g=3|N}YoQx(3&qGhZj9%r*rb#n9aHjyZIUjD_AE7YgV2-1 zXvX2YB7wBaZIliIG^hXG`U>X!W0W{A;F;Q`9r>%Qnt0C125`< z7MlEfC@AF`jUkD!OSbZJYz+CT`xGRUm_6u|9n-Auwb^d)TJ~Af{*FD@j&8DTTt4WM zArTJ7kCPaZJZndC(6sE7q}>zRBNj8@`>Z|RgUhbt_urDf1ACB6fT+5{K9n}OVj~FJ zZC^`zczO=04TEeyh0yy$$=K4_O7fhhX}t(bCMe0=`w*y|=qKrwvb;e0VMjXB zKCTXoDlsv}a7A@6oA3K_hSnXWPfcXnry(*k{xa0VDeXKS zu5*l*HUWjr!e*Tyy->LLs#|0QA_ZYfxxkd1$YpW}3Cm}0l8L6J zhvo)k+j@AcO00m-4*Cg?7&gpq%#KLiteHMMWFULjkk$jm=*lYwTF<=%)ZGSR&6=J1 zN1sCFblKlLeR;|la&it|UkA{6(1XKk#9x8^km!)uFp8Mq|#A@CHe5gxG}y7jtAjVu-op05tCID zq@bPRK7DM{>ZbFmF)$KO3g$M#hyJsoo%q--v!x6#OfKmr86>VD7!-gG?K2IH88#6z zL|#4;y(833c%GY_Bi6oV5hZDzp#dn#kdp@=D;7?bOA#Un%s${@U*o2^2_|da=uLWK zp45u3Hb7OY1|EIEiaTv6*g-*|h7c=_8q~pQB1pu938gl%D`k)CPFjL8Ky~RUfd{OT zkj`+xG$#70`y8`3w)DY#&kE1b5fX?-m-wY#%ioVz&%p=G|2`ckC$qui+PPb zior($V5nxF4wd4Q*q|J98D@9P!JfqXbx^5z>JwL5_-D-wXU>rEjT|Cs;R816U7ljI zIS$$3fqeZi6RZrZCLLyrP*~V^bukk{sA(ZHXbIGKx|dN2NP&rLn6Nqr8EA1RegJo_ znvXp(4WYAI(>)h;Q!}<>ls@62-q)x=S}(4HQQYX0Mf9P5Cvzk87=c1tvTkw}#51OS znH5y+TN6Ug)wH;`EYTScC*;_$CdDA}9%min{AhABCcT~(l$u-?pZjoB-Xz9sR{$#s z8tq$Yt%ec@BaTQtC2(e**CKPROc^X@Y#k(Qf4Xo``BlB%E z@kh)Iqwi*myPFI^Mkgs;=Mn9~6BJj?fr@XG44GwFBE>NgFi-Rs8XOny`wOdIGOo~s zfDNL4OZlX*4D7`N@6uWfgIO>2!#w>v#6Wi=GzY%(3K>GahqiLFAu7dkr8%P;bf~BU zczhBDRtCH1K0!s{cfBsKI=BB|EB zr9moG?C&DJPkHX*>5!IPjEW~^ZPy~toy(jvvJA_awp4%oGX3m?f7Ecj6@QRH0V5L- zL>F8|RelOu7K~M5Qb8&BvK+LGeX{l@F(aas7~$`$3k~K)D;*MDnsLG{YAav;Kdqu? zmN=<}cj>K(gs#dreGDk`S`oS4dcw~a3s(|a#gdt4UukMgx0kqJ8XGr3?F|0T_gmp! z+a>^oLPwb!Fb<14P?Wcav{g(DS%QDY>cftQ_^lQFxV5P z(Bv(gW;K=J&?3RE(PIlmVgr*I5v)B?@502Dl%ZG{S3VE$yf}HD6oh)W$*exdSB@Wb zmC15y=RG9k{t>U99obAuC%A5P+{W9W2fwZv9q@;Deo4tTt}G`6*U;|433Zw0QAHfs zA?W5Kv7`o?0iYAQO5|3K(_0)Yik5)V6`W&>B!NuP(1h#}PSQ@{%b=z~-80?M0(!;o zhbTQ*$^Q+}e)#VfFzFn^{a0`x{L1RRwW`AvcMajjM6#j+cbCpyg@?( zYg5PoGXKt?#FNa!p9L4dSy4Qm>O0$6Rt;=1jsT5W1VgYZAw&i_=!APQg>%@+f5hfC zoLavENuE_eXZ(+JPtO&vU7XzryE#Ak`|!Dwe>)#k{y$v=@9x*(uUDZrE=UB*0$)o$ z)6Ne_lNkv7Mpj&PL6XbjS~A*LQn?GrEaPp=_^r}dNc8{}RY4Vha%N~YG1Y?^6$CVR9WSN65@-e> zYo(3aZAIG*X9xSN%{S;24bfpnay8`E<|eKCa#J#PpmxlJ0lW+-#@`Z5VVBsiVYOXi z$Y4N|;2~y`=TgL{G`VZ0|zdi@16+W+uXvZAqtA6QgiM1jPbd z+_~t{`9`WF%`#wYMHM^pt^RSH(Wzmg!ZzbFUDfx!k~7Ow+S-n+t(1GbRly614bp5$ z$#59`au@QbfmbnQM8{k83m=o#YP4q zox_hZHrJ1D?ZZJxfu+n&g;yo|3OE*dB0>_$=a%rt;TQd3(C6dsi%ZMPXZyo)tG9dh znP;AP?)%Gsv(wvJD$2p+#ijE3=a%IAJ4ohR_0Gi&_qq}LQmlAYve&H zELmxa39^U5g-u3E{pEI@hyKQ_*loE3Fadf0CWrI_YmLZ)aA~tdp%c};h z;xe4vubEmMdXb_tk(4Cpb085kl<)BeT+|iVa5Ql)d7y_6hQqusr!FqUi03hSl7C-@ zyIux^0HT76tP{Z%l`~h`aNE5o9yfp9;iPOp`ZPy2@mY-NEMvH6z78vX#@yTH$jM_y z;$f9w8MsQ-Yr}??pG_&9aIIO2@+WoA4yz*-RAbH|GIKMh0nI4unCR1|Z!p)zLo+C! zyo1Iy9?}mbJgD3lx8N5o;~|&f4lP4ToClx+nP4PL=GOpvw9o^DyhMy@Ip(bgf^Na$ z{sXh@2$OokS;N+wp}R9)5XDZ?nii_y$`6lkYoKYn7c&FM9G0A%&!6itq-|tfg+4uX zZ5oWt^*#sRk7Tq(M@K%zbctxSaFU_S5$*`6-sEcn3ZUpFW~wJ6(Ux+&Fa@!z!zVbj zwBtbT_RP z_0G-XkT0`hVOt?{4f{6dL0r7@8`LcW3}*{+I<1FZJ9cbs-_LuLRfPBL6HcwvTB{r9 z8>eHmOi)>My=?=|xyYi){83);427Rda6-a-hwF(n*Kbto4wX+LmG-)uU zCKtIj-?Eb;W6T7hx$Qk4mKBbF8`}?a!oy1|fJp znECMeR1z_5JG%d~-xb$;!#MQIjzw}SKsY^u!i3{t69H%^x#6d#Qs{_l_tc&c zQ8MZKMfoIPI~Qig<;y%j$#Yx~GrVMr!)M6h#-)YdX`kQAv;>AbrLhUQhakUJB2OiE zVZ6Sg4NOq-q!e?P!?`XYb#}Yo(H_u8V9C*jDs0EL`n2`LqcXdMDZ^EED1DEFPWK(e zyJ{14lLRXLsHB12^&Il54e~aLIa^D(1+Hhf+XV-8XhZ@ORcD^k^_gO#D30NZl!NvK z+%qY1=^V?v=VNVs8AM=4&%{gcYStU#k9L%(q|9u94_*D;ln z90rXVhx!WA4viQ;X{0;%Q5Ex-e5GVa3`+BBwP2yyGqOlz0!xrLs?0I1Igl(zW|w@6 z)QjaR451izXAdo3ii~7ea4h~1O>a`Krg?2KrTqlWQ{RsvV^ka00T+uqr$h=1{8-J- zHO`%=-zZ+z&-VNjiX3)a%NF3+>=R6I6wH{DOjXP<79{{xE7zKS;#xtBg<jjc@0>IHn_8!RH_XZeOsD0399U{sFu%~ z(x@;3izOW2^kVF2M;1Yj^bNB@t76eYpFt$LA@#hSF2+vSF-(e{u3c{-6*yXdbOc&2 zNOp}g2!5d~t~4ge=mz#cd&}v1iG@53?V|61f`~B1J#gHzT`?+syVAB`^UI#)I@D7X zM-I>K`e@s|yz8)I_Dwq?Sf9pTVv+B(-e#e727_?3HA@SzR^FCX0J%_^l%z?lrU;h~ z+y`J$1gNfJLq$T<8BPv22@{bQMoT6)DeT*~`cjEAaXqMpbHy&>e32`rNhV@iYdREf zLKD}!9m_Mc+VC3a?pbbBL(~wnACWM;;}DX&OgX@V8Jr62nAqul?aCBevoCy35YCKF zj4~pvGHbBV;9$RXL^XU=#3?`LP%n z&WPhkLC{prOLtjImmu#jfyXyRoOIr4TueR_A^5`V2w$}C6gN554C&-^tcqI)!la6* z;S1jNv|>Sm`(rRKEtbq{_1<*&jJwn+0leC zqG-X%nj3C0Jlcfcu#h;)*xRfVx{o!r)$v;a-4Q>Z;QL8FN!M;Lj+(7OiP}O@R*|B_ zW)oAlDT+7rH^@R z(KPzF;h3cd1;^31#~Q0xuje)wJJ^7d(|2vCk!y_uSQHRA5-`~S>(Q6vJaLlTO)zC9 zB;keUh=pAtn!Jh*9SowcEz2FLT5HB^fMZ4jkivs`$~8|M;JR~kK`m{y(5`?5OIE?o zN)d1hQz!Nf=_C~?bE!hOwoFCx8Z$F3$EA-PJ(pcDRZcK=k0&-4lCn$Telnj*Eoz*k74L%rB=$L^rF+-UWmY8|p z!$cx8Ew0XVePzrfy?>*3bdY-Nq+Y`DR=xl{(HDHw!=+A>gis)Y=R+4zDVUv+@Ze(B zFeWD&?Zi7cO=Jg%u`OI2Ic+8FtBEoXj*OLVpKOp)-rN6NVPGntT=`oOw^zPpnP zp~TCG73#3JREBCLZgXv>b2DGufIZFpIM!ZI$AKm&)#6%U6RVOg5l{gP@D!^4kM>>v zj29i@^V)z;qiny>8Pf%RE7Jfjeurl7nh{p&b~$G{)o~oJn}Ac zPNsR<{hW1~dp%QKl7*JUwNWh^;c*W!-88mpP;=eKIQ>mF1xuo`*S>HjnG936PO4-D z_XsOwXu0^yX(>~U$YK$1KWRF4zCa9S4-~avnL4$nG;H;P1F&K_2er7=mI*zb@x%nz z9=QtU9ncYRv=&2qM}pjn&jCgD`@?gP1NA6PThHfruHpC?=6BP|Lo@MC4$lf^&B21C zfr160e?a(Q{#QbqbnjfusJh&hADOqrM3 z;RA^~$@ODloqW1MHW{sQM=2N|g32eg#D{ALFB3;_L8mBRx`Fc9<75a<{W^UrE2}>P zB8qm*YX8T69;@gD3u8)9|EH7moF=C7ij@YGtg&Ls*LWYoY6EqB`8`I6m{J)a4B{in z?Buu^^8`ImUJ=iA2TPvJe9%$^Lq%me9~kq?)&x_)o?9+0sa>CP;2T0%$QmOYyl|ut zF^ff`Ie9HwYADoI!{3)74Y5QEZn7;T%nrrlODUg{tiLiyQ=c-TtOh(qLh`N+Wa6AYHkTDE)o7n=UtK`Xq;h9 zL>JRn(JiY4hI3OIO({Rv!j?}B2+1%bqiG$A+#T#wIyThPc0&X}D#X3zm_ihcO;E=p zlG3`=g8Aa2y?G$zT%ekvB-3O_>hItJ!Hed4V0vMy`^j9KimfuB;A1mOEGvNI3S#GAF#HL=PO zm5a2cZEElGeyxn&0FwKp*2A(#^XyE%`z}L#!}=2E3XGr#u{NK;e5m3l` zZj7Wd#NLqrpOc+7@Tn;DWOn+Fgzr;8KJYH~lcAYz7OIML~t(I-rd>Fdp=VGT{P zxrcoyJG#}tSmjKEcC^Y_a2k39O=Ik~rjZbH9eai$z5$ZT**BCge)d^JZPmgL2;p*e z0JFO_<-KD`)R28yld)~qgpF}v`0C-lt7j8#{T_Nv??XaodaiISv>NX?Okukto_dpZJQH1rhUm2QUy5}i zQo#uC7i1rb?nby6jreo^TAVM!v(DlLO-fXpv&dS3qn5NmDTbihIbpFf5-7NLyuff^ zfKk}^6!nmfuBwfSV{|M=%kOK>d8>rLQ5YCz$CH@{)4hKmaw_@m&5_6^- zJme|jbP@59sSlfIHxC z<8u2Mat>&TK5*P~|H9o$-N4%n6@em|MroK>#y-*z_H?qIT1O}}jvw%duzltXu@D=b z0z_V0&Ak1yLr2l+K(stboqT~T+iDYEU{diL2vFiVYdXQP&$7S-trHz5`TJ!40Z&GZ zd@_;z?qDaztG4^a_NH)nMtqVn#y9fKBrb+D5J&$pJ#frRr!h2CRiJ)EiT30BLn%17 zpi!}>7SRRN_=CB3_D>yr5{LcGzG(H8zXt`Vl(R1QBqJVB0DUPP4>ae`TCOvu>Y%Tf zCyX>$3*Mu>!~VIYmtMbo@vT>{7Jv2X+AFVKzFe%ne)-C)*E+?utHq*mI|egu@S|-= z7{cU5Wywry4MY(76mm>3$WF$C$O$73Fl$64wS<U!v>zQ?Tl}D+u?(?@y}$+$NK;oZn4l_JjU=)RL7$+6?h%dPraXiSLoAW%2B=?RvyACf!@ z*rx@H(R@<$<_tZ9r7mghxO}vg=itRo!;>+$>E(i=_{-U2>@5Jc7w*R9CiOCJQ0MW zq56|lgc>~m1&<7-XuPZiIfbnxdlH>eCiLxT_~EjL_nJkp)5vTTQ=%i?;RJzZj3l4W zywvlQ4GgtyI=O=uN2AP6=CoM%Z%jA|m=+9MlEl-bvrenb{?GHpmD$a;LKtW-%}>4t zvX*~Xdu@?#z5!(e4HivoX+$>h;zk1PPvV|+rpk%BS$?MQQ*miw)%T(+A)gykZ`*+R z9~62Uug#fDrp;ORIZH>WL%$=mNj=3RisSCdc&M10j-Zub@wr;crd>lj@{m%f4vDXJ zvC8CicD2C1_8W6XQeq8!a%P~Sj6`~nHDEvJ=5f4e$T1zyvluc%Jv1!sMPG*bCLBfU zhy(1Ho**;!GU1S1lcI8S`hLe6!+Z2`hgbv$2mSMW>?}43Ygq(O#qr~WWQwVl-pDz! zv9tITwxsU@6an4REiiG7xR@?Fgz60iJ1~dii5xR`v{_}8Y;VN*n(IJkY_Azg;WySP zDTJahKd-?ZmtI9fw<;_JU^C4d*2#(VYAL+W!Iezwc`P1u1?hJT!NKZ0Wju24JGSpo zIh3{|h+vM^+|cak#_$XipAm)4m;TO7r$-CAsgeEYNHjrBR=^I&8CadAogLe@O&-GT z2yQ-i6MnLjY|u$18@FQM`dHL31ObwAJL>w*fLO|;v^n@=T4Q%R*y5XU`okJ+n@Cj8 z@8oEzWTBYfWY`;gH0<1=>&BxjU8j&K?_`!;3dGp7Z9rTS)Uz(0#=w;LdCzq0$F$BS z6f?y(OzKjy$pfxE3ILSt2UI|DOq3|wK?};<(2;3RW-PN}m?sHMQd)>iqN=fyn4%kO z9@@803pDSCv=5SClRZ9A$@OMw#OI2Y_ zX_BL>lN&r-?QXL(FoORxa%4gMizns`BXbu96f&ug>`C9zYNh~e)aWS$!VsG7Ng>@s zdSl|-jaRv??jkp#8+uTFs%mxwyLiXBFF$Mn7|_TL-We=!k2>OL;*RQJrJ9KwIG!3W zGk>5>ej6P=(d;Ngn}xTl=`u5;Wp68GtZ?LTQz~ZB0O>VKyE$H8QuQ6zPmx7<<12H_ zm2b|8wFJ!KZqHACD`{_^uXJ`@K_5A;EU`dyk7%~Up*YaGYEknkl?x{GeyDa^%YJ5+ zC57)hDw6?(2P}C)gZb%@fXT}R@eN>O5hfAIWV^&l<6uHA?aN%2B?eBMN{OI+J|(0% zIGtiX&OU178xXaU*%QPD8Mg&o|~#HFt|%+B^;N z6@Ffr25{*WMPTfP0KSaZlQ?-YEtrW+;U@?K-s5lwdW*?MQ$C^fsFE7@dAjyQ8j1xi z0IPXi0~wuOF?B%Nz@ANp*pz}zni8xTIhtiZg1JW z+E&5Aj9huENpdYRPk?K~xs{pN#Lb?O+q5Mk6kBPjp%+ywoE}ir*QqVE66WZpM~wVD zd(;yLUM@a!WUJ~pDmv2(x5ptT^f)o<=L=c`oxv4Cdbr^sPs(PHjm))hbSMMtkeVIn z1559sT7BlUWDY^=`SSggY(w^dh`iCoh#M3=1-uNg&AFX!dP&d*L#@hz7_co!z_hWCa6(Ng;7Y`{I2Z*9wNS%whd>QJh>O7w zk3YCLKY8cPVr7-U_ow3@5Uw5KrzvF9V;P&WJE!FKi8zQSHv(kW_Ao@SqoCq>DNTtK z{4n&drVOyQ&5oFVd$~Zq{au}M?@|d|Ei$x$r=(En<&vqgokrfNV>#!Rg#?lpNFDs! zJb{Ets#BY$e{V;B%BUfc_(6}yx52Yxvu>nUCj|W^-2{(~=QyZ+N2q`!eNn+yC*GBC z(#wD|Vs5fHB~B~>cn0i<@gJJYr}p~g;*t@Y*2fb}S&ov^Q-Ko@7Q=ichk>6hO4qDK zu!ex`?_p)`!K5wNtH@ewYg0=W+xF2f;uu;`c(8#1`42p34?}P!$qCv-@8FHa0j3+cVo-mKb^%FfB{=8OO z+I7TY$`QAHt{A4;L~;!gkC4uw7o-rY(a5Im)3*-Inc;0}2cO4I{AQh?i_>Iq=Bcj} z5FcLntvO-|x~D@mOAMieK^(LLw|(C|27yj2Pt~4iu_I+f0L2AtKd>M>oG&dY-cc7pvC~~tCrq?Kr%Q8? zSrTve1&dvdv2TM%JWub${Z7fi1x89*o+JZ(PZQ!f63@pL|Ee8x9#$20|F$$FrS zZWUzUF?44qH#FOPpsoRCB*=~#s+YFKIr7t;TWF2lTkK4)2^7Tal zbRAqzwNFHHiv%T(h`EchUXd=@=p)aNob+EUj8%YtcI~xqznq`^@?vobW}p^ptFwQA zfMtICs~;_F6<(?OIL!7WDQJXU^4;Q%*6ZXT7`oSftugbmaca5CiaIthl{~{{_oTva z8zlTAUy+uxp~xvMxhnfe%WaGHS-xx?9M%$rzr z1$E<75ND&N;>SGApNO!;GBRM3hnBW%t14wq97BXa0DOT_3B=5}8LARu>PpLk7<)$^ zM^|!m0^Lg21BW!+0|R?hI$R5&7-0`;}#tvE?h_#S@m(A@zM`2c_)7MW{@E zddqZ5cJJ1a=px7eal{c$TSIlX>Z6lOC0H|=zBz~}!`f=xKy^ArS9hgIK#g5qeKpWQ zcq(=97Q1@8B~yU8LGH~Gegz>eSMEfpz)}>!Oc;OwyF?|2i5|G>ifSmidL=XKgu=O} zUmc2*SJpz<6gee(Lw$qZut+9M83kF=0O&JZ?T%%2ICeaK)_K~7JyiyicB?d0GMRLG z+EtTsAu(-sT3M8)KNzvJNMo-MV3YO1JBpX<*i@-R*cyu9e!xz5X@-#T|1I-%^q=^+ zbK$Y$bb=+|?xeA7qxhPCVHsxUIGCQCZt>iLT2+-yS=UC+#LD5w?QghC!3_yA9CtSU z=TI@e&>!CUxg+<)Swxl~Q2Pgyg4`BHqFb}CJ#pv;@e@7tQCRWx#OOf093HSU9kdwI zxg*0cT>NHxdphZmBQw(2Opr%2ybZ8jwu*!ur<7-qpyt!aFCo@BlQ1MEL+xpLIQp@1 z3~fdmun4yei9)K>So3Nm-gL_eve8y)x9||&dTvi5hA9(Es?iRz&)Ln$YANsRTO#{7 zf0{~2h&7WMI@LXS^n)j{g#G$FR_W<&+%fA|G+O875|eDrE%?FYY?T4P2OS zO!vZZ%IJefD|4AEf>LKSzLE8KDnVZbUh==q?;7O04R7a6kcI?>uX_GJXqnBuCZWp{U80qyEqtS0P5HZuh_ zsb^`MBZP&(GY~SF6V_oRP0vPpN=n`WvxAg{aFQ9;>`byrY7rD0QeG1wyWB>WK#$yO zs-Ymk_szp0Tobg5XbjN`#4t4FiC!kqqgu|yZaV{gz}i>Je|VGsB-OBq ztAi^g6G4tB-grNQv?hlha2-zEY<|Ku1;`A9wj>w90N=vy8vZ^~Yq%_4#JLNdKh9mB z9gVbkIU7RO|=}KmPYO zimUVE|Gg6aJo%t)bl4)q=&5oWgHa+=avhg;ga|GU2CB6gN1JlHdqurHdxYn`H|3drrCec`V(}m&hmr@3^{VhG{(ZJI zq3ojDMtTj!q&n^N+!;`SlIOam@||+zKG13MQtQrBrYD}ymX=yGp^n8=@ze)wjOl3M z=#w2O&Dqs;)h;JF4sS?(<|pp~s%R`dIOsYDlMwE)uQN4rO!io$_7d3@=(?trjc1gD zLt`uwB`npybyYGl;!&M+{73WcSg&Kkfm1N#?=vxo_oZxD?pHT)2^xM-DhC7RK&Y^i zjWuS%vg37J_#ZwI9{bUPe5++G!4$4+-8_ztAdEDh5qBzR1?)J@xnVNhG42XWM&z<) zs7f+`!Jpf7gwh6k)d-fnqmHGYS&ZWs@euiciY+2jVM{w$%phPF| z#^zvI&WhCKLRKxxpkwwB(@X+7CM|354J<~pBcX2c@MP2i)EsM;Y|q;0-RZuDy7M@N z*X}c>E#hk4@F9=VUt4;Av9dH;Wr3?hUFMFIAKn;FGD|6K90aEKIpcj;6KoKhm^hDW z10D*h1S5MhdsjW*NuD;{y6}!94uMctT~R zBw7hGl3icECya%7(gT`pIZ23m%@Y`gll))!VvLRy-cx?kC}e;r_~LIRh0iI?m!r;^b(lT^Sa4Dr%;TVM54<0}RL+lko+d zawmSxG`eW0e=Mas!r_wqsErcXCc)ri<3)w7CJDEyl9qP3XixKhIx+@aa8c5$9PJ*t zl%PK102WEQ)ST>ZpJ4sm68<>+qCX7EeB6C;X?gi1{0) z9dx`RUJu?g%3{hZ$}9Wdrn$tg-GJI z#XBT6n5Y8EzH2MOi$7&!=9a4(OcqsoH9r%XOV!jetqZ@TFVH#rt8OlG|9Dad3)P8V zN>bgDL!K*V)&T7nGg4#r2QMT|3khe4*Zx8!7Vq3qCYzRZL9rr1vhPEEBMW5wwM_DA zoh*y?J)rxgS%KzC()-6H+d_{ZIGwx$W@5J?-XwKCR^nV5aU^RA-2IAv6=mHiT&_Mw zxd)=#_!;BT^lPMEwGUKd(^^MUl7Gj2UTi*&yL@l5Zah%L*fDSK$4CgKv$0jJTRIXO zi?$?UxJV&JX7M}O7*1xIe6CU|c}ur->%+D0#$lCGyQ!ifV_%Oo0R^x(Qp|NpTF=1KTdT-PowHf zmm6ls(BXhHWtq`QeOkqaEu7FSnKUPpPbI_|Y55sB=kd-W9mxJ>AM2!~wCo8HmxMj6=jaqPE!7 zh=nJsxeev+Ga=P?-o_>CG8_9!O+DyLvBGo}55^ehs77Nx;wh+b-lNfGHP52~Jpg{t zV5(#rs`q(5_}H44U;_ed z32nhqS4f9R%{tNeJQe|H7L7NvF+D4JpIlLdmS%uF!Lo@A5K zY0cDsH}2m+rj^{E#?EQ*4P0!#MJeiu@Ytr-FG*#BxysQ?`BUIKXfsK5daH!>99 z9*U-=4~979$(;1W-5en00?nIrZh#ocCdmx*QF8+iaEzoF5z}~YYU7l20Dbb5Y)*wd z9TQ=`v2m2fCXVeZ*0J1!;c=0wkaXhuhY{~C?CRg5+TTh=CU$^2Fr7)cSX_q8bawPt z;*HAG%Q) zf+u%S8AtBaTzQauVfdgUHIJ<^`F6d0`j6P!S^wGk%aeJZ&Kr)6LnR8pZ)4zMT44YK zCWFffizlv+RrpC08ub=dSVP)DJF;a8fR+&w*I`?*squ|VEf*L=p#%W;_f4A^XRo}| zf$?7snQPyzUz?_ApYwDp|f znm+QFB*}t(nk&cQ_X0dich2LeKDIgz4Lb$>xD^l-=tH?^B1wO9yaB3?rs)Q0u%5A_ zPw0rE2#;;cpN{Ml;S+R5D$Rg=m9TBa6ttU}(6L!6TM|e16;4)aD8k1Kq)k>{zUM z(o)#xr?ZxUR~qHGF$OLUN@>*1BDjRhS8q?j7mK|?QusTFqZM%hS}Vek8CrONEgnay z=~xpqw2+~i1NR;ti-$!y2P8u=++d6+;I05p6S2 zn(fXWc71}<1sEv&W3E(DT*Ssp2fpU9U~TX&4iWL$nXo70$4FZM6|HkX`1Vq|8N+Mw zL`G;gG1s4=Be%Ep%fC2QG64J8jrC&vDgam40Als&3Y4SnMg;wZ^X>g#*SOQVO*Sxo zF~xj0Cyz6kecth7=r%Ta%}#C(YocyCO^*yi{z#9?SxB@>3?W-2%f9u_sAt<~)0KYU zAw!PxLxD}j`6zNRn3nErv`pEirU}VoExy7Fjku?k@D_v=>!e}tq%iZ2pqYglX&NhP zC~v4|7b)px)ZORee#?waevi$48#eLy5++V*h^u6zyjoN?vPywT-FE)WHJbU-qO}a$ zd4}P<#W1JIs4Vvw8>Jnx4SZSLjoNl=xFH^^#A{$8J!8JSejr^kWwI>B`cYsS=Up}@ zxji9IQVUt7_a!3#fLkX*IY4Z8fWyuJu71>Esia}A8a23_vzP3-$N6ehJz$2KTU}z? zmy8(bXn_XlI&D}seIK8Nl?&cB`$5?`R3yNy8FE+iN+e>t;&$|Hvj36hSoxk)_zwd$ z%|&U*0e7q*#%4^M=RC#qo`-3h0t3yqmS?vs4<45!X-z~8A>R#&a4G`ti+kLqffFQh zf_WT}qOc>U=w>a$eRJjy#TL*H50hP6Ok`(Hz3u2guYjC@94DBS@zaS0{BcLCYmcST z8Yq4dgzBbhXO8S?tQ13LBA^tcqyK2m_^CYofRpbSn#laM&!?`fnJkS>wwOLAXj8ET z9;}EzzD-}}Djro5x|$7#9lu$}#;tBZZX3upf zV%z~kP~%)fT4gs(p}~SQka;W|8Z;Zwqu$r zEce{0Bj=253~rI%SND3h2L#qIIgS{A4V4UpZkY#@+JV`tXf!LPYl(GcZm&jRjW>4K z{*R^mUl+^)0em6Rdf&^?Fm=DCoGZ6fvoLf~J=n<~(P769M;$86Bqr30Zbq)C#q1Mm zITh4}olUpQySmJy<2VM-Hd=4nFHa@{O%6mak#SR+F>aFywU3nz4kqFWBl`{_m_CyA zidwQEpwtt}8z8xwZ~A#yCnx4hoJ3Y{DZe(K1M&-GEV+3XOUzIRy~CbynRylg_jEQ0 zA_S*Q*Aag4C~C1aH7V#PTbrF_n^TmL9ilHTEfi_8J@Fb=d*>(F^Q4y6$k0Pln1@2U z31@Dz(fQBtvNk6_CaRP}4d>>_qJ}r`6qX>pBdU%blBkxbXqs~kl2h9VLUW#>v6*g& zM_a7ria~xQbBP%`Jk3NL`$jQ>L2wwkT;0+a5Hog2UTYH}-k7BC_x0j;Mp4CBqLJuUI3_aHZYG)l95gc{+#O)5Pkr2gIbQ(+^rE(*6;WYYyEJi~rR zV;MPxBE@E=IQgaz!>fP3B1BTLsB+8&e{yOKGQ02`4Ery`oPqU>UM|^9Ih2OVNA;G} zEy;GMeli#?r@|ts`U3r`-gw71!q#53T$>$ecR>m1zC1h>9#z4N9$A=az{*9B6qBI7 z&XuELi()Pr;^HRXD`l{*r2Vm*-8UO8E3XDquZgpb(IIYRHNHuaxu+!+qdA2 z^_g1oez2Gpc^au~iA&<)Y&xgZJ<3E3ZJa2{YhavvTVh_IfI5;4gthW5x&vl>CY|b$ z(#?lT=Yr76Y))&Tb;{R57>U~YdbUo;9$2GV)jh_v zBa>#ZOFn}3>YodC~OY{8>Z~;K%_NX!Vw=+0+|LrcQ*^*|>ohhx2@+ax>nQ$8I|=?uW%Dnr+x@cFW)peU!eoT_ogHqz;6)q#lNrSwz#Q zbe2IgGboZU$7X6ehMev&T&;956?CwLtFQ~&H-HESFhMDW=3<(Wdm7zO#>r|5 zmm}fez>%1F8pp?)cor;?yXfz=lFT?_=(wzw`!@||!O-A4M;LN!;>VZhRzm66fLy!W zGA@PTwo`eQ*1rdMia*((G{CUUy>=!b?+atol3<*Te?=9?0re`RGQ$&w4WG0PxS~kd zEI@lWlo4UK@f%Yq(7&I&QKP+X;cYR!^##lBcAw+bFFK2y9(FuN1cd1@au%ZuYPzB@ zqh%jm{GA%>2n|Kkq2xZNPSlBn5^Xho$->~o7F@R2f5f%M{KSMT;|Zy8>;#=q_0D(= zX=;g(|I}AY>^HYK3l<|KZ!^S$CwvO+%BU84;JZmJHa2TWq;C{~ftyGBVlcA`jfp%F z-D~n3a%RvhqDh6h@p`!gcNW6i3_}!-!SE~Wu@Io3J#!2U+G_fOhPp`yFmRGOVh zfflq0e{7CS8n?35EBd7Y*_W}dc@fWrJExxVh##osntGJTTnYOkBs5Ys zE$z*2L`y?AR}x-p1KI6KC%S|l?$t5W75YU2q#$lMMfdmwb;cWSY2sWwf&ud}zVXM+ z@f@1^dgLL;<;#q0u$46_FSyI`tOEfRq(Ba0nB_s!p5`UzA#KTI?j)|e?>Ig)tvtwN zW81XxDmV>W;W|*PB2>1SOR!~`4cr6}4%EXn;(0OHOt>0WRa<+#bRPUj4l98o)@6xo zV#ai@oBrem8PVn_w-6)W(13HUeMFrM5*Owc$(?wT6zT7Yk7QDP^hle6nIc-DyUAnC zK0~ps%@_zjuNa-^AxbF`eYH+ClI$O&XvlgqRj=c-pwydXCG135(kLbqG%AKdAu1_G ziF)*Eip>%b4GDZDeWP}#7t}3Xj1~mepE}go0w38^*uyV5eXMf=klV+5nvER0Mei+Z#4>6%5lF( z+J^E;NpgH+_Mo64ly=V7X($KG)#Ef8Up80GmQ$}T+1`P7Ub!WED8vnEU6ZCl#3nd0%>eNk6BWYr?@ z*;cvFayk_emkZf;0WNAc;R1e2Z6mD^6M(q@8`GXPIx%nkBo)LsNzN4Axq~$=&}i&} zn@C|qtX9>S&Wxunc;qyvg-wQeNJCwjBq=fO<4G1bITLT{OA)_t>b%x#^OIi}>sRL| z|8f!L1AOtLVr72vZ|6Zz-dihHR_DjRT3=u`;(Ik}JBH~*2)rXTO+)v$G_JJa0&V+) z!RfuwmnZC&gZ{?2_x+`pnzi{C&h}s8<#yqX?Zfg!#v^T2GtJ7yYFo9?5x3Z;#YL6- z)K_OzC-Zsk1BPoz|2k#rz0`2?5Cck_ll!sBJ@OjHWkSei8kWJhs?)ZaCmRiH>%5VO zjA;7JHZ@|eE|^@()=AV%S247s-Zf0J(Htu^hcigUmJX-w#x-&jDGGm(GWZ`DXAhXD}5L*)L zY=yK$rT})N{eB`x)0^$t!=!4vYq&yKNqFRqJpG(!V3rxZZ}ag;Yz-TP>Ety2<&@bpQ@JId7W{tZH7V5CSR8eKs*jWyVHE`?DP08JaT2=nR4pR zn0AOFtYESu6vwn^6DOBL^mpbxmqA;$?B`z+LlcDuD7_XWoA9SK6STy+zK5fj0kp(& z#yvOba$3eiq6-l2_v|Z0B2aEY)iUW3$m^7ZZ6}6ynn{6z2>a)aUlOPEgfp)?>o%rZ zJnYTHja(0#$Pk9Z=m*n@P~;VowhpfJ&d#GYI zCL9)5`&Z)dgbX4irXT)R`d$)@S-fxp?<8&Xdr>pC1SM3{Tu$&JMTpd@olgrj-Q|=! z!T8o$o_;op(#mdGBO(VJm6j1{I{7q6Qw{rVm%BCYfaGR6TYrfaY@3v7^+RCS2j9C5IiS8T+j zP2ao&-_hCNtm(L&ARd3$;ie)$J4B@Z8J*S)fb}UY5stguZk$493CvBU!q6WOs6tO& z5NmYF`%RZZ)vHvpoSh(K)8pH4Y`6rYlgJ|n?3Y+UiB#1t6Uon=Qrb}my`vq7^`cgR z=3G@=C3;gHdMLv;Y^;)wRtH*raAZrKHSi6tmrfl$g%TufvJ$lPCjwYoE?yDq?O`Zs zta>Vgj1LoS8hlI&0;M?y3k&MYIhb^c{0E>;mx0mh>C+N`ZZ`dukvK7FxX7_aSxssf zGI+?9k?XcT0M`hiipz;sqphqH3#_+r2En7+3#(47wGEhm^wfywf8eJ^{AtV7h!@Uo zj5haQ3jeJp!@*1c7f?$B1QY-k2nYb+In2nS zQzX!RUiMyly*}$%&py9D929$-o5=lr>IKmF-Xmw)%zY)if8N1Y6Jcf{yOPT2Adbw>goLW z!K8S6bAIwpub9j}8a{iDenlS}^qcKsyg7JoX?Jok*xao*Hz!NQxuwbG{^VS5 zH{7!xZ~pCbOUujW;)j;u7w7)GtL#);oBxGA=`J(eoKyw8{kJ!NGVSj@w{&^bOg5Xz zx7WgzmWm$zi!TZ5_M@U#SL5By$#b~obfIU@$uc~^w-CmVWDuP zp3$E#75xqP_0G<;*XuW<$!0ZNx^TIE^4XI+%~tWu)8T^8(6@HvOY4JCZ~MRe_0ol_ z{rSmT(_(#oaP9MHDKY2S`h&FIAyIlCo`0?yGTrT{oDZ@YT zuHjknw)C-Zzg}Hz^=EgQV$z=<|6yl2JRV+i_wf;4FMR*x)9|f^pSnabd8?SrPu>q- zg2yO}-ZZ>gKV0ss@X7F+zbIx$JMh8dKQyo-;jeP{o$x$|;mK!@`o$RD_@il9gXuxI zXZUDXi>esT?l*NAKlw!ipKRtQzk)S`McgX3!+(ESOvWR4p&+nD4bQXu&6^*#myY(~ z8CbsmS^S5K*Iv9{T)O!33x9KEwR@SbS5tVoyJ3yOQ-n91Jt_wC9BF|;r{I7ur}e%`Ez);-5E$E?98a7pYI7^3g>?(dxrNL47Ruf) zrueIe;fL`tf^@t+fj{5v^CiM|e}bRCNe_TOgfG4yzBv2(3=4npCPkw3LL=(9{Z>lUJP$SYlhM@8P6V^;T^7BeC_g!FBh-A_R8zm*ScR~t%en<4vO6; zpH(cR^nCni_?WvO6}$7}PkZ4VKW~aUXc9Vd;n)m=(0mn^8qN}n7#~DD)q7Jq7+WBo zcg`aBe{<#Km#(_MwQxAQzVTgB&EXgQ;a0Ib?xC&d z4}-DTJ@@p}Pk-mT%YV1CxwTYOgJ1)y?|pwszP|&CA2ome%HLVKaB24DmE!7^`N_|& z6>G0uEMB{E{gvXIH{UN-UVq{GD;aGOzd1ktX!WJy)s@-LR*RQknIGT2Qmn1aZd@rI zzc)Ympjex|v$|4Tp53^-(y{U@v%`b1&>+g;T!#f7>W&Za*awYw{3!ej_Td-dQyZWT zehvFF`{*Dn^~pmJHQ1EB@b$NQa4?SX^Z1`V{O~$R3moQO;~@`cp_$zt@%JWmg`cOp z?^e_E9nbpAa`@j>(j?&-Z}2@jKK&i|^hzIvdb{o~{_tPnho69A4U)!6a>3`n3!h&N zdZGa<0*e(6(86zg55Dmls`jqW(YAhX>B7sX&1t#B#)-+N^RT};gv;F7DT3DRxZ}6^ zf6oNtT8G8GF^$T+Hwrdw_C=o#zWg+3=|@G4UPDR$AjtsD>x>Ef0KXoz!h;@*&J9rM zxO!o0!j2!p)&{474D0eKPx+nYAgy1}`tMH*bQ^w+4gfwo7@~0ND4k#*hs8eX>pq*T zhdpb`Sp$kn!8hFMS52`2dSx=kJM>UCCiMu^HCXp|`z*nyJ@8-g14j>s9%%wf=zwoa z4??CBjA7WqU_rKmj)o7@z2PEYvwLJ7QqPAMG3dk~%9GQc>bqgH!{?@SS@em(eEu9w zP1vbAcyM3#c$2|a-5Zwl*>vH@v*X~}P08-U>NRlMf7L(j3BD&AX;%Yn1-yxC2}_m_=Tr za5RSOwT}4U9Y)719+~jnu+G1Qg}P7AJ%lscpi%mA0_N!MvzfA?)O>ei;w{Ht0Hdiy(M( zXLXCwF`GR?FXH&{;IxPMLC1QB;}+i2-NK$m_Uqx(zlCjqzZ`=6Rqm|wG14DR(XR|r z{ds&~-dTt}?oQ;yfKoav_Tde}HBWnqAM#5KS#`V%2lRe&s&)5w!8H$_^)U&?5zFl! z8Uu8~a6!U%?;I5Sl_;3#;p_W^3;!DS=2x^Jw;ELM;TOSmJOpcb>heGH^m1{vM*I2> z1uRElc|fr=U}fV8>^SecLH@(d?owQUj&~62chM2iFocx8{_ZE!u&LqX{ylE;sVeiC zXN-uDI~OzoKdY79^c_BlTKxEE2>u5N*LO1(VK2YHBcHumlu_k@_UJ0^|YxF*0!B&+YjM z=)`b*V0qqQ^>nk(7lSuE^&!8@o6%Z{__lD-Bf2U{ITIBS#5&J+H0@~!B zjY`mefY%D|2|0qEkI!KN2e4DqD97-e_lh2A6IeG=Dm7{zSwGHu;F`mm(0gZ|m;A8r zFI_P1Gx_JQ7nkNI@2#FMR$qGZ>HOq3;BCM7N^yB*e)7M<&sHA)^F{c0u?i0P0>7Oz zGvr-S1k;d`z->q8>u87G_Mcx>p8(hlwDy#0;@51Y{n}PWj{DBQ<;p6XCYy_5z75Kf)rI9s4 zP2o-?-U|HNCTRLCNx#5lC@b?@xYeiA_yYJbQZ2aOvUD-g@y8?f!Q?wNMsr}*{(vG$ zh88jlk0$s*dJ%sAy6T7Le}eH}%j{*u3Rkl9BGRoZ&{Q2i*a;FerCib|Uff9ne9}KC zCq0d@b)AY;|G4x}1Jo{@)S=tM13v7r)LFHEo_5%5fLRO^%21>r($ZjniSHyzEXaD< zj>Yz;vey$A7-0ZJvPCE33rdAT>X()jRZ1Vdr(qxVpmu75B`@z-ai)|Fhpaj{t|XYS z{zJ@!1;9eJMt1x5@dYs3oW|3nLU9p(LJz^oL{R^%U^o#^c?8N7bt^^hfW>F z@3g!sgl-o_!twg}LC`)GXNM{M#*&3@)OJlV4QA(zWSS!voL1BbsEE*}u*M0JxPxZU zow_7>j491+Stm*_Q6VBGTwxvVp)>X+=+f)(>_3@qHh6?UJ<>NpobNT^Hn7sYno~8K zn70ak4(3T|Ev+O459N4=mLfXB;*AZ_fO;d8ZUnvoeE!#sTlGFwF+hcNX-O4-za~vs zjZXLPn}7J%Vs(D<4_9CvJ}NFhxm{ou@qBSLM%y5c>{Vb2p`Lvnw!V`02N}iuQ{I2l z`&?bQ_)7R=c4N)nXU)V@POLGir|QfddD$QYE?h=2?OIAbMT;J4ZDsa9S6?a~zZV?3 z|Mn_9RPfzqZ=EleE}><^s4lD_J{WkaXf)ROcWu|*>dU2$JFf*Nr@^##V%nlnr`nWp zJe)^@KMAsedV|au#YdoT@!Znhu+@Q&mneU|Ad+9DhdSuWFL!KKhQ7=Z&_2kPBz*aT z__GNgX9x$wfe*J{4zArJu>|n5pugc8&(krRfT9h*8G;h0duS5k`Qqi-=a|fa5B3}W z3NF0fTvf*N#ai2akYq_s?h!5&M!Zh1+bSgd7E;=u?r@OVJh>D6lQ$@AGHD4=Xc%Bg zVw#m0h8o>_NV+e`aK?iKodQ)C_)mjs{n>s}0S-Y2ANjC`m81mOj^hEKREX6;L3=-Y zu7AO)2QcfraXqvo!NET6@zA~C*ZIAs@@x$pdj0wRNRyDQ$RH6EyIt1QaYhfM$0T-T5%pNP+igiE zYYX)nZDNqE5!bxUibz%#;_DF@s!vI|-00eL?@dLYo6=VFu*OZMI`|>v4ZvM!Osb$2 z$=DDDt$N;Szia}(Z{GY3CIAMrLri4_q5bB~5BcLSHqB&Y>S)t_G49*2)2SU_8@`dX4*#mfn2a_mhm;!93pv9&g zyPC^Bz;GXxUU5HLO$4SkeFg*2H z5(8lw;5}HSoOdZeHZQu|d@^f_TPXQ%p9g9!a0E-c7vx5iCeP1~1!EofJ7CZ-xqhzz{1ICq7Fz>?W0{rp9Ma&)+$aw#MJ(V zeRc?BwWxs+t%|Qb*7giTi7rzJv0C>UWmfEJ4@u}WYqxHy9=*B`=$vqpH6@{+V+W?gAL^R;?5G9Ie zIrX(e3|K*F#_l65sol%go=_IrTtftY!0US~?@vCaoH52$fo|6?_iBJ0xOet3F>AXC z7$*PlRzvVxW7G{rk&-09t#q?RIH0W{IAYClg<`g$>wvFOa53d{BIO!wTHXigroJ;j zc@Ts0o8E$v&S~lp0o#MHQ;+1Ba?+A>OzbD^P#K70bhYvtDJcjj6ASlzOkoO6 zlnt^=BtGmHEcR$%VYQALhpZ5=k3KBumf%GaDg*=KdQ^o224KkvxUcZuzwGN-44-*$ zurQfx!%GJuVY=UXjFnz4byIEej95>?T2JZ&~zGmrJ9Gx_*`k+LvVyX zZrFnZ#w+GL=2AkQXsQwmltH#Ml7*sZIG%Qki_CnFCH-1FcIKDS4sB9_F}N>a5fYc9 z>$38dm`%ncFkN67HY?g#_qMYKQ$nF~E?(*(Z#PyyFfNh>ZhmrCaF^cy>NhUJro_l8 z$(hAKBw8#+O~wqZ6l0EhY!sWQb=)JVlWH=5a{ha~9_v$FGpwEGfJ}Jvm^l4WbncxJ;P-6>!)96Dm>KX}M2g`Qvh4-|u4T(^K4W{w=TPEWo;1Y59!a9CUA>zauFA|b2DR_Ca zzg3$I#ybA(_$yiu-s3$=J0MKMzYZ-iRjo~S4ZTkhEp|x59(LBAe@J*zG+U3&t;t>(jpt4~KaGPQBs|*ch%Pb;Xw$VTAq&4%}_3 zRFM8U#FFdxbJ}Jc#q&h?#Y_jy{ z=ALk6aP*;w5{@qgw=UZQIr-rFUzU5~Q^^$w$KPNTzUu4s7eZX6IBwDc;5Tp@=$%Qi z(HB7X9X?LlO@plgSSLpe({cfwDXsgI{3FgSQI6pz(@gsPiIM$U~IztSt5EA9b=D;*{xJ} zS~uGGr%9uZlwe&noK)R7C`%+wREdw(GS-7L>2GlNfX$?y;Tm`%r6Gvh*=S2OM~kWA zA$}EdG9)hS^cc_nDL$ka)ijdV3}3=bQ~fR6W_AGBS|tW56E4KMzAI}zwTj0XAqJOq zhhnhstprx!yNP@nE7kBWgOlrXv-@lccQ)(-BMyPm?7>9*-3A4c-}UoGoa_d=%HZI& zT+H4dkNn|<`tdqdwKb*LY>`6R264kZNuD@d#E8lHJJ4+WHzc)Yr*UMBshJKwDh5V$mab6<=TvONhrX#6_SJgobJK)GGQz>rZ8HpFX5* zH^Fg*nxDoTVRMPRW~H_s1rOT9W31V#E4qOOT-tIWWrC3&JrQdmo4b-yWQF&&3e9G? zpQ217rq3B;g;7Z%Ex6D&681TtbhKfzS_KU!!7AYSpMCD-91jC*S8w@ST_+fyz zF4_g>)2#4gQrl-S!?24-2U>sCo@okpFjo_N(QSgE#ezPFHC=OeiU!iuQAH)C++u`$XtQl)AI{laR>1y%ZGE6?IU{0kBED^=4} zHaF4Kh*4p&`kHK)IO${2rra=&x(14yU)U>Xb2oS*dlpE{Ne@5MvK0Rn9I% zfSbo^CG z)tzWS^`rHU*Ladz6yaWn;%ZNSuCufLhwi^@8Z#DnU9bT(s8SVd)9r zw{2%grOLqA%prtwT_}C6`CxA*b!b+jxbe0ZLVsv&eHJW2Zl+bd_SDZ${;9Z(6(lSn zSQHHzlEmt8S;0t!Zw8v1o5xal;N-&?xyW7x|lpG_g9!JcQLiaEXw+kdCP@_q^w zAx|8Nz!TVP*c>8ta4*v2yT2f;sScz!1^k-^b9&wd*NbcGkn6~^PgKz|W8bAg^0wXr zZb3>(Q%#iWko;oKts78vO=Dtwj4nUx5;?HM%EvIMM)@eM~|X ztOU5jIqWGFPWW?U&RJRTNQ8VI$XVo#CvG6BvQpjABzjQ4M^}lHu@fp9C25IRtks@8 zyfz>zv4NZlw?G5~CsZ_Vgj>-0V^n9E7#aFFhrN{B^;j*=OK_b+RHE7%;uNYk@hcBp z?|`Wtnm!x*f&EQLm4v4Nu!->&Tp60j^*?p2PT@wu>x0`}zg7 zfD0NBIpWzN^dS?qfh=rG4keh$l&Omar5dt8lvWyhgzQk5tv_xk(+rbUwKs7t+YqZN zgf%c2xmJ!ApQ@GPPI?fr2T5`|*o>7CNxKF?V?P=SuzydannN%5HX(?s1S8jz66YtC zgXre+0X=+q7VwS)opm6=#o=CCy9XBCjz`TO1GF`C=D^bgbg>ME}ns{VK!gelw ztdk63UVw9cWN$iHNSHi~JaZ}b#1$7JLu#>INJGWFx55!gVMQ`yi&qAuPnWTXi2$%8cU0u=tp5$%h6N zkWxsF!cuc4M?1{yA!aAXHqz3$Qwe!W*`SEda>6MiiuU)y=#YFjk z!$8q%Sk+9~;KXsxk$+m!6Gt;ifs?UsNh>{>J7~Qm@-RA2_*3TFSf8<5Ync*Qte|xA zXKWB&4jp7dXt~k}3ZOZo&PZuFEt93eyfr2Ne0G8oP`(2%g1c((;kM1HX2hjy-<@7e z<-xDev4=ow$0_c15f5{AghD61k$M}ZpB!%?b?59u8dZ}Q4Df}GBSJWx+2_#*5lc4Y z1i|qMVpPL2V&#;P@07}gOiK)!*c{SU6Pp%!%L520_qrZOn95KWmh_@Q8t$YlV-`PE z_h}_x5Y| z;78H_jsmHc6CC4J5;t*6EPRq*63=;TC(w5EdgRDFSk~9+h=&&eraT{>kTpSt1!cuj zL+FxFVic^fC+53KO!GsQqr`gBST5Uu=a7@ti@(m~&ANjGKDfS2M(HoOeu?5-VU_2d zSmTXP%HJTW1k??pV6x|yZ^yNjumB}TBJygGFEzGQL)TVQB9a}@t2ES%uKcB71th0H zC;8-XVuI$hOzWF!-RRhem@v&HpNT*W_Nva+(lVhh3ofsyWsMp@wmUcIhl0b;>C@vYFvaH1q1r( zsOwYzVN^HGLGi-o&Q8ZCt{)8c`c?7jpqkWO7paDuyWtw0%W?%Yt+P5k zQMPNCz(ZG+Qp;y@xU3XoBrxi0k($u&>=z3qkW0B|=*{q9SR-(u!?6aD!h}A&5xLlD zqyk`QaK`FH)6&xjI2wy1@Sm^wUOs?JijFtP`7o<11sQu--TQI|6dpZk6M|YBqTqu< z!tVDP0VbTC@{h|U8_F`+1giAEam2pCptKle^LH%e0H)G487_EM@q?F5OZP&#F!(D( z!&I?}idK9>dUY^ofsqxJLt3`%w`!{?8$Wx5bU?SY2~E}yz`XE_Oxgns0;xd03w>I; zGMEGU{btL5w>APsizta3d|=zDnd^ae=~?dqk);1fX|4^9Klao04e-JeT9i&UEosmm zUSh&kc?PufF@=scjX8V)wgJ|j-$sEEhBFYco9IS8ASRZe8Zf99%)Ea*+p$`cp6ZDU?zs~-7C@0<9UQDeQ*l|!xz*SSZGfBin0~YM{e%OZ= zf_HyF!Z1w(8?pmaaC7SU$vPs7>r~# zX`+bR$3<3G40Whazc3bqytrTAIEb9Ew<)>PJOVN@sK2?lijxp_`38804Qluq0+!|Y z;4A?$#&$LD2kIY;8i(vooPL~4I@(%31j3=VZ??jbt_cjGS=ua%D}cdp=E#(HXHbn8 ze@bwjAchaBco9!803>>AhASV#H7G63ZgbS(2v zP?s!PH^L)`I&VF?^g5E8Zp&Fzh~t(8z?yJr3v=ibTvT)~g|2#*{yvy#*)cgDd|R zf=QPxIYaPhQ^%L6EKeInEDY2cAh0#VM`>O=(JMdJ#CQjRae_S0Gqd>vJG&!kQ9_d8 zpP6!P+N-AXqa@Yuim%jRBGC$a#Z~kaGsRgljoO&9g?=%2ooXi0L8O%xipe9uzd_t) zh8!|3U1VYIirqcOMr40(g#1Yln2Xuz2oc6sJ|AmM!icMWxXDV(2#>`m&D#cU?wUee zj2(+7EU(-Bsw*9LTKg0eAo2JPxC!INutQFn;*W=2E&BV^4Co&Wt^p z9mjnL&LM95FSKl62EpZKy;zDACSW1+U}VMVD$H4fl_4a}TU50J`%L+~4&OP$k7DcO zMgq!MXJF^ofaK&UC@!rUyXFqgooOwM+9&79;dZ((X(B$uANV<{?pE4sGI-APi{$ulv$wHEH_WyXlDm{)lIO_`Ro5XkQwIrSBEvV0!&0e(*GI#t)z7 zLMI0mDREq9QC)RVV50&H7YR1u4pXdMIN*`7CAp{|$1}pbc*RDAL`{#JbByc$ z5)new(nMuhE_$kl|9&dCU;zw5Z|`4(RsI&q=qddh>rz#HBw5#eU;x3wCIM~OSrXVY@Fb0sJfjgk+gq8i$Vorq$ zuVFklwPP__RG3vU6^iSC8~MK#Ev5*4OG4FVF7G%HI#!GrIPiVE6Gx3FIT&|#77wvT zTfY3+?bf620yPXAp1VRmh`4r#9B(rWX+{);i6cp&K1`Z!Omhj>h+zWb`;GLOGZmq# zVOb@6JL&X^qli#Xm~$0d{_jrkNHpx*B;BcJ@xbFMn6NR^J!kuEi35Fo_RoR?Oxg(P zOxS&iI-6{}*Y7DkB&$MJl?%!6+i%tuStcY#^D6oMV;_%rj2&B8+U{zXpMn(nx{bj*SjyiLtrYW1xA=6K-FKm` zeLP5pKtGSk)&GjoA&QNI8p`^NQiC^X7?1_|^*twLFNg{{F z%BN*1rHcqzuY;;{Sr)p%!0{k1TXN$lD<`K!?{8XgndR8j1yEJlPORc3QzItert!b) zSYXVP-(iqJ$zZddBwKDMQ;bYks(u@_p0K&*TF5tW(1Z=}Gm6g?JPmnEw~oo?J2Adg z&I@p8h6W=bH9A|}=9;jbP?3PzZAFFw>aG42F%seGQx^Po14+M1K$>`Y>9OkO9yTM^ zBZo;WtI!1`{sSFBor|}+0++6ruz__~G<{u?RX4GTktNLH0x{n(`@P?Ar!h$NT29(- z;y>H}*_zU}DCcb(?V`HrSP>)dr*y9R^R6yO9K}E)#AZR57PvZT0(<6dN_NT+T|RQ; zfc~j?0m(pSy0D$Zna->V6%Y>GqfiFMz*nSJ)N4kewD$&P5M*6L&I8%kig>mN&tHvbE~*u_~UALmwy2_FZ}mDPE`+n-V3ug!RK3f#d&^Ihea|plb@&eBmY3(K_-&;iELV-|A_+nOw(A6WUD3LXSKAT`7)AG2Jl#CCJm86;m z?@69#(=)RmDHrCkh2kg#x~RP%n!DL>(>x_hjp3zmLVLR4u7aHUc`>diU^WyrS*j7H zoS|!xibR95jERfRcXg8!2**Xz!tHcpJixJLubCGzr&|^FdQPi$2EazMDv62;hv-gA zedwB?vu=GeIB-}JOuXZ48>R~+9RWgEKIoh+u7_}Ab1WPnOaPgrJ+F=aYc-xMe=8nf z2P}!C*cW=$=iu1wiA=Gy=s(y_{b@cXi@B$mllwtqM)Nw?{Gun@0tmGOOic*o z`_K_jp{rm_vovg5AEPXj(f)cU=p3oG+v2zaboIvYXEABb(1 zgM}p<<12toH5^n4Wu7*FWC@lF?e|tdwr^4{K}!&(iV_!-s&TAM*eV~J@XSDPmx<)@ zJc_#LC4`E8r<^xz$xn8~SPLJ4%|!WeT!uW`&4#hTBJ8%-TNWi5!ioDISAt1-9mmpL zhLpn!U@`umjG;LXVtpU85MY^Jo4r%4!64#)f`7qZKEla%V2m!~fMOkV_j<81d;cO{ z{#xz~yl`DjRJw58kx#8jI4#bSJ1b(NQ1suP7I9)^j^U$A2}*6x*QB-4sx{7#v`Q1? zrz>$QG(4KNF!;EXfXY1JAQEq6#v(Yjwjukh`uIjaEN4eek-^UJW#EEz47uo>G}eB= zXz-O(aM8zUu9cH(KJk*zu^R8xIYGVxlbh1O^@*;tbLJrqYA*8X&*mEeQp9ZbxHQ)>1E#`L58N28CqRif^v0SCN$QGX*Yz8kITZb z-^&>2sWScE%I`w5TzobOkCB%}=5Rx_YRAM2vo-@Sq1Fhn#W#~&U5{brx}?Ht0+-Ej zl4gqsG-g631iFc+SvkY5d@C4+f)81t^-*AY@r1Hg2LQRg;oQg59pheIE0+^Fp zC335uCpEG>RqHsm3u3)3MRl@nhQb{6)VoPZ=p7MrvtsXvSO=Ky=x>5WPVa$!2`!OA zdp$dGnNl2^xs@4PmdQ=V?$<7Bn$GEQ5OTN05`Ie#x zC08L#ABjqEP>){dw zPyaYDgiEPyFcql@lsG2@^{0)(&KVjoLeL*`k2u>4TU~1A+k4+Le!?3-U^B$#5h5{T zqk%d|O6TmO*i~jlub+t2nvt<=7n$Q>e?ZVw!aH8vme*oDMbP)4N-;p8_>f-7#rJD= zo!>&8SsF>3*cubFB!pcoyKFS2xsg@Y(;h~qWM(3STw8)f@Z7^@(MUQ-LroL_EleBlY2=4xPueQKTtJ-DWT5*im+MB#eY;Dzjo&l4OfW> z9tI|I@-CU9%yGZTp&3>Q7%Rw7?G8I5r6KP*T4Szoo;$(`383-AgLGzzhPdfHN{3)D zXJ$yrKTeHPq-pMUzPL<2ob}#J3)u7Wd&Fa)J9n4aw8B9Ga0GtnQe3u}QZlsrE=GZq zsZ-3`yGgki8rf$ABj%NarmeQEW4g zLH?R=_3$$`qhcp~q==FPHYXV`N@>Z69~dP7J63}lluCO&=UJRdsvFKbX>@uL)ztJ( zJogd$@8S&W=s=o%g&kl1mg{jc{za5YclcZNVrMlh(hWpWr*g3C)zu7bi%w}X!?a(v z)051PC&S{C?_@riyM`3S;&(~i231dWtQRsdte+shs11X>W@~KP2Ed)FNE*;SL|N1q zOY!a20prJGeUWcVGVC~tcyY_4Sf|)gkCMa@k%$eIFBYr=C-!s*2p0D{E43+HI3Y2* z9W?;|C#=}#eJkR2he~^9wN?A*ASw%q?6+o*dL`#Q9^dSnfQ*STerAE%-%=PX>uXnPzRgMnE_~+^Pe_ zY&w))Ihp)rAoMwlOih5qKEzdI%6g(NmGqZoC8QfU7-6uygl`CPi8nTv3XinFi)IR& zRN{F|R!eC_sp~}(237E*^tZVwkq$#_TKM*&NF^ ziUnWc0eBnWkW)a&U9~|La6Iseu}ognBw1pG(NGkSH;=x=?bHYnW`!?Mc`!OLwxy;y zPT*{h(%z!sCQS2Ta%!D#uOZr;7gY%m=KS+Aw zVA3ll-=^42a>Aa9pW=t14)*j&u{K=DX-&C|rKe$D)|7)^eSJG;g+9vK!P3!y{KxZm z%R~#=jZTv7*4;AgzDWl|`hWz)Tb~_?LIZ`61F2AK=8lUq637%Grhh_%lKr#0=cTst z$E_K}-I3xY=Hv&T;xT5#!r9sfePEDbc?Eh}`;KS5_B@stEE`IBRuK+oF=-Xo=?5@l ziIX@3sq8O1Xuza$ zWX4K97IBCk9)I-DA-7G#{Nl`!Xbfy!5^v%Aa`h{mE8T|#7>z>pQj~VMy1k2xRnYL) zs1uDym%(&S+%7o!%9GmiGi@Q789g^I2H2Av6DruyfE8u(qv#ZmQAw|(Xmlnl&dT7A zGN0!*^9N~jSj2Hz2F8;pzntLWsl|@Un)62BiS=c)6?d=RWXls#7^WiT+qry`Z|T4< z>`iY`vM{*n87}vjRdK^}S4@vU#D}xPf%bi4_WQmMpPBf*yF#apB7WF6PO+v@=2C|S zkruQ|&>bavjvF+c#}ht*mxv@!eaF^OJSDKX$8Qb4CADpfjfp`ueP%yI>r=~8f9%^wJmLn<9Y0yG!UJ8!jfRVRoV(VDdR^R zzq$bdT%Ai`3VyB3N)r0k@WopglFj2=#BDp<D_mEUV59c!4}<( zDKQnTgoH$DzL84JgugMZ$B2~()=b)&r7bCF0$A5nUBQcZ8Z6cq36q)S(J2!>m9}p< z)+H_jN%r6`7Sz>%dL97s#U;QRt_6$wCbXpf+ghumqWw&4=<;=O9k69e?C+nFS6G%}MCm|_>^3SX z4Z4TP2vkB!*;F5dQJ+fPDpx{Zb_l+Cmi3S>Yajr&7?zzoA@vR}&^(Wz5R~(+$BZy( z)DaeP7_<`^iW%E%XKCJSG4A;V;`Wkj?@`7UlS=6jI>!QI z&VL)}zGC9FmATu~k|gx7TU4rORm(@f4Z<3tf~1;pE)vm7>@8R}Ug8*M@<>;dj<8%v zF8N`rXFtXshW>*9O7H-Y-NQA$Iy{=?qxF^qIIZZ>$~YJ!Z34+OFQ)xiN`I)=>!bn- zf7MhJK(sa};-LM3*W{kwn#xba;|?@%lhP!8^407J7t3d-7Wr*g1w%y9@$WobP-;E-VXammV4b5yd<7O7)I zhpr6AsfRpq>( z$~UR;8q+rvU6vUDEyZ3Gz({_^834$y3L_VzQ%m9XgO4@vhZwY!(C}TNU_-T0iGAs+ zJw>aSivvzUN0ATB5n4D~cl!yQM%qo7o9E@0)N<;y@Z_u6cfhCIW5zQq*0};5!GAv2 zEGVK89feyLH3vr{hBm8JDp8JvOfOo;(|WVtnlxh2M5RfJOHs*>k!wFJhBKUJ5Wg3p zlF{o-=>R$~4boX^ggXuiClh)DTW@*D)eYwg=1QgU6s6jcV=-50XE$mj$&pARH_Sy^ zxy6lA+~qO6yxHHX&CuBPykZ4vPh=>njBSBZJr=!B$=I~*F>lj^&|!Vz4o!fy^3fz( zQ2U|q5E6ZwV~*U{Y;R!XtQz`-G?j(6Yo~xJSJdg^Um$9L78?|&ye$gP=1&rKy*NvV zEh-9adx2ubHZG@(Gk_Pk)i2d@o2%JOifNglf=E7-VlybFOT&8nvM#en!_vB9=Gext zrBs^cW1a`7c>K2tH~TUHrZO*hwV(_Wvl`?Nz!^);qRCjwU@q{wJc(|SI!(2)bC4L7 zt)*&UfCL=G-6`hc6hXofn%v&9{=_~ILm%0CaFZF9NzG>ZL8mvvs)`u)q=18Sr@#~D zyHryq3b1#{@~!dNi6JANqPCNv&~Zoc2Is8w&w?ox8f_L+vzT-Y!+$>(Z*>>mLw3QSO&%a$2j+*eJ<}0J;Y)Qt~3}41&5d`8M?c z*BA)V@3bY%=42-x{D{-dBWo1sLQrR&eO-BG9MYpoQWDu3a``DEUX09ezq=pv0gj5H zU3aX~KIArOEdto6GC3CT7})Vz2aSu}fm#z+-l1^T!k|!Lh0aG%kX(q#c>Dm3KyttG zP20cG=1M?v%R4&)lg%`J(8OMBG*7(c4Z1TD!ACy|mzlCOW<9a!lK9p6=1)H=n7vp! z^!Z|A^q*4R8_~K1jq<%??R}gUQwl)6O@7@b(Z%4>lWx8gMl-Czs24} zdTsVR+5~(wjeuT}8UevTCbgyr)#3^83umkw;Hj%YnsaOlMJ7WPS=Y{T67zkNMl~*K z?9R?`ssVroXXY?Nzw6tMH_+%Q5g*df(E}uXxE^efj@?4fGowNX0b_j$_fZ6NZAyE416FDRvT7UB zvLQ(p8Y=4Xf%CMEB#|*prAk~7o@ud*loX^D_c5-ZF8$9@8-+Eb&oW=d-uzgrq+=N7 zLpi-TPkb^4b|wt8KW<`!9U0>Vl}y)fgU+D$r%e09sn~3k6LvK}YWUc78PipJ3QPX$0Z3OD0K2+X6l(?xJps3n*R#s^Zq z(jy>#D|gI?WvUOv-q}1BI+uS!wbr#5wZKfi-5iUGf=j@HzO^>2D9wu=VN9_d%+qCj3<-;AA5Vtc(IMjW3Y->0-9$h_ z!2x?a4?2|JgI=JN@Fp1twhP_L3{ug-au{Db)-y-D$Cb3%$MA%|9k!O1pis1L)7{{F;u++W=rpVo9Z_F@$d+`d@$;9B?I70=?uNtQ%;kTBNdgwiTaTwhRE}5O|Yw;vW%P+age`XupDac@#C7|E!$X1gl~PgDXcCaor0D#hZUg4gMxLVpU;!w5$&S@61>g zK*OBEZ1FrK+aNYQY@RRH2}n*^xlLYWd*ywxjWaKL7Z_>FZkVUaIV+ zd zEdp*V9c4gKawu#pEl;Gge*>0hs!nAqDd~W=eQ*bv&pl3zfOwRan`ePGbD&FwRf|>x zoMrM6Jk4|)Xq0JQRM`pP4isK?Gy~+KW=NFPBWV7Y{u=CLluT`V21JB*2>$;=o{EUd zoOxQP-0Md4N_}W+a z({G8NhSjs!Ip%tppotb^i-{BxZ7#(2%0?1)*AT}jl#d%XxJhTlxhIYr>JSKuI#4o0 z!k{=mGP%3SVU)qMfosw^f9DQrEH?PRt zx1bz8y9{OS&zP()nDN_P<2_chCKy#3B@`g!ik>o4*-@7NdG6zP9p>#}G>{!P6m|Iz zTJAMt?$rl$5nCh&E?b>gh5?w^Z3r@8StLB!sd37wNmTD?XCMimKW52o&rjMwgWtAA zV&q#U!$6Ja(f{hCkBZ%-dw|v6m~mD1j?LdC*%+~=6d{nQ0lmn{O$7tess z7-(inG)W38)9=Tx70w$oCb-@{XnSEoZRYKht}y1FyRksX3Ns}rJeZ>zsOUP5yNrc0!^15l zUmV-o)uh$|kSG6)!EZ%NqO+TZwU%hM9&1o`^OuT2Tu)*D1o()++@l3U?CZc`|#6* z(`VaSzFx4Ie!H3uVxRlhTe=c)}FA_qm0+qi0!6@jgl!-fS5LpoTgFFpar>>;t#Q66Q80tKCW z)>z|I>!551EH%(fUxaB7ZP!=QX)f^wRFFu8*QR?m0iQd|Z38`|yQt?h4k1la9QPzi zVVXK)UlJDc$l5Z^I_?g5IRIi#=mlw;k?Qs`BV}da41U`%TSUAAHz%$`5q5SA0$8kI zN&>G_T*PL|%J-q$MKZ{VJTW~q>_oTJvl{u-y+|*E9BqH4F*%|U6J{CYA-vtUu^-(- z?K^E@<+xhA49pugU!}-%^79wquN1;Y4;1cjxWoLHkT?LUdU$#c^6V52X5A4I1Jyqe ziQ)+)5vKJ|sMT~1cRk7{k2=N!aOHz^_2N;R;QxQc@54u-qYe~=#=0OfEG+!kcAFp} zpLCJuB3Ly-{SF~PnsV%cH3MHNY&Z<^KE_JH0nOu~h0! z0#GPYujPtNYBPgmh67V4e@!4#`ojs-xZmLCWyc?~Ew zOSnK6h#8|vj)cP&U?^K{-$X*8pwA4$kQwBZkbK-=LqnRM5)o9KNfMJTI%6728env^ zD5RRbV*?<3kgzk0#vOMzRhBO6JK*9t{<)w(QL(!<*QId5@nj)Et!Aw_++8#=Hg>qS zYmug_m5@?4P>}vX9Y6_iiVWg{?$^d!zyN2Eg%;AGOz-PDg?z6^Y#`vuM9}%S4Hc>q zPQ=J-kKckx^wW^*N0ekt9wAeocbQ6kyajzqk_UU3gwVc+B08Lt5f`^xCDE;!6fP*( z$szZ#m3GaId@}JzWbc>skU{@ZxN}M;aP6?cXDF^+uEwK5nR+{hE0Aa@lwA?D#UP#E zrX$(IyO!^nI|tMo2i&$uowCrLXPWE{oOBmf4H4Fd zGTT9WGMr^Qb=lM;-NOd;4mKDrPDqUy^F^4T>)e<6tx>nO=q(uq&FJSdxf8{dDR-<( zc^8l0gG9&xgMII4gyGi(ilHo2y~;=b#+$9 z0>Ujp264kNQ&TEr`Vp1JblCd>Zk0tbZb#*sCd|we2CiJ!kJLx(mN}i!uG`w)W^!-= zqd<;l%&eQbcI}&w()RO3GlF&R{fv06steZ9YWtKHsy!(uv4p;n8Wo0#{b32m;AYu514%lQH5 z!RUTL{puYEt(MGM)AST9F-F9o7s!eX@a^}hHy0YV1Z7~zJb^bts8CylcnxH~P)_2u zF0@?1N~iEeqYV-iktdY5ZC>6EfMc@-8$pbgT|>{=*E2(YcKB$SJeTusnf<`ChZrsh z9KHuvi|zK3#Y>n($qce)vLY)96WX31e>KS+XASu>ZSn3^7lWpw!X69S zo}G~e07xw49wL6}ZQtphe%D0p8i)%gGtMmD3IRM#RtvAZ3waCpE{<}n*%YFGEbUO3 zufZNe$+npuC>pU~@xe1DPKH}hsJx#`KT*!#OyuO(NI-GI2SD#~hCII=8|4S)h*cyS zw-tm}0pDpEa}GaeEYvQ3-3I=4t|sCraJ;W|>}~F5Lb*mvlydFdbV;k#H}2JHOG>m{80PW-;gr*uGe_R;u$B1FS9fwh}Z&BYmeWQvZa5r*krJf)&`8 zGx-Z4$edEQgo#irD%AMoMmJL$&?0VGJ3KyuN@GP=a{_OA^rP%E_t~7rxpI=7O6*eg zr3UlpYyR=bz<8w0oa4RhlB{$^v`(2(j4=YcM;OkhhQ7W5S#R1q1XBkuUR)E~gWJPB z9TO5jnkTsX>kJSKXeWbs280V?pd?Iy;-vUeR!6e^Ms+mUn~Ce*b<)CmFgHV_N7Pk#`yobeT@W{(Lbip?*|f{nX(*vuo3{7hB9iB0 z=zDF)f#ohOQ-?o+D=x~`CVH?%0qo2oohp0k(g;xO0>k~aeZi6$MVdugnRVi9&aggl zCdpQ1;_+1IZ?rj#oXy1Eu_+y|;_0Fid&({ex8t%Z>~Lbx2BuTDz=hu7x;lB>m0+}j z@SEM%?l5BW#qpi+a-f34k8Y(k&B%T7_-INEs!0=0GB-QviRbB?zVdX!3EX1|4-6ilsVAtOwH z+F`-BH~QC`URsb5#1edc%!IL)P16w$4df^-B9;%sA)oAY>~ehRGSX6^Q;Pi^Skt>d zOkzamkWY~<%vP>U?KBDW+}I<@9@ZsPn(+4+i~eSQ-EX_-csX zP$ci3XRTn$C-h>9pKh*~CaI^M0CxAz4o6m-I#^pf1?CyS`KAtFK)SGM>J%P(mb!!~ z^)pinyVM>Ym*ltwf95E?+P$=nebG>;7*Lz#JGz##uT=s;fhLOf!M4^k|<(rT3;&;3#+6d7DH!Z6<`2z9BLxz5Y_?I-x*BbSM#!Qf9IR zu!-q?WZ@x!T*pN7TAb-++hj5AzH-AB0!P-I%glx%^HJQO1 zIHDKJQHj}{u48>6bW{A3O+i>Dfv z=R^LbI7i$IBwI~|QlT!h(^9EJi(;xSfF|7wcZm22;#Z|0!FgYFp_K|B|A@XbeLi)y zY1h`e=4K|^Fw>d+qv$q?G<&KY4hGFwM?0^;dyTvuQk0W*WU3X8|5&$K3+GCY-cjNB zzbCV<>WId>*Vt6Fu;O=;$g{^KS=fd1DLY70xv4ktoP&F?@6s+NgK0s+(aVb^Q1m(` z5i3k8PC4#PJEBvf8LnIHKqcHl9K2Ia(Y!u1!AM%U(dgby%${OPObrLaWGUk`%|_bT znF@i1C8qXPO)2aq`KWH#@lXPOisv!TVAA49y;9Gaf86K!w1r!^M$`f37>qc^FDtsq z=P&T?a^q{8gZ}PrrP(%w)8NcnWJad)aCp<68DRsZ@Ohj_MEhFHEN^@-zLgGCau(ML9ioATZKl48DZ;q*v`_UsOkdStP_SOAvse})f+Jz- z?8cSir7N==+;X@YR_b3?Un;K6-druN&QJc|%PXA?h?%ql!#RYjP#tg)bL6^Y^aWFq z$1{{;GV&M9(BxynH`|@hR z{MMG|a)qhof_wV7RKi6PgS>POy-Ag2agTUQ90d?$YbRS>vJ*6{xM@oT!y&XA3=4dc z-ho3X(-5NjJvRJcSwu-Jf_CJDI$uAXG>}Ab?U2E3cRrq%DzYuzJ>;B~Okvv+`2dZK zqaw&Xk57WfHbTFb3peV|7JI{cl&YN!`=3V_W>t-&r5DFllgYunZT<16&m-gV=t9cf z(D-SE+T3ee&`4avsxd=>l1U$msA#lZ+Rl*;CYobPNPxD-NpMS*4q@m3k>vw^fzXr3 z60CKFJsNip6eTHrLAaC=sjHEydl?+-*A-KHePOA&4|lj9ShGWo%jKg;eL z6|cut>BnQ58-kc#mT@a5w``TJQ)+UQq*WYHlUM^3i6o)ZLW2phfaJ7{0y0xu+Ni@} zyL{Es?Cm0Q7O<$(OJGT;CeF4K+rXaf%K_|FgZ}z>^ZQE|&}n)0T>k=k?q`YcdPe(j zknZW<)#yc-YX{L8Dcaix(uF75q&Pg|lf>5+$kGBhqF2bu)p4I|SYaM4fm?CDi0B&( z=-d~|4Pdo}%6;p!2{5gZ_Ry~{H^GtgPIPvNniv@-kj~=X&~xBBXn7axzN@P?>iLec zA*cRH!w~!qJ=^SfFx3!tRQ)F{qp+7j1)4T@1o-PX!(5GYK2Uamtw#6M)Gn6!MvFY)KJpqt~=} zjz9wKmr244iJ7%mh7XIay=JrllslsA;!p~yLqhCKC>mK9!-UFkTsW&*g(lTwimEcX z9)hfX#<$-9MVJQywKSA(?4VrpE+&;Tv>}3aiCm*O(292gZ1)UfZZqQ33T^1Z7jLB-UzJIgCYYN$D+boT=TmCR5}6&dl%5!YCP zB_A852wNt5@;mC3{{9HiDKeU({p^-JUt=q0DbZ8hl&y_(cgQwPYM8#UC{ZPesTbzQ zzk9t{xiUZbZ?8kg(T(u4OS2oVpso7=(+?|GdF`SHKL3hlN3ayk5Y@?IwQK)3ns z68<>+qCX5`G44ILw7h(-KdiPkch5cj^wU51>*c@O+1y$xs=?&BrRsY>T$1naES;k( zc2n6Z30$(yNnpuoOLdcw0%f64VxB>N)oz?hw0zQbEp^*U8wM7)fze5CF2*9@$(yrC}n|!21IZ!>I5O-6?z{S2ev@Zgy zi)510nm&l7Z2)4z_D}#s`QueXAI8fh*;tgfJHSqvSVM z1>+zA)WeiWH@j3ZS_r$9@AGM=bj{tSU0d{c=AY|ThO)(#j;YoGWD-Z1BZoU zWSDq;_E}aiyBEBPEVO>0Nb)wz#j9sL31-Iq79b3IrnHEOtlV)(@P_2*E2x7Dh)1ry ziaJWx#-I#=Lww3GaK4|8G$m$A?~M5(r-8Hh=3oMfB)fxm_(*F~xFgt#f>|WCJf3NRD+;7o31q^)cI?JS}+_@ph!%^wc{pf09WTFh9&?4Chs8(y7MjfgB545-4`h zBSGAUeXY6l2!H^a@QI8rN*QgC-^XTLxLN#m9~qxasw|BtqYv&Imt)LUMrTWyihK)< zyl9VMxhHoEGejnKYxKwkkkbOxa7qg)7EQsGsSV|7?S03-gkpr;GoC7(uz*+-Tc0zn zwt-i5F`^=cY;7R*o`--d&(D#zl3rE#hAGWXKXd3x$mI zD7=NXXiBF!vK#OqEeo;v5Tgk(l98q~)P)9_QFve4s%zlZ; zoOMuc%uMIrPo_gXG_%TV>w4)Jqa3JMau`GCaIq@rs>>2On_e?<70*^PZdMruOU(-9 zE~&ASl#;eZ3abw9b-PWPI@SaTo%kNRa~f7k2-R5PKAj>?-T2;!FutEOk<7#(#`E1t zX$mEg-#tf5h-OM<7AJynDQs?7Ti3m-mFs@RLo2^;svD$KyMSie`=o zd?_EItME7#O{d@>VJzcOzv$O-xENgeEgfXnW*N690Y7_MnLBZ~{Zg1HjJ6}ADiRE6 zyNWXgOShGx+0vj*aNQ{#E^+_>oV?u{y#d*b4U^b9)!AOFh2RznP(;yb@J057n{LQ` zP}LjU8y`pEWsYzQM*^Glp$Ixt4%5R6VEos86$tlxnFs*#mKapdy$%>UFglfo0I8#dOoc~1$;z=iV6?Vjr7{muO5ga$ z7Sty+wA6-c_9WHv6qv|_a7Es>3+?fKtZHaX>zHzxo|cFziQK!YQ#v0tTdkK~h=Y4& zHCXs3pUzKyv-%QLT0VLec@%$^z?s%wo1gqsf@ZolKlz|*R-%)&EZ`sB;t=HfOJ1XO zGH~eH3kDfzw`O0Tm%Le@e%o47JE9A}R3p0EjirdqtTG)%DxoDMrF!s(Glt5WNN}u( zpl%Vz2A6_}F_?hfkyc19S|di&f9Tne{Tz+9jK{F2WDE-a=j&MV#f(ta69~g3ga))jhdX|hF(IanF>&`WzdsO#WWIWV#i`)WUpPd5Lc^% zFn`Ig=i3BrV7U-Dyaqo$MF;38BmA3)Vm_nBPwt<;PB-; zYEMiQj!$bMPFHV_BkO#S6|v*d8Aev<;E=rCL9Rkf*o5(*X=IKf4CmU|w;mE^MNo%r z&blOtGSOCY9oXjyA>h2|hg(zHB~W$n9%6CPR=Kp)@%Uz63}ikZE1x%b09(rnJ~lB6 zAd6LWJdKbh6AUu(_j*`&Jb4;=retD^xe`sow>AqQ!hn&gVfig9cf_8gEP=7VsI^^= zjm&gB+Tm(W;)TxtOa%Tm$w6K(DX3wRyK6gn9sF%hCi7i>cJhl(-OeMQ9z{nvR!1;| zCsR>RCFZgX4Az}WI*Z}4bVdU)aJp(JP^|~O&>mS7dto?p;rnz=9*#N{z%}qXkzkV2 z+=AC{sUz;lS?`;`v9%#m&_a{FTaD61Y?1QIRng>bKrV*$2X;cyWP5BS>vNd#5kWx@ zne3N)%x@)lp-P-A*ifU62HbS}h~Lt7xJ%_QCiSt!+m9!mn7&FmwaFu$HcuesAXHpL z;)6wmff5FKPzLgjn2j)Q&Nc%TYO2XGJCb-b*6ie|XgSyfm;{x_!)<;ZZdT#*W-=;G zttbu3NI2VCM?AB&WFT-~!S!x8R3nB750LNzN{pBWs}V7`PETf(sL8El-`8_gn{%Yv z$yDb`OZkr59f3M-2zUSc*aq(S2LE&6d!Fh%G&k~Ec(&erY=8&IBN4$a4b-7Np|W6d0wxGGR0b4NILvJrcs}nq(dLIyrhx&E4G|u?}ElS91R$;OrU_N}Qm1AjbeELn+=2#LL^qHiNX^CP z(aS9M-p#IJ&&2@6vM-%6?&%u3?-6tF7Byc`%O{4Z`xSQ8-x#77T>8T_(JpyRv{~Mv z_&KZl_=#%K8H3R0N&$Sq3o7-w?(3_y`M4JJ0xoo(Jm-8-(%+UV>&8$~!;5{IN4TS*En z_SV7vqb3rxW15xX1d|PduZm&!TwS$9bm*A;e#rG4)-}O3=kmd&xtU$va(2p?VPN_< z%lvhx7b`kqsVm(lw0BlWT0LQ&?Y^O5PDEy$CNwf`gs@`Jk+TdDzE5*FyKRjrDPC$Z z=xI@uNaD5`vEO!$&gAMik?=%`uEr!NC7eFxu^B{PLp@d6iO$jyu4f-Gqj9i!;6rjj z3PUhPtu&F&&Xy4)o&yshSkiHEahi@0UnFKGfRoE-5>dO^(mjsP07?q0{w#}@HRb+d zt^*DO1k2YT-h*k-(-Ltc!zN)S4>l4YImYP;L+Gh?#gj5EB87XG=^~uuFy0ocn{nkC zY=d@NR0>Qy=Dt^wy!6DDn{pfrn}p!4)t@lf2JX=#-U=iUCT_0`$!?~dCNjt*s@oK) z&Aisq#Tnaup&j^zHux|QYHRjrC&`}*OB!C&jsmSmsejv|U~VxFb`YTQ^v&AWp5)0i z1rggJw8c_NE*Q5$fcF*G5ZVZBUp%qZ|Af_BJ=hLgjik{beJg%%oO2 z6-o*h+&~Hu=@$HCz#+&prfqm6awOUu)S7} zZ&_}KidE9tesX`EwP)#t((H=nCjFv1?ULl${Q0wOT~6zGZwFOK@F35t?sn$QvR3&d zBD*rUc6;)wXFw7nK&py74@tg@BaF^eve})?>zHCrpK$|1))kW=21I4ib5JO0r&YT6 zwG0*~w>rwQiTJ8UV4N8mOj?;_XQ@z3I~(h}9Btt{a%jn$mYGw-Q)ccHho5pQ80uOR z@~3`NS^$>C$N&uS*n%w)!68iS_4X6lb4Mgkc1)Ah!a0L$`_}BlcurOeDPdR)&@_;Z zGektWi9KG4mPt=&iwQf$Y{&L^i&kj&KPDTwZ48>D*uw&(q*#cqIpJ&1PKM<=J@dj< z2W_>4Qpbu_Ln3KuY!x2R(Py%p?v`8=MreV_2HG)E!;|fdlb+^MS`AlHiZV!SLVg&R zHX`F{Ki-&asC4x7p15(?mVjLv{okVzx>}l-mO1D6o=rb70Z$`33ixEP^4H;Z& z0m-F!uHpJr(&Xo&z7!jGN-LnCN ztpa{@Ku5&Rv^IRBI5ii(be_>SLe33XsUSC{g1(5IS?c00|K@uGq;;sD6vxwceXG^V z)_f-q;C9;4JJ=Ej)k3#-gB7w*Zj05hfr~3%Z!oq%cY*nLHTtb_ia80xf~arB7!+c( z;}_ka|FFI{wGun^*}CsYOa-D=6UJ#{q}^Sy3sUk(!G(-;C7JXY;aXzzg;5@q9$_a@ zxHm1z6@6XgEF2@^15VF|$Zl%0>$%VpnwB$;p$NUnU1d1D0Rr-v^NBLLm=DE1oWW!M zveoEqY%+;u*F0SVWCw30C+5NOnU^awFO5pmdlJ`ji7^$aMlE`aGl-C za*zGU3YR4R!0;uR!Z+Z?DFa0Na@^9Fn1f4ZS}uJq{eAj%$)^M`!Laq0|6 zswFN@cb1DO6+}4&+koIYAsdQM2>s$#eW#}|IU8fZGpo65j>EB|$iODeGTi^TR5vu3A z64c6Ku_y0aWet!wx-~l%;c1Zv^gM7nd-88S+`qsA6TxxG5n{qYVu6Zsw4EeD2m?*M zg(beD=0E%KXl5rzxRdF*qvNa-d=pXBlt18#)e~a+6O-q=;CYe)fq~3?ilmxoWI1-1 zATp7w7X+F1z?~$y&y?`9!y*}8?Pb=UBp;0g@m`S)tgs7-24U(N3sLn0uI;!5<0hJ;A>qE?E})kl1t#gtF+N7}NnwS8ObbRmm`a4Y zE~DptDOlUbHFRyM8`u1KNiCuld2>^KHGz>S@kXA@#fwOT(W(*hi1b9qwHl2&&_)_# zuzPIkb!neF=@j>*6k$%-J;Sj>nmv|GlY0Zz0Ip9+@OTV%)Rah;@!Qs@1QHm@feud`64~`{|3vqZ_r$4Z$>}Su+E6TrN75JCr7Z zyoaxDnxV~mP|^Xh{Ze`0-Q%|E^^OK7L1FNzPC>mcDZoi6%a;-J1c)MgWIU_X-SG13 z`p`AJ5x&b^s_{t63geAzhl8~a+>1@V1Umnq`(z0p^jHzfh~)4>?zmoO?#xp2ARHkNG7!H~S2vJK?}fjB(SjE>EI>c|8sc}Lxw>XF!H7BjSHMX#ASBrdml9}(&S&xbJz z4_dL{Co0r{6xtTM^-6#&r4ua5wB6)V-7V+Lh`6Mq+Pf!|!}N+F36>6Q!(PDBq24ji zsrW=*udXzu)na_|f}m{@NLmT=?WZhwJk7(gQ`kL5LHpva&rd$Xrni5%0@Pdg{}c1X zUqTY_%PaHa-<_%TZ6a-)z==d1nOsS;iL+j`i`qQZomsH#9a%o1ZD}geu0nPI$lPmK za#O;WGQsB9+!ty8mJLw&kxZSp0Y+?1UZ=&VE!Nr@m&I=;7pD^Ju3*?a)MQTa(1nMk$0d@kJ{Q?ke*S9b()8(36gWUxSF^)d_tAsBk8(Cdl9Q|JhdsQ*7!cS zBne}hNIA?f#Hv}uRSS#E*oWxM7<5zmVST#gLgvETI@uGQFxKj~b}$i#a?kKf5yN5pjG4eh zxJc0+iN3`VA^G>@$+vN3Ou8&?2^Go81vFu~$2E3`P2FOGtQJ|9&teZTD&F>wn@#*V zj1=ecGArd``O-NW$6veXZDC_M6>EB~icTfoEbuo{_^}V1Bptl{w|Nnl+YAo}DHrM< zpF8|tA`E^D^2NrkaotzbdNKFyhUGX#ZJ03H20pHx(r9|?x}>?Fq?Xt!N(d6b&OEVC zmsF*gkDLp?AVFEqi-#~6>x)KgTk?$D7NdogY)v_{_>_eBeV^4+jXEo6jo_ewV!oXr z2>TFYk3?zWDsBZ6!l8j^T)p?tImEVmzu=Kp|y$z;SAkr|OY zcY*Sp@mdy1pla{jxicdpzWCyc$Dg`78diH-)7`;j{KVfry7I{1R$Jr#WOFdye&TQE zv!DLm-~a7XPyVOJn_2i+_~>}|i8IY?wsY?6*`NLFXDdJZ?#g7kefH5G{pd$$uhM7E z;6vxOcIF%IlY`BjpYmtF^T;DVJUiLhJyQ+qaE~)vWB$&$_^&7bQ&m0QY}K3em+;rw zU^d)(a=n?K9NnH(_pY5BzuT{7iyNcI&*E43*l;kuQcbspPn_AE?GLwho2{+cnQFGb zv-QN8+1AzB+5T?0XEWXU=@VyGR?emmt^*U2buyl9jc0$i9f>K>Nt(CEs(w>XceiFw@SNj9kDt|Pczk2BxnK2%^=_E| zemxv)Ot->B@k~7$e}1MKY|^iHcIN&5U_6;^)uS^{t~U3-xPLI-t{#0fT<}qRYe&Dd zF`V?T{Ffh`dGgZW)3{Uy?sM_OoI9&XZ z$GLlQ{ACzB&F}2w=wK558-B1k3D19gs}A$FxLwWW;fvL9vbY{DA~V~o_QJQrg})Bp z#4Po~a~yrsuQnHVt8tj6@ZGQZ$?woTkHb{l|AOw>OH)8o`p&ose@?>9XVvC>pJwdn z<5{(Fa{Lj`$iw^yO!sduhFT?&8|Z>)}7kUO&B8nv9Jw zHGRJ4t^F|kNf`YG52jCVX1u+)9>#iQ5Qa3y+v>4lsdd@3_ zRsjttK22N$Y23Z=@U-*d<>dPA`RTVan%6hJMyUqS6z7J*_U4^EY0-IlcO7J=c^YlEZ$tJF28Vcbp2wreqr&( z#fnz#Z>#miyK5J!)x{gD7dqb9g~iRVmKV2qmywMe#U(go6M3b9rP95)N$=$YGM$SX z`_*PJ2W$qyi`gRs(%1JBeouewVQcbwoblgBabw8$W=+kX$K7}9`MHjUGV zn7clQ*ZTc4PhMsljOpqJ>w1kgksNc_^H;a%z*!vZRKYfP-0|<^e~+$&b?`OqgvISX zy=IzvK9B6dLc4Ih-N@l~d^k_02uJ4(+pOPA)E3dK&gjYwKB2oVnjwD4Y^h{(E)K!~ zX2C*_t4&%hV>Rb-|F4|#FyE1fq4~x|^~j-7f7!3DoE+b&u7m~6^An6Ok5DWUChxWR z;vn1@r+WPQ1~2SBO~k|>EOOR`>zp>a@5<=pc4W0ie65f7aaT6wvuT)jTEjK{bUzGZ zOq(qXo;E#?m*)PL;Y7oG*;{;F(OPTd^2u7V=Ye_H9+1Pp+vx2b9{Mi_e{;%szqgWn zA@TzH2eT0wRCF>pLXihuv-FV3G*!kPr;T*sjNoM*M zKj8;B7sJiA2le>0$^8CGwHiMC3tne(qFL`sS1(WXY``Z2*|DqPIrPjO;RVL|>c_Q6 z6OV%ic8xq9c4z1vkS`*K@Rxi9{fQS`!wz7h$IZLR-{H%I)g&)ozR2E_Uih@f{lQ9g zeo)h@4KLcxB(@mYCSKdLjt0CehT)y;kO_W=2hA^H*6@Jn?JVvL#QgFV?CW%{NO-B$ zv=+}P?u&54Q{T`JTkDZ;3a2Q{+HGSaMr6mvJ)K%Rm0b%&_HKC0gJ`|R+w3^OsV?|U z>e2g^dNq7xpC0lm*=pK^%>(V{zh9{?rNzgi3>%9kO_vWAQ#dd_9%Bvk!cGnMf~CRU zp;a*Ax0)H)#U1#`{4w5nv&Cm48fTx(bFdTP$@myPZJ<92Zvty>TIQzjkqh1B{RfycJ>JBgPWj?GVSK*Y**g@YO>VTTB(}J+C}}$n?;X4+Q&M zmOyk5LQuFzmV@V%%-j{WDp!O`t~bIe%t?F zc;-nHk09WArCPi9=JV&Owe$BsKRNy##Vz5-ufIZZ(2}@E&>X}q@G3`(n{$R zDuWjx7uD-oXV@Dwd>tPE))8*-sqQ#lR(pRwdVr>8j$Z(oZ%g9p)gq#JK@@xjn`)W=N1tb3Vz61e(jX zsu2{K&|d*`!uFlD4k6hEWGrO%Xjk6^6do>wMVm$V96bjcKI6UNQN{uwFl*`&doaQ9 zA}WtiMcQy~+2X~AQC*wKya3bEU%L+zu(49TiciRXpVox{tN3ksKn@G~>dT1%2{Esa z6yW)VX--cGzdTI)XAIpjCLOMDC;TV)7G=Pbk1_I0C=lGO=U9(?4BWdGM)#XAXVZaV z*D{{q03ClC2b`a6>ImQnt6idlM@{(QP4RbT7&MF=jCHp1FWK#H*VyBOEI$;yiN=~; ze)4oH1xDT-=sPrTRR=wG*hjEegD0ys4gJH>!@kfIwp5J@mJ|*FwxijBn9@LkID~1# z>|K-T=Kl=F{xA;)ak#iUke4f1RCtL3N0G_lbImN95K9v%z_ZZWj~XV}IpL5VhZTQ> zJ~3kBDA)jxuU4l|VK2S4jTAUo-5xBCc5r`eXPfxyH})OC=Fs82XZ9(Xm4p#CIxvY? z-BfpGdb%pb@UTPq z1$;da>`lX!Ihz}rw~zZ8{bAK3st<9Whjcij=npUM6s2(}+LxNbE* zQ%r)3?-SE^0ELrAL=tsh%q5+I@Z~? zsTyo$nsRzm<{fct3gh#znLYL@M+5QF%sO!9NCupaLT_K&XD>grrj4R|-m|-=aO}kI zUj_ETcM}gCkUrTJWJkg~3s<_-)QF&FVXGd<)7yC9pm`Rt5I&Q8F!JardV0C|xb zJ7H4gyQPc^Zv@PW8X84^qo>EF!afdf0yiFt2e(l7SK zrQ^e#()`xp31Bv}_(h`!lLU?nfzo4cyJHRV$N(3_yqRLHvQzr-yvens!zTELjMNeU z(bEY}*n5uET6EFuZg#wBrpR|HI^fBby*lS>NLWYjFI$2fF|ZN6<0sua?lXe&5G?fA zcDdh*qcWZJuT=kAJ=%FJ{B=0&sgV^tsyb0<3+)nP;mfz$D1!I{{- zcc=@EaHhNa_Pm?OXmCGv+4jU*4vW{AB_A~TVBW$AN}upNC)MqUzLOxOR- z0D)tqWq_`c;CQpp%+vSdxk%>$TxLQi^H3LeQ`^qNGfW8usdGOiIi?)QktHM)Tbvl! zjkaq}n9U4mDvbp1Thpu@EMaNHy(Q=&rwvM@(li zR#uQVcN>OQ*#?+KaX%W8+_ix$;=Rtd2l#s(IO%m=%2+CNcLgD`AR$@Hw_-{`PayAB zSiCX!ApvEk049u*Ls=Z0L^0>sj4J$0z z<6lO@AZOpn@xKjlDv1#dyN+MhFhy5-8u4>dT)&-YZ8q!SIH8SFUdc6&S7oO>CX?Me zh%N=jl=jyQu=dH(;n?1;%LuPKe7~^vd26=JmfeNsUCB`=mX{|=E{Tho_q0-79!~Z* zPkqseS&=dsM-k);EBq^gM`Cnb?aNo0QFlrj_7c1LNZLy%ltx5jKdd?WKJFRj18q1W z9ZcD!5pvCgJy_)TU# zy?acanmSyO7bmF2G80P@jnBF>0l9@Ps%I&hRt{w&>^xv4Lj*6NRV0V_&u~cYf05bz z=oXzE-_PoW%^~qyj;`3OyD@-~@oY>K`xo=vQHxyDX_LUXK?S@7I}B? z){->nH$-tcx@%W5AH@ld^I1vS7&znFG=tJu9k{HV)EPo*@zj}gh4p5hNlf1Wd&tuH zQUu<1XSsaE*e->YBD7{NgcT()pgU{uELZ8+(oF+;`(gO-KoL*QkPr%}0i6bgMDwrn z$j)#7=zt_FlW(_6mbi#%1yAV;OaSebaOiazidaieo^27KA{zYFl zINf$}M?hghRo(1T{Z-kTbiN9Qlv}cbg)0;1<)J+Z_~23qQnANQ5^szIm_Mwc7>t(J-}Y8^IsU;x;+|l)o8D9ute&zsl2mY7>>mX$qmHT$7=x zG$IQDY4$idvDdhCi}2TB9I{9Cx~$3bv1DFyR|(heWd~UG{2-hsTf>g<4JVKRD&34C zr9DMVM2~ThC$^D10JxN@{@vM^Dl_zW1Cpqx96nqxaRwwL%?{=i4~=+R#SA4`js{pH zL$UZPXcgp*j?`MfPhs9El~NLx*ORJ`G1&WG5A?FU5*wZ!p#T!|TTs>%GwBc51agQq zBj6QAex-`RPs~Gl#NAqZibdZWScBiw*lib71;(`Ku*m&fZ*~3t0_TQ-vP%XUv<#v? ze7i`@^0l%t+r>VgiVom`EJmg!2)d<8yJ^&AFqJGpW{gjHskKDu9NPt*M zM{$}khkrg~ZuD1#D=&#n*Ha9&%xNyeYL*Ez=XwePFk4a?h*l%I-Eant{CMLs_0(Bj z>cR88Z}Xvm$kQYx+ZZaPm2$k* z_f{bQrNm>}cITYva|{>t_ISM+#$jYc%fyukvh0t_i!v~5F>OM@4=~FxuYynTJ$9+I zE?G9@B8Pkl&PI0HvhSXG^2dWPgA}!rSBjuRjxGg!WG@Fpd_aijT*xoB(1=}9ExeFi z{f$_#fTf1I&Q?)W8=fCade$ZxYu!6Y|!i}=oYko8r4&( z)=QzM7}055{XC4$gR$P7So9mlnSFSo?enr_ot=GHBIL4^p#2`XC-k@#RG2~}wYz~t|ylnr13IYo^#=ApX6J75dY zW*PEk%&egIsj>ZllrYCh|7EM6>VZj|E{ntr#38uU(an({v0A1{NqH=9vpF(GoebX$ zj%H9DSF-mgJFq1Pr+iyXOb8X8>zeta9#TIQw-2ux)J{4P!-Zp* z8{SPMn2P2Q$4=={K^NO)3)7};X2nz{m7UEP5+C{!81NuXqH(no9%CZJvVC4$6n*ix z#s2cBQ;t>Y73h>mIh?qK{p83i&XBdo3~z-hFW3$o9qym%xSPa{*ji^eEMGVQ^a)W} zsTOaJ6#X)?3*_1LwE~6G*hwfL=lf*FO!M^daqLyodY6NVsix;rh|AUhkm}pxEgrQZ?@0O~8}W+82%ST{kQ|_`rdLTN&;`=5>fGGZmGy zNcJ%KM2?4y{^(~!9%W(D!H6ApII)184tVzrQFz$8>a-T$^&Ee3$V1Cqc~}nN-wONC zmuV1Gq3W)#sEcnyog5gu8pfacnLNBu(Z8Vb#RBj-ef}6dG-TClODeQ(XTG#yZRzcD*FuC)j(k zTV%!wKL=I9OoJbynBsO=@b{@OfXd5M z#rLL?*XUQgYi#+(TItY1;69SF9ZC{72Cm`e%m%nKHF<>KD`AEzUmPPa-mOE`tX1ZzeJN z01vXT)vt2I5`ja;i$kRzc5d}N#hiyw=M35AawN+yJ>rc&}x z;6DStFkHh78sO;lqZqv`+N#>i$T1|ArCM3x?`s7i-}qS#xw-(8dT+2vt=7}Y zuzI1MZS8gqYB1iaH~Dg_lks>m?Sh22rv0vatT=r#!~JS~G8zuLjLBxv;g5jzmiB#%lHK;$POzciiXkjZ993RvPduNG-iQX9N-B?q@RwCl_43@`4P%4j9c36?`a)m-*`}9!GW1KGB=+ipc$9VLA z%A71oN&%6iX=R3(=IjBuXH$DlqBnYZwD5d=h4GRafojR~bRqz!)Jyf@J}F+$cjl^5 z_M!TeLUSYu8%YS73$?TvT6oCRaiJZwWxBGuR%zEwumtU_j^LKJ+{dDed~M3aG)syo zPuuOL90;2|(M~KHCsmT0WEFJxwzwcJx!u}o8AsEY1S1&1Ow(bBRhHZ@EB9z#v4+;B z8cuU~E`{Yuu!h%@L{x3DtNgv}9bZ5wX7CoLtLq*$5v((QklevMDPdQf&`fMGUVzMN z;(hB}(>xzxEBBJ>nr?Mplm`>S6?9FU1uJ&jTB7&{OU_|s67y@p=^k1g=W?(x6}+;e zj8Z($`n&Cj1wCZV4oi=E88!w9YQ&xzwMtg!*C{ z$hvkdg-I*=Q#Ktj?xkG@mN&Bsg0<`kV=MfVFfkATjogQ52)F`wYrn#if7C6;y2P1y zdGW?8Mv?XW#gn5O7ps4K-su?Im9SU*}si1V6LYPW%E6s20E1V-)L* zVr?z%l&J0(wDf=B@Xb!MvjdsqqQ>fetB7(+@-Ehxuzv%)T!~hW=u>iju@UAC6Q5F^ z@aWJ9QGz=n=1l~4YI~baB*^%MTag~4|0H8T3FZSh6JM^Z!{2`CHP>2eBZ;GH!E^Q)vGQLZQzSd=9K59f zzPtb}>Ck6yGhAHPuB3VvD}RuCg`l`U<-~p(F*~Cz;EU9grwCsrYZ0M~$eSo*lx$UK zI_#MpX>o)H$?u;I=L=Zhl_ITwcBLD|e`YWoR_B+1?$1u9gWc-#*6!|-i%d2)_N)Iq zAibt8Q2uf~pANP{bg{WL-R*?VpP3R#>$&lyD^*aBx2p4#$!0wqc6{XGZe91QdUr6I z>~(zP>Cx6OyrAdmX;V*Uon1ca>2Pbef;QE+DDrG=lonNLqR<&O2H9W za%ya;x^TN^6u7l8zDTx=VihR>gyH}*86@FV;9M*ZTfJmZs#|M1mjVNZgc94{s~d~o zd%fxQCgU)->GYoo9>%EYIw*MUg4Z`>GFiYbi`XnW(Q3f3q*zZ!-UTI=c?B)2ocYde zDXJ^%)AecRiBrb{t;P1qvZ#&G?OKw?GL&3+(<85xq=F=Ik|i814oSQ9j(eq652u-+ zr*2e%Y~#`Tg7oXwrNP&eIO?+UZ?jZQs`CM3q8~5bqM`lv;$IaE711QuxsJf)Rva|5 zaZqW|{5Wdcv=5G~eIVi=G;M6-u1O?^z*eztT2#XJC9DuTgsjs*u3BXDsaLKXBf<4K**MefR?C+ z1JO;I5Dx<&^H_d*D0jJz)>6HW*L^C6?Ms!S;;9F#V*sSv!p@3?c&(zrf|_ja)gH~+ zZR!#ALABOeD53{hnV`U4jncp^bX?Hk^lL2&&!>E1*92kNNpD#L%$W?9gR-oJaxJQ? zB&%r)oAP-hc7z%b1hg%N3i1gyHlrj7GYND`PgS=v8!vJT4MK%}T$#RDk5=0!BA6LB zbx)PDA~wt4Glulrh{V`Q#{ROW8;~>O>{@5l&YDyuo#yb44M=dhEh_A5;{rLZLrQcx z#-g)FJF$?mQDsw6ImbdM)U9x0-+OP%++o%t*pn5Qysl)ATV#LvqN*wyu4dfrtg9Ub zj!lz1lIvxGSf7v<)B2a!f7fcZ89O_5fsKg)#oU2nqmg^_|*^K>Yn}0r+!%H(i{Rt_A zLjK&(GcjFT>;@jmcze#u9M}4-g=TAUolQ%vm3h&n@!p^w&E85sJ`H=oNkIk0kNFcR! zx*umx`m4mAJ`e)0MMPTMYrFHg@f~Z*`UX((I3mWPlW>v)1A3FVVhIrCoAc+%`tS8qZ#odORsGx zT0tLx{u`f|o7tFBRdsR=bhb&||D=a2pYFX37fD6%mYU|EC#kJ(Lx~AZ>$BfKA~TVd zK=z8pdXk9n(^Xoz3eY>kS$W4JHp;jy<4$I8 zn04;kcb2^86tW<_^+wLpjGbKbx0L|!F3-iT&GIg_ESMGpRWeJNctx3gYd7%&mf5{NsXWN?2tYfEJlK|n_kOz!p?L7n$j+%W10B%zR}*xAaolW8rgSjC$~m0 zht1;Vz$7-G;`69$g;<6~#&IipQ|7DQ=wl7p;!FGTEw~4%nFiG7tbi?RGmAW^mg*sp z2p`xUEN*Jc%3^Le>UvvUo3L6L32y;5*zD-aY9AK4TF!kV?1_DQ zeaC)FBn8a69v!f}CUWE3VpzmPJQyMDYf*~ZO<%CQ9azl%@+hV4=@rmwxqtBgEqG$} zz(1kQAtG58m{Bh+?N2FGUdZBflC!A%2Ftg>;OQ!P!NQVt%g27=`FTo6s*JeKDHEE& zTOx-w@a%|ZCrTiZ`X0G9yt)lCbq&5aZk?4FKSEt@i0FYPfvzRG*`Dv~u3}L`@?P9Z zHjXa+Qv&e~u{88HvnEZQ@yid-Jh>L^;s2mWCH(mrHQA+5<=MsS6t-M=!3Hf%XnwPL zk=yyMzeK-S>$>pwss0%1#!Om6>a5h42wjq`G-#`t1Z{o>0#Y%L=?9Rg|HW?EuvJ9X zb(1|}eFc_(CpA@8PY`Lldc1Alyh^K%Q_I!}(eS6#wr_Ex6eVfr?M|E-@vJpz6wMF6 z0}myM$w?`3U)&!f27(++y8*2APwChkX~&<=W$?W-{NwP8!6*!8+JEBA%F5ZnsNUY% zJ^RQbkNo}jR{m*cYx_)94`)xDsekaDGy46VGiPzd?f^NgtADu|*3v87zIm0x~-hfuGoSx$s|Y~OE6ub64^t-f{}bu!u(|l+-*^DROA>n zj&8w6)~om=d1c|g1*TA&D!&KyTRxV70)yC`i>g?t*UwUW*e<1*l*7A@9n!qD@6tv> z9SS6HGHe&f#|Ih45^Ny7?aasbE$#i`pGWt3Idmo(-s(V+H~>74R~LsfKx8y{&`7g8 za1q1fX9rKhdzGlKYdqO8aRrGG{Em@>S^{jB8N0eQDu0DP8eZ#N7gA(xnz?w=`TNmh zhXRM<+wk)dohSJ#)7(czj)a|2mX}SchnnPoin)q2&AIjGaajct*?tb6+u?OG^LC{| zV$@P2WBMs3oQu0OyQva1J{c!~UnE&@Mw*(oI1y2S3L>($iG1Pm8t>=59{WPAY0SCI zAqa!?zi_MAH<}m6WhTdq0=X=Ds$HlsL3`4}SO;u8c#%xJJx-yr2i&VD# zAM4fH$?>l)N+Fg#A-ec|3u^wsiyS7rZ!)JNy#E7zxnWF5RyFi3iMp_Q~SM!z9Cn_SJsf+3U59Hsx*#xG1{K-CEvu!F@(g>K4bT^ zF7H;Rm)r^$hWJvrZD<93U@ASrGYFc|^Unu)7~7{jwwcw4+sX9e?8|4EplkG@!sth_ zjVaY`*5K~Q^k7f)%rDZciiT5>Y!aikEAFaYCxu9JT5rqtIyG2^%x@J(S4DNHV**<`CC%4cQTi{>-Md zOE`%wg=8ansrXeU471i)&$RdbWMrzV?Bt7Co{{Hu)jV*Cx)xrdP-u+L?z}l0quv@T zp`odjZ|WQkLkyzHD-a_Z#^0R#=4aN`cuP+U>3-?Uz*e*~yULbIPrX<+U`aV}tfqD6 zY$?f=)e*YTKAH+aqvu*QA_31Wtomy$EmPN6HEo%e?iqJffJmTEsiDWcas6#W0$u^F zm1~!|E!EDGv7gQjKux4#;o>Hjoqy_iSkWbOflVGdjOk!P#kEOyI=-cC->GaqP)u`5&D*Q2s}@3*NFzB{8CGUj0PJF+>pqhu&mA*gt#SoJL?Myh6yOq~+63axWB<_?WGISZTwqkbO6^+qUx}X=B zKWlMA^<)=Mit>zoa<=xu8$pR2txW5!=i#R7_KuQMY56{&Gm0;Q2%LLw`|_KI+q^QL zP_%?sD}y8@1X^Qeo6L7?8TdZ)eFbr3LfV~zq|$Ti{pN6x)+*@B{s6AGaBucXYaE-$#f;d{JQ%AI%v(7o~i;YsjgD~ zvUdG)lJ5p`jy$tpUv@c{>dtY!Mx+6*ONr{i1T1U=Zi#MFM7OXvC?wFX81}9ai zmhFOUdFrEaDK-{&*`$4r^GnUTh~|re0y};8s3rQ4yaf_7qF!IMb(mc=p_;FJPa|`Z zm2M<*z_L!(Ip61mO`C+h20mLDegD7sK66TiPrDN*5 z7q+^r&0Q&T?UFK5BvxqD?Cbb&$Shc8Jp{8&to|x@K?kDekN?yv;OH)86~9uTo+4rv zea#xvN32dunXMu(r?0Hj>=d;=8niscc-xLv^o||S=61EUX|cSZ4>abd1~lM2QE^-8 z4Ey=GS4bodL~?-Zxr`5wt7BJFm2+4BwWdWuQqiB~-FYvb9KZfbb$;>BoJjp*l`5FN zsMb%8uD?*d^tAqq{&TUAG-ZQFp#URXZ1$mQvgScNiQ{ zsF!@EphOl~Xz!NH21V9oV(JO)hN2sp6WpVf^J)8*&9wH0+j^pwm*jZ1g`L5!l(-h{`rrZ?BFR%UIIVY@r01TF zh8Y4RI_Utr+w^hL?crBBtVjOX_5iKvsOSre?b|IVv2bw3OQlur7>mhLcV@8Ju$rdz zoQ{t729^VEG2afu8t#eWDdq!UFLm-J^pK3@`ZlL%ee!l~yEkMlh(}~&oJyz8d(T(C zNsF#r1{j=$_E7dTwcI8|WPoJWlU|Vq=$RRW0u!Fv)tOl_n_3uk5Q6b}E1#NcGsc^Y z_Q!iUTT;l29p&`Iq6bC zwy-VJEl%kX^!$ly+p;?lg$?wB(aA$w)7mr*X*csxhlM^Xon`pJ?TC2#H*0wVdsbzH zSqiD*g!P8meDadmMjRg-M46*g2)JX)39oQc9a)J6aU6ywPbe6NSweVWv1O?Z1bJUE z$rY`qQ>FVTvOLH~vVE}|6bRobD1?LvTU&0T-zXo*@hpT4EVoQrmHz) zbF!;bdSY{;yv`&BA{(CZs2yEJuE;jSoKk+#lmbTG!`im3+DQ9y;@*kyk@P`i$!IG@ zHaa#Nq)j$Cf{Ph`r9a}~r4^f7kTMxAo9wGtd2Y-Epy$|ln+sCA3X!#Vr`Hl8vx+hR z{)-lGHJvfxp~AiEeHkk33=ZyCtP?AROygK5wA)c-h_j&Bswu`~h0=6xws?+_7eF)% z2ql~x9kSNKJ6-Zzx$>sPp)*o?yKkVso$qWN^Y+EaZP`EvPsY0DY zMMNDhMhQCGT$i;4~;n3rIqkuP#W?igxml7($?T-Uz&Q$wpeDt8;o( z;4nh~jFPR1^&LBA1E@GlEdbSpJeV(;?|4?*d9?6MPBnnWS#w#w?FGHZ@>SDX(1>89 zHcd-e&GRI2altfXzl%#hT-+S>OhSOqz`a3BHxeGY?rbh4Q38(uROuJWUa%=#&Gd2g zm7tQHxdiL^8H(4(dT!3T(f}FUBb8*lglu{<>3|WJRMP>J{Dzhtr#eaj46Zo1 z9hWU{zA7jpsl&GYScURo`Vz)2P!KP^%@b{Qm}rPCLuNLmHnI`FAa%WI!=NVBs`Fx> zJMVkCye%{Pc$&;Fw4|L;bDMz(-b#Tmd#aL?c3-fW4R>(IymGr*&MyX}&&v7`m zIhQ`%&m?LcXE7`{5B)c7PA7S@gV?l*JHDwz|Y~6gw)4d zh3&$qYNP4jvhS)kAqCqE0aU&z6gm@1Vq^1w4P)-KM6S+((B06U&^^^okwcW1i@0yC zo#XSlrV5`4X34(bL3Pwz){^MqmY~IsUUQ^F|VY{ z*y0X8=tNhnoPCaTtTXC3qi7PvuZaI7sIaMO8EIST6U$qQ2-1sSX9S68hRwDU(f2Q} z|CY{vQTIHY|K;`fdl+~2GA$J%wNRUiXbw(?#`oEB79hNNG`c;ysZs^f2E)Fr_HvD# z$6LZ9$#9$2OpN3raD+Wbgw;c{^zA}$0gEj2ZTJZ2a0)6ssIhmFrJ`AiKK4Fp34!9m zjFB-%o|V2QtJb$sX5WhsNl$qvC-& zi+jvkUM5j6i6*w~WdjB6i{R1U_J)Z)R+ZT5>b9Gj1zos!a`Yc-T-CVvuv(|)K>v+v z9*_U~)085-PI~qfBd=fJ0$cs#S=>>@;LKGVvzEFLP=H^gPzL&=P5{}~s$DUnIlTT!#8%{~|7_Pm<^JGP}LnhU76 zk7#V)5zO#dvENCr-MXY86qb(<+Ymp6H%{L@+%J7s3BN!pD7Te#ZCtg0kfW2~NSJ11 z)ZQ_Jn5uHb=ONzYYD&x36up9&td^VX)`GiA$VtGQ2o4!XZyA;0$59Z4XHs#o2MDZ+ z`qVAW;0>+Lf9HXcc16=^CQ`0pctJA;jv_!GHN}BAiv|g6V29n_QZ)1Ys>N5e;89s~ zYMWg}6DZSr2eZNMwM40@2uMtJ%F`QCP_ax=7rl6S)`Ia?q)Q7{=Fj82TGk?w*`4|* zO1y1%PCN#^phwzH>KM>@(Q9R6oX8TY>b|Pu!^B)$r-)a^dK7}YHp|HyT$;=|)lO{D`RdmcqSiHEpsW2YI6iWul~n?I|ko7Kzx z!S3#48ocw(T`p6KA`o;)iCdMrB~v<{bCDZrbwo{I1F6 z4>xF6pwFOZKhf91kxre>5P1HX=P(Wu_2e2{#LF+S&?J4vjEh2-E*kA z$Mx7Q_iUygDNd#basAHb8U^4?6oujKtNq{zEN@+Espmz>Tb@~H2cpUD)CZr~P2 z1*QnEyWyO^_F>`Ji5cQH-N!~XZaxg5)2pBoa?M(+7G-%?u>wxQa#cwIT)=9#dc&I& zk$1`~2Rc)uJ^Rv~M!He1a>ZszJ}9{Yp=5SxL=-zj)l9}q5I%?352WRr zarKZ?yOWn#vr1!;5EhS{hg(RobwI^7^A%b5V>PDRWwK1CK?N|SZoy_LV`IkDcQjMs z2d)?!?@=n{x9ebE)RWX+j;o>bdJRhSaN75&aBe-2`R;%?(~`f!#g#Z|lT#$eO>{A$ z8z?LUNmS8V+FRV!BM8beyO5_2OMhgIQg|SEyapmiS3oJTrVAH!v8<(V4Qwzo`S~E7 zZZxZz9*X^4TOGr&1>gF!k>rp|(Zq#ZL(iQaobDBjlgD+nZto&dE;1(#&@CG4ffikc z0Og@q)n3b@l9FhK)#YAtz;N+|RKMamMD!9B6P9Rin^1En+2ELqaz{EqMD#$g?qaEM ztH>aPHx7{T-FL#0rL`gzpV6T3qqMa@O`{(JBy2`a;kW0?z_(?qNidey673H@8AsqE zB?5%my-awpMs`PgSp;h>}zx ze39Q~wBLiVEklx6IsEqnnX(O0YB;_lCYekEggg*?$_Xy9rv>hYx>;@aP zgK2Y{o&8fz_0kd)+E6(y`YBplx5iQsk`f>kM1yydYtHjBA}KBU|1hs-Q*;z9Y?i)w z>)VxLY$#$_8e`|3q1SIJuv z>q~T8)3m942xgYa;0^Uo;o;caM_1e_X)>smM?U1Y z=MpIbp40}Lbo9pT0D?FETwbX$nn$IK6Y2swrgV5OeK64nD35+iSdO$9-wt-;{sF7B zMcUym*Ix1PPy}b`m)b7nJvBWx;hB}UY-^J~Mq<$k;()98G_F9(cQ+YzzTyiAltIBafpVZ~N7e={!QnCaoCsU*?)fmQ^KO@V=^f(Z^7j6XtXYUa4+m z7u~+B#UFeuTFhf<{bzXarldjhiZr<5fe!)Juf`_-p>YUrszDl&5^oDj$Z@IOuB09*%^g9EUs9nB+YBhJ2p^h2_NRe zZgl@ZdNB0(y)vDEjX6j@xCW%cIc2Var(HZVRQpn=y|zxt1}A!G{@#lxLc(*Sg34St zHol#A;%`&H5LGjNlUGRzp3v=6UOYMeA0aAybB)4-FV@aKh|-z$m|Y&Bwc2HI{baIT zlj-_H1+DT~&$a&K))450cffx8`#s&G6rhV`FYx!(#oGWPSPMhyjd{xta(Q%yrh(72(N@$y4`;}} zdnHVCe3qTQsHc@$HBC=qSH-uI)HSK4Sta+PfP01v7{@I=b)mwLOU_SB3t2iCg*_14 z4JZLjqhD7so=SpQTQ8 zwI7h@vCoNbQ7=GOl47?v&2(+L81fFe*6c2w7!zEDtt?wrxG}D^;2T9fA-h@Q zdABDNA!$3vyPnw@`?-dF)|p<+Qr@~Sl6>F*`B+w@!Pwp5Y~Cq4X6B?CmDqf)U1EvT z%_t3i%L?SrxGdy0o!fmRQA!EcUey`JB^iY@@kWK9bLKsUpTg<_$kGlvIgS#cRB-fd zt&@%G1(`a4D(?GB#iCXj^kN8ORC!2{R&ZEx3sI`7e2Qy1 zQ2r4?=`iI~y&#$u@HelCQ}K>lq$r$$vJ#;sm2`*RWY9<6YOD;=w$D7FU9aySwto6k z-(y8AI3485!wSECW0dq&gY#^c+yf8>)+N3CDKC}#2ZPoOZorYsz*RX=ohGOz!R?%9 zlAORx%scQMWsM+_YN=k+9I`m=>EI@JO#}qSO;W=V1E=Ff{aUg^f;^0}(y~;Y1SMda z%Gc&BxbwLbtwj&CLpZ7Dpbm*m41e46oiU;o`OQgcYmz&%I&6gu;PUXXzo}l8lDZuf zRl!*^8^h?F@ayKd`fpO3h!&4c;x^tHAUM7+Ius@$RS!UDOa7@@HSBu%Nd}9;2-`-8 z2qlq@B_I82NeKr-%L$@%V&v@x9dn_HTyT_t8x>SpHu8~pe9-(^1^-z0dRxbH}4!bC+O-I1A{xOFWbM1i0=XNq>D2fO}ziZ2-b}6~N z_{1%(T(2oB!;}wcZdIu$*F?9eP|hwpMHXl*G)on_$nNu%h_fTKf(*Ej2XgjCx#pA1 zgOS%>fUCYG{#R-Unw>gr-3@hEf+cl+A5|(#t5{}97^izP<|UBM5qF~J@g-N^l5i%B z0}vlrm3|z3nr?B@ojPi!o~zyLez63^C$BeQKEAo%GmHOcO*;I&x_G_tyS4K#EMD(w z@wA>V`kr^yVt)kVVzw|FTLr`$48qY@8i}G(F|AV43HN9WmDZM=0REN5lp@>+P{-ai z<}`|>2PFZkDX*0&)DBWL$@#I8=Bd}n)KItP~Jt92_TtTH7$ot|BC$`#rnwo%sxM=`Mk?gSP= zRwyHfX`;m(QZACQ9m6E|s&tA28Gz7>qE1e#Qp;ubp-!tZLLqmGV78*q8( zKXf=Bj?jbcZ3RnxpWaj_W0jXZpEBd_VA8Xlnd+V!`m1z zQ->$d=qUGH-v??fv%gZM!YnO7ell@$AmIcnJ7Ny-+HmvJzUWtraAja zR%pbbB`QcZQ%FJc3wFsyoIq=pB%+I;1;7!Jb^J#g(~^sNiw!W#O=Ts9Qox!plM~Tg zc(-;3u#Ku&mOyJn^W?VkL$v0doVD#a4UBlXwpoEaju z&MFd_hgpz>FO{-A?HAg1#jIy2-b6y0RQ-ZIIj*OOsa4;vw1B*E0EXg>l#n!npdfCc zUP+GIAx9+U{N>>ePo!f!RqdDi_4?!p`XV5JF|$X4TV2iY%F~zZIOlv|%&`EBKy$wd z2n&;ZLMs1>`IcbaLlhLe=AKkYw}UKR%v;HUiu$Zj;s~x*7mHS8|2t{SEN#xk6ms6F zct_7bjLS+|w2WFSVoNJk`sAb@7MonpWO8VR5^oR0fjzy_+FPk!jok3e-EzDmzWJu6 z8xg5+a4z-&1SYp7oA~O+z($jma_)(t>KF4eDOoGp@zEpjd){^^hC|z!qV*YktUY0r zyxZ^PYt8W|AbeKq;{gJJ1m`ECa{^pQiZT50Z!wLr0Vf#@2D{0V7W)Rr1{@(Qa~*t< zdbsQILp_Sf#uVrVXZdjYIZ}^IiT68Ac7Brd3B-EKH|U+b+c!`geTktg$x`4Lh5H^m zkji8+t~cky(t$jZ7Zv6B;BtvkL^tACv+2K+4i=>OveuU;(yqsmulPlp#!SGV8LHV5 z1`Rv3bX?4olf^!oab^&LHH+WJI!(Tps4KGmDeIaddCJ#AfJx-o3GizM)~+dchK0Ug z+Nw9Vrhj?;{oU%>!S>c}xc@WpVzJ)5qh2H)9I;A?aq4(qQ%xsfC>>#+&SMNQ5^woy zWNvQb)ChLk2Ec?d{f0rv&rNrr)E4Nlby?2Iylu)$xd1b|QJEm-u?P-+2;#x}scIbp z0@C3$U((vH6)L9uc7>NOm10Q**EAA@*@w!W6*%UB>3lD9T}&tOc-XHi$SNj}T%+lq z4{!5DkoZ=!5Td`@lyqY&#+C^x6Z7A<@Ppw}g zcN|BM%&=&_x`%bYl2_QUsgzC(@)R*D=81(-P|KcrLeO)&lQm~eFvSv*jH|XM8ac|T zb*;za`Hrv6w<3q*R7t3{3yXhVBV6l+>e7W5PL6J@oezIm{F=e8Uz3!=XI<@p{xO!e z@HD#yKM}lj#jOTGM7aW!ZByTsOv&Q;m@R3QaM|(DZLVNqi>J%fkF8(^1xj0*Ondx79@T4Kpyc=Le0x*!Nz%i`CG2%yl|PH zhn*iZF>4UaN)b>hQ7Do^lq1zbP?t7L(neM6jrKgHotGZ<1!2=~e$khb-AO%O9*Abb zn@ZnIy=IuI+@N=E>Q+*U)!Ht$p{28BPl_Mti)!3`x2$8s6%}enZHMrJWB+4#PZlj9 zfw?zW%4Nh^B8nWX-5y6F#h95u*O8dWz~dJrZdp^w_Ib3A&U});lBPXtG&H5<$81HT zGGKD8sy3W{=wx7PWp(WcGq!_wlUHb@+LIP(OsGXieJOeqD~S1EJ{QcZBr7C$L`ml< z9i=@rdP6=NBWqXqAIPH1E2HV{Xk+378(Y5LQ-Z=3(PhI7acH&6PH9%VNrm(ZX?goL zHcyAJ;mF?c7YPyq8-ihs*OZ zXOR+#CO8FkC*Dkw+ymE4at6*$_8JSVPg5Z^X+dU-Ev4wYD3zVIiHBBDUNgLpxK?AI z(`!J-#nKZnq|$=^IY3hn)|JY#ruPp7d1&L)A6EAdjKkei%0)5_%G!wZT~lRXn5ILy zMhy2=p+WmzbxJ+v<&>?p!Tpj@Xlv*ibok1V>*|Ves%fLUw&!M+PI~T4-RceLOoE~} zF|NkJ9Velru7-gRpcuP$p0r|rcadU)H&!X3@$c)^(_N9lCCi#l1)F>7!pjS$_pTeZ zB-WClX>RwN#3o-kOGSNlsl%|ubere)Rb}wDA{->?=~tDY1l?t(Q_?~nI&aIt!|)oV zJ3$_#I_J?<#J5E-Vlq?&9xw!y!vg_!_UI`92=Ww4#ZFseEL$VqYnxj)2weMAYLcHAhf z9xKQRAR26Nxted_(MD*M+=b>cm=w+@_EeGyE2Ge@D3_O5D!(<7pSu>z+l*~BQFgq@ zfM}QPxk@gs`gav!>~Cku6-0!1lkAg~HM5Q9k_Iy>n0Rm8ji$ZYcF!>kVRCcsG*smM~?Pffop~ZV}u3 zEX0J)Pu-3^MW&R$(@L%J7g|*JNH+30l1@&jk`G(Dm>sbST|wommboWH?GzE&&m|Q; ztCs4}_$1cQ>Fq^IVmiF-uZ@(gHlr(a`7UrV+&gpP<)DChADgD_3Oa>4CD8DCNEY&@ z>F_A29{z))HecDbLiI=k6ceW;B$LR*6BYtfc+cD_bAVozb;MMBO^FXNqJU#7bYW(( zge#(^IS`nPINZTA=ZTyLH;$6#NBcPLReby7c1-8;9eEv~sk*Vl=J=!9sHdWx#|W{K+t3p<{3xuqn&DEJ5;(b4R@MODn8ImC0 ztjs)|Xn#b`k}y;jw74_Gie=UI#b;~PIH?f@sHb5 z@f14ds56KKcB?L?1Y0HZB>PO9rJ8dXN?wLXD#SuS5oYZ^c)-+E)9%^Y1~ALPI-IVdM6q| zxe8=I&9X*oN19>N(@H)}J(kp`*RLkv5MWn0@YI7BC@wz-tdrrZ036j?@q{uYky!8g z@JL-c?qTjJu~upBom!K8bwaQySBFwjngbcwn^V7RX0TW{TauT~OQiIiYPd$~f%n}1 z-_JY4Cgd02*@8+ycbOD;US=MoYCu`4f>*WxJ0Jcmkr*$7RXr&rXK&4xll!u+tddlN z2US~Q2bw1^9FV3HDxrHtpwVrOh{Cb5N*+i>jq$iJ!aW?MH=Jw_7+nNfucv=vdAU!| zP-4mxL!U^5G6HP(6;^hFdk>+_GP|fmHcoiZ28HwdbbnLqUW-(Zh`g{0)$wl-HvCN( z@xz%Qz3Y7!BhZu}6k&(#@-$=n4v-unLAb|)Rt6uRBSiptxvc32gT?gydC5XtLAS4| zAC`N2|%?wPQb;hT*peeVqaIQ(KT3L9tIf8xx_%GtrF-rm|h`^Y1YeDC`!|FpBUeWt31 zvnS5fKltt${r=9Gv$$f}V*cgz8`TAZ%0T#u-LEt-Z;3U;l#S}!OI7V3V|uPZ3om4S zs7E591JAa~WP`&p=iY8EON7tc#(pBLshNyVVXiqT711A!!!4?5TQl3FD%?N84E!M1 z8*MBl7^112NykSNGvj9oXZ9zOo->)V&6;3fHvW|n$#mHL@d!iP;8_yF8wD**#L9QKy-cPhI zRW47HcW_w2(&2g$c9F>e!`Oen;FXLg9O{C?;+cG;gC-9_oM2Z8_85_?rr#22B)!-w`pJJT{ZHmN$2}p zu{#UVa+Plkg2#}g&=no|QhD1zqvnB^YU->`)BDNK7%KW2vYq0iJbC}RZ-nhlk<|kn z282-#r6m`EKGTW3HcRjGCY_L^C7Sm$w%nk?Yn!vi=u9;yu_v65JUMaz>&BfR4+LL> zlVLz>9k?**_DuyRfcex)Oa{gnvaz z{#uI!q#Bc7)bW8+J6P||t#nzbev(?{+HO~o z5+0{*EQx`(oEO7ZcnfrpoIpDAj-0dni0(-MhWmAFSg^Ml=XrnZwsUP(N%!pM}Em^pNn7OJUrX$I8(7{((($%m~T44%CM;|*W z@_prKG@2VF33YpV_uTg8x2F5V+&#ldlWwjQ=f=jZPIts`9GTV1IvljqGDB^F%Lu?| zVkTZ%Pc`356Rqsq4V8iJt^yq4)7S>Cy%-{PPE0YG&jq&pB3(~S_-ed5;4Wg#;dGS^ zO)NPUP@1i@1L>aN5bTK-&_SMobJ6+Ci!~DJe#p1}bZ!JBA~Nb%yIr!fWn}>VjI61&uXR>4DNp07nlU zArk4yRZZR?6>l;SG834otSu$ z8R{d7Mgd%~CrKe&5u&Vm*0nZiVqd;@xz+2~k_VxUSpQOm)U-aCg&Cj9kwyg^j!i zd8yf>9|r?OL^Kryn*p0m6nP~HC~TIn{&uhd-WHl}4eH+e53(o~w2{TE2#v)|ZcE5@wFq8LH|sj5a6B({F*pTYc2tIVyUQW=5Bi z>~Y;qlw;~9C~Df4$VCa$yG8mu^Gb_pYh zYK8{UPLcnj^PkhG3=p7G!`G6%G73OsANEx_K+Xvx!gU=P+b`$NWA{=`J!N%`lGLx% zAxo}~7dH2iMfYjWqlM4yaB~h3x~`}7_LhA3>Q+o$ilj3^X+v!iOxoUR>}5UCjt^^V zYdD;A6=|5pZPMl))3|{%O&Kx#kybAxU3?rYhr8zY2Y|sf!lf!9_TFS!AYF=ZB)tfK z+O`(ISxt_9o+LOL@7eeQ$WpT+?e;R{5;_3Ha3J=PVxOT&5uaPx_Mfy}aXLRDh!8Kt zdZX}0u@$)CBYYNDL^nd)%sJZ=QGQavGuLfJ9^4mcp4KX`&=(ZNR8fn!|#BDL_6E}#Z!Z75zj7Pq(>OwHr4C2EC)BZzDQ?Dx3Q z6rCfiGgqkEHU}3J$KHU8d62@-aTN6P6Xsck#)IB~f+N?9sJs@PK(Gfp zQ0}FR=BL39?do7l_o8*PO_XlzMFhnK3PUJXq6$x zNGZj-S)1`un% zmkETvuvXps71u$nou~P|@gmi_9KY!+UDjVBq}vy|tS{c^!bz;*Nuh|vyc3VicLH#} zh}%36)PxV*61q?NG#))l-lT;1))_0b>&bL%F=AzzMpdswZua1ttkrcoxjZ|_!II?K zZ%*WNSM;&xFiA^!?KzZQy)mok4imnM5S&ybyPqQGD3k=zk_RQA&6L1UBb~5PJ*$)w zA)v=j?T#MISoTD78Yu&bTl&#BRJ_MrGL|z;CxuvP~9< z&Is zJ+*5{vs1t*^aEyUQ7~dU)jo!lSDHjNqsWjmg_91mr8F0tmM}N<;pnm@nC|Upwh5*6 znMg@=LM&oqaZ>{A$iFmand}kSAePCRNEIAtZYIWgbdF~6etvb=`>5KovzHp=6vdrsGpf4hD2F$xihb1>Gajp36s(}_5d^G5SfLP zP47CHG)YUSEL z+9`V|VoF<8J7j{KSZ+CEMDTCx<~oW zZ*H|>&U-nO?SWzkAR6(dM#?HQmt`cn6OXne>Kl#QV+f}*daDK0Qlx!{8y;M5d*ykP zf{a&h`$^a$Rrc^^qGeXhH==6I7|~WarK1-v@r7)m1WZdm2Ej3eXTZ$)HEyJ-ns$ZU z7!PbH*_hTs(irNUUXM{E^~BZ5n!t;8yD=|2oLY9Xw1#MQ=CrYv?XVSCf_x^5Qr=iZ zw0v$#{ZU*&kpjwvw)ri*8J}veCr+AXq~-*z=^MmO-NeFe7a6io!&SD{mh~ddE~btx z38weJ@7o1YFE!C>JpJyO2;oh5?d;YJQ{Ng<@-46JLB|%uAyFkn+D#>p z*C`cCSKU&Y{uG2VUsbc{5}Ebi>Ng4rbOw=6&FNdWQ^XCF@-uAnWUAZHD;Ly~1-zU9Zg)Dx?3PR1jo3Hxls*p^RXe}z4Y`c_iw zDZ(#NF5ps#{Eax&I2?9QR=9p_)s%F#O0Y0FUJv)}xjby-;@(S*k4jlZOIYk>*8rnS z8}o+9ty?Huj<*;MqzQsT50C$)tP+Ham-9EIZJ}dwr6OElGVAG_iSxLZHIFL zX)eDg(-HfjtBbKKS=C9M$6}{d9;-!0EExW-bW|iLl})HTT(X`$DZRQrY5$HO<{M)B zrEsa=#6A^~RA7-Yk8xSUt3}9M56CTV?hGP4Gg2n9`BXT$k&7H58Eh0He9~;Dg833{ z(Xb;w%*65?CvvPkOSE|gxfx5PG??QW#R$Q`b2tq34BM3c0M~73U{0C*Y}bcMi9+4N zid|cOX|6o1Un*0_^byF)J3f|cQzFJnOTdj2N`WMSx~NLAEj?F=aW?6e7u+N4aXOb! zLNt6R>7v)t)Q~#@d20o?KsnB?Em)T%qQ0IO*Rg7oG<7u3=NBQ0sOr?dOE0sWKoL*%-q(nC}oYO!-xW|(Ci z`>~6yIV6Bm;EAkWr=(ss2U1?k&zh#4h_T|V#uh?hA?K^wJfr)liuQ!MBumj(9x7Tx@c^UYZM8L`ngN6M*pp4j*@h1ufH185&(RN=E zss=y>US^JAdwN>nJ7=B@UiBB875mqV)w3r@pZ%m-JvsjGPqX^lTD5wCv;;dn3h3P+ zcVp{yJi4bGs{>PCt;>&d+h0fbpe5m$Dnhk^PkM5#D?Ato`6d~d6jVOL+gAPodHopS zB!UT_Mnl~e%FGD|fHuwkIP&1rF++!7VmO;`P8WaZWy8>xxxnm=0;HG`6hdw?-@R?P zI(i1+0<2X@a52a{2|h5THuT_m(2;4R$~LxUu0=c+k)2$0R}VpQao98H%B1;zGUmeW zin1Lup|dD!&1Yqk3(E^7-yn$2r;rX=sF|Rx+DrAZxZ+H8M#~p4mX3+Rl(}U8n|v}Y ze1KnK9FdeB!P%pN3^6m=h&8*$)>HZ=`5D8tT&3P~6MU7VDp+lKoE&BaTO<26z4#tC#tgT9Z&Z?~&5WQk zE{w=u5Ttj)FWlHi+hR&$upFzS7txxG5?PXk@lMU3kmR<$M%ml=zT$iWh-4X*JMYzp~Vmh|DYH`vQ9knI%ph4CFsOM7c{{8pLiH_xvv~m6I z{Y;A0-WroN=^AkVT7*CV0TIuqd)3^Ltl?X|FU~ zVh7;Fx8m|~3kUq0+JaD1k&Bk-Wo8q!o+R|oKB5072<*lQ4;l#qp0O5QA01^NI0CZ(|bT4pWa&#~- zF*hz~bZu;{y<2l!*O4arKEGm%5hq%TC_|F(rgaGsau94%kXwR0-REUuqX1*qplTOf zsDg>}B#F`E)1&4{Y>h8$S|fsN9-5MPWSMe11cb*AMe~1@f61)OFLSNTwf8Pye2yb5 zl0enItd%RTUw-+*%U4Ik;$VBSKN#09{>}3%&;3oYUH8XZgL>!1znM*c{I&1?&C4(S zhZm}8_*nR8z5n95YC7FJ|Ln6r{pn9ve)^4-@nq-O=fC&8?>&2!K64HqI={U)+jO5C zZ0-G+Kl}CPp8L+T1)V@!WL#>h#(E zez<2f+5Yj1=T=spO&?mJUp)KQU1hJ_+5S)Xq`S;$ds-Is_Fvon$!u`&;9OS zU)u;*I#=}ZFS#VG+xLrpRZjM|r!VrF<3cYytIP1h=6LI{=nu>Nu>SpWIM|$QhlS#m zdOrUATrt?9U+?YB`u#yYo^F?;b1$t{Pk#I4sNN}_|9ZIK^Z3@Dera$0{p54p7JiR(S_tIb9{`JOW{;-(R zS3ags(_ij}zZ}eO7xm+7;cvsm$rt@%IR9fYq;0H={^I0*8Qyt*OkXIAo%x-^qMmsQ5J-u|!{g$2Rm)z#vJ z?t!nRB};#qJo&9G;k4q-;D3D?{+aERe1Dp9g?a7D5f4p+#$}4ZYT3meP zAFfz>@rj={Vdq|_wP;VC_JEb$5Ni*`4=buvVO7nhvL;A6mR@sB9W&OU30&i<5U>D>mMErFi4go3HcPU3=@*H(zg&m-NlW@tv?QKU|x?yIx#*eQ|vI zQn9f%f9F#1_=CmCuZoTN_4T!4b^gw3%bW3*tzxiLlHu#D_#FB zT5Mi*QlCM^eNpmu*Tq5j`p^2RV8ic^q0nxTek5Ht<-d95nL*9Ji)j>1a}mVfvg{NX1@13p6si{q2!pZ_L(e!ZH1 zR+HYP#R`(U^c&xzZ@j^$uj_Nz)^DAA=?c3YSg!tz?MYuPD(%Cy;_CK@E_1Y3%#Z4h zJAO_6_xwtbgD=@gy%!dHR)h_jicRQ0IVyfKE9>x|pwix{#cGOL3`XfFs-fjNI_$^w zl~W$%>+&EIUIjYlSLerlexsZ94%xBeKlF>O`By<8zf9^cnxd<-L&yuQKt^5}zy;RWWc9;K^F^oPij0EzRHrT4H-e=L&oyIL$57K+>FOGxrLrWHfc!1;2`#tQc zk*vnWaGmK4;t(EHbQy_+90~sZh|Xk9juZ)ue2CsOti@BOyw$g5g_Bs5#tG|OCr2#2 z$?^SQKL@mTBhsA}{qaY*hYk4+uk*;7&C?e4J6Kq_HV5QS#!HQKiL9B$Z;!+q;?t1-m!w2k{-aNu~w!kXMjE7l(m@EEijnYTz=64vKNPu9~0#aFb5f_D(s!5N%Gb7~^ zmUjY&`5>J31CD^|or(m9{7xs9qz^KGna@5fBreGsAzYv28&0$w*|Uhv^J>s!k8^+B zsK6vB@wC+y2ZQ1LtSkNaMk(j+58*)1@62dJ-XGx2#6YpJ#LAz=+C8u4&IktI>tLW( zOb=MUdVFmJNBO*H2ilcATBm#cASS==&uEs_8} zw~aXMJVzkc*m3A#hbDX#)+#>>KQl>>@Q!JRIu>hH@;0>Ltfu6!^5W33*p;+~dE#Ky z4|xS+u3&?6OB;M(dg22kG&K^zhNpSCp8o93`O(Z7zt+pMrU{p{5zyxRH~hAlBTB+D zVzDCo%cdZ#*b0T+*WtyfRSOq(F}w;INgrL9@&KQ+DGW<9WbZA1G32M%=?{1MS$GlB zcI2z=kE44_VqU?!XBJPt(-&se@q+xovGaZ~8nzKu5Kvpq#xXrJ{*Uewc zW_idWW&sUJ2?sz;9Z#R0RuFL{y21{!o6d%=m${4P##SCk?#Z&jiD@|x<`t3=F}jNd zirlwwGFVt>S@@o6BfU;zvr_VrNV~$$;!b!0mT4m>P}Cp6)403G{%%hmfwzsttY1O@ z(<0rQv9Y(pX*|*B+-F~*lSq$8pCgw-?!i~zWGiz(Ti=I8RhON%U}sR$!6r9kmn~#J zJ~7=(oE`QY?1jv|y7cUoARAj_w_7bj+VolY{jFoBem}`k_|N-dAn4G_Culo)@59%A z$x-KBgcc;!Y#vx0aUz)`x7FZNz!5Q?Me*vGKTO7o0t1#UeP)Wp@Y!4)A=?M7v&m0} z&kg6lgQDhKpg*(bMAK|3nP`xAt+*Q8QO>ceE^`Md&*zCin$QO+ z`LL`v*|y&x+5M5am?As%4yo}zt3KqL*!c3P@3YVa({kMJHT@M8uhD=6k-uQX`2f0B zw~61a-eEh0my519QkYwd<4@9Z`T= z6sJzYt0SE3lI6?Uo)0CzVRV2T32f5^ir6;GVk7tx;TDt;sUANl`Mdl~J3$@pA%xrw zZfLD$i{pGghpekbk*9?qU3GI{#Sv$)xXfnbCo@uz;V$y(FATC$Qt(pJI(?CRs{Pp^ zo{?9Da$MnEs1zf2FMXfJe4v+yuWWWn-ma4sl;A|gln%{Dn$75oaTFgE+OHfyiJTtI%7eBjE-5MP zk0}d(0JU*fjT_zdy;S1dGUDDDTwLTx2@Wf^-d%6ELg&)J= zVNm7|%M{!mXyF3o-3OAhPMV8NygU}pGZ2j#M^b{t zD7~KQMA;)O(y1N=QdgPRYr-Zhpmj!BY%kLz#5^m!I3$cT<;)IST43GRmuWlK#+=a) ztH8VRNQ(uc0AW0gi^I2kMI}QrS$w6-Nv|)pK`z-&D@kDi7HXf~eV=n#yvMnlMqXS^ zY0*+e&j);>0BJ)$m0S@U|B~}&h;_pu&|*AYSk>bJBp8Xxvsm^%r5JZ05B5B%2$GXu z45boh0}FR@RF{RNa3$0OL>ekE)%@(p7e^z{P*Gi zw>f?#E$Vzyln#ulNavPcE%=U)vX~yl(-4lcr9x0x;W)4lpyf`V?Mb)r-<YgSiO?tiOp8lBvE5mVOxF2q9 zeH@?NO^4CRV^dF&^QrZ?APf)p8fkFj#`}%5zFs&r|5$ACt~SGdQhw$#h__rdPlT#1 znQde;M$S(h?Hrr?7syXZOl9Ffh-ywAo3nJE4<9k8F(}_1%z?$)gC34YZ2XrRhkPF1@ zgCSBM_*f&x$y$#Z*>tWfF=w|WjLqH=xv)l<<6g8&`Mj2@)gmr~S`jS#usD6aVs%{C zgKb)cPov{}!1<*iWkKYg``sqLGt>J$hTKrR>=A4xORTw4IX%|-??HpvDz*&`jPu9x zc7LW1pFnADwX;O078qbI<*T`B?o$M|qbN(dhpFPyS9#+}DN}_c?#t5 zdM0SMU&$djelXJf-(TLoxl&vVR~D!p9ykx1R2;P;%mN{rj=e&hLiSVR6UKN{61$v~ z&x^Y(lX`g$QKis@Wl4osx&iq=ze1#dNHkchUh!HvIeb~%UCOpMuStnPwrj@QO#0wz zcqc081+zZqzqCe;eC2S3r^1TKf-%IWXT*rXBa7p&_F{H5ztUAPQB#vH=m&$M3kVBX zmFA3L0okeDk?bgy7bW`V^6;S7EK0MMZF>=$5qzpU_F2s;XP;nFdIp+rK5 zy}EGSPfN`>;~$3-Qq80i%|A>YEdJe>GkbTWpJ2Umm_e5KH!b)|{gSQjSV^^M0sEO< zLX7QFL7M}Ghg2=Xl}MXkpK=m&tj}1@7>7(MSU!Z%f^($!35nso1dVDw72gqM$(p@9 zc2QZ4w?2I9>V-J>camkeuQz66&9&rS`;}zjQ=U$rZPf7v)>oRpCs<8zfF6xH9(Whn zJNAm`S!VjI6)j+R;74))=qvBDMz2>^Nb};{-=QkZj1MYZI9SLnsb-MZRUS&BffSJ- zo*QmguTfr-FR0sY(jPxOogn=}S!Lbzyht5U|BKYBu*o-LjHKGEWD2zyNSE7-%dUzU zDF0<;nI#~B#~&YvmYZ2_lTI$*1ZWO5)RlzbE=I;S*qi0M*V0~jrS=Uoa^ z_?C!^SvQn3Md#Z)v&V|E0VQkd`GdMZX)qxKJmjiVP`+{QrN0lBcKGDCGji_b7-xD_ zN+3ZLj|x`WBQ7yp=ts$m`6cbsU49lI(PJ@*6ds?^CTM{Q`{f~)6LDiLp0X|D#Ea{S z$8e5)EBizxH1s|(R0rzb|i;LIA>7=UVNl=NPiv>9i z(c6(4TD|E{7@>>?F}u~VTskOQ-b-Ev;0}@-UGEIuNC>r z43rtkZimD3hv25o5Ds!paeiAi9#NA4<^(@_@`Rx*lvnGHnyq(-e0@r;Yg!L2L}+y3 zu)OE3qpLD$!NlY)j?(s#-if0t3j{K0ecsZz7T1?=;rtCZO z3s8LAosZ;=;HSvlyS6w2I25-trh!g!|H-S>5*M(4ET1g55qKnBFI)IS6jn+Kms+u{ zScb!QKb^VXXBQBAlTdBi0)bc&g@zz2u;EB-&yY6`{;gInoNH)2M>=}VO~yle_wE() z^GmwQ(V@bx(~2P=LhmAHHU)|eWo82t0KgJjGsa;D1{c4RfEM(5$;JTOaLOAg+{Xku zE;{pXwV}s{PqHi0IPji}z{bZbh| z^3IcsNwFo~&=y5Ix(bm}gQMhS%o)1McXT9&HK;H}lQ_0?^ z>(Dw8qB`mC+F@dGWfUS{q5wWlc5i89>qa`Gk){A=!&Qpax~&T?9`^Q zpDJ|4uZP~;P%A76o~Vd( ziDpyl)fBfid?9JK79I>%6pEmtgvTn9p>Uo1hMHrVnuDhU*}^aS+T`Po)+VD4ZriL* zPUb+ly?#8cP*D!FBrZHFpXe8-UW=3)%u{p`77-i`&NM%4_&b0KJYA=ZV+<{yiDl`5 zWEf*Py2T?&iqg?07$^m6M(c@od+%t;$+Ern%-3bDzee%LV-E7X@}#s@UF)JM&)nAwL^H!{8#aV>{OcuZYFl3;`0xkC`r~(BGc9d|xP6^I^m~amcTNU?V)#=1Vc3YI3g7>|I|IJ+Q}uDA@c=z-_TBp@FW>_zc1Q z0WXFIx5LK|Py;2Pv*h1KROJXN|0_{IQ}Hia>u=o$z6W0ck2^)#5>*7@Op55-9?Q~L znpgAkr_p;{Z@wDSFj;GsJZ38u1xu6d3-e&)5HWu^%6j^>!DIyYB{?V#JBExC`xP9O z_waU7GUcw29p1y;YK)>@zX^dv`QZWA2k02FK}Qmo(=LKwGW*Upz_MCol^-r1jSZ+G#tyf)}p+rwek1%CMB z?ZJQ650ek54Y2riAAI;Hn5=!We z*rYbqrf;W>ZZRt3jBekA3CaD0WcOFPEgx13N4!R3o-dyvU+r>V2K-b%VF*M};9SlR zs%Xn$IMeD-iHR3rFCj4QV!Mu{eSx{ys7Tv~i7?%=H@jQt-ei|GXq6GTcoOD15&~Kt zf$Xtdh~#vnxQW^j%f>~vB=+w{&wtwBNdtnzK*88ZBFcbM++ins@~wzJ%^MvT#}CjN z@IXOSQ&>wIahn{g?+}gPWhtTux9i%d-TKp}I0PA+8RHUGO`~c>hY=feXnr|}=40%s za$=n{5iGheIvk67;4$TYt$RuSbt_{_CYCR(5(!o$b%^jc~qm0TA$?QxA7 zSMer?vv*&WtW_mc%bJ56e!#ZqX#<-DYMiFyt(0MzDrs*{skd~u7%6D{kMb>Bu9)Sv z^3Bihx;ges(yO2N0}Unb)BTMu+$KItGQ~Z`@8tbXHanR0T#|de7xy_^aP<4^N+8wb z4d^mDr>TYwT*X0e=Op6CHypt!0hmH~n!0Yyo2* z@)T3DzBYMOrFL?p!)^689Nto+6bG-9o$AV-E<-&9A5oui*_^R}(gVENMrCcw8*kNd2f*6nxUZ zw5?x^@VPB+#m@TkddO*}IC=!EB(Gvsjzg?ED>(%LYZP?e7_H6r^aP}2=m_KZFH330x8o}q7c1rB#PCP@ z&?C(jrb>Wj+vF^Y?D=wx7qgb0&2;l-fS*9^DL0mC=X4Cxx6i}N(X4uMh1EUACRa(B zd6Ee01pj}?r>&wMj*BhHJ(Ww6W@}}=yWg2K+9}>REIU(1vtd{fB=x#3@wY)lu5>4r zelQ$%rmSAwzPMd)Pqw=*eQ_|{BFO7j-I;j1Tuuku#p-xA8T30Ju)iCga5U;nYP~Vr z@0x9JWiZ+-XFE$qA6(oXPj1U(a;D6K*RT-LLonG+w*xq$e=B~ zXAJ?T5t5^0wd*GNJG<4G{&4<6EN^njt7a5(ugeS2FQuj`ZY|*g<;jh{zw)NM2+Je2h9}*RMTF!X-uD8m=)Z#?1Ip zxpLbTPc_^X$-dbX%V~y^#gdyMHwh1OFn=gW(md?OX<+Ix+BV762&FFyr?Lcz#Y+>a zvD$H!aTFw$Vm~Sn?yy6jc9GlUV|g$!x}p}{=croAR6tcO9CZ^ZASN=W_Rfc(k~bR@}0lQVd|Hm!63OF*>0w5CcMv0A~Q zsK)H#DULAD5a?Nl!8ri};VpYYF&b!z8&joX8LE=vRr)$R&%! zXWWelblVE1Db1)q^CWQxXo8_!l(joN&1s<@el%E~82!$Z}4~#9^u-7im6#BIoD8pHe9+4kA!ISrc=EDCLwaR4;@}6jVzKIVW|pP()r9;&Oa% z#3;i&2i;6kfOCy1AT}Q~DTUvk3da?ji)MV4iXS;pyULI?rZUCX$+bgjYRFDRYJYMk z9YEKLBkiGLeP+Q;9e8Wm-o5Pe0iumX#oDx1G{D_q3oQh92PCT6;ONJ?2=7^rSxfLk zy61ht^@60No3g)iHr(zh=fDwDnx(I&l96T)c7|QFIcd-be9G1>eNv zv3r`aP$}QwAslG7+~nnqWSflC5QT7eFUkw(|7{G{W-0ng$oimfQzs6p$Z%Yy{ev$} z9Ztz7O3CncrP!zinYWH2Om$l=bo87fksx@S0pJ-BOuDYuv##_I1R7O2BXlGck)Qv% zHkCbdI@L})dWN!0I`55-K#TU#L|vuy18FV0*2UDKbCT3J1w~{_Qqh)(UvB7No2KT{ zpiZ-%NiKFOF^V>IIc@$*2E$Y0J)sFTM9_J%cx=trK)4#5O%C7pPld#_1vVI9RDcUzW9=SalkE5Ue(5VIpmGmI{Qk|IS@+ zAEwmEXzjz9fww(qm_Y6IWDpet4UG#_t%yQzFE&5Q;tUVqrw+L z_=KwGOYEs<8L>GU>e&=%Vt{MF8ibXd%)|ty)WF$sW5i9%gWJ9ZIh`8bdUY-%WLjXB z4jHtA5?KmDg|AvRg(dUAz)L*_UGk3F@knDzDhtxL7$8OtH1~-LQU{dTcM~+ZH6b>m zQ!o`lhEH=dwVHfcfDH=Y+m`4Vwc~C?Ot>7k4(?!&%`q4KT*!1R#Z4s#q0s?l}}=`QMvV@Q}!YYdR?+8>ZDA6kmAYMnBr)& z1SNB>>e(PQu241q=Md?=x;Xi_)xRqCYb%;x5LO4VA4yUl^dnsqx%i2|3#h=Q!J-{< zfn*VfAX|*X@JM)CD>M8 zQu+1`>9|-dTGx}H7s0+o!cQb^XP<9szHJ_l6?Ft%RH^T}8KvfVLUzkVf#rr0BicA* zaWrf4J{Ramn#ZcPxiEQe*4l@PdcEn1=&L&VxFdfl;X(}N%~b_u;ZZE^^u_*?W-|tt z_NO4lq?`OihWbwa{NRj8lhfqOqw0wuCgpb@dp4Fz;4zTqM#sBWlGGrhxy{%}M|WX^ z$Ss*`^`Sw>`zb3-DH}Z(<_CuGbMN^!CkPKX?qz9*^Jzq~<(SwrYbj?hcPx~S7gO=e zIvAC=P}><@hdMiyX>f*}o0d5XGSt#=YHHorYd8U?MNT`ZzoH4Vr3_1=o9T7MRrJij zM6gg;uiDpnjc;U_%;K6x^4)a2OnV0drOLk)4qnjRUa>rw!PD)LvZvgf7)8p4_``-OAp%7TCW#X zN-3eCIaKW}b4x1+HWG>R%o>i8Owu#(Qps0rXZ~-k@!=H=t&gzQ zl&R65bLP+_Qc~LCYMKOCSp;q%3XQaB^x7)$mYr++vP6A@jjab%2M^ zAVNlDx>!>PZF&hD)l$R5es*(hoi?ueJKy!=s=s}Pan*lq+0C8pHmIgSKtZu^LIAF5 zzACkLVqR~Z_K+QtWZJpc7X=d8JCmMaLh#z5%TrYgN^yiBNNsCmquykJinzw9cqr*M zUbCiNs~|J;-;A=DnF)@hA)UZ;Lt?b@_)WKqP?R6Ui@W8-#X_omr8zEYtUv!Q> z{}$DSvKe&=lV`;bBbN*)wOPm}>bq>5qop!R+N25oSrHp*24D@5ykJ5zZlMlgF=$%B z`#a?ZoFo+ttQ1Zg%q2~INjA#{2o|Ane=^&y%}5yUXF6z-%$wrZmSU!5TmcO}2L=qm z641F#RybSf2F+1bLT7(06M(Sq|8gnp^;J z=ld*VzesUp@- zQnaKKJ0n-pZWf}-07xjXtav3fzYU>hDQ;s_b3HnEYP#a2xJ;LF* z-X9c`u|seyWQLSPTx!0pui^#gG3d#I1M}&j(GDJCl7q?=&f`gorIS+YA*}X2Y{%W% zuJlxr0*Uj=wRt7$fAUBw2CWo$hE>d;vxviq)lvharn|}7QgtR8a^In1kxk;OOYWtG zha$tIC!gGNV7Hp|wJhvQ5G2(Q9xv?42HY&iOpnF;nnYL}q{i_rJuAc7Vcw+8jBZ;{M-_%&7tUyI}F7fp(p z+~ry+t~5rqq+FikU2Yv;!o93oXps_FHp;BYj;;NO#DIj3#%30S=W`LxsjZMDb>xJK zm`Ex@?bu_(rCf1cxf!U~d1(!;9*8v-R)@(6$rh4k; zXmYW1|H%=yXlwraLC;6u@k@Q4f)(O}id&6|!y*h_Nom(mqMgC+j+@gr8YGyZXTKq@Ly;lTR5|$k4-zNQ&BE-jQ&D0 zc&rp43zkeMPg{VcYm0e-`X$r$DKJL)eY8uzLavbG5HoyKKVCC}h+|_L!FGXomKK7( zS!QKJQz4yl%gP0P*g{7TowRxQ$X3Es< z>kFMPLru|l4+{zwbe>C`YCclduU&~L3+x4Eq;iG9tL4Do8dflUEj{#Avk&klW_ zEikgokQh(PLv{~jz#negoWjIXGSd*?-n8YJXjgO^5-tO3ST$N+~CK8qdT^V1P`F|qOvmyE9K^zbF z)EQZ#TzZ-a)iA-a1d&p~v(lQ(|7cRR25^1AufW6oytk2!d*+Fq1!h<|U1}+ABbDaM zL9zUg^eBd~2t!BPMls@9Q@X@A=a+RpIytiVm!nkD$sH({mOeo5msC2H?x=M%TYS~5 z2NFEK$gH$WQ0m80!lj7dIA5$cGv5E335qxnlP|#Gjf=UHztPL9XRT?_ijj-li)a|& zkh&*em+@$o?v6(jsS{)?sxt6pCwinCB8psM77Jxsi=lCc&_5qLcunk}e3}@KHioapRz3Fj5+rhk#2Eg>}}!y#l6 z*ZVRDmJmcshIcz57eZH=#$f%}NTf)Wf)QJvND;tOIaoy!qlv|)`F`Qxj-(V#np!1z zFi~LxVFhjP?dau)r{^1a7&4gFPvn}t+9=$@97`qw0sOQDijt)>k#BIU&5DrZqz?dT z;j9`}<`EfwLhAWqH7t(;-4}75MFVa8vi)F3*d+RhFO##J!1vws$uk6B%_=-#g{G z5MouMKjP^Xd)TI*BmK%*&XBB$xkVfB+$<8BJJLwBNLH-7rGqnh2pl;qW$|>RMv(B3 zA>{eqBBN^>xYJrZBk9b@@NF|{wD-;DY_#V9j-JwHI5-)=(9Fn~!U-pSET_v9!-BT6 zoG-R*X?R(M8QRT*+QND>ra9&m9jmJ6BTK2kNSzzUP@!Z_JWOVq4+YsD>PXjcPVZ4D z!D*g|WQ++P@gOm8-Od}sw`E(~5V_S%=1BsYJ28oCPPa{~@P=7`ji1eB2UZRhksLYW z#Ecr`Ivi0+b}KfbrLV6QcckIoLyR+y!}>jasJOFg1-on=i=lJ zSi!m?1Rl7$KOThR`9RWO&Wr|IM3f68sqp|)eP$F9(jci;rO;h@5F5LRUQ`Jgbb-{@ z<#Q)^pQAdZBPj=|o~&kAnTvpdKWSi(UHsJP%JgGt>)#=dC)g?ukqHdNtDH}6?90d!urHJ{QmkbOb-~4{GnRG4hl_oumE!4( zZ2IPZboLQnc6@-?x`~8fIH#M58&LRGcR1Rt1Y5$Ri_H{U8{8l`N!(p)=56Lq;_`H7@5EVrDHQ?1W8xl5-(cW!kn2d&t=e@>tiY^*P1MYGj z7&*45ZJz~T7-%PO=aR_{s!C9kX5aHRV1hQ zo^bkeBK_L=SZP(MsiqiniwZN;te3$gM-||Po_iJoPhgkh=PZGayeSohRiH@*4 zXwvy*x4>+_u%k=(!G?baDOodJ4lSR`13)>a^U1HIEtBCPaoc zb)1^1?lALprm+xGlcRO&8&(mc_K`<@rXfmgXQgFo?pDMw^0XbpFRLT+BAwbX1DZaF zGuI{N)6*+~Xhm3+EWaYHMcEVj+)9&eFr6AunoK~Fy9=n_PiE{X4a6(IZ_i}bNF-WT z_;KY$Y+s>4`ZO~7T(RQRzcrMfWp-*lJ>!e$-W3oY-0N+Td@+iNd;vguVyQIO0bN3j-Rt}Y9X=dCY}@cQft{}=Ploea|>g$x+`SR6tUMd zXLBPf@Gnv?QirD*!>`6rMcWM4k-y_aR#?9vf|L1gfLclEsLDS;0+|}c+el5OnkrZl zhSE1ftsf0+oQOxVuIBB(pVhZ|<^eoDd~}A@Ye#HLn~v``=~yf2@l4jkag_8?X8)rW z?&4q^AaF#P4|p^Xo+W6QyUCbBypma_uS<9w2Tpg&i8@5`WlXhHU^E0}0+hr2cD8nE z$u)hG=(M;75r@nh3Y|8BrS=9$3C}s%s>Aczo>6drk^RYrCYqIdXQaWlsZ)0KGq^dJ zkg{qCVzkH7>Bb#kPrpKdpbgYga+RzJWgWEH3d$M3fOui3!I+k2bzIkjZJ$OEU=?!9 z)UM~o3Z7;9UK4+0s!9DZs%P&Tr71(!#pg~CPJUwf z$$u1K1NTJ*-o^UrsW!u*uM+HMh%xf_BwriHI#=jtd_F#p)6yQ_6odoIIHt{H zI&{+~wl7IM(S!n0)WNzxB}=2zs4;MwAdT4WINpuE45p(m2lf!z$UB_InNX*+gsnWM zTdXCo{DMwi!mQb>!D`a=2LVuAI!P2)*(XA|HfPJJ*QAZrPmH7{%M zk0Um)K=BspCjY3s+4^3B|9 zAxShF1+dI;;~EaK4E@XDgfX}%rtE72mr}_TTS;O9+z zVlE!#y{Y^48Jl@b#yz9edu*mTou0LBRyx~~`jWF~b>Vt0OJHa5)(DGmN=&e3cq+A+ zpmnQqAXI)$Wa*UE=m1eNnMLgnb-g`?wwxaeBPR zkf6>lZ{rcnXO$*z2b%MrX#F2|Qep13^us&SI9fQBNxjElkofb8gwVtc`t z7!SN6fD{=8BE!+ePbJVFyUxYd zaUACG^i%eM%OSBw}yvp*AQF z^KK0Zb4dJd6o|k--YgX~3!z~mihT+6&h`Ypua9qNu7V^ur9#l-&VjHiu$ilxp+gRP zWO^X{`(*)%J%JqPH#(&0w4;20s98{4JRdnu^)hR~IF8jhhMQ4O6Ehws42-{Ja-*g6 z!HN9rdS~@<8D0r+4UehnJXsD5xoaZ}Z6kGkHNJ5ehDK9Ve&A3vHhIa)f#AFP$EHi( zCBqn4?l>Vzzdw@Vm+|Z)MQOJ??u&U@-jF@?MCnI44^|D~_Peo%@My$pq2BqvDUQ45 zv9_mXy}TvOn+7czu|@_6NX$(va9k8UV#trBxHsFCGJ~Q4H@#i4k09^gmNV7KX~Ggm zP|2*n$<2E!np}Rlv#&Ljh!a%iR-Y)5GoK2%hOVfJ>gbC?$L=cD7%yu*-FAjiQmbEe z-<$i#kSp$GBpE=>t0qVd34*emVt6?p2UG${7ALMup&>$}wOn*wmIXIQucu8se}V?m zX<%iSQ5-=+6H91mpzcVV9$*AjV;BxQ%I|KFpa}IhXXye z6D_0@vb83&w8vjcdpUf`O|23~u%X(RDl^2(hZ#{O)h|WGMeeQ^TK*h$(`2Vbu1^_J zKh;Ti6&{viq`b(<3sXwKOAa765m=R_sqH1brnbrgM4UlOwfNosp~-(G(0^$yPV0Rz$&&C%z#?5YjEJ+M68&?y11Q6bPA; z*P=&|qm{l4=7=Dx7B&^4!Q7IPxf!>dpe9_cr%2Wf08H!dm1al96iQdKRP?wM$40bZ zI%$^O_$=KmY1FY{q{!Oo{S=-h_LwPPNa+$N%Fo&}-1}O~OpUEAB-Y}5NBL`+4^!L7 z(aGwRvI zC{05`aU#K1kSnCn!?)YmWPF2RZXB`^?+C~{%DEN>I+QR0*$GMTB#^QRp+~%}^a`J5 z-VdK~M%&@ztdLcr9cGTx*hZqF+m-j=T6vHCRHTAH21|LmPTd}neOYb2!7O47(ISzs z3&2bcUJEO;P%k)W;)sMdgBFk-+wyb}p7hj?XM7;pF@lmF}b!u~Yt=PDQb|y!yLC5HwxKUg=v+IJW)%yc&*ps>6OtI0Zho9ad$6r)3;A<1fZMcbgy|sEwoCO!Wnadyt?p8ens?Jp9wfEOZ)WyFfX3 za2085sAXVbn_T(sfegJ7dqlVjs3bX$MjiY+2dus%t%h@iiaJf>(NI7}$Yd!M*XU!w zy;e)6B&|)3Wd+P;*EHlHEd_I{Wbf_B6X5^Q0DxQ)d;6my(*aKh3v=$q{Aoi6015UCud#tI#>m81oc6}wyj12K2=bi1wx`>xsn zkfCI#l+NUOlnhIe$c`{%37{d@#oNjN&~xB!-G9@@r_HiVp>?Ac5(U4v2D8vEAoeos znlLXsko80BdmA;c{l^b_C@~&9zE;a$5rzn-I(Xb2 zv#b@I)LTMDLnu!Baz@#O=z!dn;3IxID{=xWOCE=zYEP4cKvB$aw!PnrCpT#1Pl7i$ zuFGl3IKIJ&`AS`v zo7=<}deYZAj9@~9 zhys~{c8pi-X^TT@IYCw07Q6r&f)oHT_jwr|ZkauhE;D7F;b#qJjYVl7vR+i+r#ltp z-vxFRr9^(2(}2eoKRbpgwOslO7@5n!>88aot^=z8`r4qD;?z)aosxl5m=0!oaBdv{ zSSz_nADDXpRVbg=OMbpbGW@5#oZZOUnbYzN2GpvcdCAO!&Bu=R0O*$W7q3cj6(xMW zd$I#ZBM8r99Up8rJ!iEra{3sZ!?7aJ=cvtI%1R7Gfh_2Qn!PA(_l;C{pD=acr!ig? z^yVF<(L~Ab6vQgUK0lhj{W`b!|8}*wcxnEQhDobyOjx}PxVk3QP)`h=3et%}vP@{h zBU1}Y34N{i^Qt*t+II1z-Lmk7g&yfYUsx z-Pd_m;VijmjvtKt6UTalGoQX=ORWg^rh`#r9k*LMvkej1a?SwmQHaqU=%b@ z+`VgiwrJP#9D}S{eDt0mD0o54ydJVAJb2vZ(Mb^FIMTaeErG$1#qMh#2$Uyx3TM^} z*xX9t+p^dV$(N3V&-?sq(Aay9`0Pa3G^^@- zHcD=37N2OBA_%3Zi3b^Iq9`0XDG8Io3lWZ} z(HknxxK0edpcSKQ8m#c8BzxXFW9$lSs?H@OCT>YgC{OSt@&Vi8ljSOtr1?HmhWhBj zbg%%H9$ZO=i{FZ!yE&A%EsGq7_OeuAZq8BN+~Cu5#NP)(`{*d#Fx2ah6ZyP)?hj6q1 ze5qK!_~i4&$*(Uhi#klK3}40MGuvRJz9i$YW6=jpI>9>Ik-3ep4Z>SF>4~@WoxL{J(MBl=zNgJ11eqnl|KctTNjmdQ-f@io!7kF4Vp4$&t<-fJ+K7ITtOcl7X_d5Kw7bhvIu6HUi+ z4_@+i#--;~s&XWTznt{xHgNkbbJ;@g8Ov>uii zVDurGaM#suasW1WEfY+G; zjiOp^txc}a7=J4v^jhz``n;#rx6EMeT=xj3Zbs12RHvXOb(M{c8MrJ`6>}h0=UjN@ zfRx3Q^MF(KRdRkRkbcpMe$+&n+U5nm#|3`ezMK|yG4DrO(|s_)fY7@29JD0-mH}+u ze1%3^9^bh{H~ZBkb}RmcP&E9njrqG>b4ijXC7J+f(B)5sWFfOQshF1PVmB@E%f&`2 zhy|JJS?|hb0K4op_D~i?tDTWsnO*%>v}n&?z(zkt6zJVsx%5Z@N;KYhveV}&tOA_Q zL!Wv%xg>8s(7wb(^{DL3rzs72lW#5(t~GkfdtERDQ-k8#?x9@K)QAZ&r1%iW`Rt&L zj3q*+PWamIYK;~_Y_Uj$-OM{QG;Kbzwi)%cyh|$XDggn^p`BdNlNR%~t_+jNn20is zwVn*h_4q~!70zX@*ga}Zt&%@EI38Z#rg+soyv-r`-58+;-TcS6*=ez&=fmxM(^Bov z{`}Fjml_z&2BJ{}IbPSPg2hp1Oq=^v=x7X+d@^;?F!tY4UYQ+Uvu;7e!rO+Sa5%!H z@74mpY$?lYidhSF)Psi+95%gUXyalJQ#Tp9soR*bw16_kVc;qgt+SV&lmi zH*}AsL3KTKe*T0yttM(}r9!R@n=uBol#cG5*$A2hdR<=c-;VdU_o^mclqWaozaA)uFKR#W82WA$VeN%J(7$|N~MUXv3}M};i}8*WW2A5yPKMJ7sBeon{)E8ly!hO z+d%=|cu2ai;x_Nk`*7PNWdWCKNnIVe+%;GVoHh-2UOr>hGHW($;QW;65lP4ydvQn8 zMytwDP&hh(K4Wjt0xRLI$cElUW-9Aj7Sv@P4cLAkpzK@}!ah&fzvlOhVskA|u&tVj z=CzK!o@&rs{L+ZP+*gM6?3(aTzyRD{RYSNt;SFX!cF2NdGvQXk{T}WCCN9WNJ9-F>0`81 zPZc`9RL_Xf%}rK4OEeLgskg^GK`VRGN!xlf;!I<7lCo^)?$ZbIGvB-nHwQ-bSU9oQ z^mW!$``l<2EoU~!&RrMON&qow+AV(GVxAn*f=?Lu0xF(#U`P}}Ixaf_iU)=RB+wmu z=4XYJG@DsXVlWQNMjnFw{#>6|cI>G5a4~0~`TXlD2|ttgCb5F6r%Ky&U+cn9do*+s zTgoM^xuCFYOT1D7#J+6`y);Y_oP0-$EOSQ`{$oOh#&|prrqafHO5gLMv|q7x@>4`7 zCzb%|RR+bs_~%L^cN9TO*olLfq>JuXBlXwx1|c3x>Z5UlLBxZ^sljj^H|M``IK}vN z>}48!$QMYRj?K9O#9;2>hWWf`Rz|%hZEH3gymfhP{<0?=ijqcbdG=E!MxI};N#33#c5p|+Zw6o=HX2uNV@u8mR zOT=_F2pR-VJc-jt?+#qj6Uq08{-hLkgG)KWJ`vrI?JP}{Cw42wMpD(#G4hz^8$nshcf_2_95!o~+fbz~VZZPmQtjh$tHiusTk zac;<~0SN;$d(s_|SizYL&!*$bD-rUk8{XwMp3-7?@^c2o4U_=mNYPQ0VY7B>$xwt- zhj3H;>E?hhl!Y2zF&}2*VHgjq*|!CIGe`uRt&=ozhIWT?02&(aP3JhLtZ{j}Ww|=1 zOH)~t16`e1Cq+a}&rNig0P7*nl315JakAOSIPcIEatF=ay75J+q8QDg&8>7X_HxcV zCT4VTQl~Ly!tTt3DBBR9=b@#XiE80^&9%mRa<2$JKy-IoI=#v1Bg7qNteL!I2YwzX zsc3C047-tNh~`~}sNxlw+tqOCC`RS%{)3WJDknJ?&&`3nFUG*~ndM8qy1ltM*lxKj z?a))jkGRd~ceQp)$j9ZAoX8t;rNovQu}wqHK12X!>?5NoNSwTYeH_7&rvFd2gPRT8;Ig_M68@gjb#{)W(JoAzl0mH{fKcb zgDtp|hP)H*0hP801&R}mo0)JCA&gDWO%Eig@`4e6X`Gg(6`E7Y1p|lFs5%p|k;hH| zjwZrnlDIc=ucC^KfJWfrT0pPr37lK>+j6%_IpHY8PqH=8;NVClNzxG(q_23lGg-*< zelZ#WY?-b~7QE-v_SQal=(G3*2H%+aMA|Z_MwSd9%;VWj2;v*2JdngTLfFi*fKQ|f zIC!bpXs`~tn84GY+R8by8l+@vokM|SGt{14zM;3GJ+nkE?VP!qv0pJ#_Dd#n34IKx zg`u`>^u+|KX^2K+aGT5(I~YVUA4*MzG7C!yDHq4LFBNaT@_L49qxPEL6j$bNzedOU z_|EIamBq=g){E7*!XK;T?tZX-QF?GT=KuXt7l-=e4}@|MZEf&+8d@ix*a6S1!E7s3 z18so;IM~B)2%lV0isASx^lIK5q!PurXGJKVgk7QGiuZ%H5uP?|XU|Z9#~PN7A0ms$ zS^k%~m%Z&3wP#3FO==7R)|idTEbpa(2xkk_m>c6r?g;1n+cGgA2>!%5Mx}btDdXkT zd`qWM7qw+)-8X21AFeTFDcDVav^e?KAX1OtWp>lW@$c3zo-Zz6TAaN5R?uDVycHs+ z#qs}KSLRds&4pJwyUe)>JJFTOGE!9AMkFE?pvQ^4*cP#}0j3S^U0oPr9kXqH)L=QN zD`ppC5(8f^lZ2cmm1BDBv6(?MRUK()rqXD?R-~Axhmp@*D0|5wt9+WAI(2VVg5C(n zV5I4CWL4F8QtzxJ=TQWqN;=l0ip4w8$~-m-1S&l>*h(S9!v(u4FDTC%w1YE7n(vJ* z-e}SunHa+m^Xkl7bV{<%6j^xThZ$qfm1&%K)2igfW#AttuC8RG+=7ZW=arG3xnw`$ zAxUVRHDsGgs#MQ}H#NAeIvcZ3!5>GoRPf=BmK~~e%dokax>Ay}*ikLm6cqILJYSmJ zwK`OvDP;na4`}!!vr-0TlA!M^%PJit3$Fy%IvCS)S#%DtN(Hf4gw}@nUEz#Wt)|gO zS_MCv(om86rvJY5G^W*Q1SrA`@`W-s3fsVli#qKryD9%+YKd^3Jl|^?r}XM&96dt@lj8oB)MpzP!^ttt%3u(rx-rS?{EM|3}-;?6p4{NEJsdi`7T*PEm>bYrJISu<$CFCa*h(@a{rI%%o zH#&Gb)X6M4;jE@8!8G*SF^LlcZVGK5oB-ENhY4fzM{Fi< zdf8$!B~oBQt)4I8Zg9Q$@6#MJUFd9qM{(K_LoVBx?_$;c+DIxaoisFyoKvg;gc7Hw zG2hCQ^XFXll_4=>Cn_?UmZ}M*p$Aoum``Eu>)ifFx6-7aFxF%zs`vTb#Lk<17Usxq zPs%j1YsnKyGl};3RH`ijYQ_?zP>ogfPfJAMwP4Q3)=0LsVwX*3$ZT~QNd!|R-o6hO zGsKrHqRacoR@&61sSZ+99HVP}1D{%s>70G6hR4dW2)!lx_|BIp^~UH`L)vk{ zxT`wog7r{3WP+AXZMVJ*M*fUr<1?KR;@WmE1|l}sY~`wDaxw(O;il)&B!Wd^Pxr&2 z!a>}V6aWvE9wo`vj&M55&Ea@b9%r^-dquRZyA~W~9c<>7HiZ#;DHz=@Xr$m`rMgAT z1qMxH0)<4#teII56tbF57SGybda>ZZ{6V<#gy`O}t*BVx!os`2|7HJ^7m+7~(fZhS zAi%$^vb>5SB{||+pSRt3kO{Gou*hh&t!Pe^It{jGFK0CaJ4UHNKKD#_Ig)g=QyJVM z7EDRp5m3@j>3Qm^rpd%rH@^=7XQaf62r;k5`=lZd!E_|Gl;rY^_5|cMiH;XpTSGg!t zV{a9#6`UGdp`Ps+Kd~MX#sCsL>3dFSjFf`}bxe92ML*I}`i8qd>Hp|_+ zu8X$8t8kIGCM~{6co^89W45yW9FF&*Ih$xBBG6=OrJ8PvXUisvi4&D~hyvWAGqz0W zjXT6V1sOxRHO!ZS(8Ics=`$%crNoMSJMEJmBMqd9SQ}Fa^0BOjJ>L=vsG~nWGI`mo z`CCeCDV1nAyR3wDlWyS=3{8yeI2;#fnM_3xt`2cRSNpe{Eti$I7eZFeARX3ag3hz8 ziYcFSEG9ZZjp9-?oF)nU5e=vK&K^)69k0V1d&5HL)=0_x3E`YfX&N$4se8d~UJQOz23(S$WT3*V4$ohfT>m5%mE z(g56M#FFQ`eGC?@du&94j9H>WI?LoM#_-%$p1EPfnp=rC4N5E>EIT)a)C>LR(@}f; zoF$yZ_Kmna4L7f+F?zywH)(8R%OL2w6IJp`@v4?d&{GVUu^s!QS#p`fVS_TGgspwZ z=TGX%0C(JYb6Rg2z%=j}-Wt*2u%q+{!nq`)knWH67 zQxQYGR{;VrKVD(belmU&YGUZc&EQ%__}rHi$s|}hk^ckX1`Zej06oO%-Q**;U)Ebc z9fYrkKuE2G#p<9a5bpQ$cwO1fJe%Jbqcmcyc&yN?Y~?r{@*@s_!E<;%2hhRY5`XHg zHgX2L)d^vm;R*O9lVOW@na8t}5ij->Kqu)gJDJO5?Hsh*(lHv*_DtSh=22QouqG(%^iVdn%Im5C!0f4? z!LfykOjG)&DAA(IyP^&*raX;%QiO${5oG%bx3>f{(Q70cv;z(hN+A@}jBjecHm%Z| zgsclrA@jt8X+v7nb9%&%4h=h-_3;Ok%eA_`HOFbAMOS4rVy{SmTZt8CL3F?y2*8=E z#%9CM1eNgFVpj^BphkYAz>uUs@U$iqWc!qoL%0b?lhLgH%*Gc?M`Rg@?1yVK)Oh0! zg6*smHtaX6~6NOm`wM0S3iFoPWGj9FRorrH4qZWyDfM#SN49Gp@3g35?(Wqtm+ z|3e7o0nf(PS178`qkJ!Xz{Fc40#;XOgCxM$q)g0v8id=vrKvpP04J{DZ+8$pd-t6g zzo%6UU+F3l?#NT@wK8p|X|U0g*Ajw~C%>J^I8dnvb1=Zv8R!0jx= zJS&pTS3gjE>CH5DNXZg;M2ROE0HMVm5c(1R%m<7bBHPBn<_!{zdC;uyevD?!*duGY zr_4Q2EimBt#-PFdPDG-3<$$Z5V5V=C!6Oo^#4%Ri4kn@=pyEHkbaq zkRop=Yplam3!YJrt{_EbC4gx#84n2S^RR9mtEJVLG)$`poC#)1O`AAEf=($giviAQ z&YF$U8#&%a4$uN}N7QGUR4Of$|Y}8tLprGiP(!S1W!w zzC3No`>OLieP^Y=iD`02jb}zu*#;UR(lS5sgam^15~?xe`_d~!ShXW&B5}ubUiJsf ze1!m7Vui{~3F$bEEzSv~jnQB~et?pQ((qJ8;Yy8_ydx05@>O~6^HmCaUHcOm3kC(>hFcAoQ5r&`c_E-+#f?$n6C{Z_ zL_IO-2Mde^1~`jWi=^O&Paz9RIJik&M>iE5e9K!JCM7^ucm)g&HZxjUx{TCTvB#-H zgpC6rskdhRFmVM%;B3pBJ=dhgbh%=x*w!J8Z3HR6k#YUVjJ8WjUagu$iiy=o3*KGr zXoFa!&DW_eOgSK!*F_?^M$u@Hnz|cPh7>!Du9voUE-s*PDe|jmgeC5i7|0CwHBl1G z{I(W=KL#4qt8GaDWCrFS`iC)ptSGi{$}9`J9x}u@e6KKQeke8{P_cR61da zTpoVIV+vOYpPqmK!8OnGrz7p}ZY`sm_!pz+$Q6ivMtLR?(*FFn3fs${QLj#wn@Eaf zQr#%cDT#1FpALvbQv&1(zRq?wtE+_^mwdrQB0{K33wy=VkMznqIZ&qX=DWvhKj+IGnj1 z|LchKgryow6ukqh^iZ(f2cRNc;nPw#Pz!ZJ|>C*6rk4#wEVm;E~V!|mvK8xMwP2)GKoOl<`}R*H%Ou2i>QKv;y+7pn9gsG z^NY4X&X0*(91_Y6yGdochzf`ZC^N4wmU1lq(@}AY^sSP5$k6|Q_BHT8u7Z(>JCY;P z;E+ghho|^6qfIrTAQ~Od%trdWV%iNBnpYmLn4>*2n05>4vm`?!?C~a3zGhwcd^dCA zY`?$c>0Gs2PMNZu%YZWR(M+|@pB4U**511DX{y3?HzP8;tqOz7u}2|9yr!kA4b0x+ z&HMI2n|DhYk|q~2HyWGz08jDL4ygx;2-Bs$9>+;*LH@P|O6hSL^z;g5=MiMP*MbW- zMNM-CET|gOYGG!4zfq#o1Kci;yX$5rpp=%SYx(D}oKI4paiW2Z)AW=BlfhiO89kPT zQW*-_wnjc-k}_RhVHrrq9~>s|CfeFYI?Xb!h~U9Z{SA%~`JG?Y(!Q^ys3EG&iZ4pM zD6ab;AIBmGKdHYwlaiTS@^^=2q&J3Nd{f{Afx;rpkL?`#+J?(t>+?!rDppcKuHjodg$ikKHC|1J#>9h^`w-$eu}$fCr(fcuAysFd4Na&2~7ID)yAC3ajRx2%R^CQPwuqLbC6!HA)w1k~N;7Lo*bYY7!ZA|9B6d0MaCiv zFw;Wf-MvCOD=o`RGfcFdmk!}&+tK^6^Ljcqh`K!JiY=c5o>ZOaMDmF=)<1S6+$Jst zocIA6M-meQ?}M=;6&0Vl4|G?{iKHf>Jo2^!x^+xHbVRQhO2p)9=r;0sePyaNxX@HK z>~)Nr5%`EEEX3*Gt*rZPInEm9DQ5R|v0|?txDjnvcK*^9?%7HG4GBKvUQm-+5sZEF zc{&WFD@jgDTa_HKEeNJ4ae~$*_c_@s^~Lqa@I*R_#JTA%YfGCQk6}3cI|l@jnHLeT z$T@_PU>W8xVPz$Th9$&{QoqQe??)aKp=~6gnJNQai<2RuU~4!YZC>^eOzsL96*?~X zE$w*{$`dZQI{4kP*vpd(4U~t5W2`jTCO3IDn?fs*a;bhwSc45jkRKRWm-;i>a!L`< z;?!r`={1FBGteM|LX>xlt=)`EmOTl*I9L?OS;Y_;G$VgfN4_6`b7KKt zBDN++c?zClDKBq7i;BNJHL9_n@H$y)HGi~HrY%KP8gF%S^kU+}=KO*BYshQE*`R+% zD79wvxWS7<5zF7#=w8p+H_WVf;~aU!*;c^ zDUzKfr_LT;Q_|Eko*t)}pUTxj+|EXibNetQGqxnQ@O4gh+pcSrKXq2PYnfc|09{6w zV@}z(p6eOjL@qC3u?;5~DalV~5wzDwry3FvfE?Qy*1Y40Vod-$%6*vgg}*%=BLJo_jX?S^D9vkx)Q}Xj1W& zYXOUkYdu>@lS1niX@V?2EomNM z+1{0&(IkV-=3(b^FBxz!)xPdv8#8E&4KfVj>PG_^r%=N+CpNCSXQk0o5t|&1Eq@X7 zDs=0T#alL_oF+wWys#iioa#qnqVAT0V9m@j>GZE^f>8>b8h;gov#k6#|kd{7+x z`2lb7JsGVf3NvPoGyfcAsgBa3Hm$g%ay*48U1|d)iMaf5ru&Lu%DqQMJ`V9m1Sd@e zAxTb1&aR-<>P|36HOMLt?Om;n5#jFiG&SDT>NTtX_!bxvE2pMr6yOxq>P9fC;Gyh< z`<02<23Td|3G^jZk=nk^QkyY)-#3VY$N?B1Q9TFMR$ufZ*0SRbbYnh@pbbLBS{9Ys9xLJ8Sjb>50huNY1+qzma^PUujqHB@zRW25A^6v~3%_pJ;@gTpWOLSbBM+fR< zVeS^!d<_^lV`gZGh8cK9XU?S;vb4Kqi@VNbYPHv)&}B;&q%B#>3&nHhD6!eg)UZ1; z9{pk4TzFU%hSfEx8%!O`R~;HfDt+8ugO0DK$w+~Q+j&}(lteWn3WO=fRexz_`cs3z(((V{e0_F=ztEw)bO&e)Npgfdx zUqtJ9+^sb@I5<(9O<`#hFIiayLR56bu(wfhCGyIE;RP1|0H%il01^NI0CZ(|bT4pWa&#~-F*q)0bZu<4eQk4G z*Ky|e{T0`&+KN;)0wwt^X7o}bEEBXyP!U1J`m}X1KyW9R7icg86Z=ULE35S?Dw(S| zwybzX5N0G=;?ff3s0fsj4@2{RjDN|V?x*{l?sM-QP|n6xCMjU%zMPjn-A_OL^fS+2 z9rTO6&GBw;G<^0io?3eHFN)1!ceK$PZaw=K)5+gH@t1$`{B!^1nQ9U~7Ct)MefCr} zne3c7efp8tdaQ~1!C&7JAG`($rp=WqG5Pe1wO_fL;@ zc25=kGTh_T=8(U0CjQrR|D`CNsW!_E`bYTZq&MkrKDSm)=SO!Y#e?hf<9EBoWOj4# z%xU}zAM5vq+r@aZ|Lm#V$$o!xx7ysCoGK>!JDbm*nrvR3obK+1dsgGkzkT-9($eYl zp(Xmo=|Ar(JLT5qf5Ru;Wd@s*vY@wrV)ONBZ|~Vt%cJ3Bb2xcoEnMkT(ZzqsC28FL zs_0hbcz1L1ERQ)Z^vr1;hG*7C8~a7KU+#wS@0R`E`gk)86pz$X@#m+C-Uj`8XJ^{& z_J*U$W;r?@Q_sEBn;&1B7VGn)!~HYG z>ej>G&yRo8D~470`P-ACn(oh!{(bVy>7DEXldF?c&;99*e_jordvj3iO?yRucB2@~ zk8g!(>dk&P?Z`#KFT)Ruz3^N5#DnXzJKc&V^yuG*MR$Juaal~}N4F;7-$#c5bpip9HV+6g|y97O!5qu=c|FS6*y?;Fqe|mtj=s zy2JGB!`Y2dF$in1I2)cKJXgh!bT#}rEv}aIE)RbnejA?t%U-cv^>{^IkPw1`C0nm=ivhL<6qMK%4zt) z@rT2r3iFD=eUpB4^zpFR9nmO%$ag!w8@_5DAl!cc5r*!?m(MR>dF9IG_My8xKmI&C z&C%Tft(Uu#Vw=`R(GR!!`)M($W=DKK%qa$=I}Lwzi!r|$y<+(9U-TZ~XAp@SUNG$DVyOEitc!cRyeDJ2S{REPG}pA~X$Y=|QJLMR zWmoaV!Y#rlN8ty%G^UeL_&6>2`?@36c@^^OJi=hDt<2tBT`6At$(5I9KYQi1woiWt zwj=zaHwbqgciEWr2Em%`o__MlC!cF;(nw@wvhKNzXnH}zjv*FIL!sJ~W#C_1`>Ddm$eh)j1 zHes>o zyXEvu%d^I+Hh=ixL63JpSWd@_KmQ&2{AxA( zjO^W%1`GDN{Ttt|oe($0y`} zPc4OY5KM2_SvWp=VMo&Jz7zh7w%K+yI~Wu@;m>04!L?u{N8w+zfj;kspU#hN4?2F! z^4_FVKvqiFxkrb=fNsgDMHdWHTm`d>`8TIj{7(4$4n5OBc#26lE9uPKL0 zVYv0J6W;OZrQ!l!D6FZ^!ZMZ95$~<1#dcWd#b9=40`oF4qp}sA{4O6KbX?IqrY*Lyk$;dUKZEgIEZL%Qf4nS*dfh0SzCGyM9r z9I`Qdm)1EQSo8p}cGZYSdN4b{EYK&(0(Qc-I{Kz*{K-&-nPVsl1TlTS=O4e|B^UT?gD!o$Da!Bf$L$IVMKink~S;)YC&Z3$oRhyPeA zR^hhMY|yrlPlk!_%2j!By*?!qPBw+cV4V*K@?yiMcTRef?|Z|9r8)Z|jL{c-wVjHb z;qW-WpTx^S;VuF1z!_ML|^9Aq2^a_)#%#Ul^1W7fN_p{?0xGGxs|nY^;rGGB-II2w9nf&1eyaX!N3YhW)uG>FhbefrcgvHW z>jyGy#(4cqV~y|_as0yK3xCMmk>jyUZnV1OpR-|~{Vr@|Og>o>UaWVbmoKAkR(j1M z#jT}5%<(O8;6pG&E38lM@ky`r)RVQPz^i?CcEBg*FXHZ9XFp>yF2k%xE2^hYm!=Ee zDgEd@HjiIT;?T|Q?U!le^$|FjHBItjwTPA6vq_8H8 z{^28x?{~}#UY*K5pmAgCqru{Y{*nL^F6=;!KGuX7dzhIaS)#DWPQ3Yd$;$}aKJ7}K zPwx}a`m-*VwSC9$lcRvJi9W~f8Si!aukep|(^|o9qcff#-Tl1bVd0W~|I~9Pl0c|( zg~I)tubnAY&po_5KmOaDY@ z50oFr~z-Pra-j2|aeOeW_CJ_^w@Z!KxQ1O|C zpf=3>yV%^pC#k|uXGfFhY8;V;!D^?uTq;&*MsdWFPaTHJ`O0#Adz^OoJn6zz^704| zHweB5`RV4E?XWv?UHvXyY`n)ycJq&&yAhu1PRUCz*#6+VROBYyAE^PQzy6&s`Jo2w zVP-xa(9GNoqqQ6C;$Zf>Vla}M917&n5HG}S5uT4Bp`-gdyagrR42S34ojelJv6>x> z*cTY_%VYh}15fk=)#gYMmUu_@2zbI|m*5SW#u}sXI#vNgtu$5d(;px8meP9p;V3ws zGl??srSLwVhTD9}YgTRBRhk!iQ$^F#^mmfA3z6sKzweY4AK6=BW+{N+Hw>osOL^4y z+b!V5ctE=)I}C<8Y7<&4@ViP{noj=42C=94au2SDST`7%3abFCb}XI{09E?fHV$llI9^8M62HyPe%cZ+73PTSz-#6; zdwU<>lO;%N{sRQ26uQDSn#7pN&N{CXp8EI%dNc{}LP6zW556KjX>?bD|6u1=rb`ex z1?kea)7dg1zmT7Vz&`#UBZHJqpdDkTK;a?2VJT;4mr@Y7hdd$HAC%E<^yMdbx&h4;bW?-%SEUUanhd6ftrlCL)oxcK7+vF6vy zZKfRic7d8xHQGQ~gxCZe4wD6rt`@#-J+VCvh&`U+UAM52X={!+6q85|7i5DWcunx% zaXK7?m4bMK1Gn2#3HkBt;hG;uH*iX*LHOp)DF6%F9c{MmhnssNj!8K1A*^R(M5|)R zQ8_?oagQm_5RA_*hk?N0jI)4G%2ONUY(2%E6BtWxRdo`-Y(O{R82x}j`L#NX;KO&m zjt=fdiLvWe6eREpGaK2$_gfWCwh!T?L~ut=A=*RyYwvdkZ=CiZIlb^y__Da-gbp$Z zWzy;vfHF5?HU!is9Fb9>KkO(k6|aUb1>=0HW1epvM{_m%g5RBd89Mt3{$QI3H!ED9 z!^m3{Zr$ePNq=|$NCC=Nb4kJV5RadsFS+sv(IH)#FEB`;pF}-d;V|tnQdPsX0LF0O zf%QQb(#@$MjE))&JO@W)sh5gnljM-tO$Nw^R`fPwJ?98obSE&(l!*#7Z2~kfoT2zn z9wGs@B5K7B@H&OT{rT}h+-rgg$yyIbKyy9?>7;-9*J5>k{7>fzG`(3YKfJ;5!Ri@| z%7ix%1%jXA7#;8eCvPzi^-|8RZ77g9rjIJVWwCFBtE3+aO9J9m?4$feVE>#%esqE-P=cyPcZT6+CNM zhL20eB3%#9#iwIbR{^4o#~zTfe9EYj!AV~;fgnJX_4|iW6gW z4r=sHkNFZ`g3Q_>eYcaJaOC#0YXbj~&ml_PX?DksrA4WS(bLvTv2`{+f0ysG%Rp2E zpF+>lHBP+)J0UO#`2ysbCK8F>B$$q|D|)|!9jBq`V#DKM2QP%2oo6 zG}0I#;nR7c5?8P5VW6I#q;8P@Gv5v#J}uWxmMdaL@C=x=&;)atnjEg z7y|?3fsX8z;4p`Y+>w1_qTh{P4CDp;$XNy{aBt)vbddPi#ze*g!#<)*@(DML^J=+w zop^76H<%IN7c_4a$~VxezN3&-2!37uQ8uFhih?1!xZHTAydjaummD=LCTu^>u{Klr zqj5RxZthyQprW_MR8p)?_8l>>zbt!#Um^%f-_G8)#{f&kuk;AUppb)dPnZ4M>S@@E`oyC>0gadP`n1Fh zaa=w^BAHBlcv-ThVNH(Y6*}oP6OsUQgK0CqhM2TF7{)RBjv)yRaE~bhO?khDwbq+L-c@Y+j0o7AcO)1 zq#{e4yD8b>6fbVrs3uRi=op_UHeTvgc8P$nf$aB=#@Mu0c7&Y3s9M=epmg{d5=1eH z%l;J``*mJKl6!H{@A@k?B20Q2`Fd#*Bg;DL4tR?~$$0$q1!!uiGgx)DT<*d3Amf zLc!tF*pOOXvVox0av0bbGbhnf@fdNx*}?a0BkRB0apKKa%l~XmPI`5^-?$1=WlnYhGb9YmlWHK&)(tjUzm zA=-9wO~#(K_!SsW z8RE4kMPfqQd;3tuf*UbOZXY`)#)Bbg^-8~;yiyoT!nsR5HQnBeXb=rA05EcB7F8AC z>agzK3`op;Ff z#xpMx;SC0$D;q2? z!7*R-HpHU%cqq<$$2w??jrZBD-2jZuLBD#X8e;frp)AT!?D*)gh7PtMH6T>p;+W@M z3BV@2;Awx}A#k2=IAaPOGdg$-X=NS#VJP#&DN-gdRcg-(9>HmRmFAxw^s6p%`q)7Z z6NeuZ&J9Yj?&Gz30x(i;`n}B#0)vcVT!RD64Xl;Wv|tL!ZHlHXj6JtGo{Xm(o0?}- z`xcR$@NQCuGTcgJ)$rLJelRlZ!7QYT0N&t{#zKLvL@NBc`^f5(_2-<}*6iL6Bd{M2 zV~(xM!RozuwlQQOv4}nC8puK!D0V_7*p}NV2{EqrYcLaxQdh!h3bTs}D$cl#IXVQp zb%%YI)o@xR>Yp)a$`UR|!l_GXB&r3$TfWz0vUhYOEMA>Ll1MX1bp#--IGDvSTA%tJ z9qz#jbsAzj&Q4L*x1)tBU_(=kQci7!0!48;sa5G2Yw|U9h@^mN!Y;4^J^YY>ZRO*; z<;bSW?XR*cxl*?1V#z%9O@oL&%ZGpp%cXnshfU zOT}3-E#j5LH2G6Mko794ca8eXpOW*3P8Gudl0Sd2qlHv< zFQi%RG(Vdg(;TJ2PV!T1Yz*+dwHy``_E@4Z{xT9fxFA!Us!FNNF}F%skF7c_N~w40 zGQ6=%#1n=^kX|y79?A#ehs;I4MPOQSF)i*#O>@adws;?H{qeRgeO{i{#8<-Q4I7av z#G)T!0+ke+NaScXTR!F%TjrOGd&$3}g=L2obOM)^Q;bnbP zqhE(FYz_%*34TjY2-x>`BHujRmWO7{LF-s*>cR*}T6I9vH6>PCAyLQn=0Gvg@J%XN zr31QCT-_8hd9<{^rT8B7^qVpw@|wMl((A9=_%G3Fg(tzo1?Uhqs-stk!ZzUs+17xi zKu(S@^?e99e!ko9sol{DBoJB376M#8D==~Ku3GlXJJb{qG$VYzdZ zj+Fb0_E&tR@SFp{z|jtH$OrsyQ*(0s1*u-iEJIz-BFX|XO|YsiW?9@C5$k07ASDtQ}X%9CNJ z6{B%)LAS{Kd-YQVb!vd#m|qC@=cAz#>e?)xBVb`}Fune+vS5aEP$T3I_RQ6AOxTG6 z6)Mc84GMNR{F{tH4}r%)Wxt&~Ls3Q2Zl$r#1ZgEQ?uKW{`$v46RF#e|4)UYY=5b+8 z_e4F30&!bzV&B1{c1V`fGfc))fU(J=0H(mR3u~+7G4d7gMq3<=_2t1xsz{A^gm6R~ zA(lB{vv3(NIK#w<2)0!IT?^)gSuUDL4@C&XKO;N~!x*FWpGu+)oMH}LgS%k}qW*omINb;?Cnq_<$0l@=#)C>QNDunZYt5J%MH7mWKK`3LznGTt+dVk95Z-bTi=jM+~< z9~%gs+c*by8JM=?%{3lmH%B$q4}oeF)J&_-xMVx11f%^dIMA9RcMQdea*h=KRg8%$ z!6e1hwwASKpK55tVK3igKJ&ZITNaXlO!COtBw1!aX{%s}wxz73$U_R;Id!^S!DJf} zJv;Cb5%o*0S37mYamC}??Af~PNxDs&* zV1Tr^J@UOj;P0M}e1jjl8m9;B$;?D_hfFT~FBlg!iR?@O@g1N%;djZ@Jd!gI-TI_r zV5f4C;sa?tsMNzUiR3L3bU2?BA&OV$$G<+0uTU}A&x^~mH?J6-h!xVQTZ2N~>bc_F z`S7jt#o8;gcUzXnGwT@v?P)GoF?ejB-xWg@-f8{0Vl_WD3CAR4727@a3a zR88f+ps5OO3UVoSSfVh&ep4kAFCB$QnFg5VA=3_^b2}le&ERUR&P{SIsSLwa&065x zW96=f2?XB*rD$4?I{RHw4-+L-SS@zc#5zW>UKX$~Dx(T0E;*V2bj6u60jQcKjKfjL zW{}PSpN|VsOStpx9h?HKBxwJJUZDt_0K5?bFHWQr0LNMMC=rot>MoQ4RFKW(CCp>% z(JdtaQe~7BAq*;y+J#z4W#V9W%tr2tSQFWk4(J0oyQq$AOmF&TEV$JJD5`8w%zh|E z`!*M3e!5?IxI0(qJ=G9N{Grgh<@C#qZ_s|026w@1A0b1CX={eM#(Y79xcN+dp0tu znLr1Q%i8YqB9b7SH~sZ)tv+v2>QCe17F+bnXgwUVf79#td*xua@mZSe(j@x9qf7}}s%jI~yx!*=m8ud4No5f1`(^jRaay;r6XQ$)g z=A`X5m&pK|dwu{`y7$o9 zee~0Eyio)@J8r$t=4co`(`wAd!`;bdtGT*RPRGH5pDnxXk9js2)Xm~zZ==6CZj(4G z``uB0Q2b~#Uf*ncnIDg;Vez9drJKXy=0=-wBo+T|IqtVx@k@Vt=7!Kad({<}|a}-e{MKC%X?r75qWeS@pigr&J0Q!_8*@jnLDt-bdR=|JOvol-K z0vJjHCWos3$J_fL3-5BCfWyKbB*X-xjn0)X^C|~o;U>rhis!+8&j~?mMk25g-ul*fiAm$iM~)rn=lvN0J%B7k)lS0P`7pOPEM zWTIky@Xetd8XQHYkPCIqJdvJk$G)XpDR+>eS40aVX#%?PRfePmHdRi7sZlcrfGtz> zcxm*g(WGEf!I^cWC*qZa01`yJ@Udc-pGELbu4~G~3mOD9TF%ETWN6)+S?ttjjgsF) zF`!QYJa?of1drntChEjZV9J!ohyrm#WYY*2Y64p$wznEa?fXA; z_l8OwJ$P&N+(~^W@TuV39si!cc8UJ^zr)pDxfFhE{lqrkxu?jn$=V2z9oY!==+v0V zEC+(&LMbjR;2I4bYGi?_HM#+bZZzWBW_&k>wxHxhM!YGeX)nc<3}Flj(_)^$B_J!u zLPE%r=GhaVjPb7Eva!ut5(!ak2WV+UO902t*Je3m!Y19CGUFu1ik`@)e(YQmkFT$J z$Xo2+ek?cC)3MNVkVUenII~nS?3+Uvp}6DG6QNc_Y8wO)*AcX0)@Cqvx$$H$RWuHA zkz&A9^4L0Su0Y95#(;^ktaz)G38K9&0?uBlug-O|Iw$$+?8eH;x~s}5hz+ED2{9EB z2Cv>YU`O-lZZIXj$458u&v8CES~QPT%wf8M`g%bYl)G>yCIPQ>FsVxq_VDaTAq2eh zW2y8~a*ttO??`=iE<(T+Svys4(8(2c{M%8F5?#5J#%J5S1tw_HZON=fbNOi$d9KfZ zIb11MMa-671Q8+Yq7GL&K?YLFMce~dh5z8^l#xm^ZnZ53Iq}knbB4vzpK>PE_SRXS zePX;D)F3qE#FakPWmqQZZZLkGve6Ly;bZa~(SL}w(_sgYA3Bw^>4ASk#6Vd4Owvu6 zmd9BU03|w5Sf#_LuE1lHGM$LbpXY53)6aqxTCdk&@E2|=ku_lHB|3U{B>Klejl{G+ z{n>Qzj;GU@#oV>#D*I$|rSeNIG72KU5Iq{rDO;dJq`1E6%bG@BmKv&e*zQRJQB@eT zlsSYu;+d6>kyyB2KaN~{Ur$!0I+%ERB*@XolM2*r&PItsswACNJF86ArSW}{rC%zR z#XaPT!;Zy8?IS2{?!9#AWR9|A*KwCx^`xn?2^aXHr#;k=Z)2^xp9z^ZqlQ@h^O`Ga zN7_$~0MVpZpj}#0RRhCc^fD@1p`jc|_FNs-Dg~H1Tn!8KKejfF^fxYTT5F^_KjO@P z%ICU4dossLa}?S(0y%DV==x&!D=^Ol&ugjvL3rF7swZNVpY7^WHw&t`5-Y<}NS$N@ zX~r+6jPzlp%#q*OVharAG_n`I{0Pz;*#Qx^Tw450w~;a^)!3B^Kxt>O&c$DQk<#YS zxH^c2wkg~e18^L4Ff1jfQ-}&CU)twl+0CFbu^m~6v9?(A6(986y=_1ktJB!?cJgzP zb1W;I>mqxC-aST$!)PR(cUC*8qvz0O=>QYxL;9I{ytop|h&C z0TAe$hCp^BUJVCsC5ltJMm$e5#{c)UW6~bro~A;=>yVuy;%8RTmiBj)&)x;s6=G{f zH?sz6vDXzGfujcf4;y+pZ!|vuV3l^SOv0j*pRCRf9vQ zMS6~CSQ&5JH!?uAmt_s4sX>u!JtvxhN~t52Q})yf(O%OXlR9BTk!!2Qpvg1W}qU1`MvfyW|=taW53*$9O9bX_~%I8Zf#uUndjWM`@o zII44zb}!XvrAJfV#rkBd>H-m$5yAT0aX zxL~Yi`%ev9+ILrUUI$bJ0OwWqEl%$ny#^(3NoKq8jW)O=svuh=tJX*NN`X0O(4uBP zA|KSoxQzqiF@oD}Y|;sMMzmLA#10uIpTAkpd;dW1N(v4+7cuFDwN$eAa9|Bdf@o9X zXML`6oxjBGSp$X2`*e{fuL4_wt01J=DT8rBGw3a4CfNsNqL#`A%90ELUsA zT@GR*DA!NOTx8yh*2#9dPoCP6^9_x2*r0L}bu+l@xBHk85rYbG zV~22b-79VQxj=9$w%xH5W=AWeEwV?rtc$_aK@t+V^^~a*UzA5_Bj0Lk$p}4(dMXf2kPg=y-K=4#4DnE^7oT=_4*yzB@@3 zzGycy=)szb3Yn|#syBkH(LA&4bSfD~{k{ls%z| zVqdrtkWdQCSjmV4=KHv&lTW5y_GIi>u6E#stfC~tL^Dq6w+iSGeFCoyb<+cDBOquy!`gFw45uAZ0#Fa?>$*?N7tIn)GIC$bFwpi~%h z?K-BWH3CMtSJUYw*y@MOBq}J|i&HI)bgnbSm^fx_H1ChnQQFhj zv2<#2k7W^Ks|Vw;j=j^Q8Ol~?-#2N-fMRf46D78?36NNA%Dc$a#Q;*cC7&m;SlFf; zgS=kdo<+P0oz~pRTxP>TBl6j2)M<}ei!ZNSqC$e-hfs=22>uWMe)a~n9-klo%L^y4 z%5d%Po_cO&o_cE|_Kp%zb)j^`;7MMn)>{Lm1nl^!+GefaFhZuL3ABB6R-JzwiR)g7 zi-{IMx)I4w=mfDd%xnx{r5(s(A4U?%&jjU^`c8i@e$8Q_wqcVMeD3vdLM%`s#7J?1 zM)uYY%w@AYzKN?J2_uc6byy7l`+QgiSGe)wG6mWz#Nzv(t5_Vq_dGLF=Et9ekFL&s zeLnp0#%okb{EzVm^W%SLr(^%bgq>o;jM8)jhgy@x+V$tgAgeS>tOr*j1qWq@`lw$D zOv4q;w7*M!p__I%$dl_8E=UlxN?+J%p*d5OdO z*G73}9WZ}u)VO!->gNoE1g=o!GlD&=nQWF{q&4~U!$jJty=QXSKr9?as6E1QG;UX{ zb#=sQi^zEfhfBnvieb6`JZsDJ>CK?Jfd{)b6xTpy`({Uzj@5(8q_ZDrznVmox%aKd z3u*RY4G$-ZXnm}(QdoEup3!B2rN9(1zC4k;g}xM3Dtt7YSF1)z58mP|Y4Dj=P~%Sn zQq$>FxtUQP@oT@Vh(pmQ-y`+ESt#mIKW=00=qMt)O0XR4kN$5mhr zh6IHWQ*9QRhL*Z35Y|a5$Ol~!GsIziR~Z(mQ%g&ydxLUobNBRJPZEnjkoNVK+F& z7QaT5JZ<=0p zO;U^Sxp?hpQ3ehYgjOx1{;EwxiTrZ&m3dRrHlENQ4U`9Z_Nk@?xVL(0LF&$Y-wB5- zhSSV#m2?(7O2E*u5a~YZIaFh*xExttjZpwCq4)TaV%pY1aP$r7{JG#@ruX?6iHBNR zuGT>Co_sth;i?pr6MuFpL+l`oQn*9Y0$B0SweW&X$FSmB&AVW^r!>-xiEhtsM@>I0 zEA8~I0KP=-m!T+PQj%QEy%$B2ap9PqGCgOBZ;9^XOn#qGE3}T%y(Z&Q-Bz5GEEB1n zO+V%}NbdzrH0?;2`k;ifUA>JxK6xp2qmv~BY;sluyTHccdI_eJ>uDyMx>u*l!%1}i zob;Hj9l?_)n6ODDbU`!h6IU*LyJ?pupY_W8=(nrIg)6VkkN?Li5fOj27UFu+t$t

    ToO<^U8HeIxZ$>do-n--<%|A*A%!YjgDs8KTyyk5q0(ng?Ii$nMd znfB!no*q}w^hjZyIS27Ug$jcKKzyT^iJ|K zVx&Z{E4_ZZJTYgVNc$THT$CMF_k*{AwYyE-YZ;ofo}DL@*&g;FjS~tfBu&%aKAP66 zijurDtgQc=?6N}GjJnrkP4EkTq10Q&s1z9kor)G-pU%EU^*|~F3Odn@f-rExh-Xou1PiBiD%pCg@{5+}yFMDu! zexh`RGsUX9E~`SzT!B?PLFYOviJ2xlV>)mN!zWCC+g&=SnX&GZRSH>ucra*^-*N6- zV(2*x(x@KgWzAJ%@rI!dM5qU&qedZ@CaJ33+R+L6VYxbw!ADot@tW@pxw28nz_qu#jC37ay2(?*6?)^AXk!l zSe!ImgGl4I>k7b#wNXjAWGI|lgCbfrE7LxUYDNh?(;AJ8SAg?77DG3dU$ShU8)mA6 z<|*IhoFtk$DP4o2Ow0Dk`_hU~mW&8ad@D0c-&KWbW5OfhC-%s)H(_TSt8QCj%%+85 zo2H?n*QG#B>1|wJP~~p9j@Czv*@Zx0PtNNC>yWx(WDC2cX^^Y-)Mh`qsO2xhZ5Qaf zf1kJMvTUEQ86U!|s#1FDe(3{x+AvPSlERd4wZr&uFcId?nJUlRs?X=ae zY45A@%n&cJl@sB@3iY5*{kvAVp!TRy2{dKfyd|>Tl&vyL6xcfumN*oQO&f9MGO&(l zy&903liEh!`5xmZb}3iHF>`HIW<2vHLFb#_EmPH|O&DA5tpj3~X zGZqw~j)dVM>{LmSCH>ce^_SG4@(l!~hQ<+Aw4M1xJD!1gGJFI#=_S|9CyH;R9t<0! zG?Ls%T08yR5+HIyVm?Yta7_VK&!(Yiv+I$VI~lr+b3aBEk~CQLYU-FS@{w5SfLl6C zw`P{=VB?@gOWlZT@$QKZDl{U9e1V~a>qSPUs@Bd${Rg{(Esf7sn>!5OXyj*c+!nX**&^Jy5L$TDnlCkh^x26UaWbsFQM&Em_B$7-%l}%_Ah#;{Ot% zo~xPv66-93tFj~A2?3`aLPr^Uue?NRcq(@r`-&Q{-!HUXJ2s<6t0Z4od#`Y=0nw9j zpz`z-r-L3YM`e{*ny(c;LThoWhL zUdb_+gm3G4~-F=g<`e&QaM$4!ew6u9~PuXR7EnFKh}w!f=E zc_Y8oZFuLO4VhZ4kU6U#>x*R*W9>bkiY9-Y2`I{1&n{5K3V2yciE}C&Nu2vV^>IwS zPm1w^0Wf>NZGW7dYY%fbTzFA32&rX`_l)igq46xwh{EVSIy>ze$m-(ka_ZnQE6>bD zipjw1p56^)Jv!7;{le@p>?vP4X+9~98X4)dEhV*Z)o5~f6;jugR0~24PzhkdoyTb< z)8THYc%TIMx)@q3v#(V^I&07xKM{L+mr2M*_NDb`YxszDag!3iv0&*O78u0&(EfO} z6<_tr$wpa`y5_BZ%uhpn3?etkjk3{#*Qj8OH?6w!@bK1EFyq*uPA2P%q|7<5+w=|% z${@B%lS30O1{LlJs{vJD<1kt}JM<+>{dwwU<6A3mbT+0aSSm@iX_G7KHz=+nZR({-Z4Q7|<}Fxhn4bCB=r ze%8qbgTIw`z`)_}ez*vN`Oc~5F28W`%8M6@A75Hoy?kkP@ynseO>*%j8BUlev+_hA z-O7|Y0dQALV@(w0?6EG>*^Ux#TG=PO!nqeOoqOfQ;=+rUR$qAKhkrIX#`blpCl7W7 zKI2{6DT39naHZI2Bz}_Xn8{`d-2~I7vQjDo*TQzqU6rP15j5N#2wL~AzfxX(2Wn0O zG@Cx07R#fpVHxR^$8;tQ#5BMr7)e_WLtdt8kd)Pm0=_aqy4@hU-y;LZed6dsx4Y6_ z)HGJqpo%WfH7B#r+I;(q4cblCsYojHay`-f%11DjHrMyFTLb-EFwTA1lMnd(GydmL z$z#2ooLNgZnm%EFWf`hMCfb_a+j$iEj#~S=nEzvGV&-gf1jH5?W2S_aL$r13)dZBy zhA^l4?DoJtwsxfYY@w!0ob-l@3lOi32WSymtJ!~IoGx@|(>Sq#$F2%gLSnZ|7U zg-$;$AW*(d@<6-7uem!FIzZIzZq198IMh1uO91+b$(2Z)m$phl6|t$zC4;un?&e(Nijs1B+^FBoDrMV<{fMjJdVB~ z+!@2z0js2O4E+aVeUM7hf4HNR6me6d;@yxjAO?To#_@{VBXO`Q5{M2b#ZDOvEq>N~ zn#dDyXXZQ6st+`3;IgH;inTi}khN42R})o*oUL*0)%Kg2SSC=|@L6 zkF1N3pq#`5kx@zE>+aT9ohCOFkY=&FSGabX`Mhyr2cj8ANK@qlPcw9D5)vV^z6d3wvaN* zCMTxW5CDK3fJOZB%W?#R>nqKfqEdS}-(tf%ybI2Cy8@GSc$C%{H6@sxN?gpL@$qfs zU}#C!(DNz2#aRrg?n<)H2;T=Wy<~(k-jyPynANejN_iw#ZVz%;{D$*t8qgB!S4BK2 zk;XjA9t#A$R`Fa}h$1(BwG@mwO#ifrsparOQ&$ zrSS74#bw5^CIy~#AMns%3V=?~`}A@pKn@&UKvR1w(s~-o+$1+XU_evS-{$>!Z0R!} z4ig!7yXs{bvZSU{cL5d}OlEsURHnB2YJFMLG-mF&3|Uh$BdLCToTMOZG+;D0JE`z8 zf~)ld3C*Uu%=r{%nJ5j|b)Ma^$!AQi7gRKF4%L2|);nTu$n>1RyXpqdc#Fjog>3-{ ziH}YoLU9g}?QrSklNjd4LCczi$HK>WDjQOWajY08&s4~8f>;HGKJv6+@LTCHs0&WT z&#;$j`T9C9_da-vno{gY#r%yL`K|sasbfF|t^e7bM4FCnR;?#i4N|s=LdQnQ9T_Ji zl8%vd>ZMT5HH&vvsjJYnWF3~_fEu0O?1WWW2mV}4iW`6tzU2+vfw3wpB`sX?)h4#L z_1)rtp&&(C&#qHx#_n{e0z>)Q67EJDrmYCDOp727NCaISmHP-uF)vqxKhCO?nclGx zIW|x#;wI@;&rS-{{p3dM$@4F*fNb*?klii2prMY-d@bX_n<%Qrr-@qan@n6LGfvb- zt5l`5EU6-rDs{^#%#D&ps0R_*9q7Z?xtTyM_s4l7 z{%T(g5L~}T!rflpmKe1r1{}93o@94%``*wL0VPsL{>`qSgEn&}Tb{x*CyF8zW9#y= z@1g2AgOs$*k``b&t*Ywd9ECu~cMPYZc?b2mv{4*GW9-iGbo#=YhX;w7!-_xlo#YqS zhUpiSb_~{xh{{T7WCeE+dYhRWkK-Z^=1#JH08j0{Ld&dO3@sbtGZhf786W?zg7*(o2@GT!= z;nekp#ptAkn8N`Pwu&9aOs<-Dh+(|>3N|CWuPaE7FAgLki`T$DefXUp4>e>!yQaD6 zDHK;RMN@)c1jBn3Dc_b-2)AWmO&om|?TIz-cEH-ON{=}qop#Yz66zi?v3JcAsR5^I zR4N8>jJ*!ezz8?(ENTA0@m7?>;x@BHgISz^y6{5r%BAI%7k_l=$`i%%3s){QK<%b8d;^Z?ne9Z{O z&vX5JR6fj7dbJNH{&h3$eMp{oVxfFppfyxf;#3ZE1d0=!d;*Md9ZuD!;l;IEW0qjC zhV#!&2fA|anNWXjNl7GU_=s#R$5D2FE6J|SB(YUyU&6?~Kk(LF>0y%U!VjSlx|hOx zfo50K+&YbQ4kE8o0C2TrZE0HDCaSjVDjs~MfLKaE1as@^w|-460>T6&6>%oxKs#2Ytvk0Lri&Q z-nO=GQdu0b2PD`dN9j@{xrrJHs+@>@j!bFR6YVc3pglh6W znZhhB=J5M+%nRb3GQ2W?sMZ8o8&2iulBtKF)B}CdD_m=?w&J{ObJQ@WJ+NOKbdNew zsmWeZG%3|4IOI{lC=4Q^BKb%^8zHPgr+m}$ZScwApX%SJ@kjg+(*1;5$6hk!TcEuMU z+b2-YNoRgi0L{9We9n)UBy+kF*itrE;>HOpq9b!*9fdZ zE|_C?Ze#X`o+*KYuS8qd$o9EyE3W`Uf2R2hT26n09;(4{Sv{d{x zC31I(w?Ge=AKGj+!Unr99jx|*c4j-IZK!_BJ5k{ecc}Z&@yzDLvrrR7fVb@Bp5lN_ z6Ap5XhKax;hKJ8#k=JvLA`}RyqxhNZmgb^edQ~v|#bqG2mN9l zW@z*Mn4BGxb{!2#ZNqBkF50FJEdEsDP+CCAJRd#s&7qb@( zplIUB6J<71JH|tk7>|?Q;ZmAk2$zaUES!A6=gHt%0f$@ZMVxj6P%PDM0Ze{ zBHh;H4EA!;S?-!E;JA=Yr6)w_Z@s5A=Zwjp*d6f4o4dQc&75Wj-XqxcVA^?KUA!pT z4YvnMW|podSQ!nf?Q|J>iw|XbWd>}Q?8qHrh86ul<4D7Kw&C&#guYdZyPkSVL=1?$ zLXaXd7J`ZiN?+<__acL-D@_)s-0W|I)xOZIi<2&Rl{zOYNwJd<|F15_LWJn==ID5; z4{(&MRKg&Y!|aogjfN|)2o;&mi!3tBX)bOk%i$|DP+33p_|8)C;s7aNC{Lx$!6cs@ zmJFv!`eNvEI*A95u3T%VdUes@|Z2aeHYeKDWJVhxTuRcJW7 zGeyxvIwh7&O#(L92HRu4ykVwk@zY*X=a&N4hAPEL%${(HF(dn!5bNE=s!r4ZJ-C5u z)NA4A=ZmP)Fh9C^vG~dC*UQ|%K6r}%5`KDl_SThR<>8GsBy%Y$ zOs%pE?MrV!Jg6VB^BUgnC@;pFv2vu8_m4%jh!H+C$Bnd5U~k5$;zTKP&kDC}HM?<) z>2uww8sgC8t~NAra1Q~-q1VDyzf^g}3na$L#%k9StCebMn``>7@|qdr?J%eG#Yvh+ zP2CK+n`g!AUY^1h9W7K=UFeWzmFnV=LH%|JWu-mnV7x;o&sUGaYqR1CF^Lj};ESFb z&MFngC3s++TMH9L>nrD)o@rg+c}8^I0;xMKGMO3^v?w5va$I!k?A%4E4vhs;*R0m> z*g8y83*Mlo)Fw-z(n1X@qCsOIgI0P7IP04|I)kycQHv1?azT6WN1EZR4~RK#{BvoK z3Q;9$TwV*OEw++^Ufb+;79t>=5DGq4jS#XEFwe-nhFB3T`M_ROMQ9ePI2mx>U{0n5 za_We@WwZM7B8si}UT+K#ay81jG!TG*eyv;|RD<>rv_q%#ay=7t%p!W}Dy7MeYKItw zP=Fh@p=5P!F1r9ZL~7MtGqIC})W~6a2YWeM&*0td^XoRTBQ(kLM~E3e%0-*F+0G=` zF=SB=Sr!ZA@$6Q&*R^|`$4k|H?963-NF926&C3wPB#dwzK7bchJUr;|Y6SRxFwme; zv(=9x*v1%IF3v_tDQPMCsM=~N%&?MW9Th{3Am4cQ34vIQ4(bmF4~XPcTViSui} z%{G5_zcd9is$);5<(M-;u^xx>B39B={NJ8jn!#LirC1DPdyL!ePF&&~RtlHgp#QCv zUWnhX)1(ZsDHz3dvSwRhtT`icILtXSjGGw-!Q0|WgFm2M=NcD*t{Dj%&;(Kf2sSv3 z1J(~o$KtiYcXkpvCvV`u4cdZcjV~Z)t);Gk>oJs?XI zvy}!5si-Yl<;dt60)kf#XsC|J>RrqxY%drtRrVrF)1q)fMS12%DQ8$&P0VY9)Vy8| z7dvPb=QE5K=QcRED2f>BAg|bVW&DFh-Aa}HAD3ww^iJY7H~bb=R|(BJ0ZCbT;XGB` zy-8@wKb@yM+tF{=idW~y|Ipeuh}mDSM;u_GBz;qMyUu}=(z2IwgkWODGqq2W3!52% zu~-XN{e*}JiNFft$ymvRq);Ngp&v8n<};E&J$q*RKgQTJ!5Xm_Y9gF5&n)(js?jn8 z!*=4Q3)`?zJjd4;7QbjhzfWo_jdOLb=em%1qZFIG`9LJuFfVT43isJpXm3C30cs<4 zl_f;PespEJH={(NoOy64DXvzN(IT9UN_yWkSO=+x2Hs1>1upKfqSHJYSu$yxyw)N0 zQ*=?k5vYuoVS;8L!>L9xZ)Qrit$0I?qApvxsrj*g)l~K_Q}=~LL?2tLlv`L={97?W zQP*gy=-Y@5Y4~fLwj7t8yt`S)+3kepMV9}B4T3EmH8)w@;k*VmB)hNiCSJ_hRi~1W z5D~XS#9zb!TY`AxaV?2+yPJYCgdKSg!+KXHgG{PnVEeHfMozU&l$>@gp5l_`Y3}3h z2y>Cxmi1q*x7s#cjT)qE8r9=eV3oEAVdtLdHQ_BdA?-mp6b)kP(Y(wKW0^)@S|{A= z31dXDD6B@t2g0SMYyc0HIS{?rwk7hz&Arhu1<14@Z${=xOxIN$=JDwvi3trJ%)Fiu zTrbN2GVJPg1nL z?s{Oe!^uQukDS}tJp|>Et_y-2S%stW zgml`u^Yf#d=Zn9-@*47Ll2JQZ=DZdOO1dde^Emd8K`Ulo#~e=6x#yM;YD`^oJdj^< z-2`5ysXKFnKnmM9zt@sn%HfW9l}%luv))m-wbrwXKcUG6)N!uda?3 ztwN<*ikes^{iy88$%Da3EnU}OgkX|7_>w#szz2;QnDPG~YOzQ- zO(Kh?RcpEjNY5bl4TNjZQJi+H%}%~nkDsKF`Da!}&kBfuTGYVkY6$;TE@TwtB^vWW z{h4+(iZvs4x+&hDjA!>1eRg3+Q@oOGY_0mVvyumdup_R~MIP>pyq94H3l)y{B-@2b ztAyej^WL?kSlB5_3izyMCt0l;COVkiNBP56J!CALif9W~T5&c3gsoiE82T=tUePc_ zrH-hc1o1118;u~Ne+a3zHp|LHF=3h+P+jvB(G23~Am54`1>?7#bDKE$L-;rDJpnOr)w~+(^5mJ;{ z4B6#TlHuT*##VSS?$Oe9v*=8kh&4by8KfS1Uz+`^5*}pMlSWUI)NRFp0C}HWmO1MLZIWqn{#(r5_jGeYpIipXVw*8{Xyg5w$6 zU?smj9lthUH8Gg4$x$#9fVVSRU=EV_`DFwpy*Scoeym)x3v23Trq@(@CAq%%{AUcW zSTuo{Y*)>GM|1emz*L?aW1d^;hU`lkjhu66kF-Um2EK?;iYx-N52MM=fYIiU+$7kD zJn6qUKj#$m=~<%|p2sL^(%dj(SVNQ~ILYeU%61=)T9QM0Fd99J4$@295j}yU?=A=5K1(qYqG40>JZejEp-7>S8C{0 zaN0w0QXfb(EUUI<8j;rkJgbN!WR6-hcl8|q^v18iX{HbV>5UJPb;{mIx#qJ^XsRis zj(RWJGfK&?Ay{G6sl!(lD zI73^5Btg&wttK6ncYDz#aXig@R?UU;NsSsiMm%CeIA_2vd2#n;BFlZ8JzF9gWFrUE z@f}d9R@7=rZ7-jG`n%hM(l6K#?@IvfNd-Aa70OWmGq>oPhsvV$TSWRcS%RVWkD)# z-_|Wl3=` zDCG2OsF}q?nchgQ;4rIl(-0%#JDu1*ss&ER^T~O+4JVT=u&*>*sa?gki|n%Ig0!k; z1h%QKm#PM63-8Y~shE}BbV0!Csnlx>l0_e!;~mk6v<1f+VtzHz!i-7)xRIn__cZq? zB;c3$q#@xcMqG8Ua2DI}ClXP5`VhMEm2rdSSG5?TiG>Y{^$Z=>ZjlF|-GJO}Lz2cDJj|=o>c%1c}9(uytIgi&Ubsyyd~R zp=mo!J$`5kA}8r{Z|KG0M#G^tU%8>y_T;6Xk(;Dm%WrYyi_9uYX++b*tf@w!lL03< zarx7_!?<%#e2z$3d=NX^$} zK?!-7Cx&KLfkbc2esF5G5qiT9;j6cV$&od&TN+41Q_S4>qCW*pS8~bv?*w%AFSLM8 zo~`@nTNt6Ag>RQlsrPtN|8Rcv+bd9Kzf!QXeXck=d-D>joBxVW z>Xq~Uv_3aK`q!5qv1xL>?!phQWjxwi#tjxI!to03igY^k_+n1v$a<}Tjk_y#roZHm z9h#2Q_oGNnlw656*W8;ek84Mpno>E@fO^9+-2!{kLjm=(V#!f^IyVaTF6Y)nBaua= zLg2LlblTnmMT^7m}9Lul5Q^OOy(N!?YP)&ZAr{IAo}0`f>P0ZxFsa?ml~JY3X!t zP;PDRo_;d??=P4BZfA4rR8jUP&z>s3|I{h{{?4h>xMKV1rPP+Qvp3FDiTGzP6H@f+ zm;Hf7eCV}e?G^f2TjBVh-neP_$`bnsYQUVpp^}pqw(H<Q=y1s!hIHa%$u#GTo5TgTcwLgmv#b%@BkN#j zcym!?G6Uw-(KPT1pHj7Kd~G(ws*>)A(C`4_tNa|3g2}#-3UBOgloNxDzwQMnm>-xI zr@@(Eizbe24QUoYKt|U>mskjmz72(9sj1?Nr9LOA(3zK<<)~jTc|8wNB&90FN1Oihr5tJPPNtoN0JZ zlEX}@f@YNK1v|b7$BIg{R~IM=td`bGJU^2n;apvmC5(p{BTd!jpD-h5nD9W{);b?RESc#$YiU96e-0Bdt#2XDh0EVmEXAKj1h~v%C2$KsulJ^ zrBGhsa<-xP25pT>fR~>SbX(n=J}(xIdPdMG7u+EP%s|FjL<>!qx$1%ox}K-?8*axn z%liHmxhj%EApCo`WZ|BS>FzycEB~RD)V4=G8>3X9Y33JvqFT2-j0@LQ=HjRgt6p-l z%}16s3q}vm7d!>0Dch)Nt<_00GHa}qi`8NamKPbz6;rY7C-$UT&9q{hND-V^ybuo( z&k@Q`G^gm^3f5TXVGmcPE?SLcWz7{aLeYApySW%pdYj*~k`k?Q*Y^Fa6lWwd+G47O z1lf}g6Tuny42m$tm&4drqW&g@Y3TBZiWMR<^I^{=xPTqOHRHXkhtO0rZHk6y^FoLr z&5h(otjx_BpxLxAKMrkpK`1#sb z$MQ^%-jS{mmC@GZp?h6a7RP@?Bbg0ZSY$AapU}y;|JEgm4Xf^y+WLX|*p;f7d5|Ri ztdDLo?|RHj^k*F;OJ z0W0iFLzLiBx7Jee0l_M{T=JOwkY?Uu>^<<#QgP1uf6@B0LPQNSb9%)KdJ-8V76|}# zeGYn^IAENRcO5(|Ze_$ySlWMv`bh*@8Eb$`Jri%NnWFBSWh!SNk^Jc1mh0YWqC!4O z>zPRzA!zizX?!V=OT`u4U|e*AIZRRqDk#5qov7kalS}jnB$(@?!CL!Iq^9xb81O4o zz^#ShITCs3aJ8qNeDc3C@Aa2G1)3@`>cyapp;Pm~MyOJb2?7N^0yiUK8tTF_fB|a# zL+z}Gh{<%MbbYX@)S|)em4;5Qi+Z;t!4_vehZDO&(I(j3+QkA%R_6aC7 zqK>0qTn7`CR}wh~)R|bOob#hgPDT&;)Jj`|i&VOV++_q1G8wkic*93Z&x=dar&cJj zL2##aYOISdj)V5uOP%Ht6y+4$owsQ+zN%v)F9GM0(=WI|%Ukj55UK(NrscNiS0s+G z-+83tNhcXj_yF2#m>mx^T2fcqF0qET=F0M3ba<>);Gs9V`c+aUrP<6hYwJ0F`M~Ab z!4!IkbY*7&a`MOq(@moSb;JM-?HZTq*g=EuVanDOJF=ALnAkRgSSQJWa;!u+w`ji5 zONCiIblrnp=n9jE<3nhlc8*=L(6wZaU7+ZfcQ`Y_Ecu=l(;G)PYo2b?3Za=BkyDRd`338O(|o^778vL#Xc8L4=HXH-FVtS4NFkF*Wv z3ItjK!=)-cJ04MJ4i(Sxm?t3KgEC@U92fRMb5Dx_uu@aHQm9a+8XThM8cdF{R0S5& z9+1_NZTaMeOaQYY!Ju9^bIpu~fA}0+OD);E&vNkAg)xU zV&s>2OA6!Hm2qgfYlaOsiL99Z=urZ|*iUvvS`^dZhTEJ!WAiNCD{Yz?P)z)w5G>hr z8=*r^YsV_%Vn_^%!?{wdANXCS+9y^9Uyn$G?(Zt_>?@Dc!O7p)nrf z*Ci%Rthxj;VQM}5w8iO2)I%g^y_|)lCeJQXLRei3Zmqfulo{{%QA-t{%v!?G^M>KJ z1z8_psF3i8a>j-xVK2>L#ibPcRiUa7Ml)5J2JL*Tf}>DIYHuBeX>m1 z^c#tP%DKZwE;~H2V?lGf7f8W#8xEXyvE$;+*sY-nHm;?rtwUog*IA0DN6-fM1Lif^ zK|!=8S9tIZZc^(^O(u-hEMq(YM5czM(JRa&KU-pek2J`uH6*52=(sRJJuc>08X~DB zk$5frL}C_SHVN^79c9@r&M+!}n~nCPR3|nL@mRdeI6b}%eS^E1h;LS8L1H~H4Sn@* zg@anxGfaP6a}&F2_*NeV)m@JF%(v#;H`9v;-e zi&n`OWkWY^8b^7lYfL(*URlerjsg~luOP8;Q#WAk5g3!i8XG~LW1XSCsvN9O$6K3Y zL*^ucp6zw3QN?zec(2fI4Qd2Fo1AkQW#*#d-I{<0DMj9z-P_@E%S4tnTAoKFv z_`>hBw5&3Iq=xP#f!*%C?>?2iTn3*4`w@+t?;C zY9S2I(mYF)=CQqqa0+Glh=y|n>YTLR*6Ki<%kyO}emy?7MYXk{_F|8l!nhWLxLWMV z8U#4bg-XfZwe zvbR7txVRTbPIzRU=8?dWW5lIU#YqJY&!C+Fm;AEQBx5^Jifa(*|DK_?p<;nNO zFs|xNoX7(nmG>0%PFx1wwL@xfB=jFzeug~VAT2VGgq(054LgX!JZ+R^LR!=8+qHD< zirV=BioxF=)T-H>C&+IM{bM?EKgeFj>Tz_v`5sse7&-0oa(|aMZs}C$NyqHFrdn+_ zb0qK!s`*3>zSBT-S_L0D4+yxtHRmiEbMmL#@=oLNhj zGm#aS^_H?WB2hx%qw70awNaBmtI5M4yD21)dRPbv+g-+04HG?!dhG+Hj^?dRe9_r& ztj9)hltmRF#fDM0H690EZI}W$MC__KXQJa+@`jGlmx_}`Tja{g8VT*c2e>$yO1BSzkaNRc&QV=V_#n zkmqRqH>0j3RqcZ^f-_dfQF_aL5q|iE5>>qDh%2)4eml~ zAcL@cX_Y8+cjw3dyn2po%FUO#hwfWhCH2}X+$_x%Qm;OE>*Ax}8~$VpM~r78fLBBW ziFk@C3nh693R%HVsSH_7Q!D6JO3re?FN<5Qzz3zC(p!T-YbsD>@ zidBwVz%6r_@uWY%W<&&L3ElK?vkhGkiKy98B3y(^G30Fg&jOT+PBcsT{y{^Irq;Dw ziy(3&J}yp~%2s72v~!h?(ME&b9z3=+N~#a|qOLGx=#i;vf>)}TAQv3%mRxT9@c>=g zC{pfI1Mg^-V&cms`fRh&TI<}ldiw~n=DcSS%CXW7Y#S*xPw%RG(?b4@Wd3BZ)b^;0 znj;yKK_LZ%R6i*BqFCdlQGOWnzsh9HI(4U4WGs!)izYd}w4;jyB&(UxHQM(`qHoE? zg+f{h>fA+iX7d4#7-|f**A`IrH}UVJ)vDT~90NM5#lO6kuIsjl)ljIxsK{;mjXEG# zHDB7iCYyph-_Wp$Vrgm=d}Fc#bqeb!V?1OU^4pw|eXrLL6q9W}zFy=FPOX)xb%L7+ z&~ghDP22w45F|`0LhHTo^)x@0YU8cqLj)8 z?>hXME3i6bNy)vgjz!9X3DWs^Ac-q`+C*k5--D&KxH5NToG?sLcd`q2JTjNgB z%auc8C=o%#?;Ch!DZ=g)46VS%rbg(o^`G(0?IJj#f%{sm@q!;y|E`NQx_K1WwE6ox zNc?j*9a+_h(bHE_5NARB&r>tL)Ck@;5XdgC6r49%Bt({hxf0ZymPmT!R;tR3(Ml40 z^mi93+L%i>SolcWQSyF>=aD#E<1(Gos0jXaC~1C<{t=Yiv&W-$6+4K;M$tvoo*Qu6 zRll-HKLOw74wLQa8dE9Da=j&_>J3?0k<)(Ji^xcm>T}AWnWpd#;S?zkHn~F+-&hv^ zQt@&n_-kS z2u6M$iWY;PmDD!sgf8R|Ev5wnX~44C*LpEWAvYC(Ny|e@P$rB<)w9lZEzkwjv37Zr z;}6lD6B{py5R=343j++BAS?+B@G~Tpf?1T+mW~h?8CdG_T%uEWDz?x$$6QoWF0UC3xt5hF6K zEVSt2`FI|AP*oSe$O(qzrDV2jz>szJ3SR`$%veg!nr&@{ypbs{^@-2!}-x?uMrOO zFE4Q7X0=#ep+>E(bYn3p;WI;4=KFx>X@tUI8O60qlO8-^3DQovNRx==b@VoOERhs{ zn8ejBW_(%}f$P(f%zx5|spIW7!cA0h;b?bNG7D~$3x=2RUykYk-ZA5E(U9z+?2QX0 zo5+-|YB%HXr9w#Rts?Zq+dWEg~VDYq|4SoZ5lwuxC$4cHUn1h1T~pl8y@;~WetV4B)2Ya38V?3Q-iIi125 z;G}95uKk2I&AhQKu<@rBIws$Qv$7U#xrLrF3VkKZ#!X;V02>|rh6Ht71xm@Ku#Zy* z;Yc1tlm(4AZEfcq^Z@WRl9MMOL&D~2yEI(0hk9e6WMB4DW7&<7=`{}M$(;XV2dh{_ z&5<+A%@f5mN+n(`{R8u-(ZRCA^NWy!=3GL_3AaWO3tNqv64E{$XD;ciVCvl`{8X#v z@6HE<2yRo2BSeV1+F8TtwPmuMNSiXXQxslm^=BMA#5<*(mW=Y!hLEpawhoh&-C_1RHVX!uc0gi=WJoKPgr(z4ABbmsi?bS96|IhoZTA zz_?tLo7LKLe#nFgnQ*Uhk!2b$QFC8n$L3~aECK^FhS;)(B)Kd}%!btIY!=xRn6c9y zY6`%H>Ndeu%{Q04^4CyvFfkAo8^Y%^xlJmcTEjVr^xT}=L2Dmfj%cwidE;~y(TX?0 zhgogVaU-}OZ6{CQmRWvR&~hn5e0ZS8Xc{tuB5~uaU6q3wE#MJ$90gD~a(*n1A1@dU8Cfh8V{JmbsBoQ)9EliD;6nbkMOI zAeXfMbLC~f_kAxf`*e%E>@%m=M;rUkg}OK6j1|8mONT( z^%4~1E6^k%S%S3or;S1b(^ZS^YN*i-1N(_IV@B)IXl1U(BXebq31YZ3EOKRv^7<0E zUPaud`9E5}WKX`H%u`hj*!McZA_;WY%X!I@`Q(#NzVzzeaFFe8j(4h2{qkQuyY$Ro zWt(+xv{BXlm;Y)y`P;w#cYpQjEC1%DauPlkK3ea*e6E~KwqHDd{wF{A$_c*s%<9A-vf4%Z= zvh1aDv)F*YguhOz$zb!9wQ@Q?zCXzx-QE%%%{>`~pE>-iB>(el>2g4V$)&7&;%}+kBvPn5R=#}A*`N>i5 zrSsd#w?)1Reijl8uY3H@iK}!WTcTUd+C|`pe7V1|Lkr z@8Qyiy{wjdY{5OU{n>A)*>HaRO&z}YFq_OzZcMT=Ja{&k-GcuQ!w`+&dLM;vRN;f$ z*-p4no|OgMHC+ALlrI{tKA0aLRN({1e>9hR_1mjAv*mF00sI`FZ!(@AABKO!gABus zdgbgmj8&Mv;VAq$oQ5ycBlO^dWl=3`A@s>@;;t`%Nnnr)Zi;^7zYb~QZBgK+=($<0Z4K6s39TbPP_ z*)9xXkA@=|KszY(;zhXOXm+cP!?faoznNXR zu)K2d!h7GpeEDLYy;LPD^o4V;{P5k`Pgk?|o_zV_*6JHCov&V5u!h1r!uuC649DM0 z;xodNhquet;oqP2V2*CrFy^CdeSUmr5~k+lDC>o(x(UCma1qt;>mhz~_H`ISSX8q= zqW$1e51I&-_)-u!E z;b&oPdB8LO1zc_LTs``u&SCjH$R?HiExh)ZXbX?;PWeY$IA&py9QXJqJ1|_ouCg#h zLtLTw)38eq!u$8D*}+nF2}U)nN!oMu>|xIT#PzdY(LBI*49{DgVUXUwaQUs34A#Rt zZ?1L^P%wvadfmWGXj;nA>;UKLI_w#o;;{R|miVa3_NHMp;deK2=I<6@PtE0E$Kfxx z#qx#GKG@C%Biw!K!6LyXdBA%=yxOBY>x1nIk8mdpaS!KfYj(d^E@kh*)}H+q_wFH1 zBiu2$bXaWruq^L~k%igA%m2BX>PlEv7gw{(@2;(U|LyG3#nm_R><4czb$#o3Isn2i zs$oCd8Tar+s)pf6+ByHsGtYeIZ)e2dwB!x zLd6Hr23pU_80L)4B^&kdd-!7)KTPXv=|&cVzBefg{5;)#r1`X>Y)3#e0DE>E7lLjmvfx3{1xz|C;~z>{3_AZ=>mIv!OK6cnl=R89fl1G+sFUaCT1Mj(CNZJ>?$nJN$THba3$< z->>7@8LY;Gx}UR=30wV!x*wAY_IyvRxcqzz)?sa)OD{$jA>;l26zvh%9lAyi1NwD^ zYbAOjLp1#8-GC7Tw?O=daAo{qxu5M+b$Qx*K1U}24$S*ga2JAGjaUDsPR2B+Pesqh z9zog8bU%E)e0;=%Lv9+3Krr@XF^AwS1tW;l2@gtx3+IpwshJ_%vV30S!|*%~aplEl z?fvNpU8yI(gBSlbj0TThxFtNqX+!WlPc@%)J#=?zo^X^WajMKDwS8%;+^l(gehts$ zmn6Kk`#89QqYTd_TrPA^9Jdmkw(u&qz)``4PloKYm-#L~mvMP^=*$Q2v#;x!7A4t1 z8CiYaee_5l-=Iwn&%H6iy@vLmPB!-u@LGSC4as7<*&3q{Glox{_UL~jTMjmDKYaf~ z9+x55=@S0zX?^|TXPkZuz zXGV)HNceUEZvulAhTy{~jX{nNet!TyK*7I=mxn;0;<$xg8bcGj5>6sLVoBC&SI$PU za$`IyX7}U!pZ1*JgJ3CHU%U(Ot`wh*!JQAzScrXOrPHqm(=grm0&v{3tDchuDXRj$ ze!`E58;6H*4>p{&{4`6CZ@>~&Q+3+2Kl_XvQuq{Tc-5bPiKQWfsWUFB+*T|<-I|Oy zU(XuKoFc@na6yXDXt?z}!O(R#yaG7k_z3K-2akm}7>9Q>C?om(lLHu%n>yU%+3(%6 zz_^?`0&+~_GUa2CE)pMAp@KDn3f2%R$o~qFc(Dtt9 zC%>q|!Hd&5fZv6;xd&IS3E1etdg9*?iz&P@?7wj8!dRbr$LHJ3Du$hXv?F+6ZDEBtb8Wq$ITCU@kM##tZOJki!WCV6g2Jk-U%dg~nxeFvQX7vO4RCco1l2 zta1+lvc~mt`59i97ZAQBpX(*MAbcLezwQenY8+4UTsm=*@>c!-=kfJV5R*fIMM^g z#;%9Y^5llad2*-M^(y#i^z`Bhkx+(cVIz= zvAcuQGewA*XBMwd-tZ?CxPl|W$^;8xY%MI^a1P5PPuQJ?69U%p5H0Ii%o;*(5Pg+7 zUxCInIJ|eJ05saOJJ+}aUhQ){a!$T%yDYsW*$p@#*KrWr&7y$axPWk3ghlp?T7fnW zp~7o4zKXxm*fAU%usX@94I}y4(3=B3oH;br1Op&_;d#HRD7E1hM=q;_y@GWFb=Sd7 zjLU_O1{fQ-Fl-ZfQaBEdhO$rL0K`WIj1e*c@IZA2VeUF$k+4OA<7_R_?A{RG0q`aG zm>;yR<-QgMYjbQ|y1InF!W7YJ!$&^CWeVmV-^C+025B)CfG4T$Q+R}7-Ot3MqtV?3 z%*vjB+Yc_? zl96KjTrlsQQ0(^*)PAc(w~o7U6xC%3OR`te50|ppKZVcY z^KuY^{|&J~B}M_hOG^}!Y=E(Tq1)SJM~aFg&l;U*9@I-E1gA}Bq$LVjg524f9@ZtM zVQFlfafTy2!3W|r();0NGtkojAy+(tr(k&mS|eB=Q9c^f0hts0y!wv25NzXY6Lvd5 zAGU@g67JBj0(2<}!`TkUTQSfjxu(4-S!e@7!WBQ(Vz1~ zD8fNYc0u8W_EZ6-PX76SWvla(f4-Q#Ge5bVEkC)HA>RIC_#=3l0BflE{DNxCxI|fhnpH|<< z9{)V}v48&--7)yFv+J<3fAw0-OR>F&Q5=R>{5y)ADeyH8YjX?;`6%&07UW}|qa2lH zg3A$}N&`uu;d%$B;}^O8o#v>W3uhh(vb|~?`J4>|ljs&ao#XW(2uAY^ul&BtfAXO~UTMy=25wFd+{Ht7v*C!JK-f*gy_7lo zOHa33Su6pbeo%ppKqr7rE)PHa>k#3Uu)r;fT|@NGz6-1<@H{8zWEu17TtrSiOPJY1 zSaJYt1Ntl3Q;s0x2q#`A*^X$9cVV_B;^Xp6C2%BxRCL~m72Ozt7hI#SK&H!mmmKl& z?9mXTy+>lM6E9o76k$A^B(%8p8{zLa`TY5WqPrR~{!uu=dDh{T!m=m7MFV-7FLWW{ z%hw?DdM^TQ=re`e;aQAM@=znqg<68J?1u00FGTmzSglFFqyi)L+r~86ZoSsa$ zUob*1Mhx4`x?nM7-n3?M~cNDkYB@=c0L7PG2$NVzo1R1O9?{4TDhqM z(E}#e5xgjjQ{2y!F&hDfAWVd-$T{2@CS}{QZNjM+T!uZId@#!PtR4`0M_J!%a5mnb za-J>PubZ0I=V7{{FkR_ik1*Wne<=utk9@JxpqQ z(T)yqXa&%g2>{RwTo`(y&oLTB^FxFpi{#58jrP@^mWe?J} zFu_OT<;dfQ>p~z6AAaG~YFO$+JPT*&z|uZ1*#qH&#VivYbDp%xxERI5jI3MZL|n=) z`G7<+)XtBWl%_rx7%K`a1=mHV16}Nc2_JCyVa!z+n$k8bOBj<{4v1}ml?S+B!DApV z8`1*F`s|G)AVpw(vpejxPPxrgmlOwu$434HycpVPKu%%xKl0aaTdBeSMdJxqU}K~~ z_8|>%GM}_f@TCYc*_$2r_}RnCv@nM|XdSF&-$=tBaaPS`&C#%{hwBzB0HpWeS)iE+ z^JF${#;McfwO@lF6EX_gJb5RxRw6yf21zzGP$NG80a0G6>%|Cxu)FNV(=&sk17wR4 z9mve`Q`}RQkIQkHwI0)5y4!@Vg%m2dKaBPRgWltuY@kO*Nqh3VN|=q7 zp-j^s1mSW7!6=zIh?{A}KHjSTrz7W#njox?94&Ofc&}m7W-$Az?rSuSG3pprSD!+D z5BjSjU3nhQxq6eM{ zoP@%P1w0E`AqC^I&l7CMK%2OyC7BiG zVVGD%N*v(MvdC3;MA|dle z?9Aj@v!@0Kq<@It_!*v^5HWFPe+{pYop?Mqw^1Lql6R=HK7x?h&VQkmQP>|ICe&8Vk;Y8Z0 zO_0io3I&B}7?7;l$kyDmByY^?bjQPy#^d7QTo||PG@cS2pC!bwDU;spfN?MmGco!V zbf2igatQKzV#9cg{aHyeGmSvVkrH1p$qea#7;+22X(HY|FOJ50DIFoH>xIv2*PFsE)}%y&P-9V3W}_e%D2&ll_H4I~1bndl+1?Hg>t2dq%SQ5KO*d=4T*y>a9^D`%;Eq$a2 z%x6^mQL&e9ScwvI!}!x?!llg{mu-G-oGXd3=-Oz|X`|uAnecO%ml=!Z@dQMXwStd!RAx&5j^E7?CG&Y%@XjMm|~Z zw^cYvejiRCH3s)1c`pH57=bTFx#cqQv1IH;3Id~bNU$DVKE?xU(EOES)(j^Y!BD4> z1Aw^pkc>#XG(2~h09w6miFwVkkxSN&G$nN;Y!fL&3ZHLD$09OGD9B9iqsBzmX3^pO_F4yQEk4%;%wq~&b$*Z{H=^4r z5qg3sVwBC#zl$Eu0L~qEx+GKuA+Ys>O)6=HI_ea#f% z#H^!Xz?6eRQlC>)4Qv$uOD z1eA~iXdCAaJ}J(+1YnU}7=bdo0^MRd19EduP>^7UHb#~hwKjV= zB;%hqk}B3RG!}YY7KoVw+mTK=laHX)Ol6#uvMM5JnNOe=CzyB{_`2qlDWxj*SC`=! zgpeJL6Ocio-?WQoh|HF|p~?QkcjB1x`rMg4oVc~)&lNx%z+Jr2%Zczlr@{bw*6=|v zP_K69q2C_uY!TS{5Tg`vDhYRNqlNw&}NBg0vZ8v%j%*JigeCVH6~nM0mgoN>g7bi+_ki8dQY zo&#>8-_?ZaBVnJ3TjoeIVj+&C3?k)F zgc?K45|`L_t3V5O5`zctr}f%&gxG4PbqYu@{X`Z;z#c8R!x2*2E~YbO57H8Y!V5W< z%3>PR5s{lhtQ`#bbp#gnXoUoM+gH=k+UT$(HsB1~A4d*CorR-vZi9Ya81A~&XyIZH~Dif#eFwgB}J5Vk=p zllAz&9?$F8! zH6;s{*G}tss38#-Y@@ZlM;Jcv622ifHAQR4*+R@zfDfzz=St<#Dd0NQZfrEbu1FRQ zr|g+B;oc7N#Df9tg^-WP2)R%kJDf0EC1_0m>H(w(D6bwn35^W3kA{Vj4dLN-iPf7J z+?Y@rhHw0YC{-h&5HTwZ3%wE|NxaqGbYDSAFdAQwhj$EVMGj)_F)ThV;?hS*4nBXQ zmiidyT>4A7iEDST?VPkhf(pdC(Qb@x0~A6BW*N&XlvS)uMvVUpB-Pysp7#Y?*je{q z&A4c~VAveXs7y^|BqI(X9rAC13$Z2{RYU^7m$@O6WVS$|6|45eQ__Pg&iBcAff`%# z1#v7SS-@uwTe3zRKpR``VlNMQ+#OiZU0dnGc(7S-8pA9cnJVSn1lt)r-bl5{6;kY5 zRxcxbC2-JS4ILVCxU2MN2OHREczzGNCbO@JpbKC6tjW;j@@F<~yHi+2Q!3XL_Yl3a zbta+&(=FWGulQ`c>w{@d3g8okn=keom1v4GDo8QSaK%G}unFr+G4xWfY`~qaz`t*;nKw#&3wX!b`EwNz&s-gTuuTU75HIuV8ESa88PS zo)Nk`;sTqa^i`wdY=<*S)U*-!Wkv`o=Y$wp8MMk=Oi0vceJs5vrEIrM8WWH34PuIp zh2TpLW+S>}zYq*$csArzubE0!@WCJ7_|s8=F7G=9dANCu3UD1W1@Q^;QOT*F9Z&ei zd!kSP=&1GN@D^iHxFEBy3^(D2b9ST#Q3_@N0CU=MmYnb1Im$b*Kz4}NWz?Q-J1o$9 zv%D-CN&!|WNs3GgiXDcGIsQy?*JeiQKH+%eA20AXJ%g3K2Rhqg;9D9(I$RzWU)b); zVF|?GdHSe+pkg0$~S~v&_dV?CJ_sX{4g5&Af?P9J0O$Tbre4SxmMez=>>LZP!kTb zXO4WWo1X1~@rs(~yYt;Cg|F*4Cd+@_fYE5T$AoZ#8uKP0iU!nY#7FQzBo~YF9Z}-| z{Z0qtC=gjQX%bExo65)U(FtsLFePaL*bfd^&j98F*JMrNON8ZoFq9ADQO}0XfJcQL|O`P}gMTNyp}Y00@D8cwGfo)~x1(#j`ll8z4qb_Bka%9n)07S`0Z!h+)h z)u;v_@Cvbd(dQHASSWI6`ZM{0i zbuf(amQpfQ_eY2{xd(U9Fco*f+e>YH*!{EnaF;OAgp-z(btl&iaE|cfN|4LV=%4GB zL(Pil*OV_%vydr0xa}BJ9cQ;Y3z)f4wOq|hy zVv2AARkalTft(Q@_>)udBCahX-YN;uPzp6}Ec!TCMMAC@L%&_a&G0fFU`rltV+xE; zPH=OGywY)2C#SOAecm1F81#}-_=qia+EL3jLLH7)rjeA&=zB7~apf$x(6X@v`&&Zg zQYJWfv=v$@>~stn{8(%X6tPHRWd^d3ot|#%^WNU zfRMGYs2!z0r+WL zUtKF)b3eUCvN<#E|n6Ww*@SG?o%RI#`3Cj+*t=I| z1>(l57cr1sf#SRHFl{$^fVv zrcKwmL+qgNKEeFR5Z{PMFJ@s{)49Xv^_NqCM+_AH4Z#c`766|Nu8LGv5Hq%5g7jV8 zU55y42`rb2QR)aem}MX`A4jSfP>ig7-XZ|!HT-X%%=DtEgH7}_qYAh>L;kw{FcCFHsg_-PP zNKz$*V^&v>{Q-nZxq@M9cBIIGDS`Q5D#Dp7J_0s}ZH;qNLsW$><&B;WoLFLk!mUN2 z(=+0@l#|;)eFvgW8X}Wj+m;i?(r?16GFd?3g-bs~;{&mWh+XR}A#c*kdYXGb#@0l1V7W;pEINPlLT2cj9<3H9r`48Lu}+gN-7)vRQRqU~N=a z*_F|FTIPe6Vliwf z=`#!!uzV~S6$M_<-mu>@0Xs@Z>0{K`AR4pyLjPV2jEE%F1yj4jLl{*bP!*4DsiHT6 zI#ui}ddqu;wb1}UwYu#Z=YFL+7JORplh?I@l4Miu4JaK4A#IpzD%j^F^KPp56={n& z>pOUrm}!1$mksBO+1@58*bBhU19-o9+W58WTy7=h$(GEPpkkC#1@z73>MStUSPDAc z=o}2COB0@3oaU^(gHlJ?U6=Weofy17gXhtJ|9eb9xK-vLA&m*fH?$RatMS$;sUnia zoYGbs39JOMLC(P!O4y!-+4~o)r$mT}U&Sy{&D`6pkirZq5q%fumgU$dB4~nSA}o;* zKiY4uhKp?UO~QX3kuwyHE59R=A21^6MUk$h?5X#3Q6j-mxU4$5ns(;~HIc~`7I9lS zX-oh`A{ww>pKhUz3zmZ_jexG55#CXr76p76}2B59k zj~%Us!6rMc87LkM5*z&l^YS0)`BgTS8O;e#M)dIAspHcSF5>#FWMxk+(EriQ=}bxoS*#niA%e!}H6Fe}-3k2?Q}J zJo_oMT+_%k7%GAtiEN1^6gbu_&T`r=G=hN^RB;ZXg#;oZh8`=~F~Tt|ERr7DV%W ziUc|@*_P&7CDlNJfr|jWN?PDi!?YwmFP4pqG2m+Z(Ju7U!0g(>ki9VuiAu6C@5;jsUn%17bJP%7cQFr0=!9<1y zbyzc_zd?E7c1Xe}HtK2AWIzf~+B#Ro4R0C(*ewa19@=qIvp?m&ImHNT#By|Tf)k7Q z;vvCRUly2muAadKP8FG{EpFJaP%aY%D}t(qwH*-V3)W z17sLsB^{RlW+v3O$i0sAA=}(GR*x(&N^Wem=N;>*_iQk9-9}AKWpI2DqrNEoHIk@| ztYU!ypaLh7S3wjT>Mby8_EO!f`YSMlXpuZfv-p@VVBJ#8$I`J5Snx>p^uh`Vv~(Y2 zJJ4GSb6)6}jW{V1{O&&;k!ac7eI^$`$#ShlgU$smBQdDaF$c@5WTuVH3jr<3@{`h#?R#$!@TlF;2Qkc?- zOE7ZvSgO-Q4SZc`Kg(-2y59-+)VGYGz!1j^QdWsdo;i&E5>2U7J5PVlcbRgaYBH*+$^WX*GXrq$iHtuv+FK2mDlWKypOzOvO_--86 z8;FWoKm{_ZzY=9oDlo}O3XDQ>vxDG~2tW^RLM%YCpdpg(o+%EHDgg7F0T@=j`YDSh1i`^`efsOd4(Cus2S?$boH@GH-@o?Emj}f93aY|=EboEK7MvEM1{gHno zFm7yTqeY3fihvmU z*y&Gvw?(=z0;Y|)pCq-l<$aQd240377P0b0v?*ig)LLso;ZE3wOg7JTuAL*v`AKTHEgZ_2`*Xq^PaSseSLNn`q8euX(EK4s02`zZGCx{1?7*XV2UB=EwKevdi<6U#?=M%1_yK4A1sc z_z7@mZ!d=@n4kRPDt!9?Zh4Gm!JKuqBuNrYY=_8phb!d6s3--Fy;jxPk%SkW2R7H$ zh^rF#A^P|><0p0du_HiiBzk2Y6`b1+8)h6t1^YbH?kbMx4Clk0DPcr;?7haLX!D0X zN~al`>vha@SkkL~6_qDyB!&6Cu;K+5Axk&Gxk+3x~JvovABq9RJwA>b`VB zWD6{lC|rlsQJN$&wvw(u1P{3!1NQEr@OM1oFg`+rl6z(TFqd2NOBzK7+Um?f5!S5` z>FpF5tUQ>xEf!}z8nN#SOAU1{pyddb=I7Fo617xP87wQ^%{Aj%1v8ILY*S4DSI1y@ z*`RajJ5@3`Wp{v}=$L7x?+j^j z4%>|Ywn4HzI^#L#0>$1%v610Il7qp}yWBPxz!_2kIn%#Y*M+IPvB+DpkH?SdC6?xD z$(Q7WXodl$m$Yx4i*cbbW@rWkI^pLBEPrx*AT!PWo>}RRxu`=_(9z=)xeJ_0 z1uWnX@V|0HPxI3=>5fcvjJ#QACI}x4RzBi-vR!ORAl47qH@7cs8>f#8FO|;4@9E*P z7!C9tBE4LsJJYB%NHQ6_6)QFLJMyM{Z28vWt{F_T^xYs?t}~HsN3=WBCdp_M5b{z% z*(AZ4c=;rY1g;p#vzx*pi*j_)M{%KXCrR}#_x%xXd^}Qv)LLdl>S2YiQ0;Cx#erWY zxMhN9K(kI6J#6w8LjXkVvtXznO&YLGsdbN@4@qIsr6kwt>`%vVsWx-kH56k3x38kT z4NIghdA@TyqmXvoDJn%wpg^V7Wnw-b?+hN>*p~wBL;d8SvTG#g;Xp8xN!=Y8waEL- zjRYfdYhdiq$*xs9|30}&*DzTvA#?<3hs3R7E3Iw1!fZc50S6$bz*yXDjia6X`)_`X zt}nRP$NxKf<03$zUAphH!~IMe8e<^Uh+{}DlRD^{rXOO9e9w3hE;~w3KN?g^!}6X6 z60tJsAXU(2{&h60bXMJ0rAtkN(XT6X>)029Hxir)a(eXarMzm! zN3i~V=@$k+U0CRv^fXL;(}-WCAR*+@#~E$TE%oEA^7*w1Z-CO(IU ziq&6{L*viPfRZtQfNY0)#WU=mt0(XFrR==$q`A0fki#R=h3=|ypZYSm7;DA&gUpZG z)vsBK@c?~TFu&Jp5i!yOQ#4y~;%1J|wMi*q^k=S8jHF!f*3^a%edrA4-6`II*0(jqB%dAN-dr(oQ?I1^8ETkzJ^ z#AKrK<~Ohk0^QISttY8upnd70aeGj-(-9cJoVz}gpVaL4cXl{Qwy&cEEs!^~`qeF# z0HbY6X9(Cu;5^9DVPGHaHNM za%tizxl8bQDN&+wSwoI1sn&}%7#Vm^osP7fIwPNn{b7y%Fma#4kROZ^eZrjeMMhO~ zfFSYK%l2FqH6=ZvJ0F@uibrg_gE(Mg5mY?Jj3W`#%gW@A#&(RNO($be6YB(1=bDXI z!ALk8vjJ*RuFKr*OftN+MKaGNc_2Ox3OOk1or ze}>{g1eoXC(%w2Sgl&FU2sV^ETFFrP&{4^;qZO7tAC|HoYWF&yAR#q?DPO5B8KWb& zBr)obU27xia;*`hMS*NLsL`u>#8TJ*q)#H7AM_Gz#SUPs13hglTf$A9`qvRIlpfY$ z@IbaT77>Ljo=yC+jXjk{q3TiJ4Mq+_Z5wnDR@`!##yLJ2GcN&XqZAWLn)!8YT}bsK z+PZYZzGsMOD08IR*)(((?ribz_;HEEuF_D-4h4II^cr|N|5$4_(rNPq2ap>}x-e2qNRipy9rPR#<6|h8++m>PX(N_n|s>w#q!KB$s zu*b14l-@W#dy=PoDoK*GLmN+<9G1-n_1sQ~B+xCO^usqnZgvcw4dg7Qn0d^_6UB=8 z$JA26*c9Ka1V9fklWl-fv%|KlymvOJrA^CHwrnIu<+1pIgf`UjEPm;tYbo9HI)EYg zbt{dT%H{yaAq5jEix5VUye-dsi_9pNPGGrHvy-_a5pkt1=vtaC$asPy7bl8}^kzhU z{*+!FA{Is%tzHz*fQxaU1EM#LjAvtcHEl!&ur_#583?$BT23 z<^>oKG3Khg{m*kVe7s6AC7lQlqpJl5)wAR_9~-KgBsHn1A4iV0RN>P5PCpp@+~ z@McUpS_7=JVPZ7yb}qjv)bXLilyjDG(QqPX@-6j-N3w_D(ORUy9{3%Di)=x|ZA%8RnWyT~8WAFwAB~L&+PeaF`H(Hc=1#aNK1h@YmRzpa1@(; zvv$qO_CqpmpMSgPmZlFPagUmz?yR8nQ&LjHutY{~ zFC%?p+#69cQ`-|6Cxh#&A=KQ1`fYSpNTrJ@q+U|dAMjd3(G&sb@)qHRe8xk@O*=|P zVtXm9ZUj-tC%iY50cY@u%F2LdE~Hm(CnLhyhQp4zK$A2^Eg4D@CMvACZ(ZEb;EF+G zr;WrF{QV8-K8>SFbr=}PPjiQ!iv`woZ5EG(2wfQ$*$?gJ17RMuYdi%=Ckj;!v@rU- z^!UREGVQ-je^Tz*Gous;`rBhNr=og^mKQMHDcUY-5-uKai5687xnyb~Lki_V)e?3F zq@y*$r#RVCiHB(~y0KwIutCQZk4nU$N3w-{23fDF5^nMj2tq}~*FPZh;HK1_rW!I1 zz7B4uG_aggWADbx5wR9;L@J{&&U;h71d)`DwwoDatQtc{eu(i|#XfcqZyXlFbh}q< zZMF=TnW7y;I5+FM+7V23TRN>EYh-p1i7c(xr_EyCAi7(h5Sa6+KA9v4FofWxOr#~v zAj7+a1LL=d4&A6b?kV7gt8gc*gfJKF&=f53zPq7)V{J5RUAbE|H4rvwaDRCkb zU>u7bZWJ#%_4olU$`V6nLxCul2&S`-GgGrhEQWFxqH@_#dk76fBp&O-!uRumfvmcy~*@d+=PN4$$_=-_u` z!L${9M3yyVgDx#X11nVF0n=F%T!Q{U_Ml~+;d3$RAnm`BN5f2F4i;X|6Xiv2K0%8l zZ7Rieyb)V%h(TDsH@&q-G3?Di@kwqLorLIj(HU;UlC*+L9Bh)6CbNahF{;Vi;-!SU zFJVmb@MtH>aCGJo4WTEC%xg@Wn^clIDLgy08Ee=cc1JGa&1l+$Te>Mjs6AQHk_We& z(jfthVM#V^M&xAI#JN$zi77iuuQX{<6Nct~JcN)`Y4IaghJA)%^2dUYa4T$_rAApv zp5*kXl1E@(5AnP{vQ-|IHKV$_`Q9(5Tw?5xZ(r953YfUnj`%n@4@E1Kb#mBxI&#gB}Jq3&QA zIrhd*LSolV+qeNnqmxPQqpZ+J5)m>Z5NKE!_Io0W5Z{1tO&FMAqS!2_sHT#f0I}gj zV@o82&~gd6U^YLeNivBY<(Vc_K7PayfBzon7?enL2Rd#L-ad~-q}g<^a1#NeBT!7q z6*gx3#3a~|oJP`3*S*%3yMaJ799EKhs_d*aEZF|0vLs& zde!B{d(tRYafz7T7C@J-Cxyjy!9Er=hN0C4)>KbN&&q7zL!-T@$gWg0-Nf|!@nj*q zJF3*Kq?|&5dgF|P_Hse`Yg}w+St(~H5nHQ{?zIM5t!JIsNTmvzB3#RQoh`>#dReE`&nE_-wtNyxL}Fsw z@CtyceL{r2=;~1{g1-REPxS$#Lfa4F$6d9Cc9V`WG+svwf_FSfd*b>MV8dJwOH!67 z6Zt1;3OghMy<{!=sYzBuA?01Jk#AACO-qkIsxsdQDj{yzx;Q~? zMnA3h8D&4{AF1b!~oGokmx?0Ep8Vj17f&+ zY_sB4Luo@B4E}`1L5-3$A;%-57sJ4utv!Rj{h2R*T%n?vuG&*c@Yo*0Hlii&q9pyK z`K~D}WL|=Os-`SSCr>_ht8PAmm*Yrl4KxARLRdAdkCZu^cK&pUeOoUXi;twt$Q-R` znByAazVXrN0Gs>6={_=eX*4kAA&REy1>h`~D_4jP;)59cVecz(+!(7dA(`+~jjwiU zzCqPazOMTY_lg}dnt;7I%G8|5NdbU;tj>UB-3FjopnT-US9+2l3^QV$T%oO4c_ve9 zg-K=zrE{>S9uR}p-VSy+gravZK>f)t*J6uaEJPuVu`b3CxeOEa zjv7pqmP$^+3W%M^6$VpXdlG@!pZP!@trX_Xj2Wc;iJ~dgDpfTg3X)NIOj6kX)P6Nv z4#O!Gwp=CN?r4O4xQCV&^QR~u6^j&{Amw_q1jSWt!x7hH4sp?Gk-%|Ic)?Jmn@L5g ztuKYuYn;$FnN5jL7c7)TN@ilIVi{Jf_B@m97^#Cf*@)JK;Rvt{9B^$}TR7>P*b?$a z`358@vngY48IRlC+$iEV6B(EMS&}qthe!%?jIIs!Xm$;u zQ_bx7pQj11#ex`S9^pQ3ox#7nnwZM45PN9+B`Eoh|iGBA3Ro^d^rVp#;`c;$gXyRS`)6{an|zFc`OoG%3TVu|i60bLbhK z&OopuUz7Mo1P@JoQV^g{U2Kp{tvQ_2l$mUi4Qxf`(uyah&ruaoz=XmX`f(ich6`cq zy)@l6`%2AkXN*eXYY*s@Uw9@^cGDUhm!C@|zml0syE@9q zw%hX7N8`2SMUq`tWs--3*#Z*-)bEHQxHl>j8OAd9wIjisa!PeLr)rNgjhZQt9afG@ z4;*KkX}q>+S0c~obM!5}#+?4hqACh?)opI-|GOraR)w`mfATvorySN^vw@AYpJV+9 zDaW%^AxjzHxD!~YG#VRR)ZDq;b62*48mK~pXr-F){mV#WZ{_qr%>Xl@tqT@R0&~4#)DB;nPR8S(>5c#Dj zm_R!d9JrV%lsabcHJM@QS$d85gYup+x!F;i08`{tSTN*{M(W$EzqBWo<#2p^^`@>U z>JnsvHNm!n|HADcEzE>3;6%V(%|OZc?t~wQ7}z)(Et(Xb>%pTB2kOU_j51TXVi>Mx z!bg>&;5J)t#SMHsBZ6J@T`FThhbobuC+Ubrg@%(gQEe5>vB@)G*U>aV>1QP_w=h3L zR)1mLnlLSYj`EFtxkLcRXe~u+k^mJZPFbh6aX{MVZ$9L#rqWQXa@E6j1vtZiTNlCJ zBzL%_;P_2}A~Bjx$40Sy$OYh10L?+%QxsfKw>Ovyr|OSy980qyg>Y2M;NX#fnO_MV zkPph_uJp^c1)YhSjW3^bO_%Y9=m4eWdbg)mEU=K;w0BO=FS6dPI>ARQJ0N~of{Ekl zv@^!?c$?EMAi-rxbme5$ovUj#s|Tk&Te zcA0r6h-j=6QPM5v+ajnikvcURwBBQj(&z|^0cwvc}l9`x^CjL#{>ob&L~cb4v2J6OL#91EOGj;+c?6^ z!ZZwQG!-q)eRJ`E+zd{L{|wCCQ9gPQFrN9N0u@e z^kuELfVSbW=`Ug?D^bxV%5&8c{E(nVWJi(DYS39EQbQs6^y_Lx9KYlFVZX+8>20MWJ5Hq1=Sh;@?*+RY2^XRrouU`huZAlL=;neoo)z zQsrN8e{d_FBo~o1Fo%R}kZZm~QWnPo!g46gV~H!S_E)plssANS2L-RkC>}pQenbXi ztDLf^k*R)ld&-X_(TV}^(wL5|k~ntYlqi=eE+(QXg6F;nXMQIwe~&$R67F`VAgMQi zo}iebkGAKjS~i>UZD^k?E+lE*60sNR5m2iCOiqh-D6{Syr#nB2tpIL7k-x84lZv@z zO=Y#NrYw;$)YZQmmXJ^JkLrFDzQr0pz@+G8j#x>X`rxt1trWIGn=Oim(}yo0o%aR$_+HZh7uA_b+gZ8_^j%B z41)~8qKolddig{rpVYu1$cv;7dnroB%0}EpPgf71eqaQtoZX{Wu?j|14B8x6ejOye zGrEzR)RMI;sjisCO}g|ka>qNxqNuPespr&#TI;JJjn=5FOHXkV|96b{MNp986FUq6 zNYe|si${Kj&=U?Py?NfqjVMdIA;%$MhZ2mUCU;xGO6*M5d5{~eTXinJs*U1DLcu~o z6fL*Wx?&Wz zlGaFZ5l0si53C(2+9A}V; zv<%NC$v9&dkt5YSA8Kgmbsd^e}+NM(U59V6i;fV7h z6hLH|_XJCLRPkZU;W~bCh>!xOt)du5nwiL)@|1ffuT>@eE!~l2zdK}-R@GFRh@Ic0 zq~);%_ivkY9gKP7f}M5CG6>cBtM-47`0~)~r=tCVFbB;NMdzPl--Vai{KKr}xuR za+*5#O27NNsV+`w><$PjMjKcu>smt=Ewg}_M`dn?H^}vUw{+;f4`ea8&c)pJ^uOZldu)8UI~A@I6t`>J~F%dW9}ut zHv6ZGU43n^Oo}99r0lRsaV{$p{kJw7E8^i0O*-mNp^W*is8FehaO48NhUE*C9!P-{ z$`_gkYo}3B>jP~%>}a=EE=}Q!yNdks0|E4s%4&&>Swv;vj-~b!u-|!y&UdHy#mg!6 zUYcwUI)0mgO?+e)PI8)hhUSScM4xQ$2qy%ASEJmqhJ)yY#>@rg=VUtV9&WiL<8DcP ziV0xno>4B;OmoPUDfN(E!=S6Fj@oJHkav@)0bOiMzd$j$g~NS1g~i^hwFXJtWNt0r zL2N;<3uZG0Y>0qUI|3#Qpl-Lzn8PBlO`l9Q&SkH23+!vSBTiFpmCYiv*tR@lUUd4x zgb?CMwF;i1m$G8JJ zu*fIe+a)L^D%tZPxyc&R`6Rwxa@s_c4!5jRyYop_16U`1TbmBfP@0ZCFy4{20m5_r zvgwlCnrJr`sZ2RdwzF^49&VFp5rAWE8gj*`)l?Fx@>#`YAav5K&wdkg$6TG;p-_!Y z@5E!~K$RpoV%12a5uca9XXxI#i>d|{wOFu5g1}p4J#(}rvBigNenq@bLWo~SyN;c2 zL2b-PVN#6Q(oVT0c=su}MCSi4`}U&U8hiP5gfGsJYwjGxAFwnn;SYbp!+}mI~8>s$h#Pz=JnBR0iZt zycI)maABcIXVCJ-gL^GjjO%i<*?@N59;l+6xp!G*J*|3d({$kzr>JTFI4uP%tzR z0zzFz==Y@Kus8C^*DhvnT%28FGKB=_(8w76ygWa--POrhoCWJR8og^)xmlcO?Ev1r zke3yz_NK+|^E`QT(p~|#bzDRdJQ1y2WsEs2s#TOZr*&v)8Mf?z3=}Xi=zI&OU&}_L z#HjPCHPQA#O(Cj{FdS?UYtEgxgLOA-O(wox^2Y7uZ_P41bfrz0WFHc@DCMVPLIJDU zkY7#hZ`rHPBlk+faFX4_|DsnyhEpD8nLRPR9RsVKRfQ=w(V-@nTVt8iWDaJ3eATfx zB5f;T7G9ads1Jicg||v!C%qcN#b$j<3wXqS8D!C79pv0qODZtHD^iIy3;4W7|A>1B zr-EaTZ7&`Hj~&dR@?c58cPIMMigDR)KN+?ewdIgotW8daoGO&9hi^PBw2d2>UU_Vr zFQJ5eWfA0|Do!@VPy{^6Fz~0XK#^mci5$){`FL zXbW(VZCa3QJqu;h4JaMg%lQdV4y}wVsYJTkBG%nCOSeXD_@vp+b*nqp1>Cf@R;sz| z6$~Q*eUvN8ndd4aN(YV*{7Om~1A*s@A@M6d>ZNbQa(_Ui^`RXRjVg>XqjFzq^gNMj z)0aQ!NzB-(PL~cOnio!3Pe`>F>#UBygvAd|vMJqBtBB7`-Kz7gLCjEo>k(rG5FBI6Xhn4Ctrs6 z@qW}}y_U7Lo^S<8I2V!9j1fOpw^04@ErdH*8O9*qaJ<0S)~h zp0VqYlvPAW*ypn0rrb5IS)ki#W(8O>`!i7hOo-hYRX2ENI{yQZtD{~A04nL+Ah$z(qu`YK#4Pmk%I-<-53zp6S z)BLFwEV8hnJ#>=9o2?S+nw=z^R?jG%5;|(!WHj1hg;)anLXmsEiNU7kBfCN@m?@!O zxW3RJhX;$j$7z?FBJ@OliMsKzqJZ|I^sqZ?B9-jb;RFoCjozsyJyx($lcXsbblN$j zsD{OP`&>lew13;$_p~=tM>>*{MLR+###A1(baNSMk0S0Y7Uf|~ozN-l1i$sjArNH) zjwRv9zRO?;(tZStk74-znzS(FA%lxy zNz3f8(Jfm|5t6XyE&Zz-E{>(vh-a{)te5NF5$kcl5Vu6@R(598ZjY8WMYIR;p`x~l z)*qKx6r?5Z7+n}G#k__1(9Doo%r~JYdyvtHCX}&`qoF{}9|7_uFpKp|>VN|6iU zbI`g$3g+YsuDzKiFxJ=NnOb<3NJ{7n(chZVn*nTwo)=VNn=hE zYG?z}Pc7q3SK#GP+B*V`Si z5ZFeJZv4KfzUT7?4`q6nv2LM*+F9>2_Q+^Rl3`uU$z#%8_id-}a)8c#Us@pEvw?wL};6DD%njV~{wpqfrExZvj%mmZ_s>_A!;MgAfmUQbv;R@It%A>u5F zlOY@?qYTxq(x1jiID(NU{W}HkAsmD;n_KxG1BiM~@ zoT?F|=S^(V$Tz+Gy&!w(q##%c1eUhil(k;8bCzvCHS3{}FJ^5{?#Psd z9F{;4q7%g~M9aFRoDB{d^~kkqi?Po`(qm$sld7u8q43DOO?HvKxnuku;yp*n1!!X> zi_3P2ut>L**p#FeBuIlF;6HI;#&LSGbDoWaP6VjLDP}m>(5^Be96OVVjCHzu#k76#~5w zDNTJox2?TMTcoaw$zy^18Gt_-#AEU!0zd@PbR}b9gW?N=i~_2ZiGa+M%7C~~3dv-V zEG+5#R;V|o=_6Lb6jkl0ly*TDIXqd4aSeD+UWq5@Y6)R(q?-8Z5J_2WI4|}nC98@t zcG=alBgr(0oSgky2GN0=l@dHCTtJIN#q=~*v#+^6%@Hzosqpw(lM zvd?Bhj}k(GC8k0I6Se+`t>+xVl*GD=dU25d?!i9qqi7GUHQV%20udPn<5SsE2R|%QU!NjH*b_pwQe}iSMH&(lep9iL{WV zzoEd6rlrbUTa%KL>O0_?yurLh#tyH5v$bc0`~hkfLh!YWTNq%nYJliE|70DpK0asm zxf<-`h7U|6M?BXu(E(atR;e%;IfXFyiQ0~bD}12&)@)Af1H05Z*=+*#)(cK9PIF;h z_~K5+q!fA~5<}R1thJeBw)hqiU;Mo4Lew3Oz=@7H2#oNK%>GL_Yp$wHn?Ue1YkP^3 z`7hU@k1i*K#%9HsY6DLSvE9}ulpe$<>$=mVgiqFJd>WD@=4SR`}$BqJkwMJ4!lUiH#jX_y3xW%@brn*Ns;&cMsGlG zjY57ZwnfI*mJfsEuggZ@Vs-na6_6n8!7U#KuN`S8^%f&UFVU=R=A+_&*a`#v3huG> zX|wwd^_z}iFe!Y2zcP;!vl9PdR&Ldz7{Q=}?(4ol;wZz3ea~kHxw)cM+<}t2DN$U} zWwHXgX-A|)%2CgK^2&2I(n;!{#3Jyq$a%%~Q1;QnZ8|#*7bHC`{(mz*^0B~H$JD%N zs$5fRNI5U0+j5^rCn9`FCA?)4$(bYVu&U-OPo(}Q_H4tk=8zE&T&o1TBA4uHAkeqU zom(JZc}LnzCA4<~Tj)MN8cJ6U7e!&#r$wyUx=G2|*11>xZE!L0CUmW;;!vog8mm{m zmP0$dkOr~jl-l+hhSu0s#GuJ3&zfT&rM1vMcPf8fE6ZyGbW8Q~Xwh3pTZS;O)C0VV zydXOjr*!tUN{Kx})g>5%M>pk)hgC;l(%_)DcXKIv3*>p7DKQ9~&m(X{#Sop-CD5oT zV7AR-ah*t>c2`;fI;BAu=gDzPmyOa4ecPG^$U#OfYUqD`o?ku^TG0vc*gmmYU^}a+NmP7?dqWVl54G9lnJOLBmH)p#rp>PBbVg|9J3>mzifxdSPq( zCeyJ=x|YM^!nm$;g5@JuK}!&^U5_YMO=Br3@rv^(QiFPv3b;5nLsvI>Uqz$THB>35 z*pC`;UfpXbvH7Q?%xDCl^rU=m2}*T{?+1n%!uBF}!Sp=#C4DX8g;X6hPiqL)Ab+;c zdRzmH*`r~gcRTq7I0VLe{pn(9RUq<&(1KFOad(P z>)h$Fco@+sCt9M?EcHn^7U1Zx7esfoS4$kSnB+(;hBXS54)e|lwNFiLMO(uKgc&Gr z>;|8y63LAjJBf&;GkA3@GBRV9xAMiB-|kUU#xJ*X{pADGbUc?@r!OpO&()X4!cfS} zb@)!w#FD(D_a;<4slBobpcxrc8xb2vcP;R6UP7PUee8#cDsfUgqQX>mVG(GyLn%RN z>&F*P>&cuz2?d8qTQcqIWhkbnJBPLsChvBJS|KIwr;90Cw$*X@g5u7Qk4$M!o!dUV zxk11P$YWk7En+5MRd zMyBL33r>y!sk_Bhi46s~(iXxKCu>T`n9&RHZdoVFkn{twm9nnXihD_S*1P)lHK%*f zwi_qLiSwwCiXM&gf4XZh68T?A@-%DRtYi{9k`t6ib;uxZllP^IXo&(FoVw;#uua+1 z_ov8~4nNAhxljVI-g*}yyn-p1)-}^6ob#5hs;arhG9C9ldCB?51=dA9(kr@F+XfX4 zk2x?AFAFABL=3srh@TPW#ZFY|lP5hKR7P?M2zJnc6gwdSb4?;W&YyKUJdNd&1Sq;m z;tGod_#>&|eCREp&2ez8lm=+>!M(z>p7}gytg5B!tIJ895_gPr+_krxq)v83Ac&pk zWVOms_P(u!XXU3)-7Iz-O|g#q&DHGj&rwuu^$l1bx8H&q?vtOsm|eOU{&+V`$F(ci z>GWU1FJ@O)SL7Ef7rF|(t#ye`K|@Q*R5@7_wC+4rc!6Fl5Q`n0l^)mHQQKD5trS(_ zF(z#Sqo!D_vNToB9*ZL4qHCSqVsKR0pLGkO%E;YrW@$U+kBw&+AJH%j8)%v1rdVZ9j3U8Hpxzxgv)W#QJ*xIY8As9Ce#EtwLd*eTWwLKfxKD z+6`B3W7h;Scd({Hg!ad#En+}#B*22k6Gmym$RI^bP5MzrlVWLKA|F1H*HcGS@={$D zwChuXOTtmknNG$ZV{5ynQ`HoHFepyfX$X9p>m5(wdws=)S97(>@qL+O+krh#D%9OE zJ>Y{IEn~!@nCvq<;`xQKOVY+syWL(dCBBWithwq#XV?OeSFFk&wa9o%uHX}9ciQeZ zj@)N@QsblXVk@HKa7r8=?{1Sziy#BplICoXco}Mt>|Id-|+#Hi$s z6HjdrtaHDPovdpja!eBW_tdr|$rHLpo;zARQgDHLA-N(V7Z*T%c z0ln@VC{H1mB!>t4Y@*Tnf?dSaF)YL1qn3J>W}2Lz3`_XFR_*0)NRWu#-Wn+p9Q;Pd z*gZ;_(aLho2kiS==fxK;w$`f28FC%VLAd;~sR`gKw_TB~V@{RO)TSn_AEery!Cfm! zvJ1}$he?ze@EO_%j{x!dY;soe+U&PRO?U2vZ4YP943r*OE+c1LjT9tpM(=cfw}L5_ zdT9yul350C!i7d1-eWE-X9c@VcV>}E5Ye%i;q67M#JmMejAK35flrMK?r#q0j=GJO zBE!6?q67$f$xUU=SjyAPjf@5lV;4=;<&oGU#oQ{GfdLbogiDW=EkA<^0L5ri>(6l# zK(r;6TX+TpO(Z;I-Ks9ZMJ9aKN3^edKohhS9>poW*jn_2qMwj#VL>k3N@?#*_2!yt zUCtMY9x$&jXF722lcA!uMF-jj{UP-+dd{*A2-3BU!$MdpIh;f{ZFH|OKy9p*WVrBN z?llWz?%kSY=DhKb=y6RCs$~MC4{MXiEHMN^b!iI}Gb@jdDi5(?{+EV1D#tnLuS8}& zK7fJpV#__+rfgnFB+A=Wb6ik4P;(c?t2He)P=(O}0Ky$#`chetmhi+3N=g~e_*61y~+hj~c z>IvCEBdkGL$#=BnIzb&;qLs>5FYf9b{EhI-0>z@ap5ICW!QOSTgP@trlQgEsc>}4O zs+s_I?|sTk7_TeJ_%xj#VKx{&bffdHxh{g8h*p1@xIwB7VIGNy5Ed`=6v-XDnBs;k zJ#(cPLr8Xc8XjYuU8>+0KNv6N+3MzCCpdpsih5%cx|4>D{C|Z*acdAh{q|_Iv$?xD zn6$L2m+0@1GEiuvOj?FOt+_Ov5@tSBm~&(*8H+Yn05)El-I@v^j#3YIu$C0l9h@@Z z(Yn$G7cv=>oT`#gMg+|D#KaM>vZ?9&{EA!)jUF-V#b4XTjjan>)W&v#HVHGJ|Heo0hmwS5FoQQ#+ zSza@N%o;o_lAe4Xnnle1`-SWW-+$-bcNQusGV&y6=0v;uj3(^jPWpIO2yQ>I5xMqYmXZ}(qMe8Q54GRgqR2{MA~FiHb?eO_+Twrych#Ar;W!sd^#f9iOPs?(x_fLU7bO6w%(?lAFY%= z6;SkB+JV{J?m!T#51g&Gz25M(a`TkbKbZQj>}%4FJqu2T2;banRohpNyOvY0s7N6D zMRm3<&1zKucMgEn^4gsHeRG;E6+J~5gKK&qVs!eU6vl7NrQOpI4B`-~``A5#O^vUc zXG-U0JrlagB$6-;_!KvWs_0>ho2~iDAC|H=cY4J*yVxs>|BTWxA60F1PEw)&)jJJ* z7CEj2Uu=r$R;stGG&cq;ZJ^#t3+Br)51%!>TC{P44H%sP(}bOG{TtOjdDhoCF?+xp zu10k_lvvtENS##A<0(}W!9?Bfv&81HB-2B|{!Qb*WY;wEc_RBqvI@~-Lldw=4G~Fn zCZ)S%kF^_6e2A7MD!j`pv)_!;_^l&5D5tH>JJQ7li0y`DJ4*Yr@y5mW3t(ZO@N0wt z(I>#nDXU?6b9;64YFZwi?$-<7X6cOJXCQT`6i3p^SqxZ+gPj`RHyqcyV6#VI6_2dib5u^RNEsD$Gj|~kp zOSaP%h(uo`k5JYpbRNP~>RBBxxmF?$b{W~*`V>~7$hVO(YD{VSK`f0b5Hk6yCGRZf zD5Y+gggd3Q)8?qz1FqSGlKPtgAY&K_D6A9@Bn>AV^PM}R;j8XGJ|fUij>F{Z3p*S<{H5Ryd<5LT5Un;A`>V8Dei&0Kv&%!hTq<&aCOHVzBIlv2_OIjb8X7GrW zNE_0dldgGUGJva--=*e5_uCMwvx#~=_dPG_^*0@&UN462T)4` z1QY-k2nYbzB-4>sf2>wf5PkLAl~8izLu}KK5RFeLm}1Pd$5m zIH>lwCwu+z=;=Rua^;CXtF}kI@m7Dd^Yow1rhoIDzx=ajpZPCO)zk2?@X^uU)932x zboavf^FROj&sTo_y_NA~=lqjD{NWGJU#HKU!-pdT?`b`c|)+&OaJH zbsoRM#|Hh;wQ90Gc>3Jl^kA^PS8s1m&sEcd-R-B(O}DR4&-eDiJ?qK#-#mS8W#xSO z&dS(XDp+i<6`NQ|EWHFHf&e&pq?a>%UoBoP0d1>cz<)rqwX)Prn-J z_eVSRgX3y{ae4!n+MItjs;g0WCi>+2(`q_doY2!v>-k~78qRN3i__nRZJyt&Ua03^ zhTp7)zh0VuR{eBwa(hPqJvyjf?slrWdtg7ZUWYfhF{>WDgFp3yE7b-)8Q*iX)2T+` zA2a(f*ZG4%uulFkq9^^JPpfc3&(y8!R%3%~0vPCxEe zdyCV%;SIXsYSVDDqY;0vrZ=mr-Egs9hhFeAd)vLm$=B5&e9W%^E_jvKMqh>A{=qxp z9XA%IH|fWVll!~j4|=Znn%}(sVRMJDy-(6E{ZsYhmFnV3^^>*B8$WK}OIk|oOphLC zr$0Ze!UNvsqj&Q8l$RjAMu*=teUvw@7ycjC;q;C0Pm+V9UN!8`Kbck2@UYe9;^c04 zaM}LF>8C5zYFzJY*id|%R_4fD9BcDbKRXFOIQI-TAbgd+bNW`e!q)s&SY&$GP2P~O zx*v_ONd0HdSg4=8_~P>~zxb2tCzr3h^5S~?T3s2>Zy8zdg<~+1_Zo~@UTXRSTI>Dr zP@D5lM&a}L+Wgj-my4G0GyG~g8HZ2t8LWelk(h*qc#B@)cD%|X?DQ+EYcIa^5oBB$z~l-r)`Uz|oM8%IyPpOdjFg!lqog{M^-Q?YaMU33FYasl=Hld|^-I-DYx7^MS65zKoZPxxZLH02 zT&A;k`s-?A{?__h&^k9(*IJf$Z5~eLl=tz$O;WAHuzHKr&smeuqF)QIeGiLy`pfXC zE!vErdcrDwbWm*tdG3a7Afea~Uw^Zw%Nu@Ae?U)d($dix3V#nfcie+i;d`WycH-Ul zy0Z%{&-&y__@8Lfnlv@;(eml<(x=x*WQO4-`pZB3J^t`R(raP!_ZKIp%Rm2p`uuv( zl%w#zGm*)q-}rO-#>;X(%Adow{`t9QuCNP%T`u316bGTd04@WI` z{EqzZ$(5*}hd4Rb@Pz|&r&qHv3wnu<0nW0M{chN%pbbX6lJwag4g-B<<&67(H&`~h zvZzcshxwJ_1BH(r_Mon(OTGpL0Nq1pg-!Jo7L;VG_s3&iE$H=5Q0$A-zZ=1j(Ph0A zRBIab*;z03J$b3H2}j|ApT(8JbFrT91x>D2L^NjD%=dfr+nZ$K^LLa>kO&UuUsqdW z(MPaQ;Yr7IDBlmNd4BJ#2mF3`zzHqXh|XBhqEpiGN94L3_Jj5cH`^XZVF=DoSIib! zI_N;iG$aS6by|~0asm|}q!R1)C_?b(vR*;lf*BSUh#w)mC~oW}psIto^CPfg4w`xx z{`Se}tQ-A>mo~N;Q{CF@bYT_qVSKqDFbBB+b<~R34Z>Dn(a7{4S0p~c_|cR9meoL5 z>_-xyAEf6zBsKbXqJ>!|_iHc$eDp+jd-SnCq!U)dQ^#rrEqM^k!^kgdFMRLs zb#aHJ>BJn5!Wj?e_pImtq2Fvc@llOMfughXRgYxh^vx+r+p&5Fv-muj^zi~rKziVWL?QV0B0c0s z?p(lfz;PGd#^(sfcZ73y=7R)_agi;yxJEsazg>RqJEJIuq??>V%L5R$`W+Ie->M7H z6K_KNW(tjHrQYlF)gJZv)S@K+JuN}F2wCOqS%Z?f#@?fDZ{3|4{hJOPJap03h>A(I_WY3D_FM4_WIxY*3AG^8K1X3=^`Gd;ZMXuDO>3tju|Z*`Qjvw z)!yvDMz8S;9LVq&&U}>b+x474W0C>#ySueG`E(=}^+QnvdB{muksvc!8!>)Xeet2h zgN9YS7yk3$jWbpIlVn72sU6bT&@$|n$nsBF%zKE&Xm8XfWk;WMe#Zs}K^(-r;tO_E z7k4Kg%Fg}Duk7viiFd{L-}=} z-oqP)z=(ssR?AJ-e_`#p7sG$%H#Y3`pAQljRR3pKqHuagQQaZPPHs<%7MI;7ge?CQ z!k7o|gthpeFX1*}DdulnsLnwVaT0>>6c#t^5t1X>!Mr|WjYxi-XdCtc*`}|YYuk?> zaE!_FPlDW|SNoCz`5>)bez6bx%fh|y#+(!kIAkSR^bT2w`6olNuQx;Z$;Nyp*0BRe zq)Wp21-XQ(5seOFhhTB~c9*~N=5E_cYI1^~9xjS`plf)>RdR$_d&Sh*8YM|Caq3K! zwP-f>E07?tmqP5u`Zc`M?E~-J%1NBS29alc4M7-7%K-_5*eCuLWk^XL-_`A6Kg=c| z;FHmQd;l#Y&KyT6`_|4I$I-qnnbq*oq~r%Uy{wIreKn8D4>jo1=Ji-Rb;o@1X-X7b zW5qBsZt(sekJ(7ywl9KTHExC{g;fqN{Rd%7x?_3HptEm=4P^Vi<&N4TE?(H0!*Mm~ z+AQ9F%$dmE?(~Du@dv{9k9PHfZmroZXJb~a%Ny*oaUu!5!O^4>tMJfY?W)tjpP9L} zwqNc&JQQ^)x3OXqmi7HU-cH@iV{$J~|DN`}O9qcT-QfMOdf}8rkMzb7Tnr9Xk`~7u zV&12NgEXqP@CRLx<6kU+%PG-fg%|y#BUcJ$3adn341F;fg^t}Hoa63{@+YV7$+xl6 zBRn8~na|UNRZPpNrXcPE&Xmm9@OMo5>snLq3}*DeEa@N6lR`52z}l@1P6r&skHcd( zR0AA+UVbdy#c;c7vnwk+;zb~dg5|ec9G-$qVz2;yjpd~aQnt^@4%sy;#ZW3iOyJ_h zP1Li$Qe7GE^n)8d|A>}m#_kD+a`BL&AP}8$a@AAzPh7-sPTT?{r?Pp(^({%nkB9ou zo7t-DkucFGXDJ(S+*6OP$GPzXHelv;ZQcNZ5C__6J>~1+kFPsyx+$U|V{U{fd(8a4 zVg1arc5Fz&PFeNvuv1;{LXetaVwh5N|H@3P(&XN>Yz zco7Ooc-02HUmSdz$Mf3)TR!2X3CH0ON^J}=W z2k%fm6Zr;Cy-ZoQ_ek^G=SWtBH;d zjz-6RVXe!@mrmf#QR$26wZd0d9khd& zw~cF`-GmP##rQX4lwenj?%3f&^cAeaaam@~M)5nraj(ZN5z{b;=2cu-0%AQ0@(~R0 zy_M<(S|tD6WL9g>kcIe+!-Q6P5*wAb=ysUwCSm;k(es;Ee_!!qvU>3=?bZd zd}Vs$u;`Kvo*_3xLAhL!)`QZ5{61b{)4iG*$&IAyFE&I1+0}+lZrN=~AEpbUXk_F{ zqO@o$=!JNB*#+vT;xm~^>}_v;KZaO*xmfs9Pn$#kM{$hP@r8@ruzjVf-M-}Bhp=UM z(I1aS+ufZ>cSwag^_!ap8M(!<1e zI``yGhOKYjKH0Rw!IH<_m>-6?7>b1Imp!he@%>=}IQKAQud+ta?!GTd4YwuLOs~!6 zKl|V-^TSz3^8?78%;>bZ50T2$i|x(X6XQE)w`6tLG?(r}UG=-jPVCn6dr?X=?TWjx z4%SSr`y7|KSE>z4wNNk@Zmo&Eq1H>1WZCG6OYgL>;%#t_#%9o*pBlcA98tb1xxXcm zloMbtZ5#x>4ITF_xU40Z}Bonk|7HLVsruhC#rjpeN1Z;q7dS77RPHs zOS}_P7U|b`BUiS?H^kYr)&fMOW}x5JGS?VZFAtyb|x+%iCMJQX_s64n8T~x<OFG)xsKjZ!MQ#^oimNq=^+S_1;fRCWYRa-siz|!#Bo!@Ls9kct zQFq~w>>2xMs(Skgck|I~WkvIWL*5!n{m{4HY}wz;0C1rz=-jtitl8T~N~~8q`-h@W z5VzCYJ-YJk?81^fRTzO=4t&>&r7DMFO8o#iTQ>fsni%V<_}I}7*YQiWRPyKP$h)d$ zF^|Ra^MXCao1Dp^TBD6iN@);6%D{ks7@sG6jKmej&)J`U3Ee1X)7F&ol+5DvSAB%)bi)sD8;;r$$jMEh`fP4S zUZIpVFb~b{UHIq+!KhtROo;*#?zLiB#F^5x_UYZ3^=&z>6}!lJ1U&^Ygsk~QKuoBV z#VCapLF-7IFh!e4&bgHh$Iu*;m3WWn#Isz?NUNR}iy zi53(Aez5I_yCjr{vNpPl;=HHLWjDE$jzLc(|kk$8`4I%+z6!nm({|1858z#`ox@ zhYx?>?TC_YdLz(`2vW#_(yy{L&?3`temo{Lq$Xug?i{RCugww4b(~k37rULj{9(!l zgrfm^PG>NAQ6>2`zt=6;ZuQUsn><5?7!1{Chq|9mxCTXJ{MMaU(>Sil&}A<+T%k?7^BP|Yn4Vx1Q+$Iu#l7+nIfKTK0==UVV_SR z1(S%(e5;@D^R2T4g~BVr22ofT_r%`E=PXciB4lCD7(U5F)nlo%jYa5#Uo=A1a5E@x zLfVW%oEyx{2gv!xPYq@$^KdFlBAp4F7WxvFgdnt(VA;Sjb;pvu;O|`TW=UNRC9KJV znfpK&i~{a-nvENe?Ur|uBZ<&E0wM(rM9bX*KZ@lrdg%XHMLCZkjcZ)d+*o@Ue7BQ- zeYMSjwGf3YsGz6AUdWpOp%x*)Qc?~ge^{Zq<{-_nD6%ePIJ=LZkx5%6N< zJ?R7*4}y(mSnTla2}6G-0?OnFPojV&4=GrFmr$I4!BX&c-`*%lI%R&?A{ayrs$lbb zL)G-=f;MUmC$=kcW|9zkkrXG;4<( z#&43xEH%pq$F$lEI;bAoa1Mmo4*ST)Me88)F#vu4zV4`5abV5$4u5omKYEc&)fMt$ zRvxcbP1?(x?(n4xBouIt5C~qMp>T(DC1HXCN1H|K$d`D9S$-zn_*zzoxLiFVut6tA zx>Wo&Hx_*#^jF6&RJM5>tngRs?rce{P6>kZqu9yUtbH4Y&u`ToJrr>CZ?dTqSwo06jzwxDA(ek7j}?xhJ-qg3E|Tl|RIy zb*OBEbc=z}m9x~q2vRL*{>7+te&P{EgN8$B&5un5%3?#`m&pEbsQ998pRsgFQ;ibP zDAN_zTb`nX!CIU4H7sx`bPi&BvddpN%u@vd85t5<$s`C&NqD@Jr0l$ z6vr2$DX7TS10XjTaEAanRBw&+(fy0qT#Kguqq;Fj0GL+%cqpKlAe7-)i8%0~R~T9c zxk+c`#n8h2T!zee)I5nmH#p@Wkcp&CCO)3!v_3-*WivX<)ravfDC)a2f<;4hFhV?x z>j7v?7piv{EnB{q!Ob|{U8$berk)gYu=H;R;Vxx#xf0Q*G*3}%Thp*oeFZcbW$O-K zj1nVLx2dThU(VxlN{Y0O!u91{ZNM1!k;4KFuEavG`&TU(4(pbM@a(f84*s=T3T{U+ zA86}St{H4mK!gKy0C%zsKAPy~k@D#{n2tFFWe1dW4nP$2L8&7ZvK+2L&iTwB19xJ+ zv+-E5xMA~N;RnCsn;&&l%V`n~DxvQ@9agZ(N(J@4t(gTeGLoV4j}TQB7sFHL(Y2oC z)#SF^4ZCLW?ClO;qYVz)e1trM9J4L*8)>Bo0b9q!CFIcRCV`&Pf3uZnyuXOH0GZ<1 z5#3;4gI3Bu2)#c2OdkfzL05Jjry36!Tu#(v>%*O%3GWpFtC|W-@g4`!K8eJTD`#Ig zte8ej9!v^9&_ul??Yx=__UUb3{ujJI-4WNP8iD@HH9in{zIuVJIegB%p5#kHqadiC z4lO7;Q%IDBeFT&bKMR+e@uUWO*w$SEm*#utp808iL_Wui_Du|dbRk55b{@0xvYS#h zdOL>mFX8QK*&~LoumK1_8`%!(Chi_+x`*{VMaz0IwnR30mEWAz=N=z8Ijf4?@(;}= z%S_|3QB-_&3OQ4G#?@9E#d3Dba)r30>;)GUZW_SYBhD;MwD&`j?)2E=x?7b<|B>=W zg6TGskoHV+t}7~!Lc3z4NR|>;;b=_e|DH~MxKhlCX-mlv9m~+;s9K>nC&hZ-y#8y- z_RiQ|k9Nl0(KoNZzfvVP8g(evti>({>+`wGPC3IZ;J|Rv*ubG~xI~Kanc>Uw!oxv` zZ58ZGPEn7b-b(X!;vM3Q4%1WT04f~sctzgoW{hnTM}__cV7R4lHorxgQ!>QSci<4! zq#io_uKe&NkW)A&ACY$9^`&%jSTy<~ZP4}k;g}`w{gJ@8DU)7@W#l`BPr`XN(Yfgm z5*L<^&i!4HT;4(M$=7@EPq_Ie2sQ8eDj^{G$Kt57O_zKplF;a*6S4UiW~S~Md62uI zcFoTeBEf0UKx38x*2$@upS*Co@)k-pv_TWa{oisnpYw0B9n(pd5ByOq;KdxyrG4=UTMeAt;F#UrYI|bEAaJ0B3>80>!=X|rb|kq1 zo5vE1A+ct|Y0^&CJvxDcv5%$ey}kx6d}=AV9Hq-=32KM2PtXX)Pa2X6^T2ioeJzf~ zN01~EE5`DVaarLT6dgd@Y(_8D=sOs)O`4=G)fkjeW)auC7Ar{nKoMBQF9oX`wizbE zf`LGz(cUik+-PgEZKRI#R|eza!Jd1%Ot`fAO)4hx3j%lCgyTYvlld@S4VmziQ<80C zjRiOx{YPuV&XGWGdQ>~!1B?|q_*k?GRvUGKS92fhs%R%>8p(N2s4fKkoyX>gJKL!> zph6i{O1?F^dg0@7*wQ>7u4!V^DY+$-XeEz`8;FiZsh#$?mrhgcM~{1;&~jc8I#w)Mo8o%N zbFqOn%?|WR;bpWkx5?+8{C+ugOh+=4$Alq1tC`F+1XiytPXFaHbqcPph3CC-^+L7r z^5XO#)-Q#Bz24RtxXREX=%9fB?5G@8&@j|C!FiP;4&=as8hH^BJK|&IRyC_gxwkEg z8(m=M&^%DCs5vv$!zQ5(q@f~0SKHKN`1Yq=-d^hVpsx>De?`FGr<5%^y}=lxx4G3$ zYlzJ_(6kempk(||)~i+sx;oBUlI>Vts@wzLS8jtXvDy8$T3Dlj%|c=LJH*36g=D(N z2kOjCB@2L69!W7?`mGtMZweS*UcnJ$V=hyUso9P=ufN)DWJXWeJ<(?$k4V76gyzpgr(Y%2(Anrn)tvGyY z-Y<#WN@10(m{f}PSiPAtC!?Znm<$?<8>GPa)jCEV?X3z0w*eQ^_Ide}_3LCi&@8bA zy&0}cK#h@sj`1g0dF?79k(PuGW1IDOYBMWQf7fdsI2@ahqo>YqK2tuovarG0j1|UI zj90Y^lt6}2sFS%;+G!h5o+;IIu8E(cTl+oPVz}PwNP#O{rpg&ad@1+Lc z2RFBAuiolv`N!B9XMdXNhZZ@7m7RE246{HwLQ%Q(*~$>DLrR}hW6qklH24iV7yGTh|EqC5+8eiB|Ap=Su&k@&z3FIs((;*C#=CXcvn%7t zcH3os(j82*; z+wSJ}w5~3>m?YHuw7l5^}2g)?=TBt-$7e_XM1;ZHfei>=exu0>S}kg zGoH45;=dBn=|Ss8jrX>z7q&;E?X9*4Ac?A;@9<AMsMy=6(={aH0NSFmBuO_3@;* z)$$;{Yd_x}4E~hp;p*b_*Bck8igHq2eRzxiy?*IWwCz5sC>r-iu?bQeW-MvU54e^% z(*V}6>0oBC*7fu~6!^Hw9>zmKmeWaJ6HlbF9cVOB0$Cg&E7s>$gk$bIJO}dn$uQ3p<~h+k0<<%T+pUc(%aDLv-5D=(?m)hv>;by;8Xby zmf}UuJqbCAvxW)%=_=V&T$zxz>SX=^?;$^Gq0i6wT0SFS(^9=AR;pwAtUwwv|GJ|v z-|$d-OviD0bJ_?uZ7Z&D&4^23U9X5=AfE^?heKZZTB!j_B1Van!FacsOr@*yQz$S1h zT-DLa09in$zYSMWrtFqZ8@`=GU1mM;R)%rJrS9sW1z;KrUzu8rnUL;;wdtH4ZA9)E zkNA*4gA&$Tv|ETIn%VCLo~%1$XBf@c=DmIk1WT&A0KiG}6j<#in7UT5TKEu_iPlY64z@brU zO^SeKFVrz>uHgua&gWD=+3q-|0BoVi^&i94UVf3& zu4U@BZ=ql#6h4woeKu@{qj0N`pKnpg9bv@QDl5PfNo~2prb}0NcCrQ_-6GGC6tHL@ zsyC+&8(e(@Sz9jj0J;iokOjq*pK*?uX+GW6kuq3@qZ@Fw^5sK!SosEn4SbVA)Rj zUCK0stY*!IaC3e%w#g1Hh8`kU$@;eBHnxIP8C*6P1GVdlyUUE5Nmp1)Myoqum4DrM zUs^U#=?%jN9y7-FIxc%m7tK^0ce#CEUbb@GEM(bzG8 zX2NN4sQP5tUCXQXYNR&2)H3MZLk$|x9U}QkT-!K0d`vUXR!(Yx3Bl-?*h+9$bbR)C zr!14nJKU9$I-n%z8S8VK)mNEIzNs(0$yK#>zP^UVW*MEiq)AJQV8M(UHTs$M)vySq z)4|{q)SC9=%mC9!>qxyQ7cq=&XPe4E8T&?k(8~->bafyEpyRhtXe74}3~Vr@8HPxc zCZw6if1`?#Nh zgJfDK!3M#i$Nd+!losO|B|2;oR8UT6t9$Bl+~+_thQl^vn5n;}oBUItSKsevYS%+p zvy6e^;PP~^_?#px(%QIcRFAUHgrM8j5bfB~FPFz2Y8m#agin#xHD7H+7s7 zBbr~)K;#6(u(aFgcqQ%Qzz4PHDI-TLJ1OFy$HA|C;uS6i+RFuC-Sro7x5lPE=tLP!K znAH>?an`rN?%Xx}uB?a{R=Vq4!MuUZj{4$MI`L<+cypt70pb%*uTU+g#Q#gNUYVC`%ov>+GvTsgxbS+j@;88;2g zlw5fz%ES>^TAn|T>&Rl)<<2#l_a^DM*o35S@Z+-eVHU}5X)^hj8J+D?Vzftf$l4UO z>9Xq%6=2N|81as_iDZ7Pxd!S)IDNw>ui%$}{FkG|n?gV+k0i$jWDy?^V*=5({h3Tb zgn4eWxw~^9&a&1;$fOZ1jU~i-Eq0zL#TP%gO^^b7SyLXgRFX;bBk-CPjme*#3V&z{ zKoEL|2f*GYEttbyAJyU7nEyj?u%2I>{_EJH; z4lOm#Vi$TO{(#@qftY2xoN;+)af3~jC*|URdoBi#9AP&ZfSVzbt$IR)ZWQ*gc;wY{ zV|t#43@YpU!2TL>4frCW!B<-TT#M^53>Pj*j#Jj`*~`PdAafDkp%kp|2LiumG^ExaC{`Sdm>0zg?JMl7BgepoUT8BUUa(xQO#YV6 zl z!&xvhVqrx`FGtCislcp9*<%sf#mtP5(P~;BObB9MK8cE9?uD_ihZ;9?O2dj)5_s!? z3HyNhx=2xmZN8tP{Nx|dLy|3Ly~vBN7zWn!<~m4A=wr7bCVDpTDQ^>#;YQuzpv=ym zN+1fH5k^tFBWpn7Do?$VP)6!$rR}Z8zHrvD(Gv z^gkZ2RF4rQ(YEr_y2j)l$2j1+$arxmeS;)#>B3fjx^*%^DJObCN&TRm7UGgXr@35jZbBn8EvuYvz%;2{ehHOGK+LDL-5*> zl*8vr-9RnHcHfn0Es?)iKRS~3atv+I`1$xChwb)G7hXRS#oin3BzLV!{G*JcOT5Kq zeqK9Y0ngJ_gvPS)CHSBJcsax*ukxU?RSIU-DBJ)4QrNQgVm1YihrfldeDsn)IOAA2 zn#H!-qLMG#*%2&Px{{9;->{a6{98k%q(}SmuVfL#@Gl{ra=f%$&BKt&aja<_d0IS6 z`d3aGr*xd}*==R+FkS7W@eI*xZFD?_#0fh9`lP@Cna^v&f#g_FbapSb>Qr zR+w{6<3=6S#|&gngRfSrFUc^~+?#~xh>GUj%sSgs1Mj;joz0ms;VpI$I<(~?O(mAz zT~!2DhgZ7NHzOBhHIUKcQec<$#GUSn8>S-@ywW#{(#&=p`SY)PBG zf>!;c9*jxGL2$i1&MXOIhE%mNh}bKa0lNh{e@Ar+U=qL)A!B-0pET2gqS|YUS#9Z} z@$PmzTOvbwHoF~T!LqChaHws(Rl)E-%9sV2F6@RycL0UL>1D!~LODHMQ z8ah8^X=_~^bL^;=oWI!tba5o4XDvJyO)e=jh?n2ep;j8AOud~L(B+xs6x9lCTZCad?Tvfe3^j75p#o$m7$SSK>y?nezH8?PSfp4-4+@_V1fJxY|0?b=t4QW> zC_pn(?eIOevv-0={NNpIqGRTZ)53EDkzLeD7H+L`9}zP|7QU!UzFa!C_50`e$KeqVW4yI3^>;B*e=k)u#=g#AbEs=3z zg~=Ozn>176&uoEWp&si;IEyc?9JV*;fgvR)bC%*#x@SWZkV^fs%z=yYULM`~ndRn}ScNBn|RXLx7qutIwdgizZPjM8=5_!%-up z+w&)#Zg~b(+6!u92GSM#!7j|0kZ+&>%if49YBUmt4pYWHf8s%-K%2aQaVza@j~G%F zMph>-K>lXkml0iR;sA*LQt)9tDbwJ2ImL{O6b*ng+`~u(Xb0T}h%+;y)nvuta5A6J zHDQTA(olT>qz=1ec(Q0OWUeiI7P2)u1E~ZI_;pV*mC7d9vG7y74l!`x$2fz|WPSeb zW#mEMC3W?}+U08gA(fJEtp`K?I{oSe9{=4Q+N{lwlpZp3sIxQ$0y>l-?Px7K+No19 zI}6|+()o}Gii=a1685J)z$O@Nlz&%dmkkSgAj380v#pdd(UeXtz9Cxq!_l)m7vc}2 zW--is=!{I8)qrt1vkZVtQJ>#?wz{Z)r9nR7@oMfxa}aG|b`9&!X>GTJkZrvTIK|@} zt39ALmo8<#T6(GaK#@2ZU4V+M7H*zh);_H^DVF^&q=5y7st>|%YEh5E5xrqRdz(H* zBXByLz~)2HGTg2rGru8|MsZF84!gBx_|E82UZBGePxDdZn-~DfzC{mWVcB&1(pv8Q zX^fdhwc6B+)`E7~%rdnTI)ukazY=Btr|ffg$#mU{Cl9nQVEOh;Q;=6qt%PrU4P`e3 z~Gq>{hVq~EElUZ!k7`AxYP~T7!~V`o>>jk|7hNxQ_jeY;?-CASV}J>@*NI~ z<2si?Cht=a3==l*=Qu7>!)_g&LV><{LOHT-+>Jmdz8-@$JkoF66fV_pSFSO{1V=oL z{NfFqT$6{_uAJK&Dfo=|8<9@Y;I29)TJ%S$xt0%FBbCE$JgFPe%R@mYgM$Wl7+RJq82ql?D0k@pc$Fmit3u}wg2vsD6Z8}hlHj`XD1NWQqI27=j z+Yg(>k+wuG75a|xJy}iI|7V!85gN3 z=n27B>9nzm%N~@kmh?yK;G7)N?$REaE#ikuX}MuxwrP|0x#A5L4Vh%5`>q;{lG2VY1-F4JA2o1BFABk zT#C@biN*JetYS)3JZ}o&G<^%rHZ!F4nEv8X*z5D8v(B4o3^|ex`z>W*VFpg&?rk53vw2nOBPb_I zCSH&skrjIyrvdwkv$o!DTb(pP#ou%FkQA4p)S$4U&3x`rN@4iTk}|iM4r@}*%ohLE zRCDkEA&}EC9%)JzlPgZ&)`4R>saBfMZt5L;@{fD?PHzt7xsZ_oxKk55zhsV!llzi} z?2b}Ro}V1cu*pjN!SS-Pr?u%(B&Y$L*it$v-S}wMQ&Veyf}p>rGj@pV6IuC>qw0hSiTs!0 zj|d01)QTAsie-b&aed|qg*}u(y{Q9W87N|7{!f>~`p<8yU#c!$p5IuO{)xQ<5Wy{~ zcI~C^Et?QJE^-OjRtUJ`yP$NxhRS-S@h0yib>8ZZn0pC;ie=7C%{xp$fRtHl8*v`9 zDOR1?4bW5~_xea`D1sYZ+Ronsi4LhWO=l2^uq*l_o{KT+w&y~=$Etso*$@R+BozdH zJOqjaCB{US?9|Ch4}}`*RwX@GRDV086!Y5U)r}WluGU_?^x_hM;do@A##)94p?eK1 zQAgf;Ue>6TUq)x!8s?d-iHHm9ea!Ukj$$q)vB1=^Uv1GgL0CGuBnQtPF!%c8LwyWm zK5KfJX%RO&r6r3r4>ATNGBRL>u*{B3kIB+&V11U=0W9h4=$ppBA_t}+Ur)uvIL6y_ z$Ajzkj?J1#km=vdSZK?%z8Pl_+dk60=J#bUO(D)<4m@ZD?J1z+hwOj5cNf-SAuANh{Z?ys@3~o_C?4@DfPJsZz+H@cyrAQOh){d1eA#jig z+t-26kynjFBa>v1Yd<_xHP9>v2(H#(4Dyegi7+uUZI{Dg0VjZSM~>$k3aL8%Tn09K z5QL&j-7+RHyi=^1+?tbbc#kw3Zb`N53w3%1uiEEbl16eQMqU0Yvc9_}fVYDG$%)Ze z!HJ7vg;|(8yt0v~?Q8u)TB{T$#wE)rURaIs(m=azSZY1di-y>;JWfz~^4VN)0>f^B zOVjF1hB){-wfwk|6`T%J5)Le%mNV~I*+XE|JoatJ`Kl*ZDw5P&o-L3x_M6~WL&=uP z@WuW<;HTIrj?4i)8-WAO1Tx5&%@t(gXJB?P?V*P6Fk^JmqkUwi7^E_cGc}r{O7u^R zpy(k0=oqpPMa{U1Zk^*g-5#qkI;JT1er5(ub=2nj3r=Cw1g`s!zU(guCwpT;8kPW+L&{u+M#)56MZW*ojp|%QV&I^ z@y=YlHa)=(+iIJ`mIixnt-MAAY1o%&;n+{cB*WJ5vb8qS)yOJvqhnKEVzHI`zY_Y> zRUX{=vxGa-M|}8BgLX>~l>bg+D5a@!%So|i*;ob&$0BVexNKV(GZi=P;FB3-*sY0W z3oSn>?+)HJ!s$)xoWw>`A>(bOqs#Q9U)iV&qF3apdC5Jb*T)A+xS8m2wuqAPJq&|DA}SFlnO8nY1OwWdbt-wN z2Qu+4OD~hSma32gR4yKAc(B9pq*{2d(UNLAA1(B=xh!ml_PTw=*VE?VafZ3KwF{Td zJhv*xRDZ(uG$V&%AB`E3`+2E{#*4CldGHD7vB{@*`O#&YieaUG|EOI2o_Zo2Nlc{F z1^%uHGRdPhAQXvq$wm48l%{GyMjLE;qGS0?OWMfU~HKGgSP~;`{YM((7Lr~5Yf$5S~>nkO)Zm@zHzoDb8befkyFCnhA z4|>k|kr=bMUA*}7iqPo1$QvToA#!F#^lUs*)>TMF>Ox4JQCqkhq?&UMGRoR0 zYwiycIx8e*U17WNAeIUXsY)FDDOLl!#E1vj7Qun=3?EJ$3HP%AT`u5EMbb4-oRu{q zrZiRbGMmlizEPR|Q&SyRpC^JdxC=xg1tu1@nCApAG7h=+r9BdrzROYw9SVLV3z;1M zr}`Nw^bgKG(=<<0;NZiNdFp)s8TMoHJVO>xaFd704!Vxb1{-`&8$sBc!W^NPM4%34 zLSv^!+4MLa^HZ;6JrU)NiibYa?|$nQy(`(UE2yz4XIEm9sW6#>0s7qRq+Cj7HmUKq zSrR-GPYl9Rf`Jow88c6dw_w7-_Mpv9QSWN_9FvR7CYloNS}^K2qU@4}J8QbQD*_Zd zx28Dx$k>SaZ;d*eB3J~}&27~g53NAzJ(aaLYbj}1|-jVh+Ua|o*QfR(} zSxy1z=b!L+L-7K`8rJ>+9n1NEIZrXco#W(&H$ROi){!sp{q1|ooMfL%*Ds8_!YOphDNQgj=|l9RNg5=?9cOnD+ZTo}_-3CDH%tH{SXrH-FB z6`v_uQaT)z?c~ADBBQGS9EZ}1c2;-Sch5cZvNX&uPXE_s9tH6GRf?W(wauuyn7li5 zjNH;fak7b;wBbGavSq)WDX<+cO>(pHV!)Qb(nBKAI>RyCHn(+cnSf zGe(x%D8vbj>K;vN$I0K9RKbxc+H6X`8B&UWNgB@COS=%y5@d$j+RYF?Mildmjqo>q z2%Jf;>E$HyhoeWN!K!rwg=544Zcxe+0yFBDcp<)bOIXlkoz=yY700L+<#y~#R?K8< zIEGgy(#^RH^1ux0(+`Hy)+i6LLlGa@rLRWIl3jY#gkWTFR+8IWYoMw3$Jgr%Aq1OVr{EW{vDcVYqy(YHKyZCA69>8<>JEUX(!E^@2_K{ieXu zq0p%3&P*l}zA?uKD#|O)jlx@dJ`teZvJ_iZnUdttREXCsJ#Z;POKI~7abY3rF4$08 zAxd4Bv7%0po_Lui<+88(v5U{84=KYHlYR;!UoJJV3H~9EnY=^J^PRYnkt>8UrA(UB^wFo7`8s&iBU2^bIcxM{ zN2#X-?FgnL#bJdGQ>ekAq+M7`m>PMCMh9BMCp^HJ&*}4s*MdAD{U-Wz1j4EYA>fbF zliJ*~^#Q@WWebY-m+7e3INm0S3d|u<0VAn)onAmvUh<-t3$c3ETN}y)lFs&uW$ocF z>~Em124*-z6XYjNIFgb?PuPg1FE}nO`fxBqre)adhFe-V40CPE0AZ&TqcDR$33UVvY>OtQNjJ>%ws#`le9&N z*@)OZqze5|XH6D5WrBy*O?hKe>zcxYFxrfACQ{U{BuJAqiXI#`XoV1sA2hu7nxW`& zFR1*%`zleXVf$#fCiCu9YzC) zz6PNZI79&N(hg@+T@eRWz&3h06aMV+U>$%i!Je#QO*&#gY!p3=jfR}KO~ouJ@*1eYA|f(-TuNb*6hSF^YD~LsKZ+qU=YgV9 zOaiLd!L;DnEgs2}*VE;Ab1t*Ql52K~M4o>#zvBUT zO}^v1;Pmc`&t$NAh@bLORV4gi%5rdJNaD~kY}$&A!1hv47V5j4_Ja?_EfkD7AI?81 zW$2SxGRX{aAg2Psskl{~rnGq@7jIZU2Go<-L^Kr;ANt4~U~}(AFcH0zcB(ng zxJj=Qr%4bmL@Z{dI#a{i8iFkTyr3*n-<1?UN>h@TMT0~Zc(r;d{I^;Se&jne5%Kc; z|69LQUBMsgm|8Rc#nrasd6w5@`35o%EJ=7%^u@c^9w<^*l)e|f0inyAANjtLMrlGa zLy}*;m!&2g{48ezV|>DN#n2kW+;@@EWJf7YQUWDrtXf02M+z&RjV)`K3P4?hEX6)~ zJxaqk9wkr#I0$oiQ_sMrEYInOc269!MB!lyJjd$uO36Ox$!9CHX>jE-gwlCTsN=n2 zr$i37q83MXcxK7O@on`xyw}kaZp0vwblsx;j5yK=oS>bLM~`S^9;wdLWK}P)A-G2e zGJk+vKx#H~)Y+sydHo9`tUu`6QBnJ)l#Ar|fEQXf^E+~+BNZH&uF^W^t|`S%B{##f zW;o0IG&&jvPKFNoF||X@@-eKBDPZcp_hRG*PubIk#6{!&YqTi zw7XS+rld%^v2}?AJ!Xk*)2!)nn-)>^Cf?F4FbnaUyJbuhGFz}Om~#j^ruV{@!m=0h zrN+Iq))3iwrZG_s?Fq>k&6O{`ozg)(1RN|Q9pJ~GCMp9|*25n(#y+u>VzLM0-95_J z&5±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

    snvu`Q3Ix5k0kQto)@bAKGNUuj3M= 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 T|GYjD{1ZR}08Te$!N2`K8N)&I literal 0 HcmV?d00001 From 1956cc4257350636dd2ed913266f622e433d3162 Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Wed, 26 Feb 2025 22:41:16 +0700 Subject: [PATCH 20/21] finish README --- README.md | 78 ++++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 69 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index a7daca4..594c4a2 100644 --- a/README.md +++ b/README.md @@ -1,30 +1,90 @@ # EpubReader + ## About the Reader + The epubreader application is based on the epub.js library and is a fork of the epub-reader repository. ## Getting Started -Open up epubreader in a browser.
    -

    You can change the ePub it opens by passing a link to bookPath in the url:

    -

    ?bookPath=https://s3.amazonaws.com/epubjs/books/alice.epub

    + +Open up epubreader in a browser. + +You can change the ePub it opens by passing a link to bookPath in the url: + +?bookPath=https://s3.amazonaws.com/epubjs/books/alice.epub ## Running Locally + Install node.js -

    Then install the project dependencies with npm

    + +Then install the project dependencies with npm ```sh npm install -``` +``` -

    Next you need to clone the repository into local with below command

    +Next you need to clone the repository into local with below command +```sh +git clone ``` -git clone + +You can run the reader locally with the command + +```sh +cd +npm start ``` -

    You can run the reader locally with the command

    +The application automatically starts at `localhost:8088`. + +Builds are concated and minified using webpack + +To generate a new build run +```sh +npm run build ``` -``` \ No newline at end of file +or rebuilding all \*.js files + +```sh +npm run prepare +``` + +## Pre-configuration + +The epubreader application settings is a JavaScript object that you pass an argument to the `Reader` constructor. You can make prelimitary settings in the file index.html. For example, this is what the default `Reader` initialization looks like: + +```js + +``` + +Let's say we want to disable the `openbook` feature, which is designed to open an epub file on a personal computer. This can be useful for integrating a public library into your site. Let's do this: + +```js + +``` + +> Note that the `{{bookPath}}` replacement token is used to define the `url` string variable. This simple solution will allow you to set up a route to pass the target URL. + +## Features +The epubreader application supports the following features: +* Initial support for mobile devices +* Saving settings in the browser’s local storage +* Opening a book file from the device’s file system +* Bookmarks +* Annotations +* Search by sections of the book +* Output epub metadata +* Keybindings \ No newline at end of file From 24fbd77139e50df8bc7c1458224ecfdf9a8606e7 Mon Sep 17 00:00:00 2001 From: Nguyencoder11 Date: Fri, 28 Feb 2025 13:32:53 +0700 Subject: [PATCH 21/21] fix open book when run application --- README.md | 7 ++++++- dist/js/epubreader.js | 2 +- dist/js/epubreader.js.map | 2 +- dist/js/epubreader.min.js | 2 +- dist/js/epubreader.min.js.map | 2 +- public/epub-book/alice.epub | Bin 0 -> 536540 bytes .../epub-book/luoc-su-van-vat.epub | Bin .../epub-book/nghe-thuat-tu-duy.epub | Bin .../epub-book/thuat-doc-tam.epub | Bin src/sidebar/annotations.js | 2 +- webpack.config.cjs | 15 ++++++++++----- 11 files changed, 21 insertions(+), 11 deletions(-) create mode 100644 public/epub-book/alice.epub rename "epub-book/L\306\260\341\273\243c S\341\273\255 V\341\272\241n V\341\272\255t - Bill Bryson & Kh\306\260\306\241ng Duy (d\341\273\213ch) & H\303\242n Ng\341\273\215c (d\341\273\213ch).epub" => public/epub-book/luoc-su-van-vat.epub (100%) rename "epub-book/Nghe\314\243\314\202 Thua\314\243\314\202t Tu\314\233 Duy Ra\314\200nh Ma\314\243ch - Rolf Dobelli.epub" => public/epub-book/nghe-thuat-tu-duy.epub (100%) rename epub-book/Thuat doc tam - Don Richard riso.epub => public/epub-book/thuat-doc-tam.epub (100%) diff --git a/README.md b/README.md index a41426a..9a48ce6 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,10 @@ You can change the ePub it opens by passing a link to bookPath in t ?bookPath=https://s3.amazonaws.com/epubjs/books/alice.epub +or to open through path `public/epub-book` folder + +?bookPath=epub-book/[filename].epub + ## Running Locally Install node.js @@ -27,9 +31,10 @@ npm install Next you need to clone the repository into local with below command ```sh -git clone +git clone ``` +After that, you need to move to repo directory. You can run the reader locally with the command ```sh diff --git a/dist/js/epubreader.js b/dist/js/epubreader.js index 246d243..e7d563b 100644 --- a/dist/js/epubreader.js +++ b/dist/js/epubreader.js @@ -2954,7 +2954,7 @@ class AnnotationsPanel extends UIPanel { //-- events --// - reader.on("bookready", (cfg) => { + reader.on("navigation", (cfg) => { cfg.annotations.forEach((note) => { diff --git a/dist/js/epubreader.js.map b/dist/js/epubreader.js.map index bfa1754..52daac5 100644 --- a/dist/js/epubreader.js.map +++ b/dist/js/epubreader.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;AClRA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB;AACO;AACP;AACA;AACA;AACA;;AC/wBkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEoF;AAClC;;AAE3C;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,KAAK;AAC3B,uBAAuB,MAAM;;AAE7B;AACA;;AAEA;AACA;AACA,eAAe,KAAK;AACpB,eAAe,OAAO;;AAEtB;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;;AAE5B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,2CAA2C,UAAU;;AAErD;AACA;;AAEA;AACA;AACA,MAAM;;AAEN;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,uBAAuB,KAAK;AAC5B,uBAAuB,OAAO;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA,8BAA8B,KAAK;;AAEnC,0BAA0B,OAAO;AACjC;;AAEA,yBAAyB,KAAK;AAC9B,2BAA2B,MAAM;AACjC,wBAAwB,MAAM;AAC9B,wBAAwB,MAAM;;AAE9B;AACA;AACA;;AAEA;AACA;;;;AAIA;AACA,oBAAoB,KAAK;AACzB;AACA;AACA;AACA;AACA,uBAAuB,KAAK;AAC5B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA,sBAAsB,OAAO;AAC7B,wBAAwB,KAAK;AAC7B,4BAA4B,OAAO;AACnC,4BAA4B,OAAO;AACnC,0BAA0B,OAAO;;AAEjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,mCAAmC,oBAAoB;AACvD,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,kBAAkB,KAAK;AACvB,kBAAkB,OAAO;AACzB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,0BAA0B,WAAW;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;;;;AAIA;AACA;;;AAGA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;ACvqBwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,wBAAwB,MAAM;AAC9B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,yBAAyB,MAAM;AAC/B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;AC9HyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;AC5FyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACtI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;;AAEA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC5IsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;;AAE/B;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChLyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,6BAA6B,cAAc;AAC3C;AACA;AACA;AACA;AACA,+BAA+B,gBAAgB;AAC/C;AACA;AACA;;AAEA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;ACnFkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEkD;AAClD;AACO;AACP;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,KAAK;AAClC,gCAAgC,KAAK;AACrC;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC,wBAAwB,OAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,WAAW;AAC/D,qDAAqD,YAAY;AACjE;AACA,kDAAkD,UAAU;AAC5D;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,KAAK;AAC3C,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;;ACzJyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;AACF;;AAE9B;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,qBAAqB,MAAM;AAC3B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (existingToc) {\n\t\t\t\texistingToc.remove();\n\t\t\t} else {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) {\n\t\t\t\tbookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tupdateBookmarksList();\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tupdateBookmarksList();\n\t\t})\n\n\t\tfunction updateBookmarksList() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tbookmarksList.innerHTML = \"\";\n\n\t\t\tlet title = document.createElement(\"h3\");\n\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\t\t\tbookmarksList.appendChild(title);\n\n\t\t\treader.settings.bookmarks.forEach((cfi, index) => {\n\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\tbookmarkLink.textContent = `Bookmark ${index + 1}`;\n\n\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t});\n\n\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t};\n\n\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t};\n\n\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t})\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t\treader.bookmarksPanel.removeBookmark(cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\n\t\tsearchBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowSearchPopup();\n\t\t}\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\t\tfunction showSearchPopup() {\n\t\t\tlet existingPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tif (!existingPopup) {\n\t\t\t\tlet searchPopup = document.createElement(\"div\");\n\t\t\t\tsearchPopup.setAttribute(\"id\", \"toolbar-search-list\");\n\t\t\t\tsearchPopup.classList.add(\"search-popup\");\n\n\t\t\t\tlet searchContainer = document.createElement(\"div\");\n\t\t\t\tsearchContainer.classList.add(\"search-container\");\n\n\t\t\t\tlet searchIcon = document.createElement(\"span\");\n\t\t\t\tsearchIcon.classList.add(\"search-icon\");\n\t\t\t\tsearchIcon.innerHTML = '';\n\n\t\t\t\tlet searchInput = document.createElement(\"input\");\n\t\t\t\tsearchInput.setAttribute(\"type\", \"search\");\n\t\t\t\tsearchInput.setAttribute(\"placeholder\", \"Search\");\n\t\t\t\tsearchInput.setAttribute(\"id\", \"nav-q\");\n\t\t\t\tsearchInput.setAttribute(\"class\", \"toolbar-search-input\");\n\n\t\t\t\tsearchContainer.appendChild(searchIcon);\n\t\t\t\tsearchContainer.appendChild(searchInput);\n\n\t\t\t\tlet resultContainer = document.createElement(\"ul\");\n\t\t\t\tresultContainer.setAttribute('id', 'toolbar-search-results');\n\n\t\t\t\tlet searchPanel = new SearchPanel(reader);\n\t\t\t\tsearchInput.oninput = async () => {\n\t\t\t\t\tlet query = searchInput.value.trim();\n\t\t\t\t\tif (query.length > 0) {\n\t\t\t\t\t\tlet results = await searchPanel.doSearch(query);\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\n\t\t\t\t\t\tif (results.length === 0) {\n\t\t\t\t\t\t\tlet noResultItem = document.createElement(\"li\");\n\t\t\t\t\t\t\tnoResultItem.innerText = \"Không tìm thấy kết quả trùng khớp\";\n\t\t\t\t\t\t\tnoResultItem.style.color = \"gray\";\n\t\t\t\t\t\t\tnoResultItem.style.padding = \"8px\";\n\t\t\t\t\t\t\tresultContainer.appendChild(noResultItem);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresults.forEach((data) => {\n\t\t\t\t\t\t\tlet item = document.createElement(\"li\");\n\t\t\t\t\t\t\tlet link = document.createElement(\"a\");\n\t\t\t\t\t\t\tlink.href = \"#\" + data.cfi;\n\t\t\t\t\t\t\tlink.textContent = data.excerpt;\n\t\t\t\t\t\t\tlink.onclick = (e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tsearchPanel.reader.rendition.display(data.cfi);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\titem.appendChild(link);\n\t\t\t\t\t\t\tresultContainer.appendChild(item);\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsearchPopup.appendChild(searchContainer);\n\t\t\t\tsearchPopup.appendChild(resultContainer);\n\t\t\t\tsearchBox.dom.appendChild(searchPopup);\n\t\t\t}\n\n\t\t\tlet searchPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tsearchPopup.classList.toggle(\"active\");\n\t\t}\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", () => {\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tcontainer.clear();\n\t\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\t\tthis.add(container);\n\t\t\t\tconsole.log(toc);\n\t\t\t\t\n\t\t\t})\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\n\t}\n\n\tremoveBookmark(cfi) {\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tconst bookmarkPanel = new BookmarksPanel(reader);\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), bookmarkPanel);\n\t\t\treader.bookmarksPanel = bookmarkPanel;\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n toggleBookList();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n function toggleBookList() {\r\n const bookList = [\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 1 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 2 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 3 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 4 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 5 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 6 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 7 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 8 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 9 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 10 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 11 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 12 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 13 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 14 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 15 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 16 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 17 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 18 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 19 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 20 },\r\n ];\r\n\r\n let existingModal = document.getElementById('book-list-modal');\r\n if (!existingModal) {\r\n let modal = document.createElement('div');\r\n modal.setAttribute('id', 'book-list-modal');\r\n modal.setAttribute('class', 'book-modal');\r\n\r\n let modalContent = document.createElement('div');\r\n modalContent.setAttribute('class', 'book-modal-content');\r\n\r\n let bookGrid = document.createElement('div');\r\n bookGrid.setAttribute('class', 'book-grid');\r\n bookList.forEach((book) => {\r\n let bookItem = document.createElement('div');\r\n bookItem.setAttribute('class', 'book-item');\r\n bookItem.innerHTML = `\r\n
    \r\n

    ${book.title}

    \r\n

    ${book.author}

    \r\n
    \r\n
    ${book.page}
    \r\n `;\r\n bookGrid.appendChild(bookItem);\r\n });\r\n\r\n modalContent.appendChild(bookGrid);\r\n modal.appendChild(modalContent);\r\n\r\n container.dom.appendChild(modal);\r\n }\r\n\r\n let modal = document.getElementById('book-list-modal');\r\n modal.classList.toggle(\"active\");\r\n }\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"bookready\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.js","mappings":";;;;;AAAa;;AAEb,sBAAsB,mBAAO,CAAC,GAAe;AAC7C,sBAAsB,mBAAO,CAAC,GAAwB;AACtD,sBAAsB,mBAAO,CAAC,GAAuB;AACrD,sBAAsB,mBAAO,CAAC,GAAkC;AAChE,sBAAsB,mBAAO,CAAC,GAA2B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,UAAU;AACV;AACA;;;;;;;;AC7Da;;AAEb;AACA;;;;;;;;ACHa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,sBAAsB,mBAAO,CAAC,GAAQ;;;;;;;;ACFpE;;AAEb;AACA;AACA;AACA,SAAS;AACT,eAAe,YAAY,IAAI,cAAc;AAC7C;AACA;;;;;;;;ACRa;;AAEb,YAAY,mBAAO,CAAC,EAAS;AAC7B,YAAY,mBAAO,CAAC,GAAgB;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,aAAa,YAAY;AACzB;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBa;;AAEb,iBAAiB,mBAAO,CAAC,EAAkB,KAAK;;AAEhD,kCAAkC;;;;;;;;ACJrB;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,oBAAoB,mBAAO,CAAC,GAAQ;;;;;;;;ACFlE;;AAEb;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACTa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;;AAEA,qCAAqC;;;;;;;;ACNxB;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;;;;;;;ACnBa;;AAEb;AACA;AACA;AACA;;;;;;;;ACLa;;AAEb,cAAc,mBAAO,CAAC,GAAY;;AAElC;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb,iBAAiB,mBAAO,CAAC,GAAkB,kCAAkC,mBAAO,CAAC,GAAQ;;;;;;;;ACFhF;;AAEb;;AAEA;AACA;AACA;AACA;;;;;;;;ACPa;;AAEb;;AAEA;AACA;AACA;;;;;;;;ACNa;;AAEb,eAAe,mBAAO,CAAC,GAAG;AAC1B,eAAe,mBAAO,CAAC,GAA+B;;AAEtD;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,cAAc,4BAA4B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;;AAErB;AACA,cAAc,2BAA2B;AACzC;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B;;AAE1B;AACA;AACA;AACA,eAAe;;;;;;;;ACnIF;;AAEb,kBAAkB,mBAAO,CAAC,GAAiB;;AAE3C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;;;;;;;AClBa;;AAEb,cAAc,mBAAO,CAAC,GAAa;;AAEnC;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,iBAAiB,mBAAO,CAAC,EAAgB;;AAEzC,4BAA4B,EAAE;;AAE9B;AACA;AACA;AACA;AACA;;;;;;;;ACVa;;AAEb,eAAe,mBAAO,CAAC,GAAc;;AAErC;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;ACZa;;AAEb;AACA;;AAEA,oCAAoC;;;;;;;SCLpC;SACA;;SAEA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;SACA;;SAEA;SACA;;SAEA;SACA;SACA;;;;;UCtBA;UACA;UACA;UACA;UACA,yCAAyC,wCAAwC;UACjF;UACA;UACA;;;;;UCPA;;;;;UCAA;UACA;UACA;UACA,uDAAuD,iBAAiB;UACxE;UACA,gDAAgD,aAAa;UAC7D;;;;;;;;;;;;;;;;ACNA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B,mBAAmB;AAClD;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;AACA;;ACnGO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA,YAAY;AACZ;;AClRA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL,oBAAoB,qBAAqB;;AAEzC;;AAEA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,kBAAkB,sBAAsB;;AAExC;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd,WAAW,GAAG;AACd,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;;AAEA;;AAEA;AACA;;AAEA,IAAI;;AAEJ;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,WAAW,GAAG;AACd;AACO;;AAEP;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D,IAAI;AACJ;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,eAAe;AAC1B;AACO;;AAEP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,yCAAyC;AACzC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB;AACO;;AAEP;;AAEA;AACA,wBAAwB;AACxB;AACA;;AAEA;AACA;AACA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;AACO;;AAEP;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,UAAU;AACrB;AACO;AACP;AACA;AACA;AACA;;AC/wBkF;;AAE3E,0BAA0B,OAAO;;AAExC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;;AAEA;AACA,qBAAqB,OAAO;AAC5B;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA,MAAM;AACN,KAAK;AACL;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB;AACA,gBAAgB,KAAK;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEoF;AAClC;;AAE3C;;AAEP;;AAEA;AACA;;AAEA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,KAAK;AACzB,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,KAAK;AAC3B,uBAAuB,MAAM;;AAE7B;AACA;;AAEA;AACA;AACA,eAAe,KAAK;AACpB,eAAe,OAAO;;AAEtB;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;;AAE5B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,2CAA2C,UAAU;;AAErD;AACA;;AAEA;AACA;AACA,MAAM;;AAEN;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA,uBAAuB,KAAK;AAC5B,uBAAuB,OAAO;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;;AAKA;AACA,8BAA8B,KAAK;;AAEnC,0BAA0B,OAAO;AACjC;;AAEA,yBAAyB,KAAK;AAC9B,2BAA2B,MAAM;AACjC,wBAAwB,MAAM;AAC9B,wBAAwB,MAAM;;AAE9B;AACA;AACA;;AAEA;AACA;;;;AAIA;AACA,oBAAoB,KAAK;AACzB;AACA;AACA;AACA;AACA,uBAAuB,KAAK;AAC5B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA,sBAAsB,OAAO;AAC7B,wBAAwB,KAAK;AAC7B,4BAA4B,OAAO;AACnC,4BAA4B,OAAO;AACnC,0BAA0B,OAAO;;AAEjC;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;;AAEA,mCAAmC,oBAAoB;AACvD,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,KAAK;AACL;AACA;AACA;AACA;AACA,2BAA2B,KAAK;AAChC,qBAAqB,OAAO;AAC5B;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA,kBAAkB,KAAK;AACvB,kBAAkB,OAAO;AACzB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,0BAA0B,WAAW;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA,qBAAqB,KAAK;AAC1B,qBAAqB,OAAO;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,6BAA6B,KAAK;AAClC,uBAAuB,OAAO;AAC9B;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAiB,KAAK;AACtB,iBAAiB,OAAO;AACxB;;;;AAIA;AACA;;;AAGA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;ACvqBwC;;AAEjC;;AAEP;;AAEA;AACA,wBAAwB,KAAK;;AAE7B;AACA;;AAEA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,wBAAwB,MAAM;AAC9B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,cAAc,KAAK;AACnB;;AAEA;AACA;AACA;AACA,yBAAyB,MAAM;AAC/B;AACA;AACA;AACA;;AAEA,qBAAqB,KAAK;AAC1B,sBAAsB,KAAK;AAC3B,sBAAsB,KAAK;AAC3B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,uBAAuB,6BAA6B;AACpD;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;AACA;;AC9HyF;;AAElF,uBAAuB,OAAO;;AAErC;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA,6BAA6B;AAC7B;AACA,eAAe,KAAK;;AAEpB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ,GAAG;;AAEH;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;;AAEzB;;AAEA,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;AAC1B,oBAAoB,MAAM;;AAE1B;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;;AC5FyG;;AAElG,6BAA6B,OAAO;;AAE3C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;;AAEA,0CAA0C;AAC1C,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;ACtI8G;;AAEvG,+BAA+B,OAAO;;AAE7C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,uBAAuB,OAAO;AAC9B;;AAEA;AACA;AACA;AACA,eAAe,KAAK;AACpB;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA,IAAI;AACJ;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB,mBAAmB,MAAM;AACzB;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4BAA4B;AACxD;;AAEA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AC5IsG;;AAE/F,4BAA4B,OAAO;;AAE1C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,MAAM;AAChC,eAAe,KAAK;;AAEpB,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,OAAO;AACnC,0BAA0B,KAAK;AAC/B,uBAAuB,QAAQ;;AAE/B;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA,wBAAwB,OAAO;AAC/B,sBAAsB,KAAK;AAC3B,mBAAmB,QAAQ;AAC3B;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,6BAA6B,QAAQ;AACrC,0BAA0B,OAAO;AACjC,wBAAwB,KAAK;AAC7B,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA,kCAAkC,OAAO;AACzC,gCAAgC,KAAK;AACrC;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA,4BAA4B,KAAK;AACjC,yBAAyB,OAAO;AAChC;AACA;;AAEA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;;AAEA,eAAe,KAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChLyE;;AAElE,4BAA4B,OAAO;;AAE1C;;AAEA;AACA,wBAAwB,KAAK;AAC7B;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,eAAe,KAAK;AACpB;;AAEA,mBAAmB,MAAM;AACzB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B,qBAAqB,MAAM;AAC3B,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AChEwD;AACZ;AACY;AACI;AACV;AACI;AACA;;AAE/C;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,aAAa;;AAErC,wBAAwB,KAAK;AAC7B,wBAAwB,OAAO;AAC/B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,sDAAsD,QAAQ;AAC9D;AACA,6BAA6B,cAAc;AAC3C;AACA;AACA;AACA;AACA,+BAA+B,gBAAgB;AAC/C;AACA;AACA;;AAEA,sDAAsD,WAAW;AACjE,sDAAsD,aAAa;AACnE,sDAAsD,aAAa;AACnE;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;ACnFkC;AACuB;;AAElD;;AAEP;;AAEA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA,0BAA0B,OAAO;AACjC,4BAA4B,OAAO;AACnC;;AAEA;AACA;AACA;;AAEA,2BAA2B,OAAO;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,0BAA0B,KAAK;AAC/B;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA;AACA,SAAS;;AAET;;AAEA;AACA;AACA,SAAS;AACT;AACA;;ACvEkD;AAClD;AACO;AACP;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,KAAK;AAClC,gCAAgC,KAAK;AACrC;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA,8BAA8B,KAAK;AACnC,wBAAwB,OAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,4DAA4D;AAC9E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E,kBAAkB,6DAA6D;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,WAAW;AAC/D,qDAAqD,YAAY;AACjE;AACA,kDAAkD,UAAU;AAC5D;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,KAAK;AAC3C,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;;ACzJyC;;AAES;AACX;AACA;AACA;AACA;AACA;AACA;AACF;;AAE9B;;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,sBAAsB,OAAO;AAC7B,qBAAqB,MAAM;AAC3B,sBAAsB,OAAO;AAC7B;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;;AAEA;AACA,kBAAkB,YAAY;AAC9B,qBAAqB,OAAO;AAC5B;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf,YAAY,GAAG;AACf;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,KAAK;AACjB,YAAY,KAAK;AACjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA,EAAE,MAAM,eAAe;;AAEvB;AACA,yCAAyC;AACzC,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,YAAY,GAAG;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,GAAG,MAAM;AACT;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,aAAY,mB","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (existingToc) {\n\t\t\t\texistingToc.remove();\n\t\t\t} else {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) {\n\t\t\t\tbookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tupdateBookmarksList();\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tupdateBookmarksList();\n\t\t})\n\n\t\tfunction updateBookmarksList() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tbookmarksList.innerHTML = \"\";\n\n\t\t\tlet title = document.createElement(\"h3\");\n\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\t\t\tbookmarksList.appendChild(title);\n\n\t\t\treader.settings.bookmarks.forEach((cfi, index) => {\n\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\tbookmarkLink.textContent = `Bookmark ${index + 1}`;\n\n\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t});\n\n\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t};\n\n\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t};\n\n\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t})\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t\treader.bookmarksPanel.removeBookmark(cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\n\t\tsearchBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowSearchPopup();\n\t\t}\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\t\tfunction showSearchPopup() {\n\t\t\tlet existingPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tif (!existingPopup) {\n\t\t\t\tlet searchPopup = document.createElement(\"div\");\n\t\t\t\tsearchPopup.setAttribute(\"id\", \"toolbar-search-list\");\n\t\t\t\tsearchPopup.classList.add(\"search-popup\");\n\n\t\t\t\tlet searchContainer = document.createElement(\"div\");\n\t\t\t\tsearchContainer.classList.add(\"search-container\");\n\n\t\t\t\tlet searchIcon = document.createElement(\"span\");\n\t\t\t\tsearchIcon.classList.add(\"search-icon\");\n\t\t\t\tsearchIcon.innerHTML = '';\n\n\t\t\t\tlet searchInput = document.createElement(\"input\");\n\t\t\t\tsearchInput.setAttribute(\"type\", \"search\");\n\t\t\t\tsearchInput.setAttribute(\"placeholder\", \"Search\");\n\t\t\t\tsearchInput.setAttribute(\"id\", \"nav-q\");\n\t\t\t\tsearchInput.setAttribute(\"class\", \"toolbar-search-input\");\n\n\t\t\t\tsearchContainer.appendChild(searchIcon);\n\t\t\t\tsearchContainer.appendChild(searchInput);\n\n\t\t\t\tlet resultContainer = document.createElement(\"ul\");\n\t\t\t\tresultContainer.setAttribute('id', 'toolbar-search-results');\n\n\t\t\t\tlet searchPanel = new SearchPanel(reader);\n\t\t\t\tsearchInput.oninput = async () => {\n\t\t\t\t\tlet query = searchInput.value.trim();\n\t\t\t\t\tif (query.length > 0) {\n\t\t\t\t\t\tlet results = await searchPanel.doSearch(query);\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\n\t\t\t\t\t\tif (results.length === 0) {\n\t\t\t\t\t\t\tlet noResultItem = document.createElement(\"li\");\n\t\t\t\t\t\t\tnoResultItem.innerText = \"Không tìm thấy kết quả trùng khớp\";\n\t\t\t\t\t\t\tnoResultItem.style.color = \"gray\";\n\t\t\t\t\t\t\tnoResultItem.style.padding = \"8px\";\n\t\t\t\t\t\t\tresultContainer.appendChild(noResultItem);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresults.forEach((data) => {\n\t\t\t\t\t\t\tlet item = document.createElement(\"li\");\n\t\t\t\t\t\t\tlet link = document.createElement(\"a\");\n\t\t\t\t\t\t\tlink.href = \"#\" + data.cfi;\n\t\t\t\t\t\t\tlink.textContent = data.excerpt;\n\t\t\t\t\t\t\tlink.onclick = (e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tsearchPanel.reader.rendition.display(data.cfi);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\titem.appendChild(link);\n\t\t\t\t\t\t\tresultContainer.appendChild(item);\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsearchPopup.appendChild(searchContainer);\n\t\t\t\tsearchPopup.appendChild(resultContainer);\n\t\t\t\tsearchBox.dom.appendChild(searchPopup);\n\t\t\t}\n\n\t\t\tlet searchPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tsearchPopup.classList.toggle(\"active\");\n\t\t}\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", () => {\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tcontainer.clear();\n\t\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\t\tthis.add(container);\n\t\t\t\tconsole.log(toc);\n\t\t\t\t\n\t\t\t})\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\n\t}\n\n\tremoveBookmark(cfi) {\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tconst bookmarkPanel = new BookmarksPanel(reader);\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), bookmarkPanel);\n\t\t\treader.bookmarksPanel = bookmarkPanel;\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n toggleBookList();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n function toggleBookList() {\r\n const bookList = [\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 1 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 2 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 3 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 4 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 5 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 6 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 7 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 8 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 9 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 10 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 11 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 12 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 13 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 14 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 15 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 16 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 17 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 18 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 19 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 20 },\r\n ];\r\n\r\n let existingModal = document.getElementById('book-list-modal');\r\n if (!existingModal) {\r\n let modal = document.createElement('div');\r\n modal.setAttribute('id', 'book-list-modal');\r\n modal.setAttribute('class', 'book-modal');\r\n\r\n let modalContent = document.createElement('div');\r\n modalContent.setAttribute('class', 'book-modal-content');\r\n\r\n let bookGrid = document.createElement('div');\r\n bookGrid.setAttribute('class', 'book-grid');\r\n bookList.forEach((book) => {\r\n let bookItem = document.createElement('div');\r\n bookItem.setAttribute('class', 'book-item');\r\n bookItem.innerHTML = `\r\n
    \r\n

    ${book.title}

    \r\n

    ${book.author}

    \r\n
    \r\n
    ${book.page}
    \r\n `;\r\n bookGrid.appendChild(bookItem);\r\n });\r\n\r\n modalContent.appendChild(bookGrid);\r\n modal.appendChild(modalContent);\r\n\r\n container.dom.appendChild(modal);\r\n }\r\n\r\n let modal = document.getElementById('book-list-modal');\r\n modal.classList.toggle(\"active\");\r\n }\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"bookready\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/dist/js/epubreader.min.js b/dist/js/epubreader.min.js index 8fb7df1..474a748 100644 --- a/dist/js/epubreader.min.js +++ b/dist/js/epubreader.min.js @@ -1,2 +1,2 @@ -var e={263:(e,t,s)=>{var a=s(175),o=s(873),n=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,o,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),o=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,o=!1),c={value:t,configurable:s,enumerable:o,writable:d},l?n(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?o(t)?a(s)?o(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?n(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),o=s(134),n=Math.max;e.exports=function(e,t){var s,i,r,d=n(arguments.length,2);for(e=Object(o(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),o=Object.keys;e.exports=function(e){return o(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),o=Array.prototype.forEach,n=Object.create;e.exports=function(e){var t=n(null);return o.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,o,n,i,r,d,l,c=s(263),h=s(499),m=Function.prototype.apply,u=Function.prototype.call,b=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,k={configurable:!0,enumerable:!1,writable:!0};o=function(e,t){var s,o;return h(t),o=this,a.call(this,e,s=function(){n.call(o,e,s),m.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=k.value=b(null),g(this,"__ee__",k),k.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:o,off:n=function(e,t){var s,a,o,n;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(n=0;o=a[n];++n)o!==t&&o.__eeOnceListener__!==t||(2===a.length?s[e]=a[n?0:1]:a.splice(n,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,o,n;if(f.call(this,"__ee__")&&(o=this.__ee__[e]))if("object"==typeof o){for(s=arguments.length,n=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),o={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(o,typeof e)}},873:(e,t,s)=>{var a=s(80),o=/^\s*class[\s{/}]/,n=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!o.test(n.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var o=t[a];if(void 0!==o)return o.exports;var n=t[a]={exports:{}};return e[a](n,n.exports,s),n.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>j});var o=s(68);const n=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let o;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":o=t[a]?e[a]:t[a];break;default:o=t[a]}else o="arrows"===a?t[a]:void 0===n(s,a)?e[a]:t[a];return o},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],n(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add","status/fullscreen":"Fullscreen","status/":""},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter","status/fullscreen":"","status/":""},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加","status/fullscreen":"","status/":""},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить","status/fullscreen":"","status/":""},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???","status/fullscreen":"Toàn màn hình","status/":""}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class m{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class x extends m{constructor(e,t,s,a,o){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=o||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends b{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new u).setClass("tab-selector"),this.menuDiv=(new b).setClass("menu"),this.tabsDiv=(new b).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new b).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new S(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const o=new b;o.setId(e),o.add(s),this.panels.push(o),this.panelsDiv.add(o),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class S extends b{constructor(e,t){super(),this.button=new y("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class I extends m{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends m{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new b).setId("item-box");for(let s=0;s{const e=o.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new I,t.add(this.items),this.add([new D(o),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new k("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class M{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("toolbar"),o=["toolbar/sidebar","toolbar/prev","toolbar/next","toolbar/openbook","toolbar/openbook/error","toolbar/bookmark","toolbar/fullscreen","toolbar/background","toolbar/search","toolbar/close"],n=(new b).setClass("menu-1"),i=(new b).setId("btn-m").setClass("box"),r=new y("button");let d,l,c,h;r.dom.title=t.get(o[0]),r.dom.onclick=t=>{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),n.add(i),"toolbar"===s.arrows&&(d=(new b).setId("btn-p").setClass("box"),l=new y("button"),l.setTitle(t.get(o[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),n.add(d),c=(new b).setId("btn-n").setClass("box"),h=new y("button"),h.dom.title=t.get(o[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),n.add(c));const m=(new b).setId("btn-logo").setClass("logo"),g=(new k).setId("logo-link").setHref("#").setTextContent("LOGO");let p,v,x,C,S,I;function T(){let t=document.getElementById("toolbar-bookmarks-list");if(!t)return;t.innerHTML="";let s=document.createElement("h3");s.textContent="Bookmarks của tui",t.appendChild(s),e.settings.bookmarks.forEach(((s,a)=>{let o=document.createElement("li"),n=document.createElement("a"),i=document.createElement("span");n.href="#",n.textContent=`Bookmark ${a+1}`,n.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(s)},i.innerHTML='',i.onclick=t=>{t.stopPropagation(),e.removeBookmarkFromToolbar(s)},o.appendChild(n),o.appendChild(i),t.appendChild(o)}))}m.add(g),n.add(m),p=(new b).setId("btn-t").setClass("box"),v=new y("button"),v.dom.onclick=t=>{t.stopPropagation(),e.book.loaded.navigation.then((t=>{!function(t){let s=document.getElementById("toolbar-toc-list");if(s)s.remove();else{let s=document.createElement("ul");s.setAttribute("id","toolbar-toc-list");let a=document.createElement("h3");a.textContent="Mục lục",s.appendChild(a),t.forEach((t=>{let a=document.createElement("li"),o=document.createElement("a");o.href="#",o.textContent=t.label,o.onclick=s=>{s.preventDefault(),document.querySelectorAll("#toolbar-toc-list li a").forEach((e=>{e.classList.remove("active")})),o.classList.add("active"),e.rendition.display(t.href)},a.appendChild(o),s.appendChild(a)})),p.dom.appendChild(s)}document.getElementById("toolbar-toc-list").classList.toggle("active")}(t)}))},p.add(v),n.add(p),x=(new b).setId("btn-d").setClass("box"),C=new y("button"),C.dom.onclick=e=>{e.stopPropagation(),function(){let e=document.getElementById("toolbar-bookmarks-list");e||(e=document.createElement("ul"),e.setAttribute("id","toolbar-bookmarks-list"),V.dom.appendChild(e)),T(),e.classList.toggle("active")}()},x.add(C),n.add(x),e.on("bookmarked",((e,t)=>{T()})),e.removeBookmarkFromToolbar=function(t){let s=document.getElementById("toolbar-bookmarks-list");if(!s)return;let a=s.querySelectorAll("li"),o=Array.from(a).find((e=>e.querySelector("a").textContent.includes(t)));o&&o.remove();const n=e.settings.bookmarks.indexOf(t);-1!==n&&e.settings.bookmarks.splice(n,1),e.emit("bookmarked",!1,t),e.bookmarksPanel.removeBookmark(t)},S=(new b).setId("btn-a").setClass("box"),I=new y("button"),I.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-annotations-list")){let t=document.createElement("ul");t.setAttribute("id","toolbar-annotations-list");let s=document.createElement("h3");s.textContent="Highlights & Ghi chú",t.appendChild(s),e.settings.annotations.forEach((s=>{let a=document.createElement("li"),o=document.createElement("a"),n=document.createElement("span");o.href="#",o.textContent=s.text,o.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-annotations-list li a").forEach((e=>{e.classList.remove("active")})),o.classList.add("active"),e.rendition.display(s.cfi)},n.innerHTML='',n.onclick=t=>{t.stopPropagation(),e.removeNoteFromToolbar(s)},a.appendChild(o),a.appendChild(n),t.appendChild(a)})),S.dom.appendChild(t)}document.getElementById("toolbar-annotations-list").classList.toggle("active")}()},S.add(I),n.add(S),e.removeNoteFromToolbar=function(t){let s=document.getElementById("toolbar-annotations-list");if(!s)return;let a=s.querySelectorAll("li"),o=Array.from(a).find((e=>{e.querySelector("a").textContent,t.text}));o&&o.remove();const n=e.annotationsPanel;n&&(n.removeNote(t),n.update());const i=e.settings.annotations.findIndex((e=>e.cfi===t.cfi));-1!==i&&e.settings.annotations.splice(i,1),e.rendition.annotations.remove(t.cfi,"highlight")};const D=(new b).setClass("menu-center"),M=(new f).setClass("toolbar-center-label");M.setTextContent("Determined");const A=(new b).setClass("page-map"),B=(new u).setClass("current-page-index").setTextContent("1"),L=(new w).setTextContent(" của "),z=(new u).setClass("total-pages").setTextContent("200");A.add(B),A.add(L),A.add(z),D.add(M),D.add(A);const O=(new b).setClass("menu-2");let _,R;s.background&&(_=(new b).setId("btn-bg").setClass("box"),R=new y("color").setClass("color-picker"),R.dom.title=t.get(o[7]),R.dom.oninput=t=>{const s=t.target.value;e.emit("colorchanged",s)},_.add(R),O.add(_));let F,P,j,V,N,H,q,$,U=(new f).setClass("font-size-px").setTextContent("Fontsize (px):"),G=(new b).setId("btn-fontsize").setClass("box"),K=new y("button").setClass("btn-font-decrease"),W=new y("button").setClass("btn-font-increase"),J=new y("text").setClass("input-font-size"),X=s.fontSize||16;if(J.dom.value=X,K.dom.textContent="-",K.dom.onclick=()=>{X=Math.max(8,X-1),J.dom.value=X,e.emit("styleschanged",{fontSize:X})},W.dom.textContent="+",W.dom.onclick=()=>{X=Math.min(72,X+1),J.dom.value=X,e.emit("styleschanged",{fontSize:X})},J.dom.onchange=()=>{let t=parseInt(J.dom.value,10);!isNaN(t)&&t>=8&&t<=72?(X=t,e.emit("styleschanged",{fontSize:X})):J.dom.value=X},G.add(U),G.add(K),G.add(J),G.add(W),O.add(G),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},n=(new b).setId("btn-o").setClass("box");F=new y("file"),F.dom.title=t.get(o[3]),F.dom.accept="application/epub+zip",F.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(o[4]))},F.dom.onclick=e=>{F.dom.blur()},n.add(F),O.add(n)}if(P=(new b).setId("btn-s").setClass("box"),j=new y("button"),j.setTitle(t.get(o[8])),j.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-search-list")){let t=document.createElement("div");t.setAttribute("id","toolbar-search-list"),t.classList.add("search-popup");let s=document.createElement("div");s.classList.add("search-container");let a=document.createElement("span");a.classList.add("search-icon"),a.innerHTML='';let o=document.createElement("input");o.setAttribute("type","search"),o.setAttribute("placeholder","Search"),o.setAttribute("id","nav-q"),o.setAttribute("class","toolbar-search-input"),s.appendChild(a),s.appendChild(o);let n=document.createElement("ul");n.setAttribute("id","toolbar-search-results");let i=new E(e);o.oninput=async()=>{let e=o.value.trim();if(e.length>0){let t=await i.doSearch(e);if(n.innerHTML="",0===t.length){let e=document.createElement("li");e.innerText="Không tìm thấy kết quả trùng khớp",e.style.color="gray",e.style.padding="8px",n.appendChild(e)}t.forEach((e=>{let t=document.createElement("li"),s=document.createElement("a");s.href="#"+e.cfi,s.textContent=e.excerpt,s.onclick=t=>{t.preventDefault(),i.reader.rendition.display(e.cfi)},t.appendChild(s),n.appendChild(t)}))}else n.innerHTML=""},t.appendChild(s),t.appendChild(n),P.dom.appendChild(t)}document.getElementById("toolbar-search-list").classList.toggle("active")}()},P.add(j),O.add(P),s.bookmarks&&(V=(new b).setId("btn-b").setClass("box"),N=new y("button"),N.setTitle(t.get(o[5])),N.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),N.dom.blur()},V.add(N),O.add(V)),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");H=new y("button"),H.setTitle(t.get(o[6])),H.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(H),O.add(e)}a.add([n,D,O]),document.body.appendChild(a.dom),q=(new b).setId("btn-close").setClass("box"),$=new y("button").setClass("active"),$.setTitle(t.get(o[9])),q.add($),O.add(q),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?V.removeClass("bookmarked"):V.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?V.addClass("bookmarked"):V.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(o[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(o[1])),h.setTitle(t.get(o[2]))),s.openbook&&F.setTitle(t.get(o[3])),s.bookmarks&&N.setTitle(t.get(o[5])),s.fullscreen&&H.setTitle(t.get(o[6])),s.background&&backgroundBtn.setTitle(t.get(o[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class A{constructor(e){const t=e.settings,s=(new b).setId("content");let a;if("content"===t.arrows){a=(new b).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()};const t=new u;t.dom.innerHTML='',a.add(t),s.add(a)}const o=(new b).setId("viewer");let n;if(s.add(o),e.on("colorchanged",(e=>{o.dom.style.backgroundColor=e})),"content"===t.arrows){n=(new b).setId("next").setClass("arrow"),n.dom.onclick=t=>{e.emit("next"),t.preventDefault()};const t=new u;t.dom.innerHTML='',n.add(t),s.add(n)}const i=(new b).setId("loader"),r=(new b).setId("divider"),d=(new b).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{o.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{o.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?n.addClass("disabled"):n.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(n.addClass("active"),setTimeout((()=>{n.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{o.clear()}))}}class B extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/contents"],o=new w(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new D(o).addClass("header")),e.on("bookready",(()=>{e.book.loaded.navigation.then((e=>{t.clear(),t.add(this.generateToc(e)),this.add(t),console.log(e)}))})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new I(t);return e.forEach((e=>{const t=new k(e.href,e.label),a=new T(s).setId(e.id),o=new u;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([o,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);o.setClass("toggle-collapsed"),o.dom.onclick=()=>(t.expanded?(t.collaps(),o.setClass("toggle-collapsed")):(t.expand(),o.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class L extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],o=new w(s.get(a[0])).setClass("label"),n=new y("button",s.get(a[1]));n.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.bookmarks=new I,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{n.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new k,s=new T,a=(new u).setClass("btn-remove"),o=this.reader.navItemFromCfi(e);let n,i;if(void 0===o){const t=this.reader.book.spine.get(e);n=t.idref,i=t.idref}else n=o.id,i=o.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(n),this.bookmarks.add(s)}}class z extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],o=new w(s.get(a[0])).setClass("label"),n=new y("button",s.get(a[1]));n.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.notes=new I,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{n.dom.disabled=0===e.settings.annotations.length},e.on("bookready",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}set(e){const t=new k("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new u).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update();const o=document.getElementById("toolbar-annotations-list");if(o){const t=document.createElement("li"),s=document.createElement("a");s.href="#",s.textContent=e.text,s.onclick=t=>{t.preventDefault(),this.reader.rendition.display(e.cfi)},t.appendChild(s);const a=document.createElement("span");a.innerHTML='',a.onclick=t=>{t.stopPropagation(),this.reader.removeNoteFromToolbar(e)},t.appendChild(a),o.appendChild(t)}}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);if(-1===t)return;this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update();const s=document.getElementById("toolbar-annotations-list");s&&s.querySelectorAll("li").forEach((t=>{t.querySelector("a").textContent===e.text&&t.remove()}))}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class O extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new w(t.get(s[0])).setClass("label");this.add(new D(a).addClass("header"));const o=new f(t.get(s[1]),"language-ui"),n=new g,i=(new v).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),n.add(o),n.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new x(16,1);l.dom.onchange=t=>{const s=parseInt(t.target.value);s>=8&&s<=72&&e.emit("styleschanged",{fontSize:s})},l.setId("fontsize"),d.add(r),d.add(l),l.dom.disabled=!0;const c=new f(t.get(s[3]),"flow"),h=new g,m=(new v).setOptions({paginated:"Paginated",scrolled:"Scrolled"});m.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},m.setId("flow"),h.add(c),h.add(m);const u=new x(800,1),b=new f(t.get(s[4]),"spread"),p=new g,k=(new v).setOptions({none:"None",auto:"Auto"});k.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),u.dom.disabled="none"===t.target.value},k.setId("spread"),p.add(b),p.add(k);const C=new f(t.get(s[5]),"min-spread-width"),S=new g;u.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},u.setId("min-spread-width"),S.add(C),S.add(u);const I=t.get("sidebar/settings/pagination"),T=new g,E=new y("checkbox",!1,I[1]);E.setId("pagination"),E.dom.onclick=e=>{},T.add(new f(I[0],"pagination")),T.add(E),this.add(new D([n,d,h,p,S])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),m.setValue(e.flow),k.setValue(e.spread.mod),u.setValue(e.spread.min),u.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(k.setValue("none"),k.dom.disabled=!0,u.dom.disabled=!0):k.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),o.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),b.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class _ extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a={},o="sidebar/metadata",n=new w(s.get(o)).setClass("label");this.add(new D(n).addClass("header")),a[o]=n,this.items=new I,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const n=new T,i=(new w).setClass("label"),r=(new w).setClass("value");i.setValue(s.get(o+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[o+"/"+e]=i,n.add([i,r]),this.items.add(n)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===o?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class R{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],o=new C("vertical").setId("sidebar"),n=(new b).setId("btn-p").addClass("box"),i=new y("button");if(i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},n.add(i),o.addMenu(n),o.addTab("btn-t",t.get(a[1]),new B(e)),s.bookmarks){const s=new L(e);o.addTab("btn-d",t.get(a[2]),s),e.bookmarksPanel=s}if(s.annotations){const s=new z(e);o.addTab("btn-a",t.get(a[3]),s),e.annotationsPanel=s}o.addTab("btn-s",t.get(a[4]),new E(e)),o.addTab("btn-c",t.get(a[5]),new O(e)),o.addTab("btn-i",t.get(a[6]),new _(e)),o.select("btn-t"),document.body.appendChild(o.dom),e.on("sidebaropener",(e=>{e?o.setClass("open"):o.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),o.setLabel("btn-t",t.get(a[1])),s.bookmarks&&o.setLabel("btn-d",t.get(a[2])),s.annotations&&o.setLabel("btn-a",t.get(a[3])),o.setLabel("btn-s",t.get(a[4])),o.setLabel("btn-c",t.get(a[5])),o.setLabel("btn-i",t.get(a[6]))}))}}class F{constructor(e){const t=(new b).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],o=new f(s.get(a[0]),"note-input"),n=new y("text","").setId("note-input");n.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new y("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:n.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&n.getValue().length>0)},t.add(new D([o,n,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),n.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{o.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class P{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("status-bar"),o=["status/fullscreen","status/apprec"],n=(new b).setClass("status-title"),i=(new b).setClass("status-action");let r,d=(new f).setClass("status-text").setTextContent("Trang cuối của chương");n.add(d);const l=(new b).setId("btn-ar").setClass("box");let c;if(r=new y("button"),r.setTitle(t.get(o[1])),r.dom.onclick=e=>{e.preventDefault(),function(){const e=[{title:"Determined",author:"Robert M. Sapolsky",page:1},{title:"Determined",author:"Robert M. Sapolsky",page:2},{title:"Determined",author:"Robert M. Sapolsky",page:3},{title:"Determined",author:"Robert M. Sapolsky",page:4},{title:"Determined",author:"Robert M. Sapolsky",page:5},{title:"Determined",author:"Robert M. Sapolsky",page:6},{title:"Determined",author:"Robert M. Sapolsky",page:7},{title:"Determined",author:"Robert M. Sapolsky",page:8},{title:"Determined",author:"Robert M. Sapolsky",page:9},{title:"Determined",author:"Robert M. Sapolsky",page:10},{title:"Determined",author:"Robert M. Sapolsky",page:11},{title:"Determined",author:"Robert M. Sapolsky",page:12},{title:"Determined",author:"Robert M. Sapolsky",page:13},{title:"Determined",author:"Robert M. Sapolsky",page:14},{title:"Determined",author:"Robert M. Sapolsky",page:15},{title:"Determined",author:"Robert M. Sapolsky",page:16},{title:"Determined",author:"Robert M. Sapolsky",page:17},{title:"Determined",author:"Robert M. Sapolsky",page:18},{title:"Determined",author:"Robert M. Sapolsky",page:19},{title:"Determined",author:"Robert M. Sapolsky",page:20}];if(!document.getElementById("book-list-modal")){let t=document.createElement("div");t.setAttribute("id","book-list-modal"),t.setAttribute("class","book-modal");let s=document.createElement("div");s.setAttribute("class","book-modal-content");let o=document.createElement("div");o.setAttribute("class","book-grid"),e.forEach((e=>{let t=document.createElement("div");t.setAttribute("class","book-item"),t.innerHTML=`\n
    \n

    ${e.title}

    \n

    ${e.author}

    \n
    \n
    ${e.page}
    \n `,o.appendChild(t)})),s.appendChild(o),t.appendChild(s),a.dom.appendChild(t)}document.getElementById("book-list-modal").classList.toggle("active")}()},l.add(r),i.add(l),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");c=new y("button"),c.setTitle(t.get(o[0])),c.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{document.fullscreenElement?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(c),i.add(e)}e.on("languagechanged",(e=>{s.fullscreen&&c.setTitle(t.get(o[0]))})),a.add([n,i]),document.body.appendChild(a.dom)}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class j{constructor(e,t){const s=s=>{const a=new URL(window.location);let o=e;t&&!t.openbook?(o=e,s&&this.storage.clear()):s&&0===a.search.length&&(o=s),this.cfgInit(o,t),this.strings=new c(this),this.toolbar=new M(this),this.content=new A(this),this.status=new P(this),this.sidebar=new R(this),this.settings.annotations&&(this.notedlg=new F(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("bookready",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"px")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:16},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=1,this.emit("styleschanged",{fontSize:t});break;case"-":t-=1,this.emit("styleschanged",{fontSize:t});break;case"0":t=16,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}o(j.prototype);var V=a.Reader;export{V as Reader}; +var e={263:(e,t,s)=>{var a=s(175),o=s(873),n=s(596),i=s(148),r=s(214);(e.exports=function(e,t){var s,o,d,l,c;return arguments.length<2||"string"!=typeof e?(l=t,t=e,e=null):l=arguments[2],a(e)?(s=r.call(e,"c"),o=r.call(e,"e"),d=r.call(e,"w")):(s=d=!0,o=!1),c={value:t,configurable:s,enumerable:o,writable:d},l?n(i(l),c):c}).gs=function(e,t,s){var d,l,c,h;return"string"!=typeof e?(c=s,s=t,t=e,e=null):c=arguments[3],a(t)?o(t)?a(s)?o(s)||(c=s,s=void 0):s=void 0:(c=t,t=s=void 0):t=void 0,a(e)?(d=r.call(e,"c"),l=r.call(e,"e")):(d=!0,l=!1),h={get:t,set:s,configurable:d,enumerable:l},c?n(i(c),h):h}},11:e=>{e.exports=function(){}},596:(e,t,s)=>{e.exports=s(339)()?Object.assign:s(595)},339:e=>{e.exports=function(){var e,t=Object.assign;return"function"==typeof t&&(t(e={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),e.foo+e.bar+e.trzy==="razdwatrzy")}},595:(e,t,s)=>{var a=s(93),o=s(134),n=Math.max;e.exports=function(e,t){var s,i,r,d=n(arguments.length,2);for(e=Object(o(e)),r=function(a){try{e[a]=t[a]}catch(e){s||(s=e)}},i=1;i{var a=s(11)();e.exports=function(e){return e!==a&&null!==e}},93:(e,t,s)=>{e.exports=s(380)()?Object.keys:s(232)},380:e=>{e.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}},232:(e,t,s)=>{var a=s(762),o=Object.keys;e.exports=function(e){return o(a(e)?Object(e):e)}},148:(e,t,s)=>{var a=s(762),o=Array.prototype.forEach,n=Object.create;e.exports=function(e){var t=n(null);return o.call(arguments,(function(e){a(e)&&function(e,t){var s;for(s in e)t[s]=e[s]}(Object(e),t)})),t}},499:e=>{e.exports=function(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return e}},134:(e,t,s)=>{var a=s(762);e.exports=function(e){if(!a(e))throw new TypeError("Cannot use null or undefined");return e}},214:(e,t,s)=>{e.exports=s(525)()?String.prototype.contains:s(521)},525:e=>{var t="razdwatrzy";e.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},521:e=>{var t=String.prototype.indexOf;e.exports=function(e){return t.call(this,e,arguments[1])>-1}},68:(e,t,s)=>{var a,o,n,i,r,d,l,c=s(263),h=s(499),m=Function.prototype.apply,u=Function.prototype.call,b=Object.create,g=Object.defineProperty,p=Object.defineProperties,f=Object.prototype.hasOwnProperty,k={configurable:!0,enumerable:!1,writable:!0};o=function(e,t){var s,o;return h(t),o=this,a.call(this,e,s=function(){n.call(o,e,s),m.call(t,this,arguments)}),s.__eeOnceListener__=t,this},r={on:a=function(e,t){var s;return h(t),f.call(this,"__ee__")?s=this.__ee__:(s=k.value=b(null),g(this,"__ee__",k),k.value=null),s[e]?"object"==typeof s[e]?s[e].push(t):s[e]=[s[e],t]:s[e]=t,this},once:o,off:n=function(e,t){var s,a,o,n;if(h(t),!f.call(this,"__ee__"))return this;if(!(s=this.__ee__)[e])return this;if("object"==typeof(a=s[e]))for(n=0;o=a[n];++n)o!==t&&o.__eeOnceListener__!==t||(2===a.length?s[e]=a[n?0:1]:a.splice(n,1));else a!==t&&a.__eeOnceListener__!==t||delete s[e];return this},emit:i=function(e){var t,s,a,o,n;if(f.call(this,"__ee__")&&(o=this.__ee__[e]))if("object"==typeof o){for(s=arguments.length,n=new Array(s-1),t=1;t{var a=s(202);e.exports=function(e){if("function"!=typeof e)return!1;if(!hasOwnProperty.call(e,"length"))return!1;try{if("number"!=typeof e.length)return!1;if("function"!=typeof e.call)return!1;if("function"!=typeof e.apply)return!1}catch(e){return!1}return!a(e)}},181:(e,t,s)=>{var a=s(175),o={object:!0,function:!0,undefined:!0};e.exports=function(e){return!!a(e)&&hasOwnProperty.call(o,typeof e)}},873:(e,t,s)=>{var a=s(80),o=/^\s*class[\s{/}]/,n=Function.prototype.toString;e.exports=function(e){return!!a(e)&&!o.test(n.call(e))}},202:(e,t,s)=>{var a=s(181);e.exports=function(e){if(!a(e))return!1;try{return!!e.constructor&&e.constructor.prototype===e}catch(e){return!1}}},175:e=>{e.exports=function(e){return null!=e}}},t={};function s(a){var o=t[a];if(void 0!==o)return o.exports;var n=t[a]={exports:{}};return e[a](n,n.exports,s),n.exports}s.d=(e,t)=>{for(var a in t)s.o(t,a)&&!s.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};s.r(a),s.d(a,{Reader:()=>j});var o=s(68);const n=(e,t)=>e?e[t]:void 0,i=(e,t,s,a)=>{let o;if("boolean"==typeof t[a])switch(a){case"annotations":case"bookmarks":o=t[a]?e[a]:t[a];break;default:o=t[a]}else o="arrows"===a?t[a]:void 0===n(s,a)?e[a]:t[a];return o},r=(e,t,s)=>{for(let a in e)"bookPath"!==a&&(t[a]instanceof Array?t[a]=s?e[a]?e[a]:t[a]:e[a]:t[a]instanceof Object?r(e[a],t[a],n(s,a)):t[a]=s?i(e,t,s,a):e[a])},d=()=>{let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{let s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===t?s:7&s|8).toString(16)}))};class l{constructor(){this.name="epubreader-js",this.version=1,this.db,this.indexedDB=window.indexedDB||window.webkitIndexedDB||window.mozIndexedDB||window.OIndexedDB||window.msIndexedDB,void 0===this.indexedDB&&console.error("The IndexedDB API not available in your browser.")}init(e){if(void 0===this.indexedDB)return void e();const t=Date.now(),s=e=>console.error("IndexedDB",e),a=indexedDB.open(this.name,this.version);a.onupgradeneeded=e=>{const t=e.target.result;!1===t.objectStoreNames.contains("entries")&&t.createObjectStore("entries")},a.onsuccess=a=>{this.db=a.target.result,this.db.onerror=s,e(),console.log(`storage.init: ${Date.now()-t} ms`)},a.onerror=s}get(e){if(void 0===this.db)return void e();const t=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").get(0).onsuccess=s=>{e(s.target.result),console.log(`storage.get: ${Date.now()-t} ms`)}}set(e,t){if(void 0===this.db)return void t();const s=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").put(e,0).onsuccess=()=>{t(),console.log(`storage.set: ${Date.now()-s} ms`)}}clear(){if(void 0===this.db)return;const e=Date.now();this.db.transaction(["entries"],"readwrite").objectStore("entries").clear().onsuccess=()=>{console.log(`storage.clear: ${Date.now()-e} ms`)}}}class c{constructor(e){this.language=e.settings.language||"en",this.values={en:{"toolbar/sidebar":"Sidebar","toolbar/prev":"Previous page","toolbar/next":"Next page","toolbar/openbook":"Open book","toolbar/openbook/error":"Your browser does not support the required features.\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.","toolbar/bookmark":"Add this page to bookmarks","toolbar/fullscreen":"Fullscreen","toolbar/background":"Change background","sidebar/close":"Close Sidebar","sidebar/contents":"Contents","sidebar/bookmarks":"Bookmarks","sidebar/bookmarks/add":"Add","sidebar/bookmarks/remove":"Remove","sidebar/bookmarks/clear":"Clear","sidebar/annotations":"Annotations","sidebar/annotations/add":"Add","sidebar/annotations/remove":"Remove","sidebar/annotations/clear":"Clear","sidebar/annotations/anchor":"Anchor","sidebar/annotations/cancel":"Cancel","sidebar/search":"Search","sidebar/search/placeholder":"Search","sidebar/settings":"Settings","sidebar/settings/language":"Language","sidebar/settings/fontsize":"Font size (%)","sidebar/settings/flow":"Flow","sidebar/settings/pagination":["Pagination","Generate pagination"],"sidebar/settings/spread":"Spread","sidebar/settings/spread/minwidth":"Minimum spread width","sidebar/metadata":"Metadata","sidebar/metadata/title":"Title","sidebar/metadata/creator":"Creator","sidebar/metadata/description":"Description","sidebar/metadata/pubdate":"Pubdate","sidebar/metadata/publisher":"Publisher","sidebar/metadata/identifier":"Identifier","sidebar/metadata/language":"Language","sidebar/metadata/rights":"Rights","sidebar/metadata/modified_date":"Modified date","sidebar/metadata/layout":"Layout","sidebar/metadata/flow":"Flow","sidebar/metadata/spread":"Spread","sidebar/metadata/direction":"Direction","notedlg/label":"Note","notedlg/add":"Add","status/fullscreen":"Fullscreen","status/":""},fr:{"toolbar/sidebar":"Barre latérale","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"Ouvrir un livre local","toolbar/openbook/error":"Votre navigateur ne prend pas en charge les fonctions nécessaires.\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.","toolbar/bookmark":"Insérer un marque page ici","toolbar/fullscreen":"Plein écran","toolbar/background":"Changer l'arrière-plan","sidebar/close":"???","sidebar/contents":"Sommaire","sidebar/bookmarks":"Marque-pages","sidebar/bookmarks/add":"Ajouter","sidebar/bookmarks/remove":"Retirer","sidebar/bookmarks/clear":"Tout enlever","sidebar/annotations":"Annotations","sidebar/annotations/add":"Ajouter","sidebar/annotations/remove":"Retirer","sidebar/annotations/clear":"Tout enlever","sidebar/annotations/anchor":"Ancre","sidebar/annotations/cancel":"Annuler","sidebar/search":"Rechercher","sidebar/search/placeholder":"rechercher","sidebar/settings":"Réglages","sidebar/settings/language":"Langue","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["Pagination","Établir une pagination"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"Langue","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"Ajouter","status/fullscreen":"","status/":""},ja:{"toolbar/sidebar":"サイドバー","toolbar/prev":"???","toolbar/next":"???","toolbar/openbook":"本を開く","toolbar/openbook/error":"ご利用のブラウザは必要な機能をサポートしていません。\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。","toolbar/bookmark":"このページに栞を設定する","toolbar/fullscreen":"フルスクリーン","toolbar/background":"背景を変更する","sidebar/close":"???","sidebar/contents":"目次","sidebar/bookmarks":"栞","sidebar/bookmarks/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/bookmarks/clear":"クリア","sidebar/annotations":"注釈","sidebar/annotations/add":"追加","sidebar/bookmarks/remove":"削除","sidebar/annotations/clear":"クリア","sidebar/annotations/anchor":"アンカー","sidebar/annotations/cancel":"キャンセル","sidebar/search":"検索","sidebar/search/placeholder":"検索","sidebar/settings":"設定","sidebar/settings/language":"表示言語","sidebar/settings/fontsize":"???","sidebar/settings/flow":"???","sidebar/settings/pagination":["ページネーション","ページネーションを生成します。"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"???","sidebar/metadata":"???","sidebar/metadata/title":"???","sidebar/metadata/creator":"???","sidebar/metadata/description":"???","sidebar/metadata/pubdate":"???","sidebar/metadata/publisher":"???","sidebar/metadata/identifier":"???","sidebar/metadata/language":"表示言語","sidebar/metadata/rights":"???","sidebar/metadata/modified_date":"???","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"追加","status/fullscreen":"","status/":""},ru:{"toolbar/sidebar":"Боковая панель","toolbar/prev":"Предыдущая страница","toolbar/next":"Следущая страница","toolbar/openbook":"Открыть книгу","toolbar/openbook/error":"Ваш браузер не поддерживает необходимые функции.\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.","toolbar/bookmark":"Добавить эту страницу в закладки","toolbar/fullscreen":"Полноэкранный режим","toolbar/background":"изменить фон","sidebar/close":"Закрыть боковую панель","sidebar/contents":"Содержание","sidebar/bookmarks":"Закладки","sidebar/bookmarks/add":"Добавить","sidebar/bookmarks/remove":"Удалить","sidebar/bookmarks/clear":"Очистить","sidebar/annotations":"Аннотации","sidebar/annotations/add":"Добавить","sidebar/annotations/remove":"Удалить","sidebar/annotations/clear":"Очистить","sidebar/annotations/anchor":"Метка","sidebar/annotations/cancel":"Отмена","sidebar/search":"Поиск","sidebar/search/placeholder":"Поиск","sidebar/settings":"Настройки","sidebar/settings/language":"Язык","sidebar/settings/fontsize":"Размер шрифта","sidebar/settings/flow":"Поток","sidebar/settings/pagination":["Нумерация страниц","Генерировать нумерацию страниц"],"sidebar/settings/spread":"Разворот","sidebar/settings/spread/minwidth":"Мин. ширина колонки","sidebar/metadata":"Метаданные","sidebar/metadata/title":"Заголовок","sidebar/metadata/creator":"Автор","sidebar/metadata/description":"Описание","sidebar/metadata/pubdate":"Дата публикации","sidebar/metadata/publisher":"Издатель","sidebar/metadata/identifier":"Идентификатор","sidebar/metadata/language":"Язык","sidebar/metadata/rights":"Лицензия","sidebar/metadata/modified_date":"Дата изменения","sidebar/metadata/layout":"Макет","sidebar/metadata/flow":"Поток","sidebar/metadata/spread":"Разворот","sidebar/metadata/direction":"Направление","notedlg/label":"Заметка","notedlg/add":"Добавить","status/fullscreen":"","status/":""},vi:{"toolbar/sidebar":"Thanh bên","toolbar/prev":"Trang trước","toolbar/next":"Trang kế tiếp","toolbar/openbook":"Mở sách","toolbar/openbook/error":"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.","toolbar/bookmark":"Thêm trang này vào dấu trang","toolbar/fullscreen":"Toàn màn hình","toolbar/background":"Đổi màu nền","sidebar/close":"Đóng thanh bên","sidebar/contents":"Nội dung","sidebar/bookmarks":"Dấu trang","sidebar/bookmarks/add":"Thêm dấu trang","sidebar/bookmarks/remove":"Xóa dấu trang","sidebar/bookmarks/clear":"???","sidebar/annotations":"Chú thích","sidebar/annotations/add":"Thêm chú thích","sidebar/annotations/remove":"Xóa chú thích","sidebar/annotations/clear":"???","sidebar/annotations/anchor":"???","sidebar/annotations/cancel":"???","sidebar/search":"Tìm kiếm","sidebar/search/placeholder":"???","sidebar/settings":"Cài đặt","sidebar/settings/language":"Ngôn ngữ","sidebar/settings/fontsize":"Cỡ chữ (%)","sidebar/settings/flow":"???","sidebar/settings/pagination":["???","???"],"sidebar/settings/spread":"???","sidebar/settings/spread/minwidth":"????","sidebar/metadata":"Metadata","sidebar/metadata/title":"Chủ đề","sidebar/metadata/creator":"Người sáng tạo","sidebar/metadata/description":"Mô tả","sidebar/metadata/pubdate":"Ngày tạo","sidebar/metadata/publisher":"Nhà xuất bản","sidebar/metadata/identifier":"Định dạng","sidebar/metadata/language":"Ngôn ngữ","sidebar/metadata/rights":"Quyền","sidebar/metadata/modified_date":"Ngày sửa đổi","sidebar/metadata/layout":"???","sidebar/metadata/flow":"???","sidebar/metadata/spread":"???","sidebar/metadata/direction":"???","notedlg/label":"???","notedlg/add":"???","status/fullscreen":"Toàn màn hình","status/":""}},e.on("languagechanged",(e=>{this.language=e}))}get(e){return this.values[this.language][e]||"???"}}const h="is not an instance of UIElement.";class m{constructor(e){this.dom=document.createElement(e)}add(){for(let e=0;e{e.stopPropagation()},this.setValue(t),this.setTitle(s)}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}getType(){return this.dom.type}setType(e){return this.dom.type=e,this}getValue(){return this.dom.value}setValue(e){return this.dom.value!==e&&void 0!==e&&(this.dom.value=e),this}}class x extends m{constructor(e,t,s,a,o){super("input"),this.dom.type="number",this.dom.step=t||1,this.dom.onkeydown=e=>{e.stopPropagation()},this.value=e||0,this.min=s||-1/0,this.max=a||1/0,this.precision=o||0,this.setValue(e),this.dom.onchange=e=>{this.setValue(this.value)}}getName(){return this.dom.name}setName(e){return this.dom.name=e,this}setPrecision(e){return this.precision=e,this.setValue(this.value),this}setRange(e,t){return this.min=e,this.max=t,this.dom.min=e,this.dom.max=t,this}setStep(e){return this.dom.step=e,this}getValue(){return parseFloat(this.dom.value)}setValue(e){return void 0!==e&&((e=parseFloat(e))this.max&&(e=this.max),this.value=e,this.dom.value=e.toFixed(this.precision)),this}}class C extends b{constructor(e){super(),this.align=e||"horizontal",this.tabs=[],this.panels=[],this.selector=(new u).setClass("tab-selector"),this.menuDiv=(new b).setClass("menu"),this.tabsDiv=(new b).setClass("tabs"),this.tabsDiv.add(this.selector),this.panelsDiv=(new b).setClass("panels"),this.selected="",this.add(this.menuDiv),this.add(this.tabsDiv),this.add(this.panelsDiv)}addMenu(e){this.menuDiv.add(e)}addTab(e,t,s){const a=new S(t,this);a.setId(e),a.setClass("box"),this.tabs.push(a),this.tabsDiv.add(a);const o=new b;o.setId(e),o.add(s),this.panels.push(o),this.panelsDiv.add(o),this.select(e)}select(e){for(let t of this.tabs)t.dom.id===e?(t.addClass("selected"),this.transformSelector(t)):t.dom.id===this.selected&&t.removeClass("selected");for(let t of this.panels)t.dom.id===e?t.dom.style.display="block":t.dom.id===this.selected&&(t.dom.style.display="none");return this.selected=e,this}setLabel(e,t){for(let s of this.tabs)if(s.dom.id===e){s.setTitle(t);break}}transformSelector(e){let t;const s=e.getBoundingClientRect();"horizontal"===this.align?(t=s.width*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateX(${t}px)`):(t=s.height*this.tabs.indexOf(e),this.selector.dom.style.transform=`translateY(${t}px)`)}}class S extends b{constructor(e,t){super(),this.button=new y("button"),this.button.dom.title=e,this.dom.onclick=e=>{t.select(this.dom.id),e.preventDefault()},this.add(this.button)}}class I extends m{constructor(e){super("ul"),this.parent=e&&e.parent,this.expanded=!1}expand(){return this.expanded=!0,this.dom.style.display="block",this.parent&&this.parent.expand(),this}collaps(){return this.expanded=!1,this.dom.style.display="none",this}}class T extends m{constructor(e){super("li"),this.parent=e,this.selected=!1}add(){let e=0;const t=(new b).setId("item-box");for(let s=0;s{const e=o.getValue();0===e.length?this.items.clear():a!==e&&(this.items.clear(),this.doSearch(e).then((e=>{e.forEach((e=>{this.set(e)}))}))),a=e},this.setId("search"),this.items=new I,t.add(this.items),this.add([new D(o),t]),this.reader=e,this.selector=void 0}async doSearch(e){const t=this.reader.book,s=await Promise.all(t.spine.spineItems.map((s=>s.load(t.load.bind(t)).then(s.find.bind(s,e)).finally(s.unload.bind(s)))));return await Promise.resolve([].concat.apply([],s))}set(e){const t=new k("#"+e.cfi,e.excerpt),s=new T;t.dom.onclick=()=>(this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),!1),s.add(t),this.items.add(s)}}class M{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("toolbar"),o=["toolbar/sidebar","toolbar/prev","toolbar/next","toolbar/openbook","toolbar/openbook/error","toolbar/bookmark","toolbar/fullscreen","toolbar/background","toolbar/search","toolbar/close"],n=(new b).setClass("menu-1"),i=(new b).setId("btn-m").setClass("box"),r=new y("button");let d,l,c,h;r.dom.title=t.get(o[0]),r.dom.onclick=t=>{e.emit("sidebaropener",!0),r.dom.blur(),t.preventDefault()},i.add(r),n.add(i),"toolbar"===s.arrows&&(d=(new b).setId("btn-p").setClass("box"),l=new y("button"),l.setTitle(t.get(o[1])),l.dom.onclick=t=>{e.emit("prev"),t.preventDefault(),l.dom.blur()},d.add(l),n.add(d),c=(new b).setId("btn-n").setClass("box"),h=new y("button"),h.dom.title=t.get(o[2]),h.dom.onclick=t=>{e.emit("next"),t.preventDefault(),h.dom.blur()},c.add(h),n.add(c));const m=(new b).setId("btn-logo").setClass("logo"),g=(new k).setId("logo-link").setHref("#").setTextContent("LOGO");let p,w,x,C,S,I;function T(){let t=document.getElementById("toolbar-bookmarks-list");if(!t)return;t.innerHTML="";let s=document.createElement("h3");s.textContent="Bookmarks của tui",t.appendChild(s),e.settings.bookmarks.forEach(((s,a)=>{let o=document.createElement("li"),n=document.createElement("a"),i=document.createElement("span");n.href="#",n.textContent=`Bookmark ${a+1}`,n.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-bookmarks-list li a").forEach((e=>{e.classList.remove("active")})),n.classList.add("active"),e.rendition.display(s)},i.innerHTML='',i.onclick=t=>{t.stopPropagation(),e.removeBookmarkFromToolbar(s)},o.appendChild(n),o.appendChild(i),t.appendChild(o)}))}m.add(g),n.add(m),p=(new b).setId("btn-t").setClass("box"),w=new y("button"),w.dom.onclick=t=>{t.stopPropagation(),e.book.loaded.navigation.then((t=>{!function(t){let s=document.getElementById("toolbar-toc-list");if(s)s.remove();else{let s=document.createElement("ul");s.setAttribute("id","toolbar-toc-list");let a=document.createElement("h3");a.textContent="Mục lục",s.appendChild(a),t.forEach((t=>{let a=document.createElement("li"),o=document.createElement("a");o.href="#",o.textContent=t.label,o.onclick=s=>{s.preventDefault(),document.querySelectorAll("#toolbar-toc-list li a").forEach((e=>{e.classList.remove("active")})),o.classList.add("active"),e.rendition.display(t.href)},a.appendChild(o),s.appendChild(a)})),p.dom.appendChild(s)}document.getElementById("toolbar-toc-list").classList.toggle("active")}(t)}))},p.add(w),n.add(p),x=(new b).setId("btn-d").setClass("box"),C=new y("button"),C.dom.onclick=e=>{e.stopPropagation(),function(){let e=document.getElementById("toolbar-bookmarks-list");e||(e=document.createElement("ul"),e.setAttribute("id","toolbar-bookmarks-list"),V.dom.appendChild(e)),T(),e.classList.toggle("active")}()},x.add(C),n.add(x),e.on("bookmarked",((e,t)=>{T()})),e.removeBookmarkFromToolbar=function(t){let s=document.getElementById("toolbar-bookmarks-list");if(!s)return;let a=s.querySelectorAll("li"),o=Array.from(a).find((e=>e.querySelector("a").textContent.includes(t)));o&&o.remove();const n=e.settings.bookmarks.indexOf(t);-1!==n&&e.settings.bookmarks.splice(n,1),e.emit("bookmarked",!1,t),e.bookmarksPanel.removeBookmark(t)},S=(new b).setId("btn-a").setClass("box"),I=new y("button"),I.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-annotations-list")){let t=document.createElement("ul");t.setAttribute("id","toolbar-annotations-list");let s=document.createElement("h3");s.textContent="Highlights & Ghi chú",t.appendChild(s),e.settings.annotations.forEach((s=>{let a=document.createElement("li"),o=document.createElement("a"),n=document.createElement("span");o.href="#",o.textContent=s.text,o.onclick=t=>{t.preventDefault(),document.querySelectorAll("#toolbar-annotations-list li a").forEach((e=>{e.classList.remove("active")})),o.classList.add("active"),e.rendition.display(s.cfi)},n.innerHTML='',n.onclick=t=>{t.stopPropagation(),e.removeNoteFromToolbar(s)},a.appendChild(o),a.appendChild(n),t.appendChild(a)})),S.dom.appendChild(t)}document.getElementById("toolbar-annotations-list").classList.toggle("active")}()},S.add(I),n.add(S),e.removeNoteFromToolbar=function(t){let s=document.getElementById("toolbar-annotations-list");if(!s)return;let a=s.querySelectorAll("li"),o=Array.from(a).find((e=>{e.querySelector("a").textContent,t.text}));o&&o.remove();const n=e.annotationsPanel;n&&(n.removeNote(t),n.update());const i=e.settings.annotations.findIndex((e=>e.cfi===t.cfi));-1!==i&&e.settings.annotations.splice(i,1),e.rendition.annotations.remove(t.cfi,"highlight")};const D=(new b).setClass("menu-center"),M=(new f).setClass("toolbar-center-label");M.setTextContent("Determined");const A=(new b).setClass("page-map"),B=(new u).setClass("current-page-index").setTextContent("1"),L=(new v).setTextContent(" của "),z=(new u).setClass("total-pages").setTextContent("200");A.add(B),A.add(L),A.add(z),D.add(M),D.add(A);const O=(new b).setClass("menu-2");let _,R;s.background&&(_=(new b).setId("btn-bg").setClass("box"),R=new y("color").setClass("color-picker"),R.dom.title=t.get(o[7]),R.dom.oninput=t=>{const s=t.target.value;e.emit("colorchanged",s)},_.add(R),O.add(_));let F,P,j,V,N,H,q,$,U=(new f).setClass("font-size-px").setTextContent("Fontsize (px):"),G=(new b).setId("btn-fontsize").setClass("box"),K=new y("button").setClass("btn-font-decrease"),W=new y("button").setClass("btn-font-increase"),J=new y("text").setClass("input-font-size"),X=s.fontSize||16;if(J.dom.value=X,K.dom.textContent="-",K.dom.onclick=()=>{X=Math.max(8,X-1),J.dom.value=X,e.emit("styleschanged",{fontSize:X})},W.dom.textContent="+",W.dom.onclick=()=>{X=Math.min(72,X+1),J.dom.value=X,e.emit("styleschanged",{fontSize:X})},J.dom.onchange=()=>{let t=parseInt(J.dom.value,10);!isNaN(t)&&t>=8&&t<=72?(X=t,e.emit("styleschanged",{fontSize:X})):J.dom.value=X},G.add(U),G.add(K),G.add(J),G.add(W),O.add(G),s.openbook){const s=t=>{e.storage.clear(),e.storage.set(t.target.result,(()=>{e.unload(),e.init(t.target.result);const s=new URL(window.location.origin);window.history.pushState({},"",s)}))},a=e=>{console.error(e)},n=(new b).setId("btn-o").setClass("box");F=new y("file"),F.dom.title=t.get(o[3]),F.dom.accept="application/epub+zip",F.dom.onchange=e=>{if(0!==e.target.files.length)if(window.FileReader){const t=new FileReader;t.onload=s,t.readAsArrayBuffer(e.target.files[0]),t.onerror=a}else alert(t.get(o[4]))},F.dom.onclick=e=>{F.dom.blur()},n.add(F),O.add(n)}if(P=(new b).setId("btn-s").setClass("box"),j=new y("button"),j.setTitle(t.get(o[8])),j.dom.onclick=t=>{t.stopPropagation(),function(){if(!document.getElementById("toolbar-search-list")){let t=document.createElement("div");t.setAttribute("id","toolbar-search-list"),t.classList.add("search-popup");let s=document.createElement("div");s.classList.add("search-container");let a=document.createElement("span");a.classList.add("search-icon"),a.innerHTML='';let o=document.createElement("input");o.setAttribute("type","search"),o.setAttribute("placeholder","Search"),o.setAttribute("id","nav-q"),o.setAttribute("class","toolbar-search-input"),s.appendChild(a),s.appendChild(o);let n=document.createElement("ul");n.setAttribute("id","toolbar-search-results");let i=new E(e);o.oninput=async()=>{let e=o.value.trim();if(e.length>0){let t=await i.doSearch(e);if(n.innerHTML="",0===t.length){let e=document.createElement("li");e.innerText="Không tìm thấy kết quả trùng khớp",e.style.color="gray",e.style.padding="8px",n.appendChild(e)}t.forEach((e=>{let t=document.createElement("li"),s=document.createElement("a");s.href="#"+e.cfi,s.textContent=e.excerpt,s.onclick=t=>{t.preventDefault(),i.reader.rendition.display(e.cfi)},t.appendChild(s),n.appendChild(t)}))}else n.innerHTML=""},t.appendChild(s),t.appendChild(n),P.dom.appendChild(t)}document.getElementById("toolbar-search-list").classList.toggle("active")}()},P.add(j),O.add(P),s.bookmarks&&(V=(new b).setId("btn-b").setClass("box"),N=new y("button"),N.setTitle(t.get(o[5])),N.dom.onclick=t=>{const s=this.locationCfi,a=-1===e.isBookmarked(s);e.emit("bookmarked",a),t.preventDefault(),N.dom.blur()},V.add(N),O.add(V)),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");H=new y("button"),H.setTitle(t.get(o[6])),H.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{const s=window.screen.width===t.target.clientWidth,a=window.screen.height===t.target.clientHeight;s&&a?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(H),O.add(e)}a.add([n,D,O]),document.body.appendChild(a.dom),q=(new b).setId("btn-close").setClass("box"),$=new y("button").setClass("active"),$.setTitle(t.get(o[9])),q.add($),O.add(q),e.on("relocated",(t=>{if(s.bookmarks){const s=t.start.cfi;-1===e.isBookmarked(s)?V.removeClass("bookmarked"):V.addClass("bookmarked"),this.locationCfi=s}"toolbar"===s.arrows&&(d.dom.style.display=t.atStart?"none":"block",c.dom.style.display=t.atEnd?"none":"block")})),e.on("bookmarked",(e=>{e?V.addClass("bookmarked"):V.removeClass("bookmarked")})),e.on("languagechanged",(e=>{r.setTitle(t.get(o[0])),"toolbar"===s.arrows&&(l.setTitle(t.get(o[1])),h.setTitle(t.get(o[2]))),s.openbook&&F.setTitle(t.get(o[3])),s.bookmarks&&N.setTitle(t.get(o[5])),s.fullscreen&&H.setTitle(t.get(o[6])),s.background&&backgroundBtn.setTitle(t.get(o[7]))}))}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class A{constructor(e){const t=e.settings,s=(new b).setId("content");let a;if("content"===t.arrows){a=(new b).setId("prev").setClass("arrow"),a.dom.onclick=t=>{e.emit("prev"),t.preventDefault()};const t=new u;t.dom.innerHTML='',a.add(t),s.add(a)}const o=(new b).setId("viewer");let n;if(s.add(o),e.on("colorchanged",(e=>{o.dom.style.backgroundColor=e})),"content"===t.arrows){n=(new b).setId("next").setClass("arrow"),n.dom.onclick=t=>{e.emit("next"),t.preventDefault()};const t=new u;t.dom.innerHTML='',n.add(t),s.add(n)}const i=(new b).setId("loader"),r=(new b).setId("divider"),d=(new b).setId("overlay");d.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault()},s.add([i,r,d]),document.body.appendChild(s.dom),e.on("bookready",(e=>{o.setClass(e.flow),i.dom.style.display="block"})),e.on("bookloaded",(()=>{i.dom.style.display="none"})),e.on("layout",(e=>{e.spread&&e.width>e.spreadWidth?r.dom.style.display="block":r.dom.style.display="none"})),e.on("flowchanged",(e=>{o.setClass(e)})),e.on("relocated",(e=>{"content"===t.arrows&&(e.atStart?a.addClass("disabled"):a.removeClass("disabled"),e.atEnd?n.addClass("disabled"):n.removeClass("disabled"))})),e.on("prev",(()=>{"content"===t.arrows&&(a.addClass("active"),setTimeout((()=>{a.removeClass("active")}),100))})),e.on("next",(()=>{"content"===t.arrows&&(n.addClass("active"),setTimeout((()=>{n.removeClass("active")}),100))})),e.on("sidebaropener",(e=>{d.dom.style.display=e?"block":"none"})),e.on("viewercleanup",(()=>{o.clear()}))}}class B extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/contents"],o=new v(s.get(a[0])).setClass("label");this.reader=e,this.selector=void 0,this.setId("contents"),this.add(new D(o).addClass("header")),e.on("bookready",(()=>{e.book.loaded.navigation.then((e=>{t.clear(),t.add(this.generateToc(e)),this.add(t),console.log(e)}))})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0]))}))}generateToc(e,t){const s=new I(t);return e.forEach((e=>{const t=new k(e.href,e.label),a=new T(s).setId(e.id),o=new u;if(t.dom.onclick=t=>{this.selector&&this.selector!==a&&this.selector.unselect(),a.select(),this.selector=a,this.reader.settings.sectionId=e.id,this.reader.rendition.display(e.href),t.preventDefault()},a.add([o,t]),this.reader.navItems[e.href]={id:e.id,label:e.label},this.reader.settings.sectionId===e.id&&(s.expand(),a.select(),this.selector=a),e.subitems&&e.subitems.length>0){const t=this.generateToc(e.subitems,a);o.setClass("toggle-collapsed"),o.dom.onclick=()=>(t.expanded?(t.collaps(),o.setClass("toggle-collapsed")):(t.expand(),o.setClass("toggle-expanded")),!1),a.add(t)}s.add(a)})),s}}class L extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/bookmarks","sidebar/bookmarks/clear"],o=new v(s.get(a[0])).setClass("label"),n=new y("button",s.get(a[1]));n.dom.onclick=t=>{this.clearBookmarks(),e.emit("bookmarked",!1),t.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.bookmarks=new I,t.add(this.bookmarks),this.setId("bookmarks"),this.add(t),this.reader=e;const i=()=>{n.dom.disabled=0===e.settings.bookmarks.length};e.on("displayed",((e,t)=>{t.bookmarks.forEach((e=>{this.setBookmark(e)})),i()})),e.on("relocated",(e=>{this.locationCfi=e.start.cfi})),e.on("bookmarked",((e,t)=>{e?this.appendBookmark():this.removeBookmark(t),i()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}appendBookmark(){const e=this.locationCfi;this.reader.isBookmarked(e)>-1||(this.setBookmark(e),this.reader.settings.bookmarks.push(e))}removeBookmark(e){const t=e||this.locationCfi,s=this.reader.isBookmarked(t);-1!==s&&(this.bookmarks.remove(s),this.reader.settings.bookmarks.splice(s,1))}clearBookmarks(){this.bookmarks.clear(),this.reader.settings.bookmarks=[]}setBookmark(e){const t=new k,s=new T,a=(new u).setClass("btn-remove"),o=this.reader.navItemFromCfi(e);let n,i;if(void 0===o){const t=this.reader.book.spine.get(e);n=t.idref,i=t.idref}else n=o.id,i=o.label;t.setHref("#"+e),t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e),t.preventDefault()},t.setTextContent(i),a.dom.onclick=t=>{this.reader.emit("bookmarked",!1,e),t.preventDefault()},s.add([t,a]),s.setId(n),this.bookmarks.add(s)}}class z extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a=["sidebar/annotations","sidebar/annotations/clear"],o=new v(s.get(a[0])).setClass("label"),n=new y("button",s.get(a[1]));n.dom.onclick=e=>{this.clearNotes(),e.preventDefault()},this.add(new D([o,n]).addClass("header")),this.selector=void 0,this.notes=new I,t.add(this.notes),this.setId("annotations"),this.add(t),this.reader=e,this.update=()=>{n.dom.disabled=0===e.settings.annotations.length},e.on("navigation",(e=>{e.annotations.forEach((e=>{this.set(e)})),this.update()})),e.on("noteadded",(e=>{this.set(e),this.update()})),e.on("languagechanged",(e=>{o.setValue(s.get(a[0])),n.setValue(s.get(a[1]))}))}set(e){const t=new k("#"+e.cfi,e.text),s=(new T).setId("note-"+e.uuid),a=(new u).setClass("btn-remove");t.dom.onclick=t=>{this.selector&&this.selector!==s&&this.selector.unselect(),s.select(),this.selector=s,this.reader.rendition.display(e.cfi),t.preventDefault()},a.dom.onclick=t=>{this.removeNote(e),t.preventDefault()},s.add([t,a]),this.notes.add(s),this.reader.rendition.annotations.add("highlight",e.cfi,{},(()=>{}),"note-highlight",{}),this.update();const o=document.getElementById("toolbar-annotations-list");if(o){const t=document.createElement("li"),s=document.createElement("a");s.href="#",s.textContent=e.text,s.onclick=t=>{t.preventDefault(),this.reader.rendition.display(e.cfi)},t.appendChild(s);const a=document.createElement("span");a.innerHTML='',a.onclick=t=>{t.stopPropagation(),this.reader.removeNoteFromToolbar(e)},t.appendChild(a),o.appendChild(t)}}removeNote(e){const t=this.reader.settings.annotations.indexOf(e);if(-1===t)return;this.notes.remove(t),this.reader.settings.annotations.splice(t,1),this.reader.rendition.annotations.remove(e.cfi,"highlight"),this.update();const s=document.getElementById("toolbar-annotations-list");s&&s.querySelectorAll("li").forEach((t=>{t.querySelector("a").textContent===e.text&&t.remove()}))}clearNotes(){this.reader.settings.annotations.forEach((e=>{this.reader.rendition.annotations.remove(e.cfi,"highlight")})),this.notes.clear(),this.reader.settings.annotations=[],this.update()}}class O extends p{constructor(e){super(),super.setId("settings");const t=e.strings,s=["sidebar/settings","sidebar/settings/language","sidebar/settings/fontsize","sidebar/settings/flow","sidebar/settings/spread","sidebar/settings/spread/minwidth"],a=new v(t.get(s[0])).setClass("label");this.add(new D(a).addClass("header"));const o=new f(t.get(s[1]),"language-ui"),n=new g,i=(new w).setOptions({en:"English",fr:"French",ja:"Japanese",ru:"Russian",vi:"Vietnamese"});i.dom.onchange=t=>{e.emit("languagechanged",t.target.value)},i.setId("language-ui"),n.add(o),n.add(i);const r=new f(t.get(s[2]),"fontsize"),d=new g,l=new x(16,1);l.dom.onchange=t=>{const s=parseInt(t.target.value);s>=8&&s<=72&&e.emit("styleschanged",{fontSize:s})},l.setId("fontsize"),d.add(r),d.add(l),l.dom.disabled=!0;const c=new f(t.get(s[3]),"flow"),h=new g,m=(new w).setOptions({paginated:"Paginated",scrolled:"Scrolled"});m.dom.onchange=t=>{e.emit("flowchanged",t.target.value),"scrolled"===t.target.value?e.emit("spreadchanged",{mod:"none",min:void 0}):e.emit("spreadchanged",{mod:void 0,min:void 0})},m.setId("flow"),h.add(c),h.add(m);const u=new x(800,1),b=new f(t.get(s[4]),"spread"),p=new g,k=(new w).setOptions({none:"None",auto:"Auto"});k.dom.onchange=t=>{e.emit("spreadchanged",{mod:t.target.value,min:void 0}),u.dom.disabled="none"===t.target.value},k.setId("spread"),p.add(b),p.add(k);const C=new f(t.get(s[5]),"min-spread-width"),S=new g;u.dom.onchange=t=>{e.emit("spreadchanged",{mod:void 0,min:parseInt(t.target.value)})},u.setId("min-spread-width"),S.add(C),S.add(u);const I=t.get("sidebar/settings/pagination"),T=new g,E=new y("checkbox",!1,I[1]);E.setId("pagination"),E.dom.onclick=e=>{},T.add(new f(I[0],"pagination")),T.add(E),this.add(new D([n,d,h,p,S])),e.on("bookready",(e=>{i.setValue(e.language),l.setValue(e.styles.fontSize),m.setValue(e.flow),k.setValue(e.spread.mod),u.setValue(e.spread.min),u.dom.disabled="none"===e.spread.mod})),e.on("layout",(e=>{"scrolled"===e.flow?(k.setValue("none"),k.dom.disabled=!0,u.dom.disabled=!0):k.dom.disabled=!1})),e.on("languagechanged",(e=>{a.setTextContent(t.get(s[0])),o.setTextContent(t.get(s[1])),r.setTextContent(t.get(s[2])),c.setTextContent(t.get(s[3])),b.setTextContent(t.get(s[4])),C.setTextContent(t.get(s[5]))}))}}class _ extends p{constructor(e){super();const t=(new b).setClass("list-container"),s=e.strings,a={},o="sidebar/metadata",n=new v(s.get(o)).setClass("label");this.add(new D(n).addClass("header")),a[o]=n,this.items=new I,this.setId("metadata"),this.add(t);const i=(e,t)=>{if(void 0===t[e]||null===t[e]||"string"==typeof t[e]&&0===t[e].length)return;const n=new T,i=(new v).setClass("label"),r=(new v).setClass("value");i.setValue(s.get(o+"/"+e).toUpperCase()),"description"===e?r.dom.innerHTML=t[e]:r.setValue(t[e]),a[o+"/"+e]=i,n.add([i,r]),this.items.add(n)};e.on("metadata",(e=>{this.items.clear(),t.clear(),t.add(this.items),document.title=e.title;for(const t in e)i(t,e)})),e.on("languagechanged",(e=>{for(const e in a){let t;t=e===o?s.get(e):s.get(e).toUpperCase(),a[e].setValue(t)}}))}}class R{constructor(e){const t=e.strings,s=e.settings,a=["sidebar/close","sidebar/contents","sidebar/bookmarks","sidebar/annotations","sidebar/search","sidebar/settings","sidebar/metadata"],o=new C("vertical").setId("sidebar"),n=(new b).setId("btn-p").addClass("box"),i=new y("button");if(i.setTitle(t.get(a[0])),i.dom.onclick=t=>{e.emit("sidebaropener",!1),t.preventDefault(),i.dom.blur()},n.add(i),o.addMenu(n),o.addTab("btn-t",t.get(a[1]),new B(e)),s.bookmarks){const s=new L(e);o.addTab("btn-d",t.get(a[2]),s),e.bookmarksPanel=s}if(s.annotations){const s=new z(e);o.addTab("btn-a",t.get(a[3]),s),e.annotationsPanel=s}o.addTab("btn-s",t.get(a[4]),new E(e)),o.addTab("btn-c",t.get(a[5]),new O(e)),o.addTab("btn-i",t.get(a[6]),new _(e)),o.select("btn-t"),document.body.appendChild(o.dom),e.on("sidebaropener",(e=>{e?o.setClass("open"):o.removeAttribute("class")})),e.on("languagechanged",(e=>{i.setTitle(t.get(a[0])),o.setLabel("btn-t",t.get(a[1])),s.bookmarks&&o.setLabel("btn-d",t.get(a[2])),s.annotations&&o.setLabel("btn-a",t.get(a[3])),o.setLabel("btn-s",t.get(a[4])),o.setLabel("btn-c",t.get(a[5])),o.setLabel("btn-i",t.get(a[6]))}))}}class F{constructor(e){const t=(new b).setId("notedlg"),s=e.strings,a=["notedlg/label","notedlg/add"],o=new f(s.get(a[0]),"note-input"),n=new y("text","").setId("note-input");n.dom.oninput=e=>{this.update(),e.preventDefault()};const i=new y("button",s.get(a[1]));i.dom.disabled=!0,i.dom.onclick=s=>{const a={cfi:this.cfi,date:new Date,text:n.getValue(),uuid:d()};this.range=void 0,e.settings.annotations.push(a),e.emit("noteadded",a),t.removeAttribute("class"),s.preventDefault(),i.dom.blur()},this.update=()=>{i.dom.disabled=!(this.range&&n.getValue().length>0)},t.add(new D([o,n,i]).addClass("control")),document.body.appendChild(t.dom),e.on("selected",((e,s)=>{this.cfi=e,this.range=s.range(e),this.update(),t.setClass("open"),n.setValue("")})),e.on("unselected",(()=>{this.range=void 0,this.update(),t.removeAttribute("class")})),e.on("languagechanged",(e=>{o.setTextContent(s.get(a[0])),i.setValue(s.get(a[1]))}))}}class P{constructor(e){const t=e.strings,s=e.settings,a=(new b).setId("status-bar"),o=["status/fullscreen","status/apprec"],n=(new b).setClass("status-title"),i=(new b).setClass("status-action");let r,d=(new f).setClass("status-text").setTextContent("Trang cuối của chương");n.add(d);const l=(new b).setId("btn-ar").setClass("box");let c;if(r=new y("button"),r.setTitle(t.get(o[1])),r.dom.onclick=e=>{e.preventDefault(),function(){const e=[{title:"Determined",author:"Robert M. Sapolsky",page:1},{title:"Determined",author:"Robert M. Sapolsky",page:2},{title:"Determined",author:"Robert M. Sapolsky",page:3},{title:"Determined",author:"Robert M. Sapolsky",page:4},{title:"Determined",author:"Robert M. Sapolsky",page:5},{title:"Determined",author:"Robert M. Sapolsky",page:6},{title:"Determined",author:"Robert M. Sapolsky",page:7},{title:"Determined",author:"Robert M. Sapolsky",page:8},{title:"Determined",author:"Robert M. Sapolsky",page:9},{title:"Determined",author:"Robert M. Sapolsky",page:10},{title:"Determined",author:"Robert M. Sapolsky",page:11},{title:"Determined",author:"Robert M. Sapolsky",page:12},{title:"Determined",author:"Robert M. Sapolsky",page:13},{title:"Determined",author:"Robert M. Sapolsky",page:14},{title:"Determined",author:"Robert M. Sapolsky",page:15},{title:"Determined",author:"Robert M. Sapolsky",page:16},{title:"Determined",author:"Robert M. Sapolsky",page:17},{title:"Determined",author:"Robert M. Sapolsky",page:18},{title:"Determined",author:"Robert M. Sapolsky",page:19},{title:"Determined",author:"Robert M. Sapolsky",page:20}];if(!document.getElementById("book-list-modal")){let t=document.createElement("div");t.setAttribute("id","book-list-modal"),t.setAttribute("class","book-modal");let s=document.createElement("div");s.setAttribute("class","book-modal-content");let o=document.createElement("div");o.setAttribute("class","book-grid"),e.forEach((e=>{let t=document.createElement("div");t.setAttribute("class","book-item"),t.innerHTML=`\n
    \n

    ${e.title}

    \n

    ${e.author}

    \n
    \n
    ${e.page}
    \n `,o.appendChild(t)})),s.appendChild(o),t.appendChild(s),a.dom.appendChild(t)}document.getElementById("book-list-modal").classList.toggle("active")}()},l.add(r),i.add(l),s.fullscreen){const e=(new b).setId("btn-f").setClass("box");c=new y("button"),c.setTitle(t.get(o[0])),c.dom.onclick=e=>{this.toggleFullScreen(),e.preventDefault()},document.onkeydown=e=>{"F11"===e.key&&(e.preventDefault(),this.toggleFullScreen())},document.onfullscreenchange=t=>{document.fullscreenElement?e.addClass("resize-small"):e.removeClass("resize-small")},e.add(c),i.add(e)}e.on("languagechanged",(e=>{s.fullscreen&&c.setTitle(t.get(o[0]))})),a.add([n,i]),document.body.appendChild(a.dom)}toggleFullScreen(){document.activeElement.blur(),null===document.fullscreenElement?document.documentElement.requestFullscreen():document.exitFullscreen&&document.exitFullscreen()}}class j{constructor(e,t){const s=s=>{const a=new URL(window.location);let o=e;t&&!t.openbook?(o=e,s&&this.storage.clear()):s&&0===a.search.length&&(o=s),this.cfgInit(o,t),this.strings=new c(this),this.toolbar=new M(this),this.content=new A(this),this.status=new P(this),this.sidebar=new R(this),this.settings.annotations&&(this.notedlg=new F(this)),this.init()};this.settings=void 0,this.isMobile=[/Android/i,/BlackBerry/i,/iPhone/i,/iPad/i,/iPod/i,/Windows Phone/i,/webOS/i].some((e=>navigator.userAgent.match(e))),this.storage=new l;const a=t&&t.openbook;!this.storage.indexedDB||t&&!a?s():this.storage.init((()=>this.storage.get((e=>s(e))))),window.onbeforeunload=this.unload.bind(this),window.onhashchange=this.hashChanged.bind(this),window.onkeydown=this.keyboardHandler.bind(this),window.onwheel=e=>{e.ctrlKey&&e.preventDefault()}}init(e,t){this.emit("viewercleanup"),this.navItems={},arguments.length>0&&this.cfgInit(e,t),this.book=ePub(this.settings.bookPath),this.rendition=this.book.renderTo("viewer",{manager:this.settings.manager,flow:this.settings.flow,spread:this.settings.spread.mod,minSpreadWidth:this.settings.spread.min,width:"100%",height:"100%",snap:!0});const s=this.settings.previousLocationCfi;this.displayed=s?this.rendition.display(s):this.rendition.display(),this.displayed.then((e=>{this.emit("displayed",e,this.settings)})),this.book.ready.then((()=>{this.emit("bookready",this.settings)})).then((()=>{this.emit("bookloaded")})),this.book.loaded.metadata.then((e=>{this.emit("metadata",e)})),this.book.loaded.navigation.then((e=>{this.emit("bookready",e)})),this.rendition.on("click",(e=>{"Range"!==e.view.document.getSelection().type&&this.emit("unselected")})),this.rendition.on("layout",(e=>{this.emit("layout",e)})),this.rendition.on("selected",((e,t)=>{this.setLocation(e),this.emit("selected",e,t)})),this.rendition.on("relocated",(e=>{this.setLocation(e.start.cfi),this.emit("relocated",e)})),this.rendition.on("keydown",this.keyboardHandler.bind(this)),this.on("prev",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.next():this.rendition.prev()})),this.on("next",(()=>{"rtl"===this.book.package.metadata.direction?this.rendition.prev():this.rendition.next()})),this.on("languagechanged",(e=>{this.settings.language=e})),this.on("flowchanged",(e=>{this.settings.flow=e,this.rendition.flow(e)})),this.on("spreadchanged",(e=>{const t=e.mod||this.settings.spread.mod,s=e.min||this.settings.spread.min;this.settings.spread.mod=t,this.settings.spread.min=s,this.rendition.spread(t,s)})),this.on("styleschanged",(e=>{const t=e.fontSize;this.settings.styles.fontSize=t,this.rendition.themes.fontSize(t+"px")}))}navItemFromCfi(e){const t=this.rendition.getRange(e),s=t?t.startContainer.parentNode.id:void 0,a=this.rendition.currentLocation().start.href;return this.navItems[a+"#"+s]||this.navItems[a]}isBookmarked(e){return this.settings.bookmarks.indexOf(e)}isAnnotated(e){return this.settings.annotations.indexOf(e)}cfgInit(e,t){this.entryKey=md5(e).toString(),this.settings={bookPath:e,arrows:this.isMobile?"none":"content",manager:this.isMobile?"continuous":"default",restore:!0,history:!0,openbook:!!this.storage.indexedDB,language:"en",sectionId:void 0,bookmarks:[],annotations:[],flow:"paginated",spread:{mod:"auto",min:800},styles:{fontSize:16},pagination:void 0,fullscreen:document.fullscreenEnabled,background:[]},r(t||{},this.settings),this.settings.restore?this.applySavedSettings(t||{}):this.removeSavedSettings()}isSaved(){return localStorage&&null!==localStorage.getItem(this.entryKey)}removeSavedSettings(){return!!this.isSaved()&&(localStorage.removeItem(this.entryKey),!0)}applySavedSettings(e){if(!this.isSaved())return!1;let t;try{t=JSON.parse(localStorage.getItem(this.entryKey))}catch(e){console.exception(e)}return!!t&&(r(t,this.settings,e),!0)}saveSettings(){this.settings.previousLocationCfi=this.rendition.location.start.cfi;const e=Object.assign({},this.settings);delete e.arrows,delete e.manager,delete e.history,delete e.restore,delete e.openbook,delete e.pagination,delete e.fullscreen,delete e.background,localStorage.setItem(this.entryKey,JSON.stringify(e))}setLocation(e){const t=this.book.archived?void 0:this.book.url,s=new URL(window.location,t);s.hash="#"+e,this.settings.history&&window.location.hash!==s.hash&&(window.history.pushState({},"",s),this.currentLocationCfi=e)}unload(){this.settings.restore&&localStorage&&this.saveSettings()}hashChanged(){const e=window.location.hash.slice(1);this.rendition.display(e)}keyboardHandler(e){let t=this.settings.styles.fontSize;switch(e.key){case"=":case"+":t+=1,this.emit("styleschanged",{fontSize:t});break;case"-":t-=1,this.emit("styleschanged",{fontSize:t});break;case"0":t=16,this.emit("styleschanged",{fontSize:t});break;case"ArrowLeft":this.emit("prev");break;case"ArrowRight":this.emit("next")}}}o(j.prototype);var V=a.Reader;export{V as Reader}; //# sourceMappingURL=epubreader.min.js.map \ No newline at end of file diff --git a/dist/js/epubreader.min.js.map b/dist/js/epubreader.min.js.map index fe1b3cd..0fc33dc 100644 --- a/dist/js/epubreader.min.js.map +++ b/dist/js/epubreader.min.js.map @@ -1 +1 @@ -{"version":3,"file":"js/epubreader.min.js","mappings":"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","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (existingToc) {\n\t\t\t\texistingToc.remove();\n\t\t\t} else {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) {\n\t\t\t\tbookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tupdateBookmarksList();\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tupdateBookmarksList();\n\t\t})\n\n\t\tfunction updateBookmarksList() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tbookmarksList.innerHTML = \"\";\n\n\t\t\tlet title = document.createElement(\"h3\");\n\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\t\t\tbookmarksList.appendChild(title);\n\n\t\t\treader.settings.bookmarks.forEach((cfi, index) => {\n\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\tbookmarkLink.textContent = `Bookmark ${index + 1}`;\n\n\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t});\n\n\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t};\n\n\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t};\n\n\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t})\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t\treader.bookmarksPanel.removeBookmark(cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\n\t\tsearchBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowSearchPopup();\n\t\t}\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\t\tfunction showSearchPopup() {\n\t\t\tlet existingPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tif (!existingPopup) {\n\t\t\t\tlet searchPopup = document.createElement(\"div\");\n\t\t\t\tsearchPopup.setAttribute(\"id\", \"toolbar-search-list\");\n\t\t\t\tsearchPopup.classList.add(\"search-popup\");\n\n\t\t\t\tlet searchContainer = document.createElement(\"div\");\n\t\t\t\tsearchContainer.classList.add(\"search-container\");\n\n\t\t\t\tlet searchIcon = document.createElement(\"span\");\n\t\t\t\tsearchIcon.classList.add(\"search-icon\");\n\t\t\t\tsearchIcon.innerHTML = '';\n\n\t\t\t\tlet searchInput = document.createElement(\"input\");\n\t\t\t\tsearchInput.setAttribute(\"type\", \"search\");\n\t\t\t\tsearchInput.setAttribute(\"placeholder\", \"Search\");\n\t\t\t\tsearchInput.setAttribute(\"id\", \"nav-q\");\n\t\t\t\tsearchInput.setAttribute(\"class\", \"toolbar-search-input\");\n\n\t\t\t\tsearchContainer.appendChild(searchIcon);\n\t\t\t\tsearchContainer.appendChild(searchInput);\n\n\t\t\t\tlet resultContainer = document.createElement(\"ul\");\n\t\t\t\tresultContainer.setAttribute('id', 'toolbar-search-results');\n\n\t\t\t\tlet searchPanel = new SearchPanel(reader);\n\t\t\t\tsearchInput.oninput = async () => {\n\t\t\t\t\tlet query = searchInput.value.trim();\n\t\t\t\t\tif (query.length > 0) {\n\t\t\t\t\t\tlet results = await searchPanel.doSearch(query);\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\n\t\t\t\t\t\tif (results.length === 0) {\n\t\t\t\t\t\t\tlet noResultItem = document.createElement(\"li\");\n\t\t\t\t\t\t\tnoResultItem.innerText = \"Không tìm thấy kết quả trùng khớp\";\n\t\t\t\t\t\t\tnoResultItem.style.color = \"gray\";\n\t\t\t\t\t\t\tnoResultItem.style.padding = \"8px\";\n\t\t\t\t\t\t\tresultContainer.appendChild(noResultItem);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresults.forEach((data) => {\n\t\t\t\t\t\t\tlet item = document.createElement(\"li\");\n\t\t\t\t\t\t\tlet link = document.createElement(\"a\");\n\t\t\t\t\t\t\tlink.href = \"#\" + data.cfi;\n\t\t\t\t\t\t\tlink.textContent = data.excerpt;\n\t\t\t\t\t\t\tlink.onclick = (e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tsearchPanel.reader.rendition.display(data.cfi);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\titem.appendChild(link);\n\t\t\t\t\t\t\tresultContainer.appendChild(item);\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsearchPopup.appendChild(searchContainer);\n\t\t\t\tsearchPopup.appendChild(resultContainer);\n\t\t\t\tsearchBox.dom.appendChild(searchPopup);\n\t\t\t}\n\n\t\t\tlet searchPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tsearchPopup.classList.toggle(\"active\");\n\t\t}\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", () => {\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tcontainer.clear();\n\t\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\t\tthis.add(container);\n\t\t\t\tconsole.log(toc);\n\t\t\t\t\n\t\t\t})\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\n\t}\n\n\tremoveBookmark(cfi) {\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tconst bookmarkPanel = new BookmarksPanel(reader);\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), bookmarkPanel);\n\t\t\treader.bookmarksPanel = bookmarkPanel;\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n toggleBookList();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n function toggleBookList() {\r\n const bookList = [\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 1 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 2 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 3 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 4 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 5 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 6 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 7 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 8 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 9 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 10 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 11 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 12 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 13 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 14 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 15 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 16 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 17 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 18 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 19 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 20 },\r\n ];\r\n\r\n let existingModal = document.getElementById('book-list-modal');\r\n if (!existingModal) {\r\n let modal = document.createElement('div');\r\n modal.setAttribute('id', 'book-list-modal');\r\n modal.setAttribute('class', 'book-modal');\r\n\r\n let modalContent = document.createElement('div');\r\n modalContent.setAttribute('class', 'book-modal-content');\r\n\r\n let bookGrid = document.createElement('div');\r\n bookGrid.setAttribute('class', 'book-grid');\r\n bookList.forEach((book) => {\r\n let bookItem = document.createElement('div');\r\n bookItem.setAttribute('class', 'book-item');\r\n bookItem.innerHTML = `\r\n
    \r\n

    ${book.title}

    \r\n

    ${book.author}

    \r\n
    \r\n
    ${book.page}
    \r\n `;\r\n bookGrid.appendChild(bookItem);\r\n });\r\n\r\n modalContent.appendChild(bookGrid);\r\n modal.appendChild(modalContent);\r\n\r\n container.dom.appendChild(modal);\r\n }\r\n\r\n let modal = document.getElementById('book-list-modal');\r\n modal.classList.toggle(\"active\");\r\n }\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"bookready\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","SearchPanel","container","strings","searchQuery","search","placeholder","onsearch","doSearch","then","results","book","Promise","all","spine","spineItems","map","item","load","bind","find","finally","unload","resolve","concat","link","cfi","excerpt","rendition","Toolbar","menu1","openerBox","openerBtn","prevBox","prevBtn","nextBox","nextBtn","blur","arrows","logoBox","logoLink","tocBox","tocBtn","bookmarksBox","bookmarksBtn","annotationsBox","annotationsBtn","updateBookmarksList","bookmarksList","getElementById","innerHTML","bookmarks","index","bookmarkItem","bookmarkLink","deleteBtn","querySelectorAll","removeBookmarkFromToolbar","loaded","navigation","toc","existingToc","tocList","setAttribute","tocTitle","chapter","tocItem","tocLink","toggle","showToc","bookmarkBox","showBookmarks","bookmarkItems","targetItem","from","querySelector","includes","bookmarksPanel","removeBookmark","annotationsList","annotations","note","noteItem","noteLink","removeNoteFromToolbar","showAnnotations","noteItems","annotationsPanel","removeNote","update","findIndex","n","centerPageCount","centerLabel","curOfTotal","curPageIndex","separator","totalPage","menu2","backgroundBox","colorPicker","background","oninput","selectedColor","openbookBtn","searchBox","searchBtn","bookmarkBtn","fullscreenBtn","closeBox","closeBtn","fontLabel","fontSizeBox","decreaseFontBtn","increaseFontBtn","fontSizeInput","fontSize","newSize","parseInt","isNaN","openbook","onload","storage","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","searchPopup","searchContainer","searchIcon","searchInput","resultContainer","searchPanel","async","query","trim","noResultItem","innerText","color","padding","showSearchPopup","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","body","start","atStart","atEnd","backgroundBtn","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","iconLeft","viewer","next","backgroundColor","iconRight","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","generateToc","list","ibtn","sectionId","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","disabled","renderer","setBookmark","appendBookmark","_cfi","btnr","navItem","navItemFromCfi","idref","spineItem","AnnotationsPanel","clearNotes","notes","toolbarList","toolbarNoteItem","toolbarNoteLink","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","Sidebar","controls","bookmarkPanel","annotationPanel","NoteDlg","textBox","addBtn","date","range","contents","Status","leftText","rightAction","appRecBtn","appRecBox","bookList","author","page","modal","modalContent","bookGrid","bookItem","toggleBookList","Reader","bookPath","preinit","path","cfgInit","toolbar","content","status","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","metadata","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/epubreader.min.js","mappings":"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","sources":["webpack://epubreader-js/./node_modules/d/index.js","webpack://epubreader-js/./node_modules/es5-ext/function/noop.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/assign/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/is-value.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/index.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/object/keys/shim.js","webpack://epubreader-js/./node_modules/es5-ext/object/normalize-options.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-callable.js","webpack://epubreader-js/./node_modules/es5-ext/object/valid-value.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/index.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/is-implemented.js","webpack://epubreader-js/./node_modules/es5-ext/string/\u0000#/contains/shim.js","webpack://epubreader-js/./node_modules/event-emitter/index.js","webpack://epubreader-js/./node_modules/type/function/is.js","webpack://epubreader-js/./node_modules/type/object/is.js","webpack://epubreader-js/./node_modules/type/plain-function/is.js","webpack://epubreader-js/./node_modules/type/prototype/is.js","webpack://epubreader-js/./node_modules/type/value/is.js","webpack://epubreader-js/webpack/bootstrap","webpack://epubreader-js/webpack/runtime/define property getters","webpack://epubreader-js/webpack/runtime/hasOwnProperty shorthand","webpack://epubreader-js/webpack/runtime/make namespace object","webpack://epubreader-js/./src/utils.js","webpack://epubreader-js/./src/storage.js","webpack://epubreader-js/./src/strings.js","webpack://epubreader-js/./src/ui.js","webpack://epubreader-js/./src/sidebar/search.js","webpack://epubreader-js/./src/toolbar.js","webpack://epubreader-js/./src/content.js","webpack://epubreader-js/./src/sidebar/toc.js","webpack://epubreader-js/./src/sidebar/bookmarks.js","webpack://epubreader-js/./src/sidebar/annotations.js","webpack://epubreader-js/./src/sidebar/settings.js","webpack://epubreader-js/./src/sidebar/metadata.js","webpack://epubreader-js/./src/sidebar.js","webpack://epubreader-js/./src/notedlg.js","webpack://epubreader-js/./src/status.js","webpack://epubreader-js/./src/reader.js"],"sourcesContent":["\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const d = (obj, prop) => obj ? obj[prop] : undefined\n\nconst q = (src, dst, ext, prop) => {\n let val\n if (typeof dst[prop] === \"boolean\") {\n switch (prop) {\n case \"annotations\":\n case \"bookmarks\":\n val = dst[prop] ? src[prop] : dst[prop]\n break;\n default:\n val = dst[prop]\n break;\n }\n } else if (prop === \"arrows\") {\n val = dst[prop]\n } else {\n val = d(ext, prop) === undefined ? src[prop] : dst[prop]\n }\n return val\n}\n\nexport const extend = (src, dst, ext) => {\n for (let prop in src) {\n if (prop === \"bookPath\") {\n continue\n } else if (dst[prop] instanceof Array) {\n dst[prop] = ext ? (src[prop] ? src[prop] : dst[prop]) : src[prop]\n } else if (dst[prop] instanceof Object) {\n extend(src[prop], dst[prop], d(ext, prop)) // recursive call\n } else {\n dst[prop] = ext ? q(src, dst, ext, prop) : src[prop]\n }\n }\n}\n\nexport const uuid = () => {\n let d = new Date().getTime()\n const uuid = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, (c) => {\n let r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === \"x\" ? r : (r & 0x7 | 0x8)).toString(16)\n })\n return uuid\n}\n\nexport const detectMobile = () => {\n const matches = [\n /Android/i,\n /BlackBerry/i,\n /iPhone/i,\n /iPad/i,\n /iPod/i,\n /Windows Phone/i,\n /webOS/i\n ]\n return matches.some((i) => navigator.userAgent.match(i))\n}","export class Storage {\n\n\tconstructor() {\n\n\t\tthis.name = \"epubreader-js\";\n\t\tthis.version = 1.0;\n\t\tthis.db;\n\t\tthis.indexedDB = window.indexedDB ||\n\t\t\twindow.webkitIndexedDB ||\n\t\t\twindow.mozIndexedDB ||\n\t\t\twindow.OIndexedDB ||\n\t\t\twindow.msIndexedDB;\n\n\t\tif (this.indexedDB === undefined) {\n\n\t\t\tconsole.error(\"The IndexedDB API not available in your browser.\");\n\t\t}\n\t}\n\n\tinit(callback) {\n\n\t\tif (this.indexedDB === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst onerror = (e) => console.error(\"IndexedDB\", e);\n\t\tconst request = indexedDB.open(this.name, this.version);\n\t\trequest.onupgradeneeded = (e) => {\n\n\t\t\tconst db = e.target.result;\n\t\t\tif (db.objectStoreNames.contains(\"entries\") === false) {\n\t\t\t\tdb.createObjectStore(\"entries\");\n\t\t\t}\n\t\t}\n\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tthis.db = e.target.result;\n\t\t\tthis.db.onerror = onerror;\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.init: ${Date.now() - time} ms`);\n\t\t}\n\n\t\trequest.onerror = onerror;\n\t}\n\n\tget(callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.get(0);\n\t\trequest.onsuccess = (e) => {\n\n\t\t\tcallback(e.target.result);\n\t\t\tconsole.log(`storage.get: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tset(data, callback) {\n\n\t\tif (this.db === undefined) {\n\t\t\tcallback();\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.put(data, 0);\n\t\trequest.onsuccess = () => {\n\n\t\t\tcallback();\n\t\t\tconsole.log(`storage.set: ${Date.now() - time} ms`);\n\t\t}\n\t}\n\n\tclear() {\n\n\t\tif (this.db === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst time = Date.now();\n\t\tconst transaction = this.db.transaction([\"entries\"], \"readwrite\");\n\t\tconst objectStore = transaction.objectStore(\"entries\");\n\t\tconst request = objectStore.clear();\n\t\trequest.onsuccess = () => {\n\n\t\t\tconsole.log(`storage.clear: ${Date.now() - time} ms`);\n\t\t}\n\t}\n}","export class Strings {\n\n\tconstructor(reader) {\n\n\t\tthis.language = reader.settings.language || \"en\";\n\t\tthis.values = {\n\t\t\ten: {\n\t\t\t\t\"toolbar/sidebar\": \"Sidebar\",\n\t\t\t\t\"toolbar/prev\": \"Previous page\",\n\t\t\t\t\"toolbar/next\": \"Next page\",\n\t\t\t\t\"toolbar/openbook\": \"Open book\",\n\t\t\t\t\"toolbar/openbook/error\": \"Your browser does not support the required features.\\nPlease use a modern browser such as Google Chrome, or Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Add this page to bookmarks\",\n\t\t\t\t\"toolbar/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"toolbar/background\": \"Change background\",\n\n\t\t\t\t\"sidebar/close\": \"Close Sidebar\",\n\t\t\t\t\"sidebar/contents\": \"Contents\",\n\t\t\t\t\"sidebar/bookmarks\": \"Bookmarks\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Add\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Remove\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Add\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Remove\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Clear\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Anchor\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Cancel\",\n\t\t\t\t\"sidebar/search\": \"Search\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Search\",\n\t\t\t\t\"sidebar/settings\": \"Settings\",\n\t\t\t\t\"sidebar/settings/language\": \"Language\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Font size (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"Flow\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Generate pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Spread\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Minimum spread width\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Title\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Creator\",\n\t\t\t\t\"sidebar/metadata/description\": \"Description\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Pubdate\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Publisher\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Identifier\",\n\t\t\t\t\"sidebar/metadata/language\": \"Language\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Rights\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Modified date\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Layout\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"Flow\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"Spread\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"Direction\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"Note\",\n\t\t\t\t\"notedlg/add\": \"Add\",\n\n\t\t\t\t\"status/fullscreen\": \"Fullscreen\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\t\"toolbar/sidebar\": \"Barre latérale\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"Ouvrir un livre local\",\n\t\t\t\t\"toolbar/openbook/error\": \"Votre navigateur ne prend pas en charge les fonctions nécessaires.\\nVeuillez utiliser un navigateur moderne tel que Google Chrome ou Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Insérer un marque page ici\",\n\t\t\t\t\"toolbar/fullscreen\": \"Plein écran\",\n\t\t\t\t\"toolbar/background\": \"Changer l'arrière-plan\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"Sommaire\",\n\t\t\t\t\"sidebar/bookmarks\": \"Marque-pages\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations\": \"Annotations\",\n\t\t\t\t\"sidebar/annotations/add\": \"Ajouter\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Retirer\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Tout enlever\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Ancre\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Annuler\",\n\t\t\t\t\"sidebar/search\": \"Rechercher\",\n\t\t\t\t\"sidebar/search/placeholder\": \"rechercher\",\n\t\t\t\t\"sidebar/settings\": \"Réglages\",\n\t\t\t\t\"sidebar/settings/language\": \"Langue\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Pagination\", \"Établir une pagination\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"Langue\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"Ajouter\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tja: {\n\t\t\t\t\"toolbar/sidebar\": \"サイドバー\",\n\t\t\t\t\"toolbar/prev\": \"???\",\n\t\t\t\t\"toolbar/next\": \"???\",\n\t\t\t\t\"toolbar/openbook\": \"本を開く\",\n\t\t\t\t\"toolbar/openbook/error\": \"ご利用のブラウザは必要な機能をサポートしていません。\\nGoogle Chrome、Mozilla Firefox、その他のモダンなブラウザでご利用ください。\",\n\t\t\t\t\"toolbar/bookmark\": \"このページに栞を設定する\",\n\t\t\t\t\"toolbar/fullscreen\": \"フルスクリーン\",\n\t\t\t\t\"toolbar/background\": \"背景を変更する\",\n\n\t\t\t\t\"sidebar/close\": \"???\",\n\t\t\t\t\"sidebar/contents\": \"目次\",\n\t\t\t\t\"sidebar/bookmarks\": \"栞\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations\": \"注釈\",\n\t\t\t\t\"sidebar/annotations/add\": \"追加\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"削除\",\n\t\t\t\t\"sidebar/annotations/clear\": \"クリア\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"アンカー\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"キャンセル\",\n\t\t\t\t\"sidebar/search\": \"検索\",\n\t\t\t\t\"sidebar/search/placeholder\": \"検索\",\n\t\t\t\t\"sidebar/settings\": \"設定\",\n\t\t\t\t\"sidebar/settings/language\": \"表示言語\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"???\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"ページネーション\", \"ページネーションを生成します。\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"???\",\n\t\t\t\t\"sidebar/metadata\": \"???\",\n\t\t\t\t\"sidebar/metadata/title\": \"???\",\n\t\t\t\t\"sidebar/metadata/creator\": \"???\",\n\t\t\t\t\"sidebar/metadata/description\": \"???\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"???\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"???\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"???\",\n\t\t\t\t\"sidebar/metadata/language\": \"表示言語\",\n\t\t\t\t\"sidebar/metadata/rights\": \"???\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"???\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\",\n\t\t\t\t\"sidebar/metadata/flow\": \"???\",\n\t\t\t\t\"sidebar/metadata/spread\": \"???\",\n\t\t\t\t\"sidebar/metadata/direction\": \"???\",\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"追加\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tru: {\n\t\t\t\t\"toolbar/sidebar\": \"Боковая панель\",\n\t\t\t\t\"toolbar/prev\": \"Предыдущая страница\",\n\t\t\t\t\"toolbar/next\": \"Следущая страница\",\n\t\t\t\t\"toolbar/openbook\": \"Открыть книгу\",\n\t\t\t\t\"toolbar/openbook/error\": \"Ваш браузер не поддерживает необходимые функции.\\nПожалуйста, используйте современный браузер, такой как Google Chrome или Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Добавить эту страницу в закладки\",\n\t\t\t\t\"toolbar/fullscreen\": \"Полноэкранный режим\",\n\t\t\t\t\"toolbar/background\": \"изменить фон\",\n\n\t\t\t\t\"sidebar/close\": \"Закрыть боковую панель\",\n\t\t\t\t\"sidebar/contents\": \"Содержание\",\n\t\t\t\t\"sidebar/bookmarks\": \"Закладки\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Добавить\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations\": \"Аннотации\",\n\t\t\t\t\"sidebar/annotations/add\": \"Добавить\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Удалить\",\n\t\t\t\t\"sidebar/annotations/clear\": \"Очистить\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"Метка\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"Отмена\",\n\t\t\t\t\"sidebar/search\": \"Поиск\",\n\t\t\t\t\"sidebar/search/placeholder\": \"Поиск\",\n\t\t\t\t\"sidebar/settings\": \"Настройки\",\n\t\t\t\t\"sidebar/settings/language\": \"Язык\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Размер шрифта\",\n\t\t\t\t\"sidebar/settings/flow\": \"Поток\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"Нумерация страниц\", \"Генерировать нумерацию страниц\"],\n\t\t\t\t\"sidebar/settings/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"Мин. ширина колонки\",\n\t\t\t\t\"sidebar/metadata\": \"Метаданные\",\n\t\t\t\t\"sidebar/metadata/title\": \"Заголовок\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Автор\",\n\t\t\t\t\"sidebar/metadata/description\": \"Описание\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Дата публикации\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Издатель\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Идентификатор\",\n\t\t\t\t\"sidebar/metadata/language\": \"Язык\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Лицензия\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Дата изменения\",\n\t\t\t\t\"sidebar/metadata/layout\": \"Макет\",\n\t\t\t\t\"sidebar/metadata/flow\": \"Поток\",\n\t\t\t\t\"sidebar/metadata/spread\": \"Разворот\",\n\t\t\t\t\"sidebar/metadata/direction\": \"Направление\",\n\n\t\t\t\t\"notedlg/label\": \"Заметка\",\n\t\t\t\t\"notedlg/add\": \"Добавить\",\n\n\t\t\t\t\"status/fullscreen\": \"\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t},\n\t\t\tvi: {\n\t\t\t\t\"toolbar/sidebar\": \"Thanh bên\",\n\t\t\t\t\"toolbar/prev\": \"Trang trước\",\n\t\t\t\t\"toolbar/next\": \"Trang kế tiếp\",\n\t\t\t\t\"toolbar/openbook\": \"Mở sách\",\n\t\t\t\t\"toolbar/openbook/error\": \"Trình duyệt của bạn không hỗ trợ các tính năng cần thiết. Vui lòng sử dụng trình duyệt hiện đại như Google Chrome hoặc Mozilla Firefox.\",\n\t\t\t\t\"toolbar/bookmark\": \"Thêm trang này vào dấu trang\",\n\t\t\t\t\"toolbar/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"toolbar/background\": \"Đổi màu nền\",\n\n\t\t\t\t\"sidebar/close\": \"Đóng thanh bên\",\n\t\t\t\t\"sidebar/contents\": \"Nội dung\",\n\t\t\t\t\"sidebar/bookmarks\": \"Dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/add\": \"Thêm dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/remove\": \"Xóa dấu trang\",\n\t\t\t\t\"sidebar/bookmarks/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations\": \"Chú thích\",\n\t\t\t\t\"sidebar/annotations/add\": \"Thêm chú thích\",\n\t\t\t\t\"sidebar/annotations/remove\": \"Xóa chú thích\",\n\t\t\t\t\"sidebar/annotations/clear\": \"???\",\n\t\t\t\t\"sidebar/annotations/anchor\": \"???\",\n\t\t\t\t\"sidebar/annotations/cancel\": \"???\",\n\t\t\t\t\"sidebar/search\": \"Tìm kiếm\",\n\t\t\t\t\"sidebar/search/placeholder\": \"???\",\n\t\t\t\t\"sidebar/settings\": \"Cài đặt\",\n\t\t\t\t\"sidebar/settings/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/settings/fontsize\": \"Cỡ chữ (%)\",\n\t\t\t\t\"sidebar/settings/flow\": \"???\",\n\t\t\t\t\"sidebar/settings/pagination\": [\"???\", \"???\"],\n\t\t\t\t\"sidebar/settings/spread\": \"???\",\n\t\t\t\t\"sidebar/settings/spread/minwidth\": \"????\",\n\t\t\t\t\"sidebar/metadata\": \"Metadata\",\n\t\t\t\t\"sidebar/metadata/title\": \"Chủ đề\",\n\t\t\t\t\"sidebar/metadata/creator\": \"Người sáng tạo\",\n\t\t\t\t\"sidebar/metadata/description\": \"Mô tả\",\n\t\t\t\t\"sidebar/metadata/pubdate\": \"Ngày tạo\",\n\t\t\t\t\"sidebar/metadata/publisher\": \"Nhà xuất bản\",\n\t\t\t\t\"sidebar/metadata/identifier\": \"Định dạng\",\n\t\t\t\t\"sidebar/metadata/language\": \"Ngôn ngữ\",\n\t\t\t\t\"sidebar/metadata/rights\": \"Quyền\",\n\t\t\t\t\"sidebar/metadata/modified_date\": \"Ngày sửa đổi\",\n\t\t\t\t\"sidebar/metadata/layout\": \"???\", // rendition:layout\n\t\t\t\t\"sidebar/metadata/flow\": \"???\", // rendition:flow\n\t\t\t\t\"sidebar/metadata/spread\": \"???\", // rendition:spread\n\t\t\t\t\"sidebar/metadata/direction\": \"???\", // page-progression-direction\n\n\t\t\t\t\"notedlg/label\": \"???\",\n\t\t\t\t\"notedlg/add\": \"???\",\n\n\t\t\t\t\"status/fullscreen\": \"Toàn màn hình\",\n\t\t\t\t\"status/\": \"\",\n\t\t\t}\n\t\t};\n\n\t\treader.on(\"languagechanged\", (value) => {\n\t\t\tthis.language = value;\n\t\t});\n\t}\n\n\tget(key) { return this.values[this.language][key] || \"???\"; }\n}","/**\n * @author mrdoob https://github.com/mrdoob/ui.js\n */\n\nconst ERROR_MSG = \"is not an instance of UIElement.\";\n\n/**\n * UIElement\n * @param {string} tag\n */\nexport class UIElement {\n\n\tconstructor(tag) {\n\n\t\tthis.dom = document.createElement(tag);\n\t}\n\n\tadd() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.appendChild(argument.dom);\n\n\t\t\t} else if (Array.isArray(argument)) {\n\n\t\t\t\tfor (let j = 0; j < argument.length; j++) {\n\n\t\t\t\t\tconst element = argument[j];\n\n\t\t\t\t\tif (element instanceof UIElement) {\n\n\t\t\t\t\t\tthis.dom.appendChild(element.dom);\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tconsole.error(\"UIElement:\", element, ERROR_MSG);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tremove() {\n\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\n\t\t\tconst argument = arguments[i];\n\n\t\t\tif (argument instanceof UIElement) {\n\n\t\t\t\tthis.dom.removeChild(argument.dom);\n\n\t\t\t} else if (Number.isInteger(argument)) {\n\n\t\t\t\tthis.dom.removeChild(this.dom.childNodes[argument]);\n\t\t\t} else {\n\n\t\t\t\tconsole.error(\"UIElement:\", argument, ERROR_MSG);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tclear() {\n\n\t\twhile (this.dom.children.length) {\n\n\t\t\tthis.dom.removeChild(this.dom.lastChild);\n\t\t}\n\t\treturn this;\n\t}\n\n\tsetId(id) {\n\n\t\tthis.dom.id = id;\n\t\treturn this;\n\t}\n\n\tgetId() {\n\n\t\treturn this.dom.id;\n\t}\n\n\tremoveAttribute(name) {\n\n\t\tthis.dom.removeAttribute(name);\n\t\treturn this;\n\t}\n\n\tsetClass(name) {\n\n\t\tthis.dom.className = name;\n\t\treturn this;\n\t}\n\n\taddClass(name) {\n\n\t\tthis.dom.classList.add(name);\n\t\treturn this;\n\t}\n\n\tremoveClass(name) {\n\n\t\tthis.dom.classList.remove(name);\n\t\treturn this;\n\t}\n\n\tsetStyle(key, value) {\n\n\t\tthis.dom.style[key] = value;\n\t\treturn this;\n\t}\n\n\tgetTitle() {\n\n\t\treturn this.dom.title;\n\t}\n\n\tsetTitle(title) {\n\n\t\tif (this.dom.title !== title && title)\n\t\t\tthis.dom.title = title;\n\t\treturn this;\n\t}\n\n\tgetTextContent() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetTextContent(text) {\n\n\t\tif (this.dom.textContent !== text && text)\n\t\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n\n\tgetBoundingClientRect() {\n\n\t\treturn this.dom.getBoundingClientRect();\n\t}\n}\n\n/**\n * UISpan\n * @param {string} text\n */\nexport class UISpan extends UIElement {\n\n\tconstructor(text) {\n\n\t\tsuper(\"span\");\n\t\tthis.setTextContent(text);\n\t}\n}\n\n/**\n * UIDiv\n */\nexport class UIDiv extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"div\");\n\t}\n\n\tsetClass(className) {\n\t\tthis.dom.className = className;\n\t\treturn this;\n\t}\n\n\taddClass(className) {\n\t\tthis.dom.classList.add(className);\n\t\treturn this;\n\t}\n}\n\n/**\n * UIRow\n */\nexport class UIRow extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"row\";\n\t}\n}\n\n/**\n * UIPanel\n */\nexport class UIPanel extends UIDiv {\n\n\tconstructor() {\n\n\t\tsuper();\n\n\t\tthis.dom.className = \"panel\";\n\t}\n}\n\n/**\n * UILabel\n * @param {string} text\n * @param {string} id\n */\nexport class UILabel extends UIElement {\n\n\tconstructor(text, id) {\n\n\t\tsuper(\"label\");\n\n\t\tthis.dom.textContent = text;\n\t\tif (id) this.dom.htmlFor = id;\n\t}\n}\n\n/**\n * UILink\n * @param {string} href\n * @param {string} text\n */\nexport class UILink extends UIElement {\n\n\tconstructor(href, text) {\n\n\t\tsuper(\"a\");\n\n\t\tthis.dom.href = href || \"#\";\n\t\tthis.dom.textContent = text || \"\";\n\t}\n\n\tsetHref(url) {\n\n\t\tthis.dom.href = url;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIText\n * @param {string} text\n */\nexport class UIText extends UISpan {\n\n\tconstructor(text) {\n\n\t\tsuper();\n\n\t\tthis.dom.textContent = text;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.textContent;\n\t}\n\n\tsetValue(text) {\n\n\t\tthis.dom.textContent = text;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITextArea\n */\nexport class UITextArea extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"textarea\");\n\n\t\tthis.dom.spellcheck = false;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UISelect\n */\nexport class UISelect extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"select\");\n\t}\n\n\tsetMultiple(boolean) {\n\n\t\tthis.dom.multiple = boolean || false;\n\t\treturn this;\n\t}\n\n\tsetOptions(options) {\n\n\t\tconst selected = this.dom.value;\n\t\tthis.clear();\n\n\t\tfor (const key in options) {\n\n\t\t\tconst option = document.createElement(\"option\");\n\t\t\toption.value = key;\n\t\t\toption.text = options[key];\n\t\t\tthis.dom.appendChild(option);\n\t\t}\n\t\tthis.dom.value = selected;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tvalue = String(value);\n\n\t\tif (this.dom.value !== value)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIInput\n * @param {*} type\n * @param {*} value\n * @param {*} title\n */\nexport class UIInput extends UIElement {\n\n\tconstructor(type, value, title) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = type;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.setValue(value);\n\t\tthis.setTitle(title);\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tgetType() {\n\n\t\treturn this.dom.type;\n\t}\n\n\tsetType(type) {\n\n\t\tthis.dom.type = type;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tsetValue(value) {\n\n\t\tif (this.dom.value !== value && value !== undefined)\n\t\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UIColor\n */\nexport class UIColor extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"input\");\n\n\t\ttry {\n\n\t\t\tthis.dom.type = \"color\";\n\t\t\tthis.dom.value = \"#ffffff\";\n\n\t\t} catch (e) {\n\n\t\t\tconsole.exception(e);\n\t\t}\n\t}\n\n\tgetValue() {\n\n\t\treturn this.dom.value;\n\t}\n\n\tgetHexValue() {\n\n\t\treturn parseInt(this.dom.value.substr(1), 16);\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n\n\tsetHexValue(hex) {\n\n\t\tthis.dom.value = \"#\" + (\"000000\" + hex.toString(16)).slice(-6);\n\t\treturn this;\n\t}\n}\n\n/**\n * UINumber\n * @param {number} value\n * @param {number} step\n * @param {number} min\n * @param {number} max\n * @param {number} precision\n */\nexport class UINumber extends UIElement {\n\n\tconstructor(value, step, min, max, precision) {\n\n\t\tsuper(\"input\");\n\n\t\tthis.dom.type = \"number\";\n\t\tthis.dom.step = step || 1;\n\t\tthis.dom.onkeydown = (e) => {\n\n\t\t\te.stopPropagation();\n\t\t};\n\t\tthis.value = value || 0;\n\t\tthis.min = min || -Infinity;\n\t\tthis.max = max || +Infinity;\n\t\tthis.precision = precision || 0;\n\t\tthis.setValue(value);\n\t\tthis.dom.onchange = (e) => {\n\n\t\t\tthis.setValue(this.value);\n\t\t};\n\t}\n\n\tgetName() {\n\n\t\treturn this.dom.name;\n\t}\n\n\tsetName(name) {\n\n\t\tthis.dom.name = name;\n\t\treturn this;\n\t}\n\n\tsetPrecision(precision) {\n\n\t\tthis.precision = precision;\n\t\tthis.setValue(this.value);\n\t\treturn this;\n\t}\n\n\tsetRange(min, max) {\n\n\t\tthis.min = min;\n\t\tthis.max = max;\n\t\tthis.dom.min = min;\n\t\tthis.dom.max = max;\n\t\treturn this;\n\t}\n\n\tsetStep(step) {\n\n\t\tthis.dom.step = step;\n\t\treturn this;\n\t}\n\n\tgetValue() {\n\n\t\treturn parseFloat(this.dom.value);\n\t}\n\n\tsetValue(value) {\n\n\t\tif (value !== undefined) {\n\t\t\tvalue = parseFloat(value);\n\n\t\t\tif (value < this.min)\n\t\t\t\tvalue = this.min;\n\t\t\tif (value > this.max)\n\t\t\t\tvalue = this.max;\n\n\t\t\tthis.value = value;\n\t\t\tthis.dom.value = value.toFixed(this.precision);\n\t\t}\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBreak\n */\nexport class UIBreak extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"br\");\n\t}\n}\n\n/**\n * UIHorizontalRule\n */\nexport class UIHorizontalRule extends UIElement {\n\n\tconstructor() {\n\n\t\tsuper(\"hr\");\n\t}\n}\n\n/**\n * UIProgress\n * @param {*} value\n */\nexport class UIProgress extends UIElement {\n\n\tconstructor(value) {\n\n\t\tsuper(\"progress\");\n\n\t\tthis.dom.value = value;\n\t}\n\n\tsetValue(value) {\n\n\t\tthis.dom.value = value;\n\t\treturn this;\n\t}\n}\n\n/**\n * UITabbedPanel\n * @param {string} align (horizontal | vertical)\n */\nexport class UITabbedPanel extends UIDiv {\n\n\tconstructor(align) {\n\n\t\tsuper();\n\n\t\tthis.align = align || \"horizontal\";\n\t\tthis.tabs = [];\n\t\tthis.panels = [];\n\t\tthis.selector = new UISpan().setClass(\"tab-selector\");\n\t\tthis.menuDiv = new UIDiv().setClass(\"menu\");\n\t\tthis.tabsDiv = new UIDiv().setClass(\"tabs\");\n\t\tthis.tabsDiv.add(this.selector);\n\t\tthis.panelsDiv = new UIDiv().setClass(\"panels\");\n\t\tthis.selected = \"\";\n\t\tthis.add(this.menuDiv);\n\t\tthis.add(this.tabsDiv);\n\t\tthis.add(this.panelsDiv);\n\t}\n\n\taddMenu(items) {\n\t\tthis.menuDiv.add(items);\n\t}\n\n\taddTab(id, label, items) {\n\n\t\tconst tab = new UITab(label, this);\n\t\ttab.setId(id);\n\t\ttab.setClass(\"box\");\n\t\tthis.tabs.push(tab);\n\t\tthis.tabsDiv.add(tab);\n\n\t\tconst panel = new UIDiv();\n\t\tpanel.setId(id);\n\t\tpanel.add(items);\n\t\tthis.panels.push(panel);\n\t\tthis.panelsDiv.add(panel);\n\t\tthis.select(id);\n\t}\n\n\tselect(id) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.addClass(\"selected\");\n\t\t\t\tthis.transformSelector(tab);\n\t\t\t} else if (tab.dom.id === this.selected) {\n\t\t\t\ttab.removeClass(\"selected\");\n\t\t\t}\n\t\t}\n\n\t\tfor (let panel of this.panels) {\n\t\t\tif (panel.dom.id === id) {\n\t\t\t\tpanel.dom.style.display = \"block\";\n\t\t\t} else if (panel.dom.id === this.selected) {\n\t\t\t\tpanel.dom.style.display = \"none\";\n\t\t\t}\n\t\t}\n\n\t\tthis.selected = id;\n\t\treturn this;\n\t}\n\n\tsetLabel(id, text) {\n\n\t\tfor (let tab of this.tabs) {\n\t\t\tif (tab.dom.id === id) {\n\t\t\t\ttab.setTitle(text);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\ttransformSelector(tab) {\n\n\t\tlet size;\n\t\tconst rect = tab.getBoundingClientRect();\n\t\tif (this.align === \"horizontal\") {\n\t\t\tsize = rect.width * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateX(${size}px)`;\n\t\t} else {\n\t\t\tsize = rect.height * this.tabs.indexOf(tab);\n\t\t\tthis.selector.dom.style.transform = `translateY(${size}px)`;\n\t\t}\n\t}\n}\n\n/**\n * UITab\n * @param {string} text\n * @param {UITabbedPanel} parent\n */\nexport class UITab extends UIDiv {\n\n\tconstructor(text, parent) {\n\n\t\tsuper();\n\t\tthis.button = new UIInput(\"button\");\n\t\tthis.button.dom.title = text;\n\t\tthis.dom.onclick = (e) => {\n\n\t\t\tparent.select(this.dom.id);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(this.button);\n\t}\n}\n\n/**\n * UIList\n * @param {UIItem} parent\n */\nexport class UIList extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"ul\");\n\t\tthis.parent = parent && parent.parent; // LI->UL\n\t\tthis.expanded = false;\n\t}\n\n\texpand() {\n\n\t\tthis.expanded = true;\n\t\tthis.dom.style.display = \"block\";\n\t\tif (this.parent)\n\t\t\tthis.parent.expand();\n\t\treturn this;\n\t}\n\n\tcollaps() {\n\n\t\tthis.expanded = false;\n\t\tthis.dom.style.display = \"none\";\n\t\treturn this;\n\t}\n}\n\n/**\n * UIItem\n * @param {UIList} parent\n */\nexport class UIItem extends UIElement {\n\n\tconstructor(parent) {\n\n\t\tsuper(\"li\");\n\t\tthis.parent = parent; // UL\n\t\tthis.selected = false;\n\t}\n\n\tadd() {\n\t\tlet len = 0;\n\t\tconst box = new UIDiv().setId(\"item-box\");\n\t\tfor (let i = 0; i < arguments.length; i++) {\n\t\t\tconst argument = arguments[i];\n\t\t\tif (argument instanceof UIList) {\n\t\t\t\tsuper.add(argument);\n\t\t\t} else {\n\t\t\t\tbox.add(argument);\n\t\t\t\tlen++;\n\t\t\t}\n\t\t}\n\t\tif (len) super.add(box);\n\t\treturn this;\n\t}\n\n\tselect() {\n\n\t\tthis.selected = true;\n\t\tthis.setClass(\"selected\");\n\t\treturn this;\n\t}\n\n\tunselect() {\n\n\t\tthis.selected = false;\n\t\tthis.removeAttribute(\"class\");\n\t\treturn this;\n\t}\n}\n\n/**\n * UIBox\n * @param {UIElement} items\n */\nexport class UIBox extends UIElement {\n\n\tconstructor(items) {\n\n\t\tsuper(\"div\");\n\t\tthis.setClass(\"box\");\n\t\tthis.add(items);\n\t}\n}\n\n/**\n * UIButton\n * @param {UIButton} items\n */\nexport class UIButton extends UIElement {\n\tconstructor(items) {\n\t\tsuper(\"button\");\n\t}\n}","import { UIPanel, UIDiv, UIInput, UILink, UIList, UIItem, UIBox } from \"../ui.js\";\n\nexport class SearchPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\n\t\tlet searchQuery = undefined;\n\t\tconst search = new UIInput(\"search\").setId(\"nav-q\");\n\t\tsearch.dom.placeholder = strings.get(\"sidebar/search/placeholder\");\n\t\tsearch.dom.onsearch = () => {\n\n\t\t\tconst value = search.getValue();\n\n\t\t\tif (value.length === 0) {\n\t\t\t\tthis.items.clear();\n\t\t\t} else if (searchQuery !== value) {\n\t\t\t\tthis.items.clear();\n\t\t\t\tthis.doSearch(value).then(results => {\n\n\t\t\t\t\tresults.forEach(data => {\n\t\t\t\t\t\tthis.set(data);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t\tsearchQuery = value;\n\t\t};\n\n\t\tthis.setId(\"search\");\n\t\tthis.items = new UIList();\n\t\tcontainer.add(this.items);\n\t\tthis.add([new UIBox(search), container]);\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined;\n\t\t//\n\t\t// improvement of the highlighting of keywords is required...\n\t\t//\n\t}\n\n\t/**\n\t * Searching the entire book\n\t * @param {*} q Query keyword\n\t * @returns The search result array.\n\t */\n\tasync doSearch(q) {\n\n\t\tconst book = this.reader.book;\n\t\tconst results = await Promise.all(\n\t\t\tbook.spine.spineItems.map(item => item.load(book.load.bind(book))\n\t\t\t\t.then(item.find.bind(item, q)).finally(item.unload.bind(item))));\n\t\treturn await Promise.resolve([].concat.apply([], results));\n\t}\n\n\tset(data) {\n\n\t\tconst link = new UILink(\"#\" + data.cfi, data.excerpt);\n\t\tconst item = new UIItem();\n\t\tlink.dom.onclick = () => {\n\n\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\tthis.selector.unselect();\n\t\t\t\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(data.cfi);\n\t\t\treturn false;\n\t\t};\n\t\titem.add(link);\n\t\tthis.items.add(item);\n\t}\n}","import { UIButton, UIDiv, UIInput, UILabel, UILink, UISpan, UIText } from \"./ui.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\n\nexport class Toolbar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst settings = reader.settings;\n\n\t\tconst container = new UIDiv().setId(\"toolbar\");\n\t\tconst keys = [\n\t\t\t\"toolbar/sidebar\",\n\t\t\t\"toolbar/prev\",\n\t\t\t\"toolbar/next\",\n\t\t\t\"toolbar/openbook\",\n\t\t\t\"toolbar/openbook/error\",\n\t\t\t\"toolbar/bookmark\",\n\t\t\t\"toolbar/fullscreen\",\n\t\t\t\"toolbar/background\",\n\t\t\t\"toolbar/search\",\n\t\t\t\"toolbar/close\",\n\t\t];\n\n\t\t/*------------------------ Toolbar Menu 1 --------------------------*/\n\t\tconst menu1 = new UIDiv().setClass(\"menu-1\");\n\t\tconst openerBox = new UIDiv().setId(\"btn-m\").setClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.dom.title = strings.get(keys[0]);\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", true);\n\t\t\topenerBtn.dom.blur();\n\t\t\te.preventDefault();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tmenu1.add(openerBox);\n\n\t\tlet prevBox, prevBtn;\n\t\tlet nextBox, nextBtn;\n\t\tif (settings.arrows === \"toolbar\") {\n\t\t\tprevBox = new UIDiv().setId(\"btn-p\").setClass(\"box\");\n\t\t\tprevBtn = new UIInput(\"button\");\n\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\tprevBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t\tprevBtn.dom.blur();\n\t\t\t};\n\t\t\tprevBox.add(prevBtn);\n\t\t\tmenu1.add(prevBox);\n\n\t\t\tnextBox = new UIDiv().setId(\"btn-n\").setClass(\"box\");\n\t\t\tnextBtn = new UIInput(\"button\");\n\t\t\tnextBtn.dom.title = strings.get(keys[2]);\n\t\t\tnextBtn.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t\tnextBtn.dom.blur();\n\t\t\t};\n\t\t\tnextBox.add(nextBtn);\n\t\t\tmenu1.add(nextBox);\n\t\t}\n\n\t\t/* ------------------------ Button Logo ------------------------- */\n\t\tconst logoBox = new UIDiv().setId(\"btn-logo\").setClass(\"logo\");\n\t\tconst logoLink = new UILink().setId(\"logo-link\").setHref(\"#\").setTextContent(\"LOGO\");\n\n\t\tlogoBox.add(logoLink);\n\t\tmenu1.add(logoBox);\n\n\t\t/* ------------------------ Button Index List (muc luc) -------------------------- */\n\t\tlet tocBox, tocBtn;\n\t\ttocBox = new UIDiv().setId(\"btn-t\").setClass(\"box\");\n\t\ttocBtn = new UIInput(\"button\");\n\n\t\t// load toc content title for toc list\n\t\ttocBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tshowToc(toc);\n\t\t\t})\n\t\t}\n\n\t\ttocBox.add(tocBtn);\n\t\tmenu1.add(tocBox);\n\n\t\t// Function to show the toc list\n\t\tfunction showToc(toc) {\n\t\t\tlet existingToc = document.getElementById(\"toolbar-toc-list\");\n\n\t\t\tif (existingToc) {\n\t\t\t\texistingToc.remove();\n\t\t\t} else {\n\t\t\t\tlet tocList = document.createElement(\"ul\");\n\t\t\t\ttocList.setAttribute(\"id\", \"toolbar-toc-list\");\n\n\t\t\t\tlet tocTitle = document.createElement(\"h3\");\n\t\t\t\ttocTitle.textContent = \"Mục lục\";\n\n\t\t\t\ttocList.appendChild(tocTitle);\n\n\t\t\t\ttoc.forEach((chapter) => {\n\t\t\t\t\tlet tocItem = document.createElement(\"li\");\n\t\t\t\t\tlet tocLink = document.createElement(\"a\");\n\n\t\t\t\t\ttocLink.href = \"#\";\n\t\t\t\t\ttocLink.textContent = chapter.label;\n\n\t\t\t\t\ttocLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-toc-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\ttocLink.classList.add(\"active\");\n\n\t\t\t\t\t\t// show the chapter with the title chosed in toc list\n\t\t\t\t\t\treader.rendition.display(chapter.href);\n\t\t\t\t\t};\n\n\t\t\t\t\ttocItem.appendChild(tocLink);\n\t\t\t\t\ttocList.appendChild(tocItem);\n\t\t\t\t});\n\n\t\t\t\ttocBox.dom.appendChild(tocList);\n\t\t\t}\n\n\t\t\tlet tocList = document.getElementById(\"toolbar-toc-list\");\n\t\t\ttocList.classList.toggle(\"active\");\n\t\t}\n\n\n\n\t\t/* ------------------------ Button My Bookmark (bookmark cua toi) --------------------------*/\n\t\tlet bookmarksBox, bookmarksBtn;\n\t\tbookmarksBox = new UIDiv().setId(\"btn-d\").setClass(\"box\");\n\t\tbookmarksBtn = new UIInput(\"button\");\n\n\t\tbookmarksBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowBookmarks();\n\t\t}\n\n\t\tbookmarksBox.add(bookmarksBtn);\n\t\tmenu1.add(bookmarksBox);\n\n\t\tfunction showBookmarks() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) {\n\t\t\t\tbookmarksList = document.createElement(\"ul\");\n\t\t\t\tbookmarksList.setAttribute(\"id\", \"toolbar-bookmarks-list\");\n\t\t\t\tbookmarkBox.dom.appendChild(bookmarksList);\n\t\t\t}\n\n\t\t\tupdateBookmarksList();\n\t\t\tbookmarksList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tupdateBookmarksList();\n\t\t})\n\n\t\tfunction updateBookmarksList() {\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tbookmarksList.innerHTML = \"\";\n\n\t\t\tlet title = document.createElement(\"h3\");\n\t\t\ttitle.textContent = \"Bookmarks của tui\";\n\t\t\tbookmarksList.appendChild(title);\n\n\t\t\treader.settings.bookmarks.forEach((cfi, index) => {\n\t\t\t\tlet bookmarkItem = document.createElement(\"li\");\n\t\t\t\tlet bookmarkLink = document.createElement(\"a\");\n\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\tbookmarkLink.href = \"#\";\n\t\t\t\tbookmarkLink.textContent = `Bookmark ${index + 1}`;\n\n\t\t\t\tbookmarkLink.onclick = (e) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-bookmarks-list li a\").forEach((link) => {\n\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t});\n\n\t\t\t\t\tbookmarkLink.classList.add(\"active\");\n\n\t\t\t\t\treader.rendition.display(cfi);\n\t\t\t\t};\n\n\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treader.removeBookmarkFromToolbar(cfi);\n\t\t\t\t};\n\n\t\t\t\tbookmarkItem.appendChild(bookmarkLink);\n\t\t\t\tbookmarkItem.appendChild(deleteBtn);\n\t\t\t\tbookmarksList.appendChild(bookmarkItem);\n\t\t\t})\n\t\t}\n\n\t\t// Hàm xóa bookmark từ toolbar\n\t\treader.removeBookmarkFromToolbar = function (cfi) {\n\n\t\t\tlet bookmarksList = document.getElementById(\"toolbar-bookmarks-list\");\n\t\t\tif (!bookmarksList) return;\n\n\t\t\tlet bookmarkItems = bookmarksList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(bookmarkItems).find(item => {\n\t\t\t\treturn item.querySelector(\"a\").textContent.includes(cfi);\n\t\t\t});\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.bookmarks.indexOf(cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.bookmarks.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.emit(\"bookmarked\", false, cfi);\n\t\t\treader.bookmarksPanel.removeBookmark(cfi);\n\t\t};\n\n\n\n\t\t/* ------------------------ Button Highlight And Note ---------------------------- */\n\t\tlet annotationsBox, annotationsBtn;\n\t\tannotationsBox = new UIDiv().setId(\"btn-a\").setClass(\"box\");\n\t\tannotationsBtn = new UIInput(\"button\");\n\n\t\t// show annotations list when click icon on toolbar\n\t\tannotationsBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowAnnotations();\n\t\t}\n\n\t\tannotationsBox.add(annotationsBtn);\n\t\tmenu1.add(annotationsBox);\n\n\t\t// Function to show the annotations list\n\t\tfunction showAnnotations() {\n\t\t\tlet existingList = document.getElementById(\"toolbar-annotations-list\");\n\n\t\t\tif (!existingList) {\n\t\t\t\tlet annotationsList = document.createElement(\"ul\");\n\t\t\t\tannotationsList.setAttribute(\"id\", \"toolbar-annotations-list\");\n\n\t\t\t\tlet title = document.createElement(\"h3\");\n\t\t\t\ttitle.textContent = \"Highlights & Ghi chú\";\n\n\t\t\t\tannotationsList.appendChild(title);\n\n\t\t\t\treader.settings.annotations.forEach((note) => {\n\t\t\t\t\tlet noteItem = document.createElement(\"li\");\n\t\t\t\t\tlet noteLink = document.createElement(\"a\");\n\t\t\t\t\tlet deleteBtn = document.createElement(\"span\");\n\n\t\t\t\t\tnoteLink.href = \"#\";\n\t\t\t\t\tnoteLink.textContent = note.text;\n\n\t\t\t\t\tnoteLink.onclick = (e) => {\n\t\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\t\tdocument.querySelectorAll(\"#toolbar-annotations-list li a\").forEach((link) => {\n\t\t\t\t\t\t\tlink.classList.remove(\"active\");\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tnoteLink.classList.add(\"active\");\n\n\t\t\t\t\t\treader.rendition.display(note.cfi);\n\t\t\t\t\t}\n\n\t\t\t\t\tdeleteBtn.innerHTML = '';\n\t\t\t\t\t// emit event to delete annotation items\n\t\t\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\treader.removeNoteFromToolbar(note);\n\t\t\t\t\t}\n\n\t\t\t\t\tnoteItem.appendChild(noteLink);\n\t\t\t\t\tnoteItem.appendChild(deleteBtn);\n\t\t\t\t\tannotationsList.appendChild(noteItem);\n\t\t\t\t})\n\n\t\t\t\tannotationsBox.dom.appendChild(annotationsList);\n\t\t\t}\n\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tannotationsList.classList.toggle(\"active\");\n\t\t}\n\n\t\treader.removeNoteFromToolbar = function (note) {\n\t\t\tlet annotationsList = document.getElementById(\"toolbar-annotations-list\");\n\t\t\tif (!annotationsList) return;\n\n\t\t\tlet noteItems = annotationsList.querySelectorAll(\"li\");\n\t\t\tlet targetItem = Array.from(noteItems).find(item => {\n\t\t\t\titem.querySelector('a').textContent === note.text;\n\t\t\t})\n\n\t\t\tif (targetItem) {\n\t\t\t\ttargetItem.remove();\n\t\t\t}\n\n\t\t\tconst annotationsPanel = reader.annotationsPanel;\n\t\t\tif (annotationsPanel) {\n\t\t\t\tannotationsPanel.removeNote(note);\n\t\t\t\tannotationsPanel.update();\n\t\t\t}\n\n\t\t\tconst index = reader.settings.annotations.findIndex((n) => n.cfi === note.cfi);\n\t\t\tif (index !== -1) {\n\t\t\t\treader.settings.annotations.splice(index, 1);\n\t\t\t}\n\n\t\t\treader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t}\n\n\n\n\n\t\t/* ----------------------------- Current Page -------------------------------- */\n\t\tconst centerPageCount = new UIDiv().setClass(\"menu-center\");\n\n\t\tconst centerLabel = new UILabel().setClass(\"toolbar-center-label\");\n\t\tcenterLabel.setTextContent(\"Determined\");\n\n\t\tconst curOfTotal = new UIDiv().setClass(\"page-map\");\n\t\tconst curPageIndex = new UISpan().setClass(\"current-page-index\").setTextContent(\"1\");\n\t\tconst separator = new UIText().setTextContent(\" của \");\n\t\tconst totalPage = new UISpan().setClass(\"total-pages\").setTextContent(\"200\");\n\n\t\tcurOfTotal.add(curPageIndex);\n\t\tcurOfTotal.add(separator);\n\t\tcurOfTotal.add(totalPage);\n\n\t\tcenterPageCount.add(centerLabel);\n\t\tcenterPageCount.add(curOfTotal);\n\n\n\n\t\t/*------------------------ Toolbar Menu 2 --------------------------*/\n\t\tconst menu2 = new UIDiv().setClass(\"menu-2\");\n\t\t// Button change background\n\t\tlet backgroundBox, colorPicker;\n\t\tif (settings.background) {\n\t\t\t// Init elements: background box div, input color picker\n\t\t\tbackgroundBox = new UIDiv().setId(\"btn-bg\").setClass(\"box\");\n\t\t\tcolorPicker = new UIInput(\"color\").setClass(\"color-picker\");\n\t\t\tcolorPicker.dom.title = strings.get(keys[7]);\n\n\t\t\t// Handle event get color from color table of input color\n\t\t\tcolorPicker.dom.oninput = (e) => {\n\t\t\t\tconst selectedColor = e.target.value;\n\n\t\t\t\t// Emit 'colorchanged' event with selected color\n\t\t\t\treader.emit(\"colorchanged\", selectedColor);\n\t\t\t}\n\n\t\t\tbackgroundBox.add(colorPicker);\n\t\t\tmenu2.add(backgroundBox);\n\t\t}\n\n\n\t\t// Button \"A-\", \"A+\" and input (hidden) for font-size\n\t\tlet fontLabel = new UILabel().setClass(\"font-size-px\").setTextContent(\"Fontsize (px):\")\n\t\tlet fontSizeBox = new UIDiv().setId(\"btn-fontsize\").setClass(\"box\");\n\t\tlet decreaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-decrease\");\n\t\tlet increaseFontBtn = new UIInput(\"button\").setClass(\"btn-font-increase\");\n\t\tlet fontSizeInput = new UIInput(\"text\").setClass(\"input-font-size\");\n\n\t\tlet fontSize = settings.fontSize || 16;\n\t\tfontSizeInput.dom.value = fontSize;\n\n\t\tdecreaseFontBtn.dom.textContent = \"-\";\n\t\tdecreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.max(8, fontSize - 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tincreaseFontBtn.dom.textContent = \"+\";\n\t\tincreaseFontBtn.dom.onclick = () => {\n\t\t\tfontSize = Math.min(72, fontSize + 1);\n\t\t\tfontSizeInput.dom.value = fontSize;\n\n\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t};\n\n\t\tfontSizeInput.dom.onchange = () => {\n\t\t\tlet newSize = parseInt(fontSizeInput.dom.value, 10);\n\t\t\tif (!isNaN(newSize) && newSize >= 8 && newSize <= 72) {\n\t\t\t\tfontSize = newSize;\n\n\t\t\t\treader.emit(\"styleschanged\", { fontSize: fontSize });\n\t\t\t} else {\n\t\t\t\tfontSizeInput.dom.value = fontSize;\n\t\t\t}\n\t\t};\n\n\t\tfontSizeBox.add(fontLabel);\n\t\tfontSizeBox.add(decreaseFontBtn);\n\t\tfontSizeBox.add(fontSizeInput);\n\t\tfontSizeBox.add(increaseFontBtn);\n\t\tmenu2.add(fontSizeBox);\n\n\n\t\t// Button open file\n\t\tlet openbookBtn;\n\t\tif (settings.openbook) {\n\t\t\tconst onload = (e) => {\n\n\t\t\t\treader.storage.clear();\n\t\t\t\treader.storage.set(e.target.result, () => {\n\t\t\t\t\treader.unload();\n\t\t\t\t\treader.init(e.target.result);\n\t\t\t\t\tconst url = new URL(window.location.origin);\n\t\t\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\t\t});\n\t\t\t};\n\t\t\tconst onerror = (e) => {\n\t\t\t\tconsole.error(e);\n\t\t\t};\n\t\t\tconst openbookBox = new UIDiv().setId(\"btn-o\").setClass(\"box\");\n\t\t\topenbookBtn = new UIInput(\"file\");\n\t\t\topenbookBtn.dom.title = strings.get(keys[3]);\n\t\t\topenbookBtn.dom.accept = \"application/epub+zip\";\n\t\t\topenbookBtn.dom.onchange = (e) => {\n\n\t\t\t\tif (e.target.files.length === 0)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (window.FileReader) {\n\n\t\t\t\t\tconst fr = new FileReader();\n\t\t\t\t\tfr.onload = onload;\n\t\t\t\t\tfr.readAsArrayBuffer(e.target.files[0]);\n\t\t\t\t\tfr.onerror = onerror;\n\t\t\t\t} else {\n\t\t\t\t\talert(strings.get(keys[4]));\n\t\t\t\t}\n\n\t\t\t};\n\t\t\topenbookBtn.dom.onclick = (e) => {\n\n\t\t\t\topenbookBtn.dom.blur();\n\t\t\t};\n\t\t\topenbookBox.add(openbookBtn);\n\t\t\tmenu2.add(openbookBox);\n\t\t}\n\n\n\t\t// Button search \n\t\tlet searchBox, searchBtn;\n\t\tlet searchInput, searchResults;\n\t\tsearchBox = new UIDiv().setId(\"btn-s\").setClass(\"box\");\n\t\tsearchBtn = new UIInput(\"button\");\n\t\tsearchBtn.setTitle(strings.get(keys[8]));\n\n\t\tsearchBtn.dom.onclick = (e) => {\n\t\t\te.stopPropagation();\n\t\t\tshowSearchPopup();\n\t\t}\n\n\t\tsearchBox.add(searchBtn);\n\t\tmenu2.add(searchBox);\n\n\t\tfunction showSearchPopup() {\n\t\t\tlet existingPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tif (!existingPopup) {\n\t\t\t\tlet searchPopup = document.createElement(\"div\");\n\t\t\t\tsearchPopup.setAttribute(\"id\", \"toolbar-search-list\");\n\t\t\t\tsearchPopup.classList.add(\"search-popup\");\n\n\t\t\t\tlet searchContainer = document.createElement(\"div\");\n\t\t\t\tsearchContainer.classList.add(\"search-container\");\n\n\t\t\t\tlet searchIcon = document.createElement(\"span\");\n\t\t\t\tsearchIcon.classList.add(\"search-icon\");\n\t\t\t\tsearchIcon.innerHTML = '';\n\n\t\t\t\tlet searchInput = document.createElement(\"input\");\n\t\t\t\tsearchInput.setAttribute(\"type\", \"search\");\n\t\t\t\tsearchInput.setAttribute(\"placeholder\", \"Search\");\n\t\t\t\tsearchInput.setAttribute(\"id\", \"nav-q\");\n\t\t\t\tsearchInput.setAttribute(\"class\", \"toolbar-search-input\");\n\n\t\t\t\tsearchContainer.appendChild(searchIcon);\n\t\t\t\tsearchContainer.appendChild(searchInput);\n\n\t\t\t\tlet resultContainer = document.createElement(\"ul\");\n\t\t\t\tresultContainer.setAttribute('id', 'toolbar-search-results');\n\n\t\t\t\tlet searchPanel = new SearchPanel(reader);\n\t\t\t\tsearchInput.oninput = async () => {\n\t\t\t\t\tlet query = searchInput.value.trim();\n\t\t\t\t\tif (query.length > 0) {\n\t\t\t\t\t\tlet results = await searchPanel.doSearch(query);\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\n\t\t\t\t\t\tif (results.length === 0) {\n\t\t\t\t\t\t\tlet noResultItem = document.createElement(\"li\");\n\t\t\t\t\t\t\tnoResultItem.innerText = \"Không tìm thấy kết quả trùng khớp\";\n\t\t\t\t\t\t\tnoResultItem.style.color = \"gray\";\n\t\t\t\t\t\t\tnoResultItem.style.padding = \"8px\";\n\t\t\t\t\t\t\tresultContainer.appendChild(noResultItem);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresults.forEach((data) => {\n\t\t\t\t\t\t\tlet item = document.createElement(\"li\");\n\t\t\t\t\t\t\tlet link = document.createElement(\"a\");\n\t\t\t\t\t\t\tlink.href = \"#\" + data.cfi;\n\t\t\t\t\t\t\tlink.textContent = data.excerpt;\n\t\t\t\t\t\t\tlink.onclick = (e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tsearchPanel.reader.rendition.display(data.cfi);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\titem.appendChild(link);\n\t\t\t\t\t\t\tresultContainer.appendChild(item);\n\t\t\t\t\t\t})\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresultContainer.innerHTML = \"\";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsearchPopup.appendChild(searchContainer);\n\t\t\t\tsearchPopup.appendChild(resultContainer);\n\t\t\t\tsearchBox.dom.appendChild(searchPopup);\n\t\t\t}\n\n\t\t\tlet searchPopup = document.getElementById(\"toolbar-search-list\");\n\t\t\tsearchPopup.classList.toggle(\"active\");\n\t\t}\n\n\n\t\t// Button Bookmark\n\t\tlet bookmarkBox, bookmarkBtn;\n\t\tif (settings.bookmarks) {\n\t\t\tbookmarkBox = new UIDiv().setId(\"btn-b\").setClass(\"box\");\n\t\t\tbookmarkBtn = new UIInput(\"button\");\n\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\tbookmarkBtn.dom.onclick = (e) => {\n\n\t\t\t\tconst cfi = this.locationCfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\treader.emit(\"bookmarked\", val);\n\t\t\t\te.preventDefault();\n\t\t\t\tbookmarkBtn.dom.blur();\n\t\t\t};\n\t\t\tbookmarkBox.add(bookmarkBtn);\n\t\t\tmenu2.add(bookmarkBox);\n\t\t}\n\n\t\t// Button Full Screen\n\t\tlet fullscreenBtn;\n\t\tif (settings.fullscreen) {\n\n\t\t\tconst fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\n\t\t\tfullscreenBtn = new UIInput(\"button\");\n\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\tfullscreenBtn.dom.onclick = (e) => {\n\n\t\t\t\tthis.toggleFullScreen();\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.onkeydown = (e) => {\n\n\t\t\t\tif (e.key === \"F11\") {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tthis.toggleFullScreen();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tdocument.onfullscreenchange = (e) => {\n\n\t\t\t\tconst w = window.screen.width === e.target.clientWidth;\n\t\t\t\tconst h = window.screen.height === e.target.clientHeight;\n\n\t\t\t\tif (w && h) {\n\t\t\t\t\tfullscreenBox.addClass(\"resize-small\");\n\t\t\t\t} else {\n\t\t\t\t\tfullscreenBox.removeClass(\"resize-small\");\n\t\t\t\t}\n\t\t\t};\n\t\t\tfullscreenBox.add(fullscreenBtn);\n\t\t\tmenu2.add(fullscreenBox);\n\t\t}\n\n\t\tcontainer.add([menu1, centerPageCount, menu2]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t// Button Close\n\t\tlet closeBox, closeBtn;\n\t\tcloseBox = new UIDiv().setId(\"btn-close\").setClass(\"box\");\n\t\tcloseBtn = new UIInput(\"button\").setClass(\"active\");\n\t\tcloseBtn.setTitle(strings.get(keys[9]));\n\n\n\n\t\tcloseBox.add(closeBtn);\n\t\tmenu2.add(closeBox);\n\n\n\t\t//-- events --//\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tconst cfi = location.start.cfi;\n\t\t\t\tconst val = reader.isBookmarked(cfi) === -1;\n\t\t\t\tif (val) {\n\t\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t\t} else {\n\t\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t\t}\n\t\t\t\tthis.locationCfi = cfi; // save location cfi\n\t\t\t}\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBox.dom.style.display = location.atStart ? \"none\" : \"block\";\n\t\t\t\tnextBox.dom.style.display = location.atEnd ? \"none\" : \"block\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean) => {\n\n\t\t\tif (boolean) {\n\t\t\t\tbookmarkBox.addClass(\"bookmarked\");\n\t\t\t} else {\n\t\t\t\tbookmarkBox.removeClass(\"bookmarked\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\n\t\t\tif (settings.arrows === \"toolbar\") {\n\t\t\t\tprevBtn.setTitle(strings.get(keys[1]));\n\t\t\t\tnextBtn.setTitle(strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (settings.openbook) {\n\t\t\t\topenbookBtn.setTitle(strings.get(keys[3]));\n\t\t\t}\n\t\t\tif (settings.bookmarks) {\n\t\t\t\tbookmarkBtn.setTitle(strings.get(keys[5]));\n\t\t\t}\n\t\t\tif (settings.fullscreen) {\n\t\t\t\tfullscreenBtn.setTitle(strings.get(keys[6]));\n\t\t\t}\n\t\t\tif (settings.background) {\n\t\t\t\tbackgroundBtn.setTitle(strings.get(keys[7]));\n\t\t\t}\n\n\t\t});\n\t}\n\n\ttoggleFullScreen() {\n\n\t\tdocument.activeElement.blur();\n\n\t\tif (document.fullscreenElement === null) {\n\t\t\tdocument.documentElement.requestFullscreen();\n\t\t} else if (document.exitFullscreen) {\n\t\t\tdocument.exitFullscreen();\n\t\t}\n\t}\n}","import { UIDiv, UISpan } from \"./ui.js\";\n\nexport class Content {\n\n\tconstructor(reader) {\n\n\t\tconst settings = reader.settings;\n\t\tconst container = new UIDiv().setId(\"content\");\n\n\t\tlet prev;\n\t\tif (settings.arrows === \"content\") {\n\n\t\t\tprev = new UIDiv().setId(\"prev\").setClass(\"arrow\");\n\t\t\tprev.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"prev\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconLeft = new UISpan();\n\t\t\ticonLeft.dom.innerHTML = '';\n\t\t\tprev.add(iconLeft);\n\t\t\tcontainer.add(prev);\n\t\t}\n\n\t\tconst viewer = new UIDiv().setId(\"viewer\");\n\t\tcontainer.add(viewer);\n\n\t\t// Handle the 'colorchanged' event to change background of 'viewer'\n\t\treader.on(\"colorchanged\", (color) => {\n\t\t\tviewer.dom.style.backgroundColor = color;\n\t\t});\n\n\t\tlet next;\n\t\tif (settings.arrows === \"content\") {\n\t\t\tnext = new UIDiv().setId(\"next\").setClass(\"arrow\");\n\t\t\tnext.dom.onclick = (e) => {\n\n\t\t\t\treader.emit(\"next\");\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\tconst iconRight = new UISpan();\n\t\t\ticonRight.dom.innerHTML = '';\n\t\t\tnext.add(iconRight);\n\t\t\tcontainer.add(next);\n\t\t}\n\n\t\tconst loader = new UIDiv().setId(\"loader\");\n\t\tconst divider = new UIDiv().setId(\"divider\");\n\t\tconst overlay = new UIDiv().setId(\"overlay\");\n\t\toverlay.dom.onclick = (e) => {\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tcontainer.add([loader, divider, overlay]);\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tviewer.setClass(cfg.flow);\n\t\t\tloader.dom.style.display = \"block\";\n\t\t});\n\n\t\treader.on(\"bookloaded\", () => {\n\n\t\t\tloader.dom.style.display = \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.spread && props.width > props.spreadWidth) {\n\t\t\t\tdivider.dom.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\tdivider.dom.style.display = \"none\";\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"flowchanged\", (value) => {\n\n\t\t\tviewer.setClass(value);\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tif (location.atStart) {\n\t\t\t\t\tprev.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tprev.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t\tif (location.atEnd) {\n\t\t\t\t\tnext.addClass(\"disabled\");\n\t\t\t\t} else {\n\t\t\t\t\tnext.removeClass(\"disabled\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"prev\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tprev.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { prev.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"next\", () => {\n\n\t\t\tif (settings.arrows === \"content\") {\n\t\t\t\tnext.addClass(\"active\");\n\t\t\t\tsetTimeout(() => { next.removeClass(\"active\"); }, 100);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\toverlay.dom.style.display = value ? \"block\" : \"none\";\n\t\t});\n\n\t\treader.on(\"viewercleanup\", () => {\n\n\t\t\tviewer.clear();\n\t\t});\n\t}\n}","import { UIPanel, UIDiv, UIItem, UIList, UILink, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class TocPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/contents\"\n\t\t];\n\t\tconst label = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.reader = reader;\n\t\tthis.selector = undefined; // save reference to selected tree item\n\t\tthis.setId(\"contents\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", () => {\n\t\t\treader.book.loaded.navigation.then((toc) => {\n\t\t\t\tcontainer.clear();\n\t\t\t\tcontainer.add(this.generateToc(toc));\n\t\t\t\tthis.add(container);\n\t\t\t\tconsole.log(toc);\n\t\t\t\t\n\t\t\t})\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tlabel.setValue(strings.get(keys[0]));\n\t\t});\n\t}\n\n\tgenerateToc(toc, parent) {\n\n\t\tconst list = new UIList(parent);\n\n\t\ttoc.forEach((chapter) => {\n\n\t\t\tconst link = new UILink(chapter.href, chapter.label);\n\t\t\tconst item = new UIItem(list).setId(chapter.id);\n\t\t\tconst ibtn = new UISpan();\n\n\t\t\tlink.dom.onclick = (e) => {\n\n\t\t\t\tif (this.selector && this.selector !== item)\n\t\t\t\t\tthis.selector.unselect();\n\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t\tthis.reader.settings.sectionId = chapter.id;\n\t\t\t\tthis.reader.rendition.display(chapter.href);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\t\t\titem.add([ibtn, link]);\n\t\t\tthis.reader.navItems[chapter.href] = {\n\t\t\t\tid: chapter.id,\n\t\t\t\tlabel: chapter.label\n\t\t\t};\n\n\t\t\tif (this.reader.settings.sectionId === chapter.id) {\n\t\t\t\tlist.expand();\n\t\t\t\titem.select();\n\t\t\t\tthis.selector = item;\n\t\t\t}\n\n\t\t\tif (chapter.subitems && chapter.subitems.length > 0) {\n\n\t\t\t\tconst subItems = this.generateToc(chapter.subitems, item);\n\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\tibtn.dom.onclick = () => {\n\n\t\t\t\t\tif (subItems.expanded) {\n\t\t\t\t\t\tsubItems.collaps();\n\t\t\t\t\t\tibtn.setClass(\"toggle-collapsed\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsubItems.expand();\n\t\t\t\t\t\tibtn.setClass(\"toggle-expanded\");\n\t\t\t\t\t}\n\t\t\t\t\treturn false;\n\t\t\t\t};\n\t\t\t\titem.add(subItems);\n\t\t\t}\n\n\t\t\tlist.add(item);\n\t\t});\n\n\t\treturn list;\n\t}\n}","import { UIPanel, UIDiv, UIRow, UIInput, UILink, UIList, UIItem, UIText, UIBox, UISpan } from \"../ui.js\";\n\nexport class BookmarksPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/bookmarks/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearBookmarks();\n\t\t\treader.emit(\"bookmarked\", false);\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.bookmarks = new UIList();\n\t\tcontainer.add(this.bookmarks);\n\t\tthis.setId(\"bookmarks\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\n\t\tconst update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.bookmarks.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"displayed\", (renderer, cfg) => {\n\n\t\t\tcfg.bookmarks.forEach((cfi) => {\n\n\t\t\t\tthis.setBookmark(cfi);\n\t\t\t});\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"relocated\", (location) => {\n\n\t\t\tthis.locationCfi = location.start.cfi; // save location cfi\n\t\t});\n\n\t\treader.on(\"bookmarked\", (boolean, cfi) => {\n\t\t\tif (boolean) {\n\t\t\t\tthis.appendBookmark();\n\t\t\t} else {\n\t\t\t\tthis.removeBookmark(cfi);\n\t\t\t}\n\t\t\tupdate();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tappendBookmark() {\n\n\t\tconst cfi = this.locationCfi;\n\n\t\tif (this.reader.isBookmarked(cfi) > -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.setBookmark(cfi);\n\t\tthis.reader.settings.bookmarks.push(cfi);\n\n\t}\n\n\tremoveBookmark(cfi) {\n\t\tconst _cfi = cfi || this.locationCfi;\n\t\tconst index = this.reader.isBookmarked(_cfi);\n\t\tif (index === -1) {\n\t\t\treturn;\n\t\t}\n\t\tthis.bookmarks.remove(index);\n\t\tthis.reader.settings.bookmarks.splice(index, 1);\n\t}\n\n\tclearBookmarks() {\n\n\t\tthis.bookmarks.clear();\n\t\tthis.reader.settings.bookmarks = [];\n\t}\n\n\tsetBookmark(cfi) {\n\t\tconst link = new UILink();\n\t\tconst item = new UIItem();\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst navItem = this.reader.navItemFromCfi(cfi);\n\t\tlet idref;\n\t\tlet label;\n\n\t\tif (navItem === undefined) {\n\t\t\tconst spineItem = this.reader.book.spine.get(cfi);\n\t\t\tidref = spineItem.idref;\n\t\t\tlabel = spineItem.idref\n\t\t} else {\n\t\t\tidref = navItem.id;\n\t\t\tlabel = navItem.label;\n\t\t}\n\n\t\tlink.setHref(\"#\" + cfi);\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(cfi);\n\t\t\te.preventDefault();\n\t\t};\n\t\tlink.setTextContent(label);\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.reader.emit(\"bookmarked\", false, cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\titem.setId(idref);\n\t\tthis.bookmarks.add(item);\n\t}\n}","import { UIPanel, UIDiv, UITextArea, UIInput, UILink, UIList, UIItem, UISpan, UIText, UIBox } from \"../ui.js\";\n\nexport class AnnotationsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/annotations/clear\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tconst clearBtn = new UIInput(\"button\", strings.get(keys[1]));\n\t\tclearBtn.dom.onclick = (e) => {\n\n\t\t\tthis.clearNotes();\n\t\t\te.preventDefault();\n\t\t};\n\t\tthis.add(new UIBox([headerLabel, clearBtn]).addClass(\"header\"));\n\t\tthis.selector = undefined;\n\t\tthis.notes = new UIList();\n\t\tcontainer.add(this.notes);\n\t\tthis.setId(\"annotations\");\n\t\tthis.add(container);\n\t\tthis.reader = reader;\n\t\tthis.update = () => {\n\n\t\t\tclearBtn.dom.disabled = reader.settings.annotations.length === 0;\n\t\t};\n\n\t\t//-- events --//\n\n\t\treader.on(\"navigation\", (cfg) => {\n\n\t\t\tcfg.annotations.forEach((note) => {\n\n\t\t\t\tthis.set(note);\n\t\t\t});\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"noteadded\", (note) => {\n\t\t\tthis.set(note);\n\t\t\tthis.update();\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setValue(strings.get(keys[0]));\n\t\t\tclearBtn.setValue(strings.get(keys[1]));\n\t\t});\n\t}\n\n\tset(note) {\n\n\t\tconst link = new UILink(\"#\" + note.cfi, note.text);\n\t\tconst item = new UIItem().setId(\"note-\" + note.uuid);\n\t\tconst btnr = new UISpan().setClass(\"btn-remove\");\n\t\tconst call = () => { };\n\n\t\tlink.dom.onclick = (e) => {\n\n\t\t\tif (this.selector && this.selector !== item) {\n\t\t\t\tthis.selector.unselect();\n\t\t\t}\n\t\t\titem.select();\n\t\t\tthis.selector = item;\n\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\tbtnr.dom.onclick = (e) => {\n\n\t\t\tthis.removeNote(note);\n\t\t\te.preventDefault();\n\t\t};\n\n\t\titem.add([link, btnr]);\n\t\tthis.notes.add(item);\n\t\tthis.reader.rendition.annotations.add(\n\t\t\t\"highlight\", note.cfi, {}, call, \"note-highlight\", {});\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarNoteItem = document.createElement(\"li\");\n\t\t\tconst toolbarNoteLink = document.createElement(\"a\");\n\t\t\ttoolbarNoteLink.href = \"#\";\n\t\t\ttoolbarNoteLink.textContent = note.text; // sửa lại nếu cần\n\t\t\ttoolbarNoteLink.onclick = (e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.reader.rendition.display(note.cfi);\n\t\t\t};\n\t\t\ttoolbarNoteItem.appendChild(toolbarNoteLink);\n\n\t\t\tconst deleteBtn = document.createElement(\"span\");\n\t\t\tdeleteBtn.innerHTML = '';\n\n\t\t\tdeleteBtn.onclick = (e) => {\n\t\t\t\te.stopPropagation();\n\t\t\t\tthis.reader.removeNoteFromToolbar(note);\n\t\t\t}\n\t\t\ttoolbarNoteItem.appendChild(deleteBtn);\n\t\t\ttoolbarList.appendChild(toolbarNoteItem);\n\t\t}\n\t}\n\n\tremoveNote(note) {\n\n\t\tconst index = this.reader.settings.annotations.indexOf(note);\n\t\tif (index === -1)\n\t\t\treturn;\n\n\t\tthis.notes.remove(index);\n\t\tthis.reader.settings.annotations.splice(index, 1);\n\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\tthis.update();\n\n\t\tconst toolbarList = document.getElementById(\"toolbar-annotations-list\");\n\t\tif (toolbarList) {\n\t\t\tconst toolbarItems = toolbarList.querySelectorAll(\"li\");\n\t\t\ttoolbarItems.forEach(item => {\n\t\t\t\tif (item.querySelector(\"a\").textContent === note.text) {\n\t\t\t\t\titem.remove();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tclearNotes() {\n\n\t\tthis.reader.settings.annotations.forEach(note => {\n\t\t\tthis.reader.rendition.annotations.remove(note.cfi, \"highlight\");\n\t\t});\n\t\tthis.notes.clear();\n\t\tthis.reader.settings.annotations = [];\n\t\tthis.update();\n\t}\n}","import { UIPanel, UIRow, UISelect, UIInput, UILabel, UINumber, UIText, UIBox, UIDiv } from \"../ui.js\";\n\nexport class SettingsPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tsuper.setId(\"settings\");\n\n\t\tconst strings = reader.strings;\n\t\tconst keys = [\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/settings/language\",\n\t\t\t\"sidebar/settings/fontsize\",\n\t\t\t\"sidebar/settings/flow\",\n\t\t\t\"sidebar/settings/spread\",\n\t\t\t\"sidebar/settings/spread/minwidth\"\n\t\t];\n\t\tconst headerLabel = new UIText(strings.get(keys[0])).setClass(\"label\");\n\t\tthis.add(new UIBox(headerLabel).addClass(\"header\"));\n\n\t\tconst languageLabel = new UILabel(strings.get(keys[1]), \"language-ui\");\n\t\tconst languageRow = new UIRow();\n\t\tconst language = new UISelect().setOptions({\n\t\t\ten: \"English\",\n\t\t\tfr: \"French\",\n\t\t\tja: \"Japanese\",\n\t\t\tru: \"Russian\",\n\t\t\tvi: \"Vietnamese\"\n\t\t});\n\t\tlanguage.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"languagechanged\", e.target.value);\n\t\t};\n\t\tlanguage.setId(\"language-ui\");\n\t\tlanguageRow.add(languageLabel);\n\t\tlanguageRow.add(language);\n\n\t\tconst fontSizeLabel = new UILabel(strings.get(keys[2]), \"fontsize\");\n\t\tconst fontSizeRow = new UIRow();\n\t\tconst fontSize = new UINumber(16, 1);\n\n\t\tfontSize.dom.onchange = (e) => {\n\t\t\tconst newSize = parseInt(e.target.value);\n\n\t\t\tif (newSize >= 8 && newSize <= 72) {\n\t\t\t\treader.emit(\"styleschanged\", {\n\t\t\t\t\tfontSize: newSize\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tfontSize.setId(\"fontsize\");\n\t\tfontSizeRow.add(fontSizeLabel);\n\t\tfontSizeRow.add(fontSize);\n\t\tfontSize.dom.disabled = true;\n\n\t\t//-- flow configure --//\n\n\t\tconst flowLabel = new UILabel(strings.get(keys[3]), \"flow\");\n\t\tconst flowRow = new UIRow();\n\t\tconst flow = new UISelect().setOptions({\n\t\t\tpaginated: \"Paginated\",\n\t\t\tscrolled: \"Scrolled\"\n\t\t});\n\t\tflow.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"flowchanged\", e.target.value);\n\n\t\t\tif (e.target.value === \"scrolled\") {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: \"none\",\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\t\tmod: undefined,\n\t\t\t\t\tmin: undefined\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tflow.setId(\"flow\");\n\t\tflowRow.add(flowLabel);\n\t\tflowRow.add(flow);\n\n\t\t//-- spdead configure --//\n\n\t\tconst minSpreadWidth = new UINumber(800, 1);\n\t\tconst spreadLabel = new UILabel(strings.get(keys[4]), \"spread\");\n\t\tconst spreadRow = new UIRow();\n\t\tconst spread = new UISelect().setOptions({\n\t\t\tnone: \"None\",\n\t\t\tauto: \"Auto\"\n\t\t});\n\t\tspread.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: e.target.value,\n\t\t\t\tmin: undefined\n\t\t\t});\n\t\t\tminSpreadWidth.dom.disabled = e.target.value === \"none\";\n\t\t};\n\t\tspread.setId(\"spread\");\n\n\t\tspreadRow.add(spreadLabel);\n\t\tspreadRow.add(spread);\n\n\t\tconst minSpreadWidthLabel = new UILabel(strings.get(keys[5]), \"min-spread-width\");\n\t\tconst minSpreadWidthRow = new UIRow();\n\t\tminSpreadWidth.dom.onchange = (e) => {\n\n\t\t\treader.emit(\"spreadchanged\", {\n\t\t\t\tmod: undefined,\n\t\t\t\tmin: parseInt(e.target.value)\n\t\t\t});\n\t\t};\n\t\tminSpreadWidth.setId(\"min-spread-width\");\n\t\tminSpreadWidthRow.add(minSpreadWidthLabel);\n\t\tminSpreadWidthRow.add(minSpreadWidth);\n\n\t\t//-- pagination --//\n\n\t\tconst paginationStr = strings.get(\"sidebar/settings/pagination\");\n\t\tconst paginationRow = new UIRow();\n\t\tconst pagination = new UIInput(\"checkbox\", false, paginationStr[1]);\n\t\tpagination.setId(\"pagination\");\n\t\tpagination.dom.onclick = (e) => {\n\n\t\t\t// not implemented\n\t\t};\n\n\t\tpaginationRow.add(new UILabel(paginationStr[0], \"pagination\"));\n\t\tpaginationRow.add(pagination);\n\n\t\tthis.add(new UIBox([\n\t\t\tlanguageRow,\n\t\t\tfontSizeRow,\n\t\t\tflowRow,\n\t\t\tspreadRow,\n\t\t\tminSpreadWidthRow,\n\t\t\t//paginationRow\n\t\t]));\n\n\t\t//-- events --//\n\n\t\treader.on(\"bookready\", (cfg) => {\n\n\t\t\tlanguage.setValue(cfg.language);\n\t\t\tfontSize.setValue(cfg.styles.fontSize);\n\t\t\tflow.setValue(cfg.flow);\n\t\t\tspread.setValue(cfg.spread.mod);\n\t\t\tminSpreadWidth.setValue(cfg.spread.min);\n\t\t\tminSpreadWidth.dom.disabled = cfg.spread.mod === \"none\";\n\t\t});\n\n\t\treader.on(\"layout\", (props) => {\n\n\t\t\tif (props.flow === \"scrolled\") {\n\t\t\t\tspread.setValue(\"none\");\n\t\t\t\tspread.dom.disabled = true;\n\t\t\t\tminSpreadWidth.dom.disabled = true;\n\t\t\t} else {\n\t\t\t\tspread.dom.disabled = false;\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\theaderLabel.setTextContent(strings.get(keys[0]));\n\t\t\tlanguageLabel.setTextContent(strings.get(keys[1]));\n\t\t\tfontSizeLabel.setTextContent(strings.get(keys[2]));\n\t\t\tflowLabel.setTextContent(strings.get(keys[3]));\n\t\t\tspreadLabel.setTextContent(strings.get(keys[4]));\n\t\t\tminSpreadWidthLabel.setTextContent(strings.get(keys[5]));\n\t\t});\n\t}\n}","import { UIBox, UIDiv, UIItem, UIList, UIPanel, UIText } from \"../ui.js\";\n\nexport class MetadataPanel extends UIPanel {\n\n\tconstructor(reader) {\n\n\t\tsuper();\n\t\tconst container = new UIDiv().setClass(\"list-container\");\n\t\tconst strings = reader.strings;\n\t\tconst labels = {};\n\t\tconst key = \"sidebar/metadata\";\n\t\tconst label = new UIText(strings.get(key)).setClass(\"label\");\n\t\tthis.add(new UIBox(label).addClass(\"header\"));\n\t\tlabels[key] = label;\n\n\t\tthis.items = new UIList();\n\t\tthis.setId(\"metadata\");\n\t\tthis.add(container);\n\n\t\tconst init = (prop, meta) => {\n\t\t\tif (meta[prop] === undefined ||\n\t\t\t\tmeta[prop] === null || (typeof meta[prop] === \"string\" && meta[prop].length === 0)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst item = new UIItem();\n\t\t\tconst label = new UIText().setClass(\"label\");\n\t\t\tconst value = new UIText().setClass(\"value\");\n\t\t\tlabel.setValue(strings.get(key + \"/\" + prop).toUpperCase());\n\t\t\tif (prop === \"description\") {\n\t\t\t\tvalue.dom.innerHTML = meta[prop];\n\t\t\t} else {\n\t\t\t\tvalue.setValue(meta[prop]);\n\t\t\t}\n\t\t\tlabels[key + \"/\" + prop] = label;\n\t\t\titem.add([label, value]);\n\t\t\tthis.items.add(item);\n\t\t}\n\n\t\t//-- events --//\n\n\t\treader.on(\"metadata\", (meta) => {\n\n\t\t\tthis.items.clear();\n\t\t\tcontainer.clear();\n\t\t\tcontainer.add(this.items);\n\t\t\tdocument.title = meta.title;\n\t\t\tfor (const prop in meta) {\n\t\t\t\tinit(prop, meta);\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\tfor (const prop in labels) {\n\t\t\t\tlet text;\n\t\t\t\tif (prop === key) {\n\t\t\t\t\ttext = strings.get(prop);\n\t\t\t\t} else {\n\t\t\t\t\ttext = strings.get(prop).toUpperCase();\n\t\t\t\t}\n\t\t\t\tlabels[prop].setValue(text);\n\t\t\t}\n\t\t});\n\t}\n}","import { UITabbedPanel, UIInput, UIDiv } from \"./ui.js\";\nimport { TocPanel } from \"./sidebar/toc.js\";\nimport { BookmarksPanel } from \"./sidebar/bookmarks.js\";\nimport { AnnotationsPanel } from \"./sidebar/annotations.js\";\nimport { SearchPanel } from \"./sidebar/search.js\";\nimport { SettingsPanel } from \"./sidebar/settings.js\";\nimport { MetadataPanel } from \"./sidebar/metadata.js\";\n\nexport class Sidebar {\n\n\tconstructor(reader) {\n\n\t\tconst strings = reader.strings;\n\t\tconst controls = reader.settings;\n\t\tconst keys = [\n\t\t\t\"sidebar/close\",\n\t\t\t\"sidebar/contents\",\n\t\t\t\"sidebar/bookmarks\",\n\t\t\t\"sidebar/annotations\",\n\t\t\t\"sidebar/search\",\n\t\t\t\"sidebar/settings\",\n\t\t\t\"sidebar/metadata\"\n\t\t];\n\n\t\tconst container = new UITabbedPanel(\"vertical\").setId(\"sidebar\");\n\n\t\tconst openerBox = new UIDiv().setId(\"btn-p\").addClass(\"box\");\n\t\tconst openerBtn = new UIInput(\"button\");\n\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\topenerBtn.dom.onclick = (e) => {\n\n\t\t\treader.emit(\"sidebaropener\", false);\n\t\t\te.preventDefault();\n\t\t\topenerBtn.dom.blur();\n\t\t};\n\t\topenerBox.add(openerBtn);\n\t\tcontainer.addMenu(openerBox);\n\n\t\tcontainer.addTab(\"btn-t\", strings.get(keys[1]), new TocPanel(reader));\n\t\tif (controls.bookmarks) {\n\t\t\tconst bookmarkPanel = new BookmarksPanel(reader);\n\t\t\tcontainer.addTab(\"btn-d\", strings.get(keys[2]), bookmarkPanel);\n\t\t\treader.bookmarksPanel = bookmarkPanel;\n\t\t}\n\t\tif (controls.annotations) {\n\t\t\tconst annotationPanel = new AnnotationsPanel(reader);\n\t\t\tcontainer.addTab(\"btn-a\", strings.get(keys[3]), annotationPanel);\n\t\t\treader.annotationsPanel = annotationPanel;\n\t\t}\n\n\t\tcontainer.addTab(\"btn-s\", strings.get(keys[4]), new SearchPanel(reader));\n\t\tcontainer.addTab(\"btn-c\", strings.get(keys[5]), new SettingsPanel(reader));\n\t\tcontainer.addTab(\"btn-i\", strings.get(keys[6]), new MetadataPanel(reader));\n\t\tcontainer.select(\"btn-t\");\n\n\t\tdocument.body.appendChild(container.dom);\n\n\t\t//-- events --//\n\n\t\treader.on(\"sidebaropener\", (value) => {\n\n\t\t\tif (value) {\n\t\t\t\tcontainer.setClass(\"open\");\n\t\t\t} else {\n\t\t\t\tcontainer.removeAttribute(\"class\");\n\t\t\t}\n\t\t});\n\n\t\treader.on(\"languagechanged\", (value) => {\n\n\t\t\topenerBtn.setTitle(strings.get(keys[0]));\n\t\t\tcontainer.setLabel(\"btn-t\", strings.get(keys[1]));\n\t\t\tif (controls.bookmarks) {\n\t\t\t\tcontainer.setLabel(\"btn-d\", strings.get(keys[2]));\n\t\t\t}\n\t\t\tif (controls.annotations) {\n\t\t\t\tcontainer.setLabel(\"btn-a\", strings.get(keys[3]));\n\t\t\t}\n\t\t\tcontainer.setLabel(\"btn-s\", strings.get(keys[4]));\n\t\t\tcontainer.setLabel(\"btn-c\", strings.get(keys[5]));\n\t\t\tcontainer.setLabel(\"btn-i\", strings.get(keys[6]));\n\t\t});\n\t}\n}","import { uuid } from \"./utils.js\";\nimport { UIBox, UIDiv, UIInput, UILabel } from \"./ui.js\";\n\nexport class NoteDlg {\n\n constructor(reader) {\n\n const container = new UIDiv().setId(\"notedlg\");\n const strings = reader.strings;\n const keys = [\n \"notedlg/label\",\n \"notedlg/add\"\n ];\n const label = new UILabel(strings.get(keys[0]), \"note-input\");\n const textBox = new UIInput(\"text\", \"\").setId(\"note-input\");\n textBox.dom.oninput = (e) => {\n\n this.update();\n e.preventDefault();\n };\n\n const addBtn = new UIInput(\"button\", strings.get(keys[1]));\n addBtn.dom.disabled = true;\n addBtn.dom.onclick = (e) => {\n\n const note = {\n cfi: this.cfi,\n date: new Date(),\n text: textBox.getValue(),\n uuid: uuid()\n };\n this.range = undefined;\n reader.settings.annotations.push(note);\n reader.emit(\"noteadded\", note);\n container.removeAttribute(\"class\");\n e.preventDefault();\n addBtn.dom.blur();\n };\n\n this.update = () => {\n\n addBtn.dom.disabled = !(this.range && textBox.getValue().length > 0);\n };\n\n container.add(new UIBox([label, textBox, addBtn]).addClass(\"control\"));\n document.body.appendChild(container.dom);\n\n //-- events --//\n\n reader.on(\"selected\", (cfi, contents) => {\n\n this.cfi = cfi;\n this.range = contents.range(cfi);\n this.update();\n container.setClass(\"open\");\n textBox.setValue(\"\");\n });\n\n reader.on(\"unselected\", () => {\n\n this.range = undefined;\n this.update();\n container.removeAttribute(\"class\");\n });\n\n reader.on(\"languagechanged\", (value) => {\n\n label.setTextContent(strings.get(keys[0]));\n addBtn.setValue(strings.get(keys[1]));\n });\n }\n}","import { UIDiv, UILabel, UIInput } from \"./ui.js\";\r\n\r\nexport class Status {\r\n constructor(reader) {\r\n const strings = reader.strings;\r\n const settings = reader.settings;\r\n\r\n const container = new UIDiv().setId(\"status-bar\");\r\n const keys = [\r\n \"status/fullscreen\",\r\n \"status/apprec\",\r\n ];\r\n\r\n /* ---------------------------- Status Bar ----------------------------- */\r\n const leftText = new UIDiv().setClass(\"status-title\");\r\n const rightAction = new UIDiv().setClass(\"status-action\");\r\n\r\n let text = new UILabel().setClass(\"status-text\").setTextContent(\"Trang cuối của chương\");\r\n leftText.add(text);\r\n\r\n\r\n // Button apps rectangle\r\n let appRecBtn;\r\n const appRecBox = new UIDiv().setId(\"btn-ar\").setClass(\"box\");\r\n appRecBtn = new UIInput(\"button\");\r\n appRecBtn.setTitle(strings.get(keys[1]));\r\n\r\n appRecBtn.dom.onclick = (e) => {\r\n e.preventDefault();\r\n toggleBookList();\r\n };\r\n\r\n appRecBox.add(appRecBtn);\r\n rightAction.add(appRecBox);\r\n\r\n function toggleBookList() {\r\n const bookList = [\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 1 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 2 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 3 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 4 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 5 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 6 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 7 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 8 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 9 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 10 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 11 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 12 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 13 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 14 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 15 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 16 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 17 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 18 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 19 },\r\n { title: \"Determined\", author: \"Robert M. Sapolsky\", page: 20 },\r\n ];\r\n\r\n let existingModal = document.getElementById('book-list-modal');\r\n if (!existingModal) {\r\n let modal = document.createElement('div');\r\n modal.setAttribute('id', 'book-list-modal');\r\n modal.setAttribute('class', 'book-modal');\r\n\r\n let modalContent = document.createElement('div');\r\n modalContent.setAttribute('class', 'book-modal-content');\r\n\r\n let bookGrid = document.createElement('div');\r\n bookGrid.setAttribute('class', 'book-grid');\r\n bookList.forEach((book) => {\r\n let bookItem = document.createElement('div');\r\n bookItem.setAttribute('class', 'book-item');\r\n bookItem.innerHTML = `\r\n
    \r\n

    ${book.title}

    \r\n

    ${book.author}

    \r\n
    \r\n
    ${book.page}
    \r\n `;\r\n bookGrid.appendChild(bookItem);\r\n });\r\n\r\n modalContent.appendChild(bookGrid);\r\n modal.appendChild(modalContent);\r\n\r\n container.dom.appendChild(modal);\r\n }\r\n\r\n let modal = document.getElementById('book-list-modal');\r\n modal.classList.toggle(\"active\");\r\n }\r\n\r\n\r\n // Button Full Screen\r\n let fullscreenBtn;\r\n if (settings.fullscreen) {\r\n\r\n const fullscreenBox = new UIDiv().setId(\"btn-f\").setClass(\"box\");\r\n fullscreenBtn = new UIInput(\"button\");\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n fullscreenBtn.dom.onclick = (e) => {\r\n\r\n this.toggleFullScreen();\r\n e.preventDefault();\r\n };\r\n\r\n document.onkeydown = (e) => {\r\n\r\n if (e.key === \"F11\") {\r\n e.preventDefault();\r\n this.toggleFullScreen();\r\n }\r\n };\r\n\r\n document.onfullscreenchange = (e) => {\r\n\r\n // const w = window.screen.width === e.target.clientWidth;\r\n // const h = window.screen.height === e.target.clientHeight;\r\n\r\n if (document.fullscreenElement) {\r\n fullscreenBox.addClass(\"resize-small\");\r\n } else {\r\n fullscreenBox.removeClass(\"resize-small\");\r\n }\r\n };\r\n\r\n\r\n fullscreenBox.add(fullscreenBtn);\r\n rightAction.add(fullscreenBox);\r\n }\r\n\r\n reader.on(\"languagechanged\", (value) => {\r\n if (settings.fullscreen) {\r\n fullscreenBtn.setTitle(strings.get(keys[0]));\r\n }\r\n });\r\n\r\n\r\n container.add([leftText, rightAction]);\r\n document.body.appendChild(container.dom);\r\n }\r\n\r\n toggleFullScreen() {\r\n\r\n document.activeElement.blur();\r\n\r\n if (document.fullscreenElement === null) {\r\n document.documentElement.requestFullscreen();\r\n } else if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n}\r\n","import EventEmitter from \"event-emitter\";\n\nimport { extend, detectMobile } from \"./utils.js\";\nimport { Storage } from \"./storage.js\";\nimport { Strings } from \"./strings.js\";\nimport { Toolbar } from \"./toolbar.js\";\nimport { Content } from \"./content.js\";\nimport { Sidebar } from \"./sidebar.js\";\nimport { NoteDlg } from \"./notedlg.js\";\nimport { Status } from \"./status.js\";\n\nexport class Reader {\n\n\tconstructor(bookPath, settings) {\n\n\t\tconst preinit = (data) => {\n\t\t\tconst url = new URL(window.location);\n\t\t\tlet path = bookPath;\n\t\t\tif (settings && !settings.openbook) {\n\t\t\t\tpath = bookPath;\n\t\t\t\tif (data) this.storage.clear();\n\t\t\t} else if (data && url.search.length === 0) {\n\t\t\t\tpath = data;\n\t\t\t}\n\t\t\tthis.cfgInit(path, settings);\n\t\t\tthis.strings = new Strings(this);\n\t\t\tthis.toolbar = new Toolbar(this);\n\t\t\tthis.content = new Content(this);\n\t\t\tthis.status = new Status(this);\n\t\t\tthis.sidebar = new Sidebar(this);\n\t\t\tif (this.settings.annotations) {\n\t\t\t\tthis.notedlg = new NoteDlg(this);\n\t\t\t}\n\t\t\tthis.init();\n\t\t}\n\n\t\tthis.settings = undefined;\n\t\tthis.isMobile = detectMobile();\n\t\tthis.storage = new Storage();\n\t\tconst openbook = settings && settings.openbook;\n\n\t\tif (this.storage.indexedDB && (!settings || openbook)) {\n\t\t\tthis.storage.init(() => this.storage.get((data) => preinit(data)));\n\t\t} else {\n\t\t\tpreinit();\n\t\t}\n\n\t\twindow.onbeforeunload = this.unload.bind(this);\n\t\twindow.onhashchange = this.hashChanged.bind(this);\n\t\twindow.onkeydown = this.keyboardHandler.bind(this);\n\t\twindow.onwheel = (e) => {\n\t\t\tif (e.ctrlKey) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Initialize book.\n\t * @param {*} bookPath\n\t * @param {*} settings\n\t */\n\tinit(bookPath, settings) {\n\n\t\tthis.emit(\"viewercleanup\");\n\t\tthis.navItems = {};\n\n\t\tif (arguments.length > 0) {\n\n\t\t\tthis.cfgInit(bookPath, settings);\n\t\t}\n\n\t\tthis.book = ePub(this.settings.bookPath);\n\t\tthis.rendition = this.book.renderTo(\"viewer\", {\n\t\t\tmanager: this.settings.manager,\n\t\t\tflow: this.settings.flow,\n\t\t\tspread: this.settings.spread.mod,\n\t\t\tminSpreadWidth: this.settings.spread.min,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tsnap: true\n\t\t});\n\n\t\tconst cfi = this.settings.previousLocationCfi;\n\t\tif (cfi) {\n\t\t\tthis.displayed = this.rendition.display(cfi);\n\t\t} else {\n\t\t\tthis.displayed = this.rendition.display();\n\t\t}\n\n\t\tthis.displayed.then((renderer) => {\n\t\t\tthis.emit(\"displayed\", renderer, this.settings);\n\t\t});\n\n\t\tthis.book.ready.then(() => {\n\t\t\tthis.emit(\"bookready\", this.settings);\n\t\t}).then(() => {\n\t\t\tthis.emit(\"bookloaded\");\n\t\t});\n\n\t\tthis.book.loaded.metadata.then((meta) => {\n\t\t\tthis.emit(\"metadata\", meta);\n\t\t});\n\n\t\tthis.book.loaded.navigation.then((toc) => {\n\t\t\tthis.emit(\"bookready\", toc);\n\t\t});\n\n\t\tthis.rendition.on(\"click\", (e) => {\n\t\t\tconst selection = e.view.document.getSelection();\n\t\t\tif (selection.type !== \"Range\") {\n\t\t\t\tthis.emit(\"unselected\");\n\t\t\t}\n\t\t});\n\n\t\tthis.rendition.on(\"layout\", (props) => {\n\t\t\tthis.emit(\"layout\", props);\n\t\t});\n\n\t\tthis.rendition.on(\"selected\", (cfiRange, contents) => {\n\t\t\tthis.setLocation(cfiRange);\n\t\t\tthis.emit(\"selected\", cfiRange, contents);\n\t\t});\n\n\t\tthis.rendition.on(\"relocated\", (location) => {\n\t\t\tthis.setLocation(location.start.cfi);\n\t\t\tthis.emit(\"relocated\", location);\n\t\t});\n\n\t\tthis.rendition.on(\"keydown\", this.keyboardHandler.bind(this));\n\n\t\tthis.on(\"prev\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.next();\n\t\t\t} else {\n\t\t\t\tthis.rendition.prev();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"next\", () => {\n\t\t\tif (this.book.package.metadata.direction === \"rtl\") {\n\t\t\t\tthis.rendition.prev();\n\t\t\t} else {\n\t\t\t\tthis.rendition.next();\n\t\t\t}\n\t\t});\n\n\t\tthis.on(\"languagechanged\", (value) => {\n\t\t\tthis.settings.language = value;\n\t\t});\n\n\t\tthis.on(\"flowchanged\", (value) => {\n\t\t\tthis.settings.flow = value;\n\t\t\tthis.rendition.flow(value);\n\t\t});\n\n\t\tthis.on(\"spreadchanged\", (value) => {\n\t\t\tconst mod = value.mod || this.settings.spread.mod;\n\t\t\tconst min = value.min || this.settings.spread.min;\n\t\t\tthis.settings.spread.mod = mod;\n\t\t\tthis.settings.spread.min = min;\n\t\t\tthis.rendition.spread(mod, min);\n\t\t});\n\n\t\tthis.on(\"styleschanged\", (value) => {\n\t\t\tconst fontSize = value.fontSize;\n\t\t\tthis.settings.styles.fontSize = fontSize;\n\t\t\tthis.rendition.themes.fontSize(fontSize + \"px\");\n\t\t});\n\t}\n\n\t/* ------------------------------- Common ------------------------------- */\n\n\tnavItemFromCfi(cfi) {\n\n\t\t// This feature was added to solve the problem of duplicate titles in \n\t\t// bookmarks. But this still has no solution because when reloading the \n\t\t// reader, rendition cannot get the range from the previously saved CFI.\n\t\tconst range = this.rendition.getRange(cfi);\n\t\tconst idref = range ? range.startContainer.parentNode.id : undefined;\n\t\tconst location = this.rendition.currentLocation();\n\t\tconst href = location.start.href;\n\t\treturn this.navItems[href + \"#\" + idref] || this.navItems[href];\n\t}\n\n\t/* ------------------------------ Bookmarks ----------------------------- */\n\n\t/**\n\t * Verifying the current page in bookmarks.\n\t * @param {*} cfi\n\t * @returns The index of the bookmark if it exists, or -1 otherwise.\n\t */\n\tisBookmarked(cfi) {\n\t\treturn this.settings.bookmarks.indexOf(cfi);\n\t}\n\n\t/* ----------------------------- Annotations ---------------------------- */\n\n\tisAnnotated(note) {\n\n\t\treturn this.settings.annotations.indexOf(note);\n\t}\n\n\t/* ------------------------------ Settings ------------------------------ */\n\n\t/**\n\t * Initialize book settings.\n\t * @param {any} bookPath\n\t * @param {any} settings\n\t */\n\tcfgInit(bookPath, settings) {\n\n\t\tthis.entryKey = md5(bookPath).toString();\n\t\tthis.settings = {\n\t\t\tbookPath: bookPath,\n\t\t\tarrows: this.isMobile ? \"none\" : \"content\", // none | content | toolbar\n\t\t\tmanager: this.isMobile ? \"continuous\" : \"default\",\n\t\t\trestore: true,\n\t\t\thistory: true,\n\t\t\topenbook: this.storage.indexedDB ? true : false,\n\t\t\tlanguage: \"en\",\n\t\t\tsectionId: undefined,\n\t\t\tbookmarks: [], // array | false\n\t\t\tannotations: [], // array | false\n\t\t\tflow: \"paginated\", // paginated | scrolled\n\t\t\tspread: {\n\t\t\t\tmod: \"auto\", // auto | none\n\t\t\t\tmin: 800\n\t\t\t},\n\t\t\tstyles: {\n\t\t\t\tfontSize: 16\t// Default fontsize by 'px'\n\t\t\t},\n\t\t\tpagination: undefined, // not implemented\n\t\t\tfullscreen: document.fullscreenEnabled,\n\t\t\tbackground: [],\t// Setting for change background \"viewer\"\n\t\t};\n\n\t\textend(settings || {}, this.settings);\n\n\t\tif (this.settings.restore) {\n\t\t\tthis.applySavedSettings(settings || {});\n\t\t} else {\n\t\t\tthis.removeSavedSettings();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the book setting can be retrieved from localStorage.\n\t * @returns true if the book key exists, or false otherwise.\n\t */\n\tisSaved() {\n\n\t\treturn localStorage && localStorage.getItem(this.entryKey) !== null;\n\t}\n\n\t/**\n\t * Removing the current book settings from local storage.\n\t * @returns true if the book settings were deleted successfully, or false\n\t * otherwise.\n\t */\n\tremoveSavedSettings() {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlocalStorage.removeItem(this.entryKey);\n\t\treturn true;\n\t}\n\n\t/**\n\t * Applies saved settings from local storage.\n\t * @param {*} external External settings\n\t * @returns True if the settings were applied successfully, false otherwise.\n\t */\n\tapplySavedSettings(external) {\n\n\t\tif (!this.isSaved())\n\t\t\treturn false;\n\n\t\tlet stored;\n\t\ttry {\n\t\t\tstored = JSON.parse(localStorage.getItem(this.entryKey));\n\t\t} catch (e) {\n\t\t\tconsole.exception(e);\n\t\t}\n\n\t\tif (stored) {\n\t\t\textend(stored, this.settings, external);\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * Saving the current book settings in local storage.\n\t */\n\tsaveSettings() {\n\n\t\tthis.settings.previousLocationCfi = this.rendition.location.start.cfi;\n\t\tconst cfg = Object.assign({}, this.settings);\n\t\tdelete cfg.arrows;\n\t\tdelete cfg.manager;\n\t\tdelete cfg.history;\n\t\tdelete cfg.restore;\n\t\tdelete cfg.openbook;\n\t\tdelete cfg.pagination;\n\t\tdelete cfg.fullscreen;\n\t\tdelete cfg.background;\n\t\tlocalStorage.setItem(this.entryKey, JSON.stringify(cfg));\n\t}\n\n\tsetLocation(cfi) {\n\n\t\tconst baseUrl = this.book.archived ? undefined : this.book.url;\n\t\tconst url = new URL(window.location, baseUrl);\n\t\turl.hash = \"#\" + cfi;\n\n\t\t// Update the History Location\n\t\tif (this.settings.history && window.location.hash !== url.hash) {\n\t\t\t// Add CFI fragment to the history\n\t\t\twindow.history.pushState({}, \"\", url);\n\t\t\tthis.currentLocationCfi = cfi;\n\t\t}\n\t}\n\n\t//-- event handlers --//\n\n\tunload() {\n\n\t\tif (this.settings.restore && localStorage) {\n\t\t\tthis.saveSettings();\n\t\t}\n\t}\n\n\thashChanged() {\n\n\t\tconst hash = window.location.hash.slice(1);\n\t\tthis.rendition.display(hash);\n\t}\n\n\tkeyboardHandler(e) {\n\n\t\tconst step = 1;\n\t\tlet value = this.settings.styles.fontSize;\n\n\t\tswitch (e.key) {\n\n\t\t\tcase \"=\":\n\t\t\tcase \"+\":\n\t\t\t\tvalue += step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"-\":\n\t\t\t\tvalue -= step;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"0\":\n\t\t\t\tvalue = 16;\n\t\t\t\tthis.emit(\"styleschanged\", { fontSize: value });\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowLeft\":\n\t\t\t\tthis.emit(\"prev\");\n\t\t\t\tbreak;\n\t\t\tcase \"ArrowRight\":\n\t\t\t\tthis.emit(\"next\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nEventEmitter(Reader.prototype);"],"names":["isValue","isPlainFunction","assign","normalizeOpts","contains","module","exports","dscr","value","c","e","w","options","desc","arguments","length","call","configurable","enumerable","writable","gs","get","set","undefined","Object","obj","foo","bar","trzy","keys","max","Math","dest","src","error","i","key","forEach","_undefined","val","object","Array","prototype","create","opts1","result","process","fn","TypeError","String","str","indexOf","searchString","this","on","once","off","emit","methods","descriptors","base","d","callable","apply","Function","defineProperty","defineProperties","hasOwnProperty","descriptor","type","listener","self","__eeOnceListener__","data","__ee__","push","listeners","candidate","splice","l","args","slice","o","isPrototype","possibleTypes","isFunction","classRe","functionToString","toString","test","isObject","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","definition","prop","r","Symbol","toStringTag","q","dst","ext","extend","uuid","Date","getTime","replace","random","floor","Storage","name","version","db","indexedDB","window","webkitIndexedDB","mozIndexedDB","OIndexedDB","msIndexedDB","console","init","callback","time","now","onerror","request","open","onupgradeneeded","target","objectStoreNames","createObjectStore","onsuccess","log","transaction","objectStore","put","clear","Strings","reader","language","settings","values","en","fr","ja","ru","vi","ERROR_MSG","UIElement","tag","dom","document","createElement","add","argument","appendChild","isArray","j","element","remove","removeChild","Number","isInteger","childNodes","children","lastChild","setId","id","getId","removeAttribute","setClass","className","addClass","classList","removeClass","setStyle","style","getTitle","title","setTitle","getTextContent","textContent","setTextContent","text","getBoundingClientRect","UISpan","super","UIDiv","UIRow","UIPanel","UILabel","htmlFor","UILink","href","setHref","url","UIText","getValue","setValue","UISelect","setMultiple","boolean","multiple","setOptions","selected","option","UIInput","onkeydown","stopPropagation","getName","setName","getType","setType","UINumber","step","min","precision","onchange","setPrecision","setRange","setStep","parseFloat","toFixed","UITabbedPanel","align","tabs","panels","selector","menuDiv","tabsDiv","panelsDiv","addMenu","items","addTab","label","tab","UITab","panel","select","transformSelector","display","setLabel","size","rect","width","transform","height","parent","button","onclick","preventDefault","UIList","expanded","expand","collaps","UIItem","len","box","unselect","UIBox","SearchPanel","container","strings","searchQuery","search","placeholder","onsearch","doSearch","then","results","book","Promise","all","spine","spineItems","map","item","load","bind","find","finally","unload","resolve","concat","link","cfi","excerpt","rendition","Toolbar","menu1","openerBox","openerBtn","prevBox","prevBtn","nextBox","nextBtn","blur","arrows","logoBox","logoLink","tocBox","tocBtn","bookmarksBox","bookmarksBtn","annotationsBox","annotationsBtn","updateBookmarksList","bookmarksList","getElementById","innerHTML","bookmarks","index","bookmarkItem","bookmarkLink","deleteBtn","querySelectorAll","removeBookmarkFromToolbar","loaded","navigation","toc","existingToc","tocList","setAttribute","tocTitle","chapter","tocItem","tocLink","toggle","showToc","bookmarkBox","showBookmarks","bookmarkItems","targetItem","from","querySelector","includes","bookmarksPanel","removeBookmark","annotationsList","annotations","note","noteItem","noteLink","removeNoteFromToolbar","showAnnotations","noteItems","annotationsPanel","removeNote","update","findIndex","n","centerPageCount","centerLabel","curOfTotal","curPageIndex","separator","totalPage","menu2","backgroundBox","colorPicker","background","oninput","selectedColor","openbookBtn","searchBox","searchBtn","bookmarkBtn","fullscreenBtn","closeBox","closeBtn","fontLabel","fontSizeBox","decreaseFontBtn","increaseFontBtn","fontSizeInput","fontSize","newSize","parseInt","isNaN","openbook","onload","storage","URL","location","origin","history","pushState","openbookBox","accept","files","FileReader","readAsArrayBuffer","alert","searchPopup","searchContainer","searchIcon","searchInput","resultContainer","searchPanel","async","query","trim","noResultItem","innerText","color","padding","showSearchPopup","locationCfi","isBookmarked","fullscreen","fullscreenBox","toggleFullScreen","onfullscreenchange","screen","clientWidth","h","clientHeight","body","start","atStart","atEnd","backgroundBtn","activeElement","fullscreenElement","documentElement","requestFullscreen","exitFullscreen","Content","prev","iconLeft","viewer","next","backgroundColor","iconRight","loader","divider","overlay","cfg","flow","props","spread","spreadWidth","setTimeout","TocPanel","generateToc","list","ibtn","sectionId","navItems","subitems","subItems","BookmarksPanel","headerLabel","clearBtn","clearBookmarks","disabled","renderer","setBookmark","appendBookmark","_cfi","btnr","navItem","navItemFromCfi","idref","spineItem","AnnotationsPanel","clearNotes","notes","toolbarList","toolbarNoteItem","toolbarNoteLink","SettingsPanel","languageLabel","languageRow","fontSizeLabel","fontSizeRow","flowLabel","flowRow","paginated","scrolled","mod","minSpreadWidth","spreadLabel","spreadRow","none","auto","minSpreadWidthLabel","minSpreadWidthRow","paginationStr","paginationRow","pagination","styles","MetadataPanel","labels","meta","toUpperCase","Sidebar","controls","bookmarkPanel","annotationPanel","NoteDlg","textBox","addBtn","date","range","contents","Status","leftText","rightAction","appRecBtn","appRecBox","bookList","author","page","modal","modalContent","bookGrid","bookItem","toggleBookList","Reader","bookPath","preinit","path","cfgInit","toolbar","content","status","sidebar","notedlg","isMobile","some","navigator","userAgent","match","onbeforeunload","onhashchange","hashChanged","keyboardHandler","onwheel","ctrlKey","ePub","renderTo","manager","snap","previousLocationCfi","displayed","ready","metadata","view","getSelection","cfiRange","setLocation","package","direction","themes","getRange","startContainer","parentNode","currentLocation","isAnnotated","entryKey","md5","restore","fullscreenEnabled","applySavedSettings","removeSavedSettings","isSaved","localStorage","getItem","removeItem","external","stored","JSON","parse","exception","saveSettings","setItem","stringify","baseUrl","archived","hash","currentLocationCfi"],"sourceRoot":""} \ No newline at end of file diff --git a/public/epub-book/alice.epub b/public/epub-book/alice.epub new file mode 100644 index 0000000000000000000000000000000000000000..9ac6ba324a426914cb5839f9fe1e709b70add60b GIT binary patch literal 536540 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
    31O+Bh>FwYMj)o~G7EW@2J}~jN^GbsgP}N%a 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 %B3MrQO|bKc-$+~Y^FcBD;qA3^YV?2cMcup+ z`oiUhw(tkhk#63yUF)#sB7!Htq_^;Kb78TL z3ne{t$IINXkdG<6JMN3g^eb##95UL~c!}}b@-qqP;0icDK0@FI%GmRasV&>%FBQH0 zi^25NB+(!E8QY=?f<+%{e>NX7{y2H2{Ih$)27O;(xAoAh>rwzYFhc0h_8i_OC9E1HOOPXK1w ze8J!Lc=8-I#_$CZ^|KtNN+@`IKgC?LwYxECX7+8Jc?+#BGV#T8qre9357(J{eF+He z7~3HR%)4R-sO!ft+t8fzuGPOIY|N(1HO1tConON=daukv?yw+c)JS=O+#UwD8MGaU zr&c27c5ZaXIM02ku$)Zgk3hQ#HDiF%CDL8DcWoA9mXuB(kDAtBja0X?_8b|4#MA^; z>%^!|BmRm~+wtuz+;(N4wlBOidMn}?tbO}A--%aGD$gXGN0IdMCHax-_1N~}>3dy3 z+r=UNIX(v*6DN{8k~7%cD}vGK@g!H0Scvh8Jo%V~9y{%2%J2GF}`UpGd}i{V|Mr zP@rE{hzu$H7`%c}OoF(JDyQBicUypW{%qa$rDHbTfs>F8#0n%Ihx@-lT;lzs$OQ{Igf-O#qZa7L>B~8&b~c;dyh)*eH>50F0BRA!BzU<4Cn?9a9+H z!|K_m1SvgWK2KxyPXEUo8OrA(1goAuU!@HkoV!-GV^*SGXqMV79v;OW&HE9S5Dk@V zN`THgcZ*&goKlE=vLMM)juy-(VE$$J*De#Bbzyx#(w|6q@Q`%j)>_yD+xszADwM|> zx0jQNR>^MDQsUFaLit0l`|<*5?rUi&+E=}u-ucX+!TI`qZF@|!Id}DTiiWYLFo=|b zM52;NE`&eo^w&sZ$pl?pf8>33OAJ=Um#=YqbFnMOIcf&(jv<|OgHHe(bfy$H&cq7cW!`z(zK115Wgl7Zu@dliel>2dg@k ziZAzlSH!i~oHm$ZySbmwreZzmo&cu-d9(VF>~SA}R8=y=KALpEN)?K08x%H{y*XRA zk8Q!r7aI)%=FK}!Uh+og!PksAzd4TK=`ZasRUhi%UEB1XdGRIZTo-8?PXIkx4>|Vj zaAlF_RKC;V6qwiGn)P(0&x6rw+qNp(>rqp8lS44tu{Ro~Y~$K8aSL~n=n(~e^uY(h z&m~8Cnd|a-lYTLLRdN1dWUyU|#RQ!ao8+T&{hr6aHgxA+S30RBXk{I4Bwl;2he55G zWpv*p*>H9G+U``b(|&&XulV$Mfn8_F z5SLBzO`6~QOP#wX+5bX+)7h#a3m-XfQsu_kKwRLx#_`wuFubuEkm`v-^M_wcby zcve;jk%ZqJltP^zrCzO_2>2pYEcl6Cg=3BLQwD@&ul!VeYnMD`80JdG6OPs7fZX%6X4Z4Ix6aiGYKvkE%wYe`k108z@_S=pICsn2S$_p zY8N`|q*f2+8a5!EW?VBDb^_PkZZ_XV!-)Pe9F2!+-cfkP$Hpxt*6Q7gxi(v09M_l8 z7W*~E2Kbq3j}j6l`~⪙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%0A*YTEji&K(nO0XO6t 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%0DHREZ-Ci1 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 u|ApP@eiw$D=feZw=Xd`PsABjV@ZZ^ { + reader.on("navigation", (cfg) => { cfg.annotations.forEach((note) => { diff --git a/webpack.config.cjs b/webpack.config.cjs index 64b226d..5c6d41f 100644 --- a/webpack.config.cjs +++ b/webpack.config.cjs @@ -18,9 +18,14 @@ const config = { usedExports: false }, devServer: { - static: { - directory: path.join(__dirname, "dist") - }, + static: [ + { + directory: path.join(__dirname, "dist") + }, + { + directory: path.join(__dirname, "public") + } + ], hot: true, liveReload: true, compress: true, @@ -77,8 +82,8 @@ module.exports = (env, args) => { } if (env.WEBPACK_SERVE) { - config.devServer.hot = true; - } + config.devServer.hot = true; + } return config; } \ No newline at end of file

    Avs7t^i^|Dqx#d3Yn(Aol491R4Fvt( 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Π8}L#ZBJa&WdjBB$i}MDIZt`Be?0x~s$( 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�kyt(eRCzOR&sAf;*V%f0d#ca)H2e_vFtY1`2bwE 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 z z>)Bh~9a1z+kMGI4$yx*t?%j1{LrAE8os>XUecAR*A;e5bFhhUmi7!uuo@IHGjH#?7 zi4sFpmps6-^b^Wr){zTi#JnMeIX0SbY($xAt5kX(^o!Z??(w_T>H?$a&rn^}sEwOI zZ&w-^iK5VyrVLelK2nmpig^cFPA>3RL67a}&Q=_$=cG_R0T7d~uPEgW?xVvXKJ|j2 ze{-Y`2z#~7{9h#o) zdZYvsbYnVZnGz{#9~y(mxQ&XA+~7A_Nd0{Z>aWpEjrdxzl1j53s$oBskg#10rmYa( z0DDymr7n89=8q;u`!P%@eXbP(90H9T2?yO~O6$7!^E=Sb(w=i?z4S6GjA2w#4fdw) zGv%=6VMC@kAh<~#6|Fm89Q+Q?4B-S#=M<^9-5Xow7@BS35)bh+I%T_ZTUqJTIC zJxuz0^D(|XYd#&RqG0;fVKe7$Tuqu9Di+H!1>P5TTSFK>%DGnF(joj3Ezq8ZZ~+ib z_>6nhjtEN;N(g~GIj!e1x&`j@EiQO9LsEulg?as=sN3s2+jil%ej;JqC`RZ)rmnnk zf->D;0ux~Zm65N%z(Py0^N(=wBWIy>I%XuN9JC)HjlCYx&$ z87mL7T(2osL6lg@A;Qgyj9F)KpL5{UUfyEWoa!l8vD6NgdeXWvPjcS8;!H}{Qdb!8 zIW+u0+LE;J=A0>V6X`0dW5xOL;++#3D#ilQEQ@JL9fdeYoC_zxeM;ob!wOBic@Ov{ zW}USlRyVY}MXI@xJjYIsJUn@A^-5;8X8c%IHe998yd~0-g9i(QFD66W&5gSb&MJv&BkF=rk-eXw>xUYtvxrDUd>ZWhVl@n z;OAlJFXA^ec(Iu4R`;G3+bs~6`ULQB)!_YsUzA2A^)1y`KU)J#J&inQWAx+-kW$Ui znunc&aNtLu2jhyhc9}je$vD^5=IJmTvElu!1!sADMHjzH+VIL^qe;(ATL|O}eziDrJU-Mi znFtprUlj3*BXt#Z^^$a7ThYv)RKrlMLGt=2s-~Z}i}&z6$B%xXy@Jh<*Dsx(wW;;% zDQcy&$y%9`oi8->ML1U4nTFz)fq1W6rH_S9)SyaxoI!`uf8XS22<#v1SyQv~%IbS3*I9_~6j+ANeM(3kZ z?24FK_bzON?X}oD!lT9(=qyhYEI1IqEy>+Ug?#iWYx>mj#khcJp{fh@=6gWQ<&qZy1sr!$3Wbi6I^FUtA{* z9dC8IPNNTDj+S>u88OL<5pmajL6t=OKD5-wY^4ECba8ebYZ86*45<#P!$MVjg@V3B z!e4dhe0guFbactM>2YEW$0Z19G2%C`S`j%%5GG3kPn zAnrQ3jgm(;Y6_FzW`~N_Y2fH)KjTQK>nEuv@$Gr?Z-9(Yb&xn3P`R=a-ODaZ`lA!~ zN!O-ZeI~4u%z;%)g~?3edw5`kOW(~T)OuYyccZu~V}@IBKa|iPE$Nxa&U)+t24v#V zO~0QSTQ?&mWrZIssYzG#v+ZTk>B`*As%H%UM9F?)BAEf$RwD9w;75`Gv1)ZZqkdoM zHdl<}$SZWs`d(sgY(=PtKBj3L8wMTQq3dP+-oP<}(4miSd^5RdXdzu+r$6<6=6$z# z>h=0{zIE7pi9EzRumKp{t~B8PW2pd3jWmTz+6KpEIly5`rThSAM;35JRjxApQg#iT z<6Sy={fZcQ_`xQfJiTlpW+f6G+hdj9=g0&3uDLbtMknQ1xJB1% z6!IGoRD-jj2aOfFa*%JLz$a@Iy?cGMJi{P{Ao^gmg}Hua2mk;uO4aT2@#RUi{zbv` ze{TO&&G}y!zm)y;ArC!@Ef2lk8H)c?sCcGnvQhB`^1i^J=1H~;7f6SVF-dk$(jPu= zeL&6s&X{@GTSVAfDg2fA%4dP+VhA~O+({{Z3C%fiG812Cp^wv0T<%qo`imX>B>ZqZ z8P*@ZmleQGnsSdyUvjW5k5!J(ynIt~Qp8c4j$G?0wwjB8p`JLV`>=zccT4Jx@EPTs zv-UI(Q6}Ma*=-xq$zr`v-%{alcp_qTRhGLv+45j$LaupNyG@Bv6qUn*AV+2{0R3t;nZKZKOHp^?xHOQKP<5%%O)!<<8f|x_Xgl0Zni71JDLT9Vgk@nP89rbR= zn0wdC-mrZs@Y`$ohDYQM{+_lep)jS2yn3VL*tKs0!G}6W&ZSeA<5uhSAo4$8p>4Rf zo!}Dz_Y}mhD?k>#dk&F9QEo5XTTbIC6&N)Z_v1a86@Zf+BSbj#s#GyQzX{gd(E^^0MN+uJdC-UyR@>)1D3zdILSaZ#6Dl(+5?(Jx}$G21Ferv8wKb?qxc;FYYY|a4pO=Lqb6Y@pnsc^7# zi1_+FB4CVfxW+&-%PZjJSFb6 z@F$N(=Zk~u?Ul}DXIk@j%TsGXeDxFK|f@%RQt-*qrEP^TYX$^#NufGG`eB()!{Bmpvzx1a>tt1@n zs6YA^iGLP2(DPytAGR+W8^fM$CE=UAV<~q)e7vq_;^m%$Jja;~Ssrgf=g$MU^m%ac zO&S6g3(`r$HsTZ%Vj4m~XKilcw5}O}h5)uACZbX@5R_6+S5@@Wg&~HhBOy!Lch@LxaZIm4ny9$+ z!#MHFJp9jE=zrK+S#Hl~=cVe&4^ya$_z%jKBJUSL+|wYNwhWp>+pu~c=4E=2lZ7ci zf9rQ&s!1F&`yf1yBEJ|d`^NnZBOrk?XFZ0UE*G}g;dw?%DW^w5gr$|G4S$TIkwxf) zoBKW@h^3(JHvn35BBT#F%JbRKlXh5s{rV4Vq#3*(x)|r4I4IPTc&G^c1jd&q3wp0+ z=+G3ZFjvC}P0vrV{b=RQhPh5b;CHKmeNUDyU2$$3S+?&|y`Bi#dc7mU{)-O;rC^6P`rWbqySPSsXKOQ|*P&yT%Ph;@Vr+t% zu<5lV-hmyj6uVvUuB$PaxdiIW8cm~~SnH&?L@~m&Gb!8RJ6S(j{I0#Nj$E9(xwy!n z@IK5y>%l9E@&|_f4*2DuYl6grFEp_I6-UT9`%aiH!Xvo1lHB$tB=6T~Ok82ibvYP3 z72tf}lHvHMV*lYu+!euex)TOxz3E8BhU_F4FU~uaeMvrQq-xdDH(?}rjWnF^M)R$0 zzuuHpJpEN?@IDX}0H%=3I1J&*jH^L=E6345XW*QOPL24IV-n-(QLdAW@BNU|%_Os>0PGKeC~%@A4Y65Y%Pl zDktp6&YaMrx7DqftFMDU8f5`0Br;N9G~Zn%3L#JXo8b%OGYBr1FAsxMaSZx&{n)#g zw4pHznhs`=q8|fr8p>4M()z?5oekrZ1kNWbUo9q09EuTAI6I0|Hx-Aj9`%`biYYh0iUH1kS$~zShJw+{FQgn>3aqubIx%eS>eOFSmAr2ek z658R9)7B7CC9XFk&>mf*-vEztNsm%{L>M&n(`Kjifkv9PI%7Wuar$(M%ZNm+QO=@R zt!(#YUXWk#PYoE+?Q$G~DFn{8DX%my1JVpCqyyBb{07`{K9Hy?K9F!{dJSGblMr2M z*M#2SUp~{T5@pSNgGCZb&Uy3x4Xj|>5uV| zbSzSuRgZrItOq%k?VkvKb*S6XaMJ8Br9Jm0`wlgBLK&V_^-T+n@LWgmE>|ALtI2bE zQ1u$B65OhXTQ0o&kP46A75sTV*2QN0^Ebf8OT_!8W}h_{xP%GYaOK`(DSnWIrP<%HzlC zicO<2`(MX2?*2gfDsda2 z@O2_Z3|3l@zZGzjDB3#F3Thm{sLpQi)Otr$M)|p~q)mRUQn#cjHLnyFzM}Uwu>Bn6`fQ^1RMT7fYT9QJW^;RIEG4NN)GLnFtNUaTz6lb$f{giQ zIRW*nwZoF$)C1|l$t|Oh7wgC{N{lbpFg=Q~U=!kVM@`W}yNHqSCS{B(6Hd7%dSU`hqdx_egaC&e=V>f0+0-CtD_ z-+k|ZXwyyjs;}YSMxNSE&}c;FFq<`D;pxBcqg&$}Dm!u}%H9|k=_5jMd5KVvpQq?j z1s7RqpfLqevY@e|cRmjCi-CWrE>W%+By7vJXd>a9q#tX_*XK3b3r?KGk)B(v0y;eL zahm{2k)VnG1}JBG_WcH&v@Nfty8ZyA{#y=DMV!5aiiaZEZMbGZIz{I&VuhtDgx*WilcHH8R=a}8Iaodd@C*>-rKLI$NMLH zw^ol$09zOnICi4Oje@i3eNkN7q!dRH^>Kb_Gt8a2&}b2{CjFCoizpJx|HQ=&TX{ec zYTv&x`BGu#NP0H6ZX(%v>E=4gHRdeqZf1PrL<9(T{5l_xVyC-t{0-1+1G&ar#D1N- zhQzDl^Vx5LQ7Vga{hw_&TJG;hz?6e@Qil}kXGB$JcJLknw> zJ)7}`c-U-C6L@sF+`Mr=XIA z)W&X!Y9=ot3xiK%^Hub6*NzEh;jv0*NiCY>9;>Xii8lqpK+Mu+J;IcrX; z7%qxuh(mrE=A=6Zpf?l^(Sceyk3M8`#wCN`G~dLl#}*Bq&*8n9QUfNi;^`gNV2k2N z#x@>A2dUBar(l}8>Cs(Ig-1BqmEn~8arX}Ry|=}ktDW{dtiVt0dZ|yY z=Ue$&G0*dexll}IZXJGC`_6)*C!Xw1*2#Q8%WLPyCi$66dzbsFGnXr``wM`vsyy8J zsu9snWM4e6kgQB-i`>jBvDb1!KX<|p6`m-4XPSFL%lV|uORVRLmWcDE{sMOs#1FW{ z*rXLvHyk~0Q1n_BQ$9WuGs`j*-Xavscg0p6BZ7~4-GVQvHr(kAP{7-^G>dmNp!iA( zYisF(e$t8K1TVdv!GN^&k~~6diBF6BGDP=1?)C=T!(014XTl*C)={=}y+_qO!I>G| zFP_|A0<(?6E-F0gHpU3&gb|<=T98*h8t zy}-fiEfet0U(Wqe>h}@!$Ff##`H@)4J#;=ebizFEMbn-kESDRg+h@y+92fWndD@e! zJF=*K&{0#-JnCi5u@F;-!=YExg=zHY8yWq_70P1EYRXdO-dGSR)oOlVdef*K&x}xd z0y*x^pjsP4Ajh6y?ql)Q@sj5v-ZS^T->022} z3ucLoipzse?$dm()?6%q|-S_35RNmG7 zR(7>-$GKFoMr5jHooJS{?Tptr2B)eC=zvI#q;T5f1KS&}YG1cBwvjKq?G;#uS?56yqUCCdp1!3fO9yHD;>K^x`*?9f z&~ce8>sfP+TxXKnuj(#YleN#U{Aq|eU)hH%dmrDyyj)}4v)76>&sYlDA*=C%EiCxX z&{sLg>vCEAERnJy9QvkaKe}57@|GJ!kv9t*C-@2XH9C#+nA+Cl=;bw;v+i`k{N8Mi zTP$7nVD3(X6OmU#Fe+r}WaiUMck|r9JTwy)kJn!=i<#itlDdm!;Br1NlSj4R;v&WG zBYCSEL%lPZ9pK<=K}(@K#r>^f8Cy|d8D|XSI+Eb_N<6~HvLxsF$tt7?+}GM7NB@?i zrbb(A+mhA~V~vcZe4~G!$C=q7HO2^0+zNV&V%zEU+_u~zMawMk2^rw5R<j9VS4_*Z7XdmSCfqfIe!()JT=r(?-> zH`crN)Cc}yZ5eVn$C>tFc-r3V!L#05+R$U^GS)Ml>s0aR<^4Pp{SKAWLFsMR=V&VR zng@QtGqsEM3j+2Hb_;N2h)Z4M)S$?hs?6pbub9WK0}@wN#uDGAmhD=SkZXotpp4Eh zgsSu6gq}2?qBY$UKvwKqa$l=GTPwNJ zW#J8hxx?I24s-aj;A-WCvRJ8w?ovNnE}TiOSkKR&d*W6m<|vL%su6E#FKBh*AxdB$ zZuKInt)X{xE3pYFmLYB%(VXk$h$0K;cZSUw#bf6z+2xDS76f;OtqFb!SC7{*!3b&L z``&!UTA`GZ#qnCzP052t?qsMAuS0KA2@5W=i+VRV?2TWFNxn6yTS^yKG!nJ1oR{)a z=`!76E}B_;F_3#(??wt8)=xQNmo&gHsUUC!9MWhcIR*<7UEWUCZuv`MX_`{q!{`h* zm*k|#(P@$YHEN~FLKLO+mjz&{!*}L-uPC-6-v6z;fd9EGA2V$f7@4v6b`Aj)g4}kX z_mNQ{d0%lp`+@)J{+yiv3BP)Tf*49DInnP-H4M{A%)Ij2wzR1mwaBZ?we|5>gBq1A zD76e#PT(3P2pI8{TR|MElq~|>Z6H>JS<05q40bqZp`_0jh_gIKJ!)D;eL7f%nR}PT zmlCY4*e1^dHcJ!K^YdZyO^=L=M&aIe{ua*OlxDPNRZ-P9b-j$zzvg|foEg=lwij2L zlCsO4%8D;eCZ@Y5l>6O2kckN27&;tsQYG!F%g?4Ovp)vWB`5hf`P!64 z#l~$3Jji;>;#KRXoVLF{U6c!CqzR^Z@g^p&LfTwOMhTD{V*$1QVSP-40{2mnPwu{6 zu&e*1fKEz9U$`1qz-{F7aj?Q@5p1WokObxstj0+t^CpP@dZ4bZk|SkgV%zX;|1{mw zcywDuh1XNm%83Y<;aX_a#2AeHF>3hKC;pD1$?Hy!k62*G>4PV0yt82?<{9g!BS_6w z(;e4Ba&kZ*ji8okQiFIZ)yw3V1ktU!@)gocn>^&uIr7c<;EvJ|)z(UODQ(P6KhVUz zv@0F~adrXP;OJB+_hr_veq`6etta9+fOt7;%QBT|3{T4qjtLv@&p6g2L zfJ^a|k0Q-|U#w-m>zl6M=`ohb7fn_nI?~9&I#bf za%9<>d!n5xGqh`yW2BLVU`6N$Ye}&^` zkFw3$x0F2^ul02;a4lcw({rhp475){TvwD%$1fRT4Gd>ApB@9y`$0eUN+|VsbC+Hr z5%Jg8Yc2QH9|m`w)^aP0t0>wWI zQK#?vl6xk8jHKeY97#Po1l9ht(HhV|3Bvsw`p~iiKD*{&$&sU2jyLE*YP+U|<@?FH z!8rL<#8huus7YN#nd#4$z&JSAmXks$Ua5Zc#Z|pnnE_!<-?#nsAAziS4)iUK&tei6 ztv?Dh{keyZhLexoaq%{1@!&Sb>xq7^<1G+Y9M+R6?6OGk0fbhkw8aXq-uLrt&iMMI zwJAbgXyjw7=iN+sSSC?m^sa`2pSE$|r9_e|yu$c^cWK$6_XSL7xrB)W8x3!AQi`{v z{ugNHC*mEl@jiL41#ywx<$+pz7&va*5*@c$MSQ>MS|q>b8@P41e|cWxCH&%j@M4WW z5j(~-ooD|yuwiHKv86oM>vC)9ZlaPpo~vx-Y91)QgYye~32$G9b|Z<_JttWP!n~{y zH>FFV&@wsZ>=LMjxnw4#Cr!Xm*;r!VNZ132;b@WxU36SOghv0p)F!**6}}kCaQsu6 z4Td7RsP3>)BSC_Kj8qum_r;kdy6UFQT{!#P&1(va;Wu@3Z!W9&+-L2@qeNJg=$g_bO4TQl;I!$<$tSSsF`Q^TZSXzuUy^# z3+*3LxBkk;n*n(-vAL^kq}HG$YeCl+@d!W^)%_>4W$vP`bW7k5Dv{p+GMOiuTE78i z`nM~;0qd4)zd+CaE{vJ$`pX-N*JSb4YY*6}zXAOkm`oUR)~Ur0-|DYmzX9FDT|X*b z)l~&J{RW)!J3nv)J@3BUpNS!`z#tR(OE=B?FpI-K+z^}`c&39!gv}Sn1|SOkhmSnc z@CypW>BJ-39ab5L)g`phE&Iff2j~D%=p>l7MsZH$jhUF6aaK#>VNGM z_!pxAa>4t+fA9lowRvk~slY^1ctVqz#ZtWl`}X$LUQ`x=M|sy@OpZU|dZ0x^YOaATG^P=b<^lCMR`Ze;1wftB*?io2tJK4v2`kD(b%c2Zy+7E*tiEJDnQ6N$Oi%j%(AN@FjEj_v3v8 zh~pXlgTAPLn#}($;okze>94l_VI%HC?k-M0{1he^(BQZ=d!m8CRv!3o-BI@c%l^l* zrvE zO{W3?!Oj8z5dZ)HX>DO=WpghuFfcYaE^2UPXY9LmP@K)uD89J6yZhqqECg8y?hqiz z65L&b2A9P(XmEE)fFO$|OMu`IGz1OqaPz)(&i9?~-mgymez)rWajS0EZq@WWEz>hS zJJY@WJTE+N0LT^n>}>%6Fqjj74){-aJ_HcF@V0jJ2Ot2D|KL)8x;BuU?Yz9)BzSpU zJb5f_T&*BH)~?RHewJ>${5*WT04Z5NH%n_rh!?#TShXq`UtC=LFBt*?+%ih(6{x96p%GKLTnvwCJCOEsPtN(}K|8};Voq7LB z?dhchvHkbdo_hXn5MCXKr>nPzHRKOD)4!A|NC#2ohCzA)=%x&d(2$7f=)z6b31PK;lXQ0-%4&`0scXKni^P z3c~#Idgx1Q4*Y|9r8~QBl#curV>QFfp<5 zvHu2qY+O8iJX~xdB4T19B5EosDr&m_00cBNG#qRka(sMpN)iGRO1l5Q@Z1j|Ku5|) zG(tik03Z?|AQ2!u4*}8u07N8&Kk%PFAjn84sE7z?=>N6%FF-)V2OuIMAR!?lB4MFp zA|e2=5D<}&Q2+#l3`D5>#2`j(0TN4ho#t;$ogXgiznYDUsyta1j0vHp961 zYr8l{cRGD+T^Mpe3?+aR^mXSi;TD#Lzcnw{AG?tj^dE>GeV+j?Z?8x~k)Hu(&w%A3 z=_rc<+4<0`JyMuX{oF!_2%~*JH&a?;PCr%V4Gxmb=Y}8e5Bl!C&>CxQ*zQiARuK+4 zpD>aq4m#zBRGhJ^69vrVH80GRhiyPCL(hXB>Qg}X#c;-{a?utcN0Tf ziJcw-fqvI?&bPQd9?QW<|J&03AKCv!WGI1>-&=SgISNjgnYMI1Phs&02fyKTcBT)q zmv~nW5l2{|@1BaErVy^8`Ual?TF(I6u*J}T?~i|cJsG#i_3w>hNO9NlR0z91DRTT9 zH>aBi2JbxsviHd0`nP!Le%DF5YF#UlV*5}P25_w?iU0{WEVLpnt;is&z^~vz!IuA) z{CJCSNS}7@^*QI1;7AM}UXd^;vVbx)wo=LhbiTno!@HwFr?c{{_>@cqB;4Ng(rtfA)1D|5DSlcBI&@@#lS#56Nkr2d0quJ`~q5a6?Ev-p+i zRBnbXWyTsGgY9SiSh9KiH>1d??1y#3b7j}$6*y@7x|t6f0t|{rNvIppT7uwOCR%0= zCB>|Bc%+b+n<3Dr^t;nXoBV{nZk$mQPHxR{g~#Q`QajqJ08PUwtWxFTXhZY84b7RX zL>IzUG=ic8@PX9Mn@9CZoFa@|NUBiIx_XodbutV~CLehfoSFDwtu%t2-!}CM7Kis4 zOwGVRH4#z*>QCP_mZOfwnEp7Fv47?EM=wHuREH;tCtS=n%5OIHZKf=$h^cWc>Z6{1 zchNCK2WJs8!L67^UlzfN`Jo;Y>%IJL+V8^^soQL_jk8rm-Rg*eatCvU5UTdDKDLRK z5gq~6#xa|P?u_j^bOq*^(@`JuEynuE;#i;vU=M%PU%_nfMfRwxLdHkt%Z+gIgFJjS z?M1dXCw(283HiQ1TU^8ni}rY%#5otGoC7br(4FYLjnT+-_r?!?LnNc=G{S2LcKK`$ z70DK_IbaSPyA@WSKNITLZ_p*XfGIS;Q2en;A`vxkwD&Vne9?i+kQY<21$S1n0dt`Q zG-!H)3FGyqPn;nmiszW}1Z>BxXY_WKxX$$5Va*joxeIns`wt^ZL91`_@RFLB&G=Ie zLOX+TX|qwtZ`(faZjG}PAAP8>P2X+nZb$S4OWJcjOt+>s+U+Qz7~LKE(7z=Sr(^3d zc?P7;H<{S+FC;kmT91Mj>@grY@56iA4<#+=y_Vg4_mnoIlLhKfbpq6rJ73qhe8dvR zZ@l*^TpEHW_7vVg~ZHaBj%8#L=G0#D}@m=qABGp?TEI5@HB-kG6V zOf=`T)~K=(E9KDUix+?`UDXRt{ymno`T~Q`7l>vBA-1h!%evpGi+YXF6@NM3<~{LmTKZq-`OlfhY1{hdgqdh1vyJ& z<#ttw?_j##u9Fs+v(BVouvOaq_9c~IOoG^F-7Q!MQ|)K#$MQgL_j#8AX}s3eVxv%D zi;&(SD6Hr1p=u&HX$h@yO%qpRx^~uCJEKU=`|(@Jb&+R>&{1!`YC#v%sb%Mi9rMI3 z;?~jkauO`{n#I(vG5wCrao7T)s8H_!Mi#jAU6U(7- zvG_`>HPIS0HeQJ8Dd*S^a!4*cdq6(prP~;wl-roONm`qu@GgG~bC?0>T>fmNzbvl5 zhR!Sr=7uQy5DCu8qB4leldp}%Sx&ur!3SoFBTlTc+ z?+BsTtWe*I0pe+PvP#YGGMZC83_Sx%gORgCS(BMk^5|GN_Dthg@|7hGL$q6nnJLe{ zAQ;dnIA4n%6q!nH8=mGYU2c?GGZ^nJwh0NpkQxYA(G%q;iwri#9moCoNQw9i$hUSt z;xuS+$k(^(^EqTMsJ^V={%nk#Ow}<#C5S$kBeyS+_<30{qak+Kcx+KQU=}`Q-Hrf> z4d^*ky--|DhFQ*d&d4Puvn4Y3(3ptuw99MneWV;}tipt{J_eh*R=if# zl!e{1*L^SbSg|c0H8CP&oT~}f%Ry4<&4Y?zkqNA5(%iX_oiA<4t9hp^EHMGuqd;jp z+r?@m7J0|1MPqvB!0no?w06#+lk}m*9#=ZkWlzGPIk8TETRp7Sqv623OR77Xi1$qA zolN27<02+f4&Pq3YgiHoK_h?sPVH&_ytNHBwVPWJNSt@gh|p!8{;=aH_7KfEWyHB;$@$%ue>rDU1BInfK;ead#4O&0 z9ev)o(|gt$8k4JXm{IG(hZZ&n2M}KN?d3sBV04JPPngX{_o1{e+|KP<=U5uZG`fF8 zkHfAQ3RN;MmNCx{2>#krR4krfmMz8|*&-b^YHT2kqjDYBR;8uP)(s`*JgvY>KU;6m zG((LbN~_5jo*A3nc36v+#P_5&jjX2er9*0h8?HRsYW7vfc>TE`n@rq)@7QB|@be~K z`}?|FFL?RpQ9Ai#UGDqec&}`|(f#x@fFI6ZH2e&pklyYa%x{;03T2*cQtPS486~%} zsn#z80ytGCL#`sEAHZjUA^e4r^JGjF$)~kx){ftke8azh3X$swj56S@YDCVHLB$<+ zUWT;xTRB0Yzqeq$hFFA4Q`^ntmn~L{&=;9gR=f*M9-0LUDwi@I8b5>I4T7`{YCowf z4>)XZj}tL>0k6}HG9B@aqIbyEjTsW*BXe-0<`-Zxf`JeV9WUbR=0g2vK&;;-u&wq- zt_4}OeP>_rZ_=WMfIzF9oj z=RsRF_3F^9<0{BKkS*M3>BUc`W1l?0NkkO4 zAg)O1vYihw`RYr@Bd|XVOKAMG%lf+i;Wt@Yd$5ep3T+;8=uMQ()L44>#Eb8=6t#m( z4Q%4{iB{OmP|;LzWlAm-*XV;GsEVJI3U-;nJPX8O(EE%dd5LyCK&4PrXGbz0BYmuc zx9)W7Y>#eg!*YB8QRtg~la5WB#)?#6s_NSYdKxoy8y_WPZv)v-xuR3IOP07@`Khkm zE|bGdW_A&WG-V-oWy;DVv1fn)0%lLa7+dN(Nc2h6a82FuBb#``2XNNT0+>dx8sF=# z*Ba;I7LUWEpBOe9aOOLlO-8{B9QcdBRcz*EweoX?}PF$vqk^p)<2 znvRG@F%i!RN!^zgA{pC65J)k7m6&SK_RB-t`s!WBS|NvZ3faag$GA@lt{K%9%(5s@ zJX&0(InpnaN{Ya#C1ZC6#DnU?GXO-1Of-ZnydUV4k=-ztJGpx`EvPzA zQ&zyNq_K{8h#7^HOmcA0X==rvVs+ZKCx621J)i8OL#b@#`^E!+QV?t1cnRmw9NC{E z|DC3?{zgHFz+>wi_~1{v5RgP80ylUD{Lm|P&@^931?waRd5%sSWRKyPO{(ASm7yO@ z-Bkk4_Hic~jnub17sDmu6Dg02eX$K3)H0vapkp9={~lj zU)muC%MeI7=RHrq*A_rJgn18t+^<(0!=v`+$yUQ!h&SnbPLI#8GOe6( zHma+&4Q(a80bOuMk6Fq`3Qmj!MD;GdBo2@kh;(+l!adS5!8-JdQ%p78?hU&| zS5fmjB5cE&6+-cV%S1)p4#M)(F50}ahqdsU@x66NeF3rUPxHlb!>{cqLyvzRwV;_M z#P_l5)$rU01<)W8%f4%RPg$Jw5%PV7{6SwlSB4O_GAy2BYOi&Tq%tJRFdK|kAASxC z3IGCqN!a|CF4J5LY~q9s`IX6tRdj^0Mi_pt|6-HlK~!nJ5+LFIY9a|$mR@pblJWo( zJCf0xQOxAKmvj(4612lSK zb|rJ1A_udRsDS|$KIn#^Xng*OMyoDi_*>Fttj+M4P?ZBbdSddsIGP}aRt+Ccb0fmr zU!R7;X&Zh&p*Nj=t4Z%L4$iYanjn8G^;@td+$TQ4CE9Rvx;kw1;;sj^m_C-?WUtps zkDxj^Jgkv!tf+G6W=L!!er@Hu1&OLt5FUL3S+qe^SO{h*6mwjZ%5~no2o!{vF8{8* zgIPzn6jgY~uIA-81;daT+6x_I@7+f|fWJ2yWP$grm1~>dm)%GS`mvKa+zx(f3&t-+ zaUL0pfbR*2xl&E8joQ@iGJm8d<v>m{Sq34A|cY|r^~uKjAsBXjiTt^xiPMU zN8@LJruF?bT=?$}Uc7@$nTya#FYJF!pOMM-8eVYUOcW&xL&+!Ad&82uIfuSw4{Vyo ztUF&x+7VCO%5YJcs1a&nu>^YmT4mMKMq04zKTf+;G0wP>DN3#Y(Q1zEDTj%_@?IkR ze9RcW8qYj!K8aIwXQrZ`Ic-8JppG-sLtH{HYBYFAdV=503qh^bMKzYd zKRMrPU#0+gk(c@O(6rj-%$vQZIF)qhbVwDcgJCi$@4*Xa^`mN{G52br#GDn?gw$kZ z9L9pnq#TV#Sb*^%&9-uRN*#nbeLk@`gIZ`j+91ZA?I%I_aInuo(dG%%?~>dguuGz? z*cU1cH7-@;MIy-nSxJnHD+JTgpk+N|!Q77s*T?lLXDWOMgic4yrTce#vt4>p=Vw6Q zL#2}kthUFt={j^+V`;9Dtby@_cPY{qa-u0eNDqZfS&Us4^!zw;QdAFEA1HJ~UWgLG zD$H7GLEDAWR+1i|v>Kon@yDOwQcKJR?j;?(Q8d*3kcbOA%qQ?xyZvI11&5A<*MP`j z*=eggp!Yg;&|MqWU=bbu%H<6~dJ>pF>va#c`f|p>C^RyJp|b;$!mDE zFzzK(4IeEYO<(e%?yRt|8{MtYSmQ|Yn)?-u+k|2N^H$u*ide+HbMF5u=}-XP*l zY>TDmQ4oG%b?Rd+fj_yM2qlcqxbz(1Q!C5X^sqmrzIxolR z1)Rdzq~le~sxM+XEZ&)+L`!lcj>$P$*C}`ahOrwZMvLE7L(Bfe4t89j=b_j?z6dUy z#fbV`YaJr2gpjRBpz++IqDE?|`!X5SibP+Q<=Rc#P$6}b((^4u%z$>jGM?Uv>LjjY zn9M`at?PuQ%Mw_uQd1HXf{x1#e@P3`nx4thR`~N@oq0R1rHnMqW!il+5ELcvS7M0u z+3V9B1c|8e#|{rucX2i9BpDtJT`{Xf$Pzy2by0PYuvz}5L}&NsP1**=wF+c#FY;d- zkh3Kz^IzP4t|5Z`H1G2YmO$O=Q!<}-8FF36e!aQxA9*+IBklL#1AlY+$+jWSiZ3|6|V;W0iq)#8<&uJ1qQaEPkXKe6&@#zW%u^U1s_%MuR~^a?;Ff^ww88 z2Lr{G-yZU5m)%IeC9tAejBBveI4OrEOWX#-)Vn-)e!>1k%Ixg^yO_snEXYKk7giuD z++VXz@r9i$?3D?}w<`#6?>p{Av0jp@d-!#_U^tH3?2J{bvPF_uVPc@J#2vMG{khLY zpRI^!OwMM`5^NVYIiSL>Q!AFrjxa(1(Tm~lF80vjlF3sW%>rL>WgY`PzDpVx|)sqo(38JXVuqj!cEH# z_3dz4T|?u!It)?d2*7@I>Q1Y`w-juC_#R>=178bkO#d7K~V2ZC{2oLeeS^L4KwNemT{4MeAuS3&l6;ug^ zC6ZDo7a;})E|kL3N4wVviGhX+o;v%kJ!l<|npW<#dyF?plxmtx@fq;DY^7u6REv45 z2TxxDOCslxW#Q$;8A+{tbKDWLPHAOM`xXVK<`;jQtocefh%Nm`aqfi=cexi#N_(k^ zpWridwo7WPQ6z8s@`s1$t%^xeEX?-m*|b4%7BbY|h{@dD@X0|smGZYTL8-8l`SQ8IIJ z#<;EfoR0Y}?vOY4_&%~TFoh+tlpg9=HZkEQu_sZUpERPzroM#_OXAOHhQxl;^V*&o zHtG#-M==tkQ`z&v=CL5`C+R`J-eh6a+dmZ5qX}uEk%MbmO$ESPze7|kHS3rY2$Tn_ zBymt)7FtGXvL?e!%<3o9Jun#98Ti4xw!+v(r2gch_(d0J$1d15o~gPW1_%TNw%G~} zHh!Py@TjC*Wm$Dd7Ug-?$`X+&8i0cv&7JwqKl#6A`+sYBC=ntl5g0vd5jeF_r0o;L zLGE&T5W6?pFJZEEN;p6)^LSAk)1Ss~Oo7FCG@tZS?&lIQPJhlecd z!>6isIl48jJJJUToNdQw!ry{wY|DOPq0OVUaX_{L&6~4fR&-7}7&jc66|-Fh4^r** zVF#r*q?B8|v2C2r!*b|vRDC#$_0I_Xh1he6oC2Ls+S%;x!b~+NR1x@Q!_>gkYFUz- zT0JDDyg|=nx}T!7<^Ji1_@H0Less?w$wXY2P>wZoH5l62-lLtVWg@hncPP3L)CZt& z<*#ui3Lo7Px2`oCzj<`B(#!N{H?br2yNae=7JfS=yW78Y9&mSzd54x}UB5Om)C%PQ z&bJwSQ?QI1d0O*IuXEqn0WJ;FwRWp>yN1{#V5sy)nrHmDlxRpjg6O!ih z)JHM+KFtbb@npi0?Pl(XqS{m=SN&~=?W4}e4>7(xuSB>=^5=aaNum(<;ediaH;|;$ zHLBDI6da0SpF&xhcBcej&q)fU7oity86J=KW@|TvWlS3yj8Avd*6!C1NpEgO5maI*9F|>^=VMO0+A!l zCu!D^*R?mBEcUsIfkeXuG#kt2pR1J;s?KT3WIa<%Zk13yZeOK9%kTr8bd|op8YYu6 zTdZrId{9Xe!L9jPznliE(7NtF8Vk9G+Qb>+FZU5dn|M%cq$sQQI(>HGudSs}ZPIRB zPP(sxvlr5BX8>*Alv;K3anmLK3G!=}3Y^!KZIz9dz@efPm;)sEhXIKwu-J{WRv_fi z2C=HoO8m9?y|G)YxmdEO-NwS10^D_GtEgevFWQ1?`zT+HvA@G=$)rj!jhgsp$f0fJ z#@X1aqCmsNEzQF31Uu%4A)b3|GhjGY9iftox$rA&P1nt*1-pj_D}j>1vv zGlG>mrLyLYXhwAU)a^K>+gJf2;vg%t{zSim4re48-FF4JYV0;u*iuaf1a)IeG3_#o z1(6NI;T|aRvS!JHA0iqy9?n)mnMRxCn#{+q9mn)1;VQAJwJhIU*qLuPA-38b^vY%( zaFE(aZ#eJ+4RZt7{iZfk{`?jA)fD3^H3r1tB?Qxq;+54$rLEu#%=zEzEKP|GG2NWs z>vR!(Q9Bqj!G&NT<|$0n4u-G4@v6z(=Gf;Muv3)Um=m;ZOciNe(nuI(R6So%D>t+0 zA|1<^t4$2i&cAB^p_({`w!bGr{!2hW{%c69zAexXM*QKmp=FaT|8UcN9$jBi@xV=6 zu8!Z#f(q6~lkRj*n#YToK=UTT(jA%A4rv)0A#~X0;z}?jfp(SB%wSv^36N;?6h_Bb zE=Cfkp-n3(aVSmZjNBf?bF!Edpe>~<+)MIO(SL_oaKhNB%09$k5!_hu;Tb@85ha?Q z^Lo-`cxd5XV5cQJD12Z|=8_b{zV`i&yr3xZ2OB~U0MGWLM!EA@=UCl#<9FS6*uhmm zwb6$a^RnN#Gii7(XP(8P#@bRUrl!WcH=xMQ@$^lJ2g^XrE`cM!nNa);&ep zyE#d{cF=9jC@xl|`i+(P@P|m za%O*~Y+zGQi$|>3NDb-q2iSqgGr)_xSr1ahs=Bomts^JI7Q(&(yi9EpVpKrBqk!%pT~wXY=sTD-@g0dp z-IC6V+yf1Yb05`NP}IW*)qr#^bs;}%oyJ1&3#e87g!6ZMNsa;2P7-o1=gXKIJKhIZ zijcA#Q(q{%6U61d#T-=t=+L%NThyhuJ;`a!9~@?dp_ZRY|P78IvWs4Y8L z?Bt2LdFZovSn{9?t-1;S#PIGT$(_tbW##Fl`)7%7>EmCy;?7(di8a2GZzvg!S>Jvw zLL7J_j6LPb+5#;%X{(<9QDbhKX%KDnu@#!uK0VHCE(ooev0eY&fncUE;;C)3r!3@c zNS8QnF%EO5nf!J?{U*VdF%G|~+rPu@q~GiIlU8?^{Jp=3BopSyC1agKUA=~ZqF^r} zQ_1P;EkDdg=75u;ugR!=Ja`ldnJSjT4<2iTlhem5tj!r(Le`M&h~=(>j=>5zX$W^@ zkIrh|E#)TH`Fw-%HknO31y>F^J03A+b)BHQq|5T90$_*vNJ+MJ~_L3eAi)$Zx?^G&RvmD=P>^*MC! zMF(-F4LZ%$dR)X@(z;SORiXQ)-f3&ICxl+?A$BRFGB#J7%y}X@MrOKb|2RaS&L|Nj zn)WgNf^aTQXKPK#t?dmv1ifCLqLUOU_wBuF=eqU0dy(hAr#}TDo=SGsn_+LF$NO=8r41 zwC7kXCrS$!mNz=<-kl1fLHlw~d)~hmO@Dnl<$k=8ae!-37OPWsL<5T>Ga5+ucAjl~ zjl0AozGE>+l@r)?{gRrIEe|2~^q8^x{*@WnI(G%`{V=L=Q8Vnr_I81wJuZ!D^U2h6 zLI5#9&c7gidtl-!#A58UOU=LVNY`k~J>#HN`}Fue{P8Z2gx~o*;K7S1l;pv8v_(dn zI^)6c8NdJ=2=CFPVNTXkAXQ^vWQV?JViZL$trr)lV#*rFGYfw&_#?#9;aC#YjbB}j z%oROr!E0TZkuV$4VLXOMy{bpPeo|DIb#FaCp^*aSd5;E*Z4&xGsvdfoKr}J z@%a{)Q+_3g?%2ID)V`}m6q{sj} z3OKKbd;*8yn3O}?s&)Pu9aA4I=Q>Dg-uWrD=<0EQ)&cA=K@!a;x>wbR7aiPL=-E`)8zn7eAn5>8>GmpPMtP%LdWM=4)( z?Z+f~Cxk3=pbq>!%-GwOuWX61pETMGSP!Pryz?U5!$E8n$bJZy)Ge?*q7|rI5#Xmf z^_CPUNV+HZyRZhC#MPkniWG6`2*Rg2Y;2gVHTg$v|3B3N{H+<3S`AnV{kD=yuDSUw zZ`+nbG%vg;G2RrCGeG^fjf!K{Cb&|nt4n=s*@^&mgoC>^kkVX-%H3))BW_w&j@e3= zZD7Jm*6!B46*`kM5~+tC=R%G7RLn-K^-@s)39^7>WJ(|pSDRhRqE!TDsKygl+&->uGd=c}8e zA_Uz}Lp0qqpU~v&IO<%F%a-S})E|YlPw{@tC*5cmU{Ae#;-OmeHo1&GBNJRBvhCR~Zv-200w*}h;@teY^8PeeEGHVf6$E3BMYB>W|yD-9;5Axl&5 zU8V(<5y$9pQ%3W{A0JT-zX-J2oaXC^B~y<5s9C8>Z&PH-JmzW=<%eYiIr&JYX&6nW zz9jKk&(cwfD>;{Xvhu0FZWiwpnDJvV?cDE#eZ+TKX<&2y5dFTiHIL^Tu1wJ#4%%J- z>R74K5|uGOLw@Mp7pAO=)oEIVe}uM3f2B~x1p8Tyu;W<0c~V`(Npz6-EOZboyY9PD zxZk+733&7SxPow1p8-s&d80MJVg%bCk!Q|tWpdG4|4PB4d_5s~#0nAEBRng$@q1i% zc3hn5cW-KWC{5YMNDwTt?9S5ecAeNLn%HV-QLv!m!Z@(r-&wK<<9Q$z%Oi5QD+_nZl)sEE%Q0h4!Q#cno}kADG!Q$Kx>ln`@P>8l zGzt&pqD5_2rP2zTi`a(k#7&mxjzScPRI$}5o0#5l_f>SM4jW9J5S$^CGH1qHGq9HX zyG%fU%2O-nel_D!>72RaGG^_Yz3mKbXJBSpENGB=Y~=els&-3JOW^Cn!j+h#shmf2 zHV=)M(kaDII$GOw5ngcOPJE^@MR^<0?W=uhuT|#&>*So zJ7h5bF!fumh7;t2djnHeYKK45b^cAy-JwKbWW}~mz2(g znpqwl&d~J$V-ivg2f-dq=-Y_!cCaryI|7f)aaTeI=p`$Uk_cHV;P(X`7CH)DGOIxL(<*Nw#=^R z32XYa7JnQpl)oR>B3jH1AJ7?+*$1<60qZ1G360f6mgV0?-}Cn4Tqt?6B_^-*TRfiU)Pi-sftnu+~JVOs17H*q>y;A(xiAsvKeh(w-{rXq(Z9v zrZe0Wi_BeRycidq z01F{9xO}T|Lhd?4+;%FXJU`nbZWfnBN4BxbF$%;CxnW9c)ag64~5IS|{Km|Og z(S5-e1#0SK4c&5ge-e!E2-tyL8=*ltc9N7bO;r$XGl-u7*__M2ms1ZK_q;H6o2HfH z^KjJ{@)mUOi71FP=v$<|Oi7FrhlxXV+rqeLInIN6G8sO8R&zcxzAPxSEBO?wC-d+k zWTb_F_8BmJELixS=0eE=%~}#I!>x}v*HD|7OV*lVLQ>H-2io@W5f)gI>7S@ND-~r@Epj(a51R)}$);ga>3h6>d^T6uBpfOXaPoUO9qh&OByU8Xe z(Cl+OaAi4}nC-v`cWeGbjKu_}Sqt>Etx77x%!9CHAxSu;`W{Q6K^OvnqW%OaG8=OW z*k-OStLwZP)(&~FU(9fz%iRGe+Y$83Fo-$QZN?=OgMbD{@F^^ zdubrg1hm-ozC=HogL4u3u0)}V1Pb0fsY6$9rMmV^MSitRA{#_+7_cYrmTcYwSwwdG zL{2VSQ57VuIq*_~(_G-OZgV*P8(@5xl`%J(U01{X4rYGza)X8f=vd#`y4JXCp7#UZ znr@&^V9OX#Yl6CFBAiV+G3U2H2z={9Vo@~JG=HB^n$@}pg$@fZHv6}U~JvpcC=4`9CITsS}E>2o_$F|i)QBizc zzm&n9G#br;+%&>9DOvx4J=we{G2Kok?riiE3$T+dP@s;@$#L|nU~jm9)%G{&p_=n$ z^7=HnolO*Qr+&j}+hvRtl~sh*cqd(bEp^q}pR8+5D#Xul|FDOB-I@5w;E=2V;&D;l zY#F&#B_rQFF)rcprTNv>A(|o=tcN*R59b<10+~eLVSvGu%<^Xip4-a}*I1O5cgI)#Vd=;{H&4(S!C{iKhf-mDmxD_Ct z@b4CDZG9lwt-;C<7k{78?(b`4e;tN~+@ZFjhLL=>nipktlS9=p83P}lIZyd*+v|&+ zz)DA9!5whv|58*ZG33AdKyq<4yI^=H1n+*tL%X& znf|rRIuY5Bv%I?byKgEXg#9aaGVxo2_Fs%7-m+da7leEN`dS76ogUv8t&-`#zN~@h zkL^T3o=R)Ksn7hbMkei;w3x-sHNh^ zd9=@g>R2h(P3DpcbhiD{H^;`%!)ClGP2y=z#+ZK0(ShY12_EM2m7{KR-IR#|6nm~4 z`oZDPGsb~436VuA4wI~k@1SBzEOfmf!#yD?*DVbhwa`I4CcopwvRONmZpyM~($pG5 z=!?YF5SK-_^6=D8%K@$>*1F-gPOQ?|(2-W=v{|S%C5Gjr2W&0*HYqF-p=j66Dwj3R z#+cDff6I-+h)xT%=S6T&X(4*+_hhT=ni|j==w>}L=a-l~=#0ihl|@v5a#qg*|OPhf_%bTyUL{A{wpEwI_IQ_oj)5Xy0Us0T$b7$MhT;gOa$mD zQUL%90Mv-Oe{oq&*3spWn=54oFcWmuCn)?=1;Brou!;w2p{Hg+XN=%J>% z;CHPKdd~oVCa_0Kw$=8yOvo!V*5wA>_V6ko#HRn&ri+l_Y;OU0IaEKl@%G`upbLR~ za3EO}6H9I70UyDz#UIx^-ybvUaL)AiS94AghAJ!l6eDwxbcyO&OQqpmvvbF!4`45b z!(S=n(!{%%q-e~j&o*tT5Ch7Wk-Bq?naHR%HmBz%aIwFfBEqnyCTPv{AUI`_&K(F= zX2G7qqD3?*v7^~?ts81p%-U)X|FoWF@x^avS)W+PPGDiF^}q;h-9&dgJ|x|FZJ;eM zN@Gn$yGT{A5QXZx+f2$~!`DUO(Dv1DVV7U04Fc@H*lNDlk2c?QYWZyi;hK2{q?n;) z2Yqs7%RJ428vXhX%~W2WK2jlBYQ5Y*(Hbo%!JEUa)gtUhbA?xAorCRct_#awIqA-o zO@0<+J|9n0)x)Qlwo2fT)=gb@Q3g?Gow>u32K|oZKc>vqF1)IjYimBx--;#jDgS zBWnDkLFc>$6|YM{p7w$^;^GdCpUrVGLHF^?JT5#7bp*Ashf+3L0ZzmM@S)!5go7I2 zm#v=U77~d5yDp*;=H1DG>}D^TfIaRyf8nrA;uh~8iY=)oT*v}VM=(}-qhbvw0I;d` zM?pI?4zj^T$jmNo~unLvK@{j(L*I9Bcme{=eDpQAP9jYsDb`sLp4nS zW%oS`r5uOJCll)6_S(A77)%^{`8j#B7j$ysve0do-?c6t>HLbm%$?s-)yFmywppV^ z){{|P5Uo2t+}q(l14e^B_g*KyZ`rMjAJc<s*;Ybubth7;rty8BBUV7R%r3A%OzZ|NLKXQmaDW$WNkE? zJ$`Rt_m1es1hv=JF{8OlihHQ~JA;Y9lxrUL+pychen4_A(%SHs&L(X2Q9e|N&0uk~;JY(8r1CcDm8FM>hjeB0oC9}X z3vEGeG*Qzr2lNf3Ic}NPgFEY1Dg3N0e&*I}Au&nFUO$psQM+YAQjo$d>8QK*l^)Mv z)p|%CB8lg%c%@B?!J%GFWcBH+_olKdO!&AV|-dHb54E@z3O4P zJTGm5#u9Rq|H=p2=n$LCSCMmW&j7pW%tKL!hFt@5{AOcYUm7$H*)_UfC(U~`Ju(X0 zt%s%~FYVP*aFVYwzl&Rk88Qf^q%tcRzOn1U9<(Pb{1No2n{j4DAV;l&%YxOhEx~!W zlBJqLd!`9{eAujvbG>jON!b~N&_6jv7uIgbLIbV>t1QD|F38`?EC`lfzC@63Liff-)@*oJT$%S}ZOUk8)5;?xqk__GUI#OWFomROQ z9-}E~B&jC;Q3=@ByO4}*_59@O^U|a&dtru~BzA6+sHwhD;B+-`Vx5N>aG9L^4B$q| z^C#7P24LO086>aGYaA_AjVp4QtJeV~-K~ZR?oA(jR_r)=ZpoGj*kccT)-IYisFsXJ zr5d;H?XKhvpp3oFgh*#wu$Y4hP~~ZDZB8i72m}%X;=XHKgyMtIzl~5=G9$s?$G~}= zjvN%80TcRkfH51{m=Lm`WWW8s0_)yTn8!gfd08MTo$7*Y9Z9bB=ub&QUN;V0nm^vd zoXi6<#?FPFCQL}VW^*sFzuOCCs?|C%>!T1soyWSpX}neLa*%0~D=()>q5r0UQSaw7 z;N26!wkXQVE^eXH=I{b3P`>`LNDX;g=^hbGrxcET61gQ%s2e>s5kI^Ljdk^Q*l{`P zZwjCL*jf~&Kn=_KQuhpiSJ}8Qx>i2UW17otqyLAtt6@ z(`v|avL5Y;?2DqguPMZiuC>XR)y{J$nmf8l>5NQsm%oXWbvJy&8JT`J@klR9iAy)? zSntpG^leKr;^T(dlww*~%8ME24#u|yPYoB~Z8-+}A|Vpepbi+H&h$ps37Yb(!3E)@_EL zn?EnZU)h-;S$i$j#2%8PQ|``RpThTdZa5XFXMp9*P_cAH;ucYk ze8%IZn&$eWbABrJ{ULzH+ke)G9?zLv9gLYwIs%C}z*g?v&F{68!a17!eywijcB`BT z@iOtPv>1eJGe0FhLGHWJ>wfTk|7O#qBaVE|Ql+uXUnpesO>58=w~DgzweNzRbZNvO zJPy4|H?G$^*RZ~+QY+Cie%#PCzJ+id4A=9gd#8|Ag<_Jb9WG{-iz31$wWAXvl_92v zH|lqM+P=RkdI2|`AJmE`(k1=1UITWlWi-n^(W{aFSwx*tYH)vtTf1@U<0KtVVh#1T zBq>kLs*$J4R=U#@)$aT7^Opp!%a10q$naH_of9FKL*=P2bk|PgP6})nD*HnCp_`v1 z52G05S!!E^%M?*m7lLnJ*5WZRc{nf7eEGwSI>JTH|Av@zsB;FR?r=^nzS%G=`Ry-Q zvU)4^MAWdll_}v|;?KOM)szNA-CP zPvn=#`Jab4k9DjZ`(DB|l~JOLQdl_M4OOQnaJ&=cBa?gyRcktme6?W5d(2J-{HGDb zmsUY`F@{$OMZ-(lLu^DduTjHnPxG;Kh;ws=y|Y%>rQ&1XY5Yhj47&O?5q$OQS5b_g zZ+zTb^#=j;gIU5lyDjqt#m0wS5X=>-d|MDqez!;SN`v3d5XNoyJ<)u$&WIg@ymlOZ zYVppwRHsjA3D1Hg$z3d9y0H!D19Xw;okk|;2?mxBFFyk+;dBt|;Qpqg(v#S!V%Bxh zpuwZbyeG0Z+v|I9{Qtq;TL#4ut?R;&U#H1a}4} z5L^dBkl+I(%s_B5Sg??rz3iONg;~RqH?rw{4l5z!HCu9g{7(``mC?vUHs7phCf&uvh`LD#3a#7n z`!RG@wvQKCm-)H?`JED(eWW5oUn3kpH_7~5$zO#j&)4mCPpS$@FQdNS1Ag~njfeXQ zD5!SDH^a^%svZ)V_w3!}tXwkswG{WVb1+Tu(zhdF;^9$3B|X@3x>-3vEnS~(i|<}p zW8^K>dtW^Ir)fY>_0b(VqaJen9tze@IMnx=unpf39Zuhb9nVtwB=)QM+KBt7fuF7_ zw&y!H{dxB#hE0{xh-WyJ+|&eb2Xc;x+`c>#^jCi-kh6Q%&0WY3midE0h?~0oAjNuR zpULp}(`Y&`4)5Up(8cLI4Io_#m8Rdxa#KvBjC z_8WZ?jzChu_P1G2X$%)cRQ8O-CMGVm(wBiTdig+SMhU8+oH#1$CHM8xbd@U<_*q2@fcHV z-gz;L0Qjdh#I!%E%^Lo}*e-r`w72jkL||!be6^I;Wu0h5R-cA!ed<$!^b?j9Lo#4KoC!X)kXey#eZQR15P8yaN`w;xSqorLcy zNb7;KDg9WvNAS#f`UXUAc|BOhkRK|Jm}>}p0?=1AG{84u5Dd>h7~pstx&KaAHP_Am()2dn?w2+1Em5V zi#)q-B)EUTs3RE0$Td^B^^jD zc!7E|XU470CpWl_3ok7^u^r2i!@INt44BZhaI8a+qhtw(dV4{@;j2Jyq|jC z0M6-k5oA*3UU2jqZvz661GKKOchiea2c1j>LpM zQ*=~=YXt%MDa)i?S*(p40Tujf0UlH9hGdy3h0*KgsgAo_cVPz8{}{_Z5T8xAPs^m( zw)h<0)qxlTt)q8VvKi<#saAqY3Ktd{qbmPk?p6XVM5w|^H^Az%0G*L-w+$}i%n$F{=% zW)jp%{)&mqu<8kReLNK8aFkbS$$qlvh)|uM+LRMBT->>u&#<0 zr~54jW{ifGjt90+zF1i|e6jQ}JGoX+PG)(vlcbn2H4Q82s2h4D=5V_e;z%1VR7JPt z#tZNqrM=u=?*g+BP#nik>!`KGtfq#E@Y1wA8s5EJk*eDjskcQ|9r2D5EFIZ=>t`Na z2_}D+eDHE&K0@(%D;fTR+piVJS7U({rZ+U%Bry}#6Rc;*)4!F;4(T>q4VakcfAKv{ zoXcuij>W-?1@68LPMXx~lLn-(X{~M=vlhL!6|No6we`FS^+((~@_3qqjy!J!(y8%9 z(L(?d!y>NsSdG_{RPkTap_cPw-?%KN(EB54R=sCbyD++BY2~g8R$UaEPh?pm$9l)n zq|h(2SnQrR*QpI1k*Ca`&Brw3)w9;V_4|N|bjGMzUQ980A_C$RsBVKi7GxW?_&^PX zK4o6qEAdCa&O#Uk{CS4hq{^KXGw2GdCdc2(vB-s+u*bIPv^7a6C#DD&dV7_*YmRWA zdFVGkmdhOe;jZ>xrJqqRUEOD`B##WN~_&>yCJ!qK& z1IL$~D*7`rX(_tEBU$hX{EFYsPa*=6bb zegZ!&(yfow?5oozqLWiNv1IR!)A%(zx2&KJ94PuJ4pRVy^x_@3G-u#yh$w-UpVrlE zH-j8EFm}LQ+oDWvq*#OYRhIymb0vBM{?njq3@1^IguO7{AbZygnJ~dmMJK(7V4b{q zw9uQyGuN8lH3uM3Fi^Vb>VEs|SU9a|dOb!*gAOuWItv=ySr{&yTjh4a~Z5Hb`JJUsz1ka<159BmRSt z<%c@$w!bFK!V(Hh$>-ZcACw18h;#z<0({TJKU}1R6nUZ*q3Rk@MAx``{~D%1nL#`fJ?d{OsIXOA22m_Dyy=I7}Wf! zJL(MLe1uj_8Tm+0qO5!{s$I?MI}5h%-Q*Y*d0)ZfW7i}Pd>3VeWOv*M%FCh5Izx$m zTNl$^kaLNf8BZ_x?8N;={!$tz$S*i#Nc~C5u>83)9AV@R_(}|IL~n6xEVGTNY9=S^ zZwXyRp_|MBt#U@6zj_J+O*u5zlNe-uo?L$^m-$m3C$$qa#j_XTZFiNu23CGSMczGC~)|(D`T4V3q#~E(r~Ly z7c9^M*Bl1H7IpDHo zl~_;?OsspX2=fWNk*utKN*$2ny_mZrU4WkqR&Ue>m@?_Wnw&*4q@8sKto9BzKyjtG zvwJ)z|5Jw%{|jjTo4KX`m!Z>ueuj3iotCQ#t{^INb}JA zxW|kRl=N+$Q$nT>Q_#1nnYVyb+c92rs~lsH8wW<8^DA5wVK+u>$vTp{f|RE!jq*bg zZ$&_KtBO*cZ+`>?`X!x|{ot8$FFb~({fF2QB{?PttYqI6H4OOBLy#s3JN~SgXqa(E z(3A2D5G73hE5wAS*>?VO4b7VlQAxWR1Lh-G!XFIrBp7DlhL~0vbe7G3fNO19BVDwJ z;8!imR_iOl@3o>vyjDSK3ihkRkJ0`5FpOg;EPBj&_^9hM)72~dK-R6)&um{jKLe^3 zEdmgJhqIv@xCWAb?JOx=!l_rbB+E&;3`O>wYHkq+5;ksabnAolH=?~Awn?8rH7gNV zoO^1vZWE~bnDyBs{{t!EC$=Gi*#|i9bJ!Jy^%*7u7&1f+3E*(}de&-oBp47SDvpPK zAT=rb%+xY{zSiWK^RhHb#2HQw(i67G?l>^@yX$eqFw+@VQC;IadN}ZJMs)1WU@*E$ zNt4;Y%PSGB?9zy`kS;3skYR`)*n z8L5D`!6I0pmCp>j>OKWbak?c~K${t-%|%RvbP~#?7np2V3(+^_Z5#w~e_!8cJtT+_ zCmc6oS`L+m9y7&E-4*6=t`9^hBfe+ueswEsrs=oQU6do<*b;ygSt2Pf~5r3G^-jPqBc~)=7 zl;rVCbk=wsy>?{-A6rl@;~D;_!jSpSh3b3PEh!RO$e(y8=bT-1sI4_*9A)ryOE6X$ zY=}i}>!*)C{2PL!zCggR_$eff69sUfnLW)DRlM_3jBsp=^I}WRhE|9--_~h$JB<2+iY13Vqm0g%@l z{@9$?y=lA1a9{5go9cki5T)}n8$H*-IiTIfjFXUw$cpYkHG^!-3B^j+cq*|w` z!?>PcyeVdXvE{i6aO9yJ=He4w#I$zbsP_#q?Vp@bF}4MHo*hs2jEBb|W?5{8c&1Qp zF7LmywNrq892;1&H?1p0_YSOX4?cFqmFq&`OhG&1#_ANE-Gt*-Q9#r}n2c~v&wbj( zZQV(sN2(mu7Y*w$0jB$%jGC(tNxxTz@1cqdPb3uN6!ZtUz|+f`0Mn~Y85tpm2A&b`i%AGQUn~)+*wM7w7K+;kdfo>IhynjwN zxZmt8mb{d^=^-4wY0Hh;a+d*SW52By4+UQ(^^e!w6+E{>f1J|*%L%_*{N%tGfnNDk zk#GE5ySDG!F?vrJ`#GRNeZz%I7_zAJtrp=Y<7j01yl?oHppYMNIg5|<%^lSrmzWQ> zt!#Vu2ZP@`YK&!Pe>`V+ZObqt4_VGR z%9)ZXRz-BaYGe^x<#}KmaAJ0JdXdz&+$Eb$WY-*+D{&32CPL)KpyoUKR zSs~EMEIGX~Q-he=Nj5hr@+$L2xYPQ+Ij(mC+&#=Ie4!{Cz0oOTs+NxNcH%kS1c>TfX+Y9F}@j z!s;L(^>4rMMXq#1gN*^H)~{pcVQ|-YgL+UBP(2CL_GzGSbd5(z;}%HH)#IHtx?6a1 z&OZui)MJf`Ckn3k#PWLXOY_Y;kKv9jWBKF0(a0w}*D)`-Z4P-8)RC}^Z5EqhzeFoM zL9waJ@eY97Ld`xjG5ksO4QG>*RkYu9M=ViL_ty){)cw zx<32x>+8@Sn0mU%6T61vsVkr=6@2I|8I?B34smc}qHId2 z<((zC|7zPp{S_C%%_>!eJ^(q)Fnj;1{7PCWTwG zUz%KT)aWt&w(t4#HQhn~32zlvW(c+;`lq!`j$gfQhhQ%Sa|+#7X=dYq>qqW49B7M| z0s%cYE@{F#*C(bD>Aoo}zqqi=<7f|hGGdLQ1wfZl(z{Vr@cU?%jMAuIC;5_n;%`JH z*yNoB3ZezlUiALKD0U*wkt6svwzv@R<)Y6T!~G9NY*Tg*D$FCdHN?35CT@JLmaIBP z0A0@kIT;KKQ&%DG#{Pp*(aa)*+#2a;Y0V$Et+zW|9kg|G*vX|$Q*JONPZTT{Y8&kK zI$^cU*;Dv~QKh64@FP1gH9o)&;=f(ky`34zEqggf)2Pkm_zC2|+Z&~3pP4I@crQ#d zeTv4Pw4AXOpt@^c4BZ7_8Zrqx{u~WMc&+tVMQ}|wgsmu|D2s>pX`Yt{+#8mS7@DrK zPR%HYtqF{!)mKlO2n`8N&fx)?6b=^@U;N9~2q#=j1v|Dgw-3RsmpsLVcqF?==EW^$ zGwXXf%e?6jktA^CmedYC0oU2TKhvg3dW6UrOCnfuULCJ2??a2j+0koX z>&)7-s<1U&X4>OmG^3pB=>pwMZ`_tWp@%{!DumXfCBKnK^rcIC8LMl#I5w*H36om5 z(&2LGBahu;843ekSWvr9PJ6Jy(WInvYm%S_O}%OQl>6*~44$KSCn|0EOnfC%ikzhS zIa$XXALZLo3DCq%+!UIz=r+_Gx_yI#eWpUu&E1eeU@%9j?0~A9Zt@5-eRtEbzR(z1 z*vT_rAvMLv(qtl5;J}JeooJlEvG-Wc@Ol1q50cZ?4i0LtV51BwEeZcnRxMXQV*D; z-oRx?TLu}K8=3AwBXAkhyVqqK^(U}_OEL_I@(*+O+uBZ6Er?XItDkAXC1Oj6rau_; zDwUCCsF%c+xHzayf$m#?q>@F2Hm=jY`bhF~s98qw;z|F^0sJqr0zW9>jf=Oz? zmyRr@HZO0hUMKc>zQ5sLX7TXsXp1g_7jj06qh-uAhN|7jVSCQ%y9)t>INT=W{QxO# zWY^(5xjd(Wwp_8i!9=Z5o|uDbK}539$Ck-Zu<~@xt~7 zY7U-7QT2WqEu>Sv?>5PXPK>ZuI}~$HHOa2KuhX+dxP5vSH6y`v^4T=ti}Op=s_mvO zf=@c&>c$XtV;WxARJkF~K5Y%gDr#IdvK0h+Gh5FSCF&kDRq%}B@DgXI5kJU#FEu!aJk9nejt%|7;r2_)2T=6iB)I&aKgy45$=urg+Rb?g^>nT4)Dw5P zvegqLJn(N6QrLHtyXKYKkj-ou399U5`4_SAyv0TAGyYNb!9 zPYE_R$YcmZwSN~v#OSaDR~gW4hSdW~XN_$`yaCoRdoBxAbcI>J6LOp3T&6sBC=gUAmVDI2y)W2q{i9789412@K})Z z*Q+q`wXV@4YXV~t4`Qj42rB`&KU8DN(nmPH{FgdyIO%!iWiFLbY5;9@ZiC6%vgsF= z;!i}35dK!hmD9{ePZw)3Fok^;_?$PSkQyuMg>dEQ0X7awLq!ekAO8*3Q9t5Q>}P;h z)#4wNVVA&!M+ag3^=gDe z6sj@Kw+GyNASLvLMB|g+AMC=~W8jj4Yq^-=6lb3xj#npsVYVqeBP{Rov>vKvJ@-E} zdG~RN+(_ml6T4p}1C6@yFW8X33hPU_)@05#I-ABT<6&o#cI$19s)yM4^ z__Zul)sWKsSsw)WL#+fCT+1^()20@~Q2`ZS zSgO*qA1y7y>>>x0VHhQY7uSwV(*Y;?TsWa?RLmv((W!K_uXl!4==VOhzWsyY|0(9C z<8Zk$()H@`R0}nS9IKa&vI@YxS|~n4{F1#%7>>rHE6;o{C|Dd!_tm|}5h#P6G8;<+ zG8MiMRO&oj$79(Fld*_L{^}FQR|h-5t#_TACzVx#MV7b*cE-5O$#SiJQ-iRQ{$Pxx zV1r3M!cm5YOW@A7x3ph*4-I>nRy?+O%|@ z)p@eo06*-tj`1yH5N9DI3-hrUS3QdK+JZXiJ1(P-plV}CJE1q($38O zU=+&frvJRpPA(r^Kp>lxlz<=BokwZPNH!=q>>rm^Q2;s>IvXSJ=!HDDm=Bs`I}6G( zQaTy0>UfpBw)mIVS}}i#9$sMe>Bmp5x9jclQu8k-2H14dWk;zlc>~D411YS1{1P-M z%$DO<=w_noxRCUk?tpfb3D|CWwo30oA#-H*Gp+zIeSGkS^MsnoT*2XTJ@kU+wX*oA z#!bx*a=qUdXt=E=Nl_H=oOfX5Jf?rHBUS%C7twhP2P^g6qJt@GRe1 zd!eo-zD!&Ta@Iu`{Jhqr#JnyhaQ}K5!;DBEy=_3QF9@R=yrF%eV4N~)(ooRuC0~?Z zqgVf4jd!L;%fhp>>PN17zgAR~1@ReGOMacv&EYUnlU1*yC~DN3dB`;7g{{x}Cz3X| z)=>Wq)jj#~(VsU3-R~9^+hHmt%u5GUki@|b%n$>riHQ{2M&f~|wD+0be0>)AYQUZ85 z0jK*@a(3xI4@vZAz}4wkpQ0KPDmMK5NDL_=NF=zd%Mcu&zup$LQEaL~`ki3ly>YU0 zBwvz!?~DxzSCsP+`A|QFu8au6cip}4j4QRCWh0kZA!PtGLB2PY!71=ld}x}ZHf1pR!xuX zvy*QsT}M+F3=iTsVRH=^8o!hKGojM|k4pxqgWr{PHyd|AzoV)B&*9g5GlC{q+DaJ0F9$A7{oSa9q*l*Q}k>SKCxW~m%Ps~6*A?%SAo+zq-VLoR_NL& zZvV?)D3K{R3Sa(U#IN)d6yjecjgr5~PRLlye_tK@DQI4kHL;euD5+MtR!YN>8~6u< z?96B_fTw#}$Od_aKR<4g@vGrY90R!%2L*dnua{V07e8m37{-Qa>8!?1$*82}n=rmH zfPgY_dSgD-k!h3HNZ7nQ1xJ>lj*AjcC#mEJ);)zp1ZAMiwoJT@P`I^O7a9dR80Thl z5gY|M%@l-rEKkE(AS#2b}8`50+ zM44t``Vz}c(rZx4>5*1NX&T$Rgk&%73xh_`QsY|y`W6y!m` z&4WW_8uxyVNis$L5z_tvM{YF3@D^X)GaQX>@s1XHiRk{sGKb_6sX9Uu!424rV)IG6X@08$4Qw-o=z6677K^@&e0dX;w)nK66hmTu?JXBY|h zD6MB=+jBy%j~8sti9hg3N{k7v+~?T5dJi*q9kX0c*{*DChc;*lrVTT^&Gjfyqsu#9 z>{z#ge%miKtaWaW=s@VxcbU)~YyNT-v>Jw+knVpgMuYQ@6AYKm2zb+dhP~L|I9UZIY{O!66G z5XST_=ZpW^mT|IVTqbP_c`)OpV*t6YCGG+WPN13iF9U@XxA>bhAJGe;gzW24u65*N zifAP*F7A~E?q<#1leX`VJB2zXdib`C6ISK_U=$qpAw8->F(>`DJUbVl`n=gq$)&uL zdTQ_9fGi_}GkPWlb%|9*^CJ*xxHXLKKIEYL=3%5UKg;K@uJ)pd8g7ASPAM--Npf@O znKD3oK&j2sXvQM~GpjvW=V4qVx5I}S@Z z8Re+{@%w1%k}-A-z+V!Pp-Jlw*MUVD#^gO-PH_A}il*}+DESZ9MT5Y**L}~69d*=R zlv<7g=((p^B;~C721+2&!kKnIaVL>*Bjb>0Ci##Cf_kTx>?UGx4NWI+PG(CM?ji7f z2R}j_@6;Twu{*Eau@CAb>W!EW-OkD-wqe|5C4|4WF<6TW9uGTA)#v&4WR|d85%K=GFdYa0-XmBMnCva0LmGJ}ZV+@}IuUFmLLQt&$b&C#l2omZzPV{8m zJx*@SZ_~+jmv=Y|_GlZO)v#2XMCmwfKCEtwN}gsjTBP#YlWrVuj5IA)5Ddi95%p8` za(fRc9gL(H%eTmS%V~?Zf3tb=2g7t{%Oh7Ve0Q}cOva?rQzB!wjwy*rPh@wVH%4Fp zB+EN(e9W&EX`C=?=k=hHJEmds?#8WE7)O++X#ZP;aZVsyp`ORZ5Ed06k=g0@-0GZ*Y>1SZKrb?(2}Uc+kRGNa-K~rXj?3hmY)NvQ1F!EXznB8hH<*Y#C{T4l_#l{TADq zXb3NnZw;`2ttOntJj9yeXc}ER20seK@B{FF{w1tv5L4Kv|1yb30?9o${sl}`z(Ur* zv-*QaZLmP=fcbetr{=hRU$h8ix-?jl_3aup!HF1Y*!>0B!&}>f@)z7I5NTjNO(1E9 z-R9fCI-||KKgdzpqa;gm3XLUP%x89Vv zm}@;n*Yea(vP5h#l<#rB-!4_s5wMur_P^>w-M!yp;G&V`6(cE1Mz!_$E3 z11N&OBl1L8VEm?GwyINU_c^oJRt**wDeCp2r^tOA&#~v+%G98!2`Gw%_3M$8`Xp-x zQv!|pF4&#B7k+W$uLoL=+41_tmLT|S{dZDw%bc)0U1k1J0_}LSEg!Sy>~FJ3 zN|bv?P@vE6wc8564bv#nK;h^TuVh;>rqgHW1%D1{h2s$FPu>WiEIx5Tzhr1zY8;bYq=i;AvJa)Q zQxhcFlxE9iQJkF|hQmX2rD$hjgzDI{eU>`GrCqoG_4MZo>5K(jZI}P4NrgIG19B%V zkvaaPm|m_NNh-%PJz8wEoE)97?k;7VxD=>?Aa_y%f6ZDOJwU4oGvQyY{_>?=96;fc z_-*a2>?QxUpZRLzc`oV(q%Qx^zH1chre_SMU;mk6oFDvtr0@)Z;SV^$w{9Wi$XfjV zRxKBnF}Vy!Dth8JsZr<>jLIii?;O`2vxv@n(f3pleR=>i1l$V&utd!l4C57EW#46} z2!{jH`b)tnaU@mMv-;Ne1tRERV~N0;Bm0c>T%P2Fy1MzIiRU+!Dans;*~BtEN4(rk zJ)l}unJ5|_*!z#kZw&WGZMe(>8lNuizH2?UX(hpS0ukqD{d}g)w2)v(vK+^jH}LdT z&5wF#RKB1HDyA4jvTRN_Dj#D|q9Z1$jJiZ5os#yr|4Q2Cdz0DYKKhas#y1!^F&FiD zRQ9p=vK2J(ANt8}vBTQbM9XgvoPRKg4?d%^L)v?7@OcwHjM~)5vxXr^sBWfFr9k!H zGLzK}Vn2}*J9R}f*Z$e7Ni3N|Y{BGbv(>5nCKHmu@uI8C9)B>x&2;p^)!Ryk+p@UlYf@nxe)R!8 zsebudO#X3MZ&ipkv?poMTTM0Mg!GYb91gzR1~Y8+MK)kUqjKa^t_c%GS=uoInFWUq znf;l)X_F?^0A)2`hDU!{=D*GKlXfX++7UTt7y(@V)Xpe4GWz&(Wmo6&$M`!Q%i8+% zwiMFU=FgODyv-Q*Ydiu;KWR7CehDmCj!M!yOu`<1(9!9tSC1iGc;iae5?t|?M$kaF z^OG&QPZ;1E`p17T=+Kw_8R$8evFg>c*O>u_YUWgo8K(Hp_`prT^ixW^H`OV|*(E#X zrjF9l;lmya4_J%n+w9O8L&}s2Nf4Q~B1`*pcSSvG^|X{8{aiAnEI_Y0Vy1 zO#XJEVY+VH)e^V5xUF58{W&tKrY95nX99+R_)OA>!l}MlN0-`RGcFq#clzYu)1wZ4 zMu~8ZWw$nv-}7OifOV>H?$q&O85YO;RH@u_VxiQ+HLmISYsW0b$&-Xyv zpBzXptvHsbVK~OUG>K4p%4b{u+P2wNx)JRsr40>jW6=3mDg)I&IJoP-xHxekF<~M- ze0qMm=(~*PiuVQw>4%e26>>(-{Y#ZwpXYy3a7V-}Xk|dbg^he&v|fXZ1o%_OUe3%O zwB6KF?YAB})S69r?$(8coqRrwC8#Z#L?*x$Xy-)^GH^G}yTEu3iSCR0rwxg$+dl~w z;4fd{X;1v}RGZB{wCl@rV&*h|gtwu^j-D|7_KQn&8a!PxQ^Q{0dNDswxCK7IFUrXM z+W>?qi-CbLD+NuQ<`;3YhB!2^#=|?9@yrE>Ee}`?wKNW1aWSaQsw9nr$B=c%gIMx| zG1&NYjy0LvWZtE{biH=XtPoTj^MViy#0%;K13+wQ2Qx{mq$7h!AJ301f+u*4CwQ|O zP|;Z$>@zZ+t=h$^t&UMDv;^JUFr+`!hv09O4gbTgP|uLxp6hO&GhRH;0P_5cdm|o) zFLJ>K{r6g7Vm3chua#5PDQ0H8Cv@$cM(4Vne41bE5%;)NBW!=`!0Mlx>FV0ocOd`} zH9yHuZgbuo`0Cgj*p<2N2$GP+tI6DJv^?Ya;EBgq$0kXZf!cr`TenY#)UIRZx}qvv zuBR+9Tb(p1U&v&G2rp>h8{R`Dj(7VMMRJF07pDxTbfJ{~VG$h|*LC}G$Rs3n)ob8xkpzwD~l z5E<{ZSrwg{gay01i*?*E^2LaTw&escecwp8Ie7t*w&myWPy*a$UO0;TD=Pb2Rzq{F z{V<;EX+@`7KgMWg)yFjdmiOZOu-lE-#kzaX-pdNVqJ#7|6_S3=TBYA$__!%wZv|U2 z@Mbmta>IYoByeE+`)mu6DdREq=FQl)RIJ7)PYv9)rI_#C8EWA5DL z+`Kl~ot}<5@fNJdZ^c}P2u@AkkD&K2+wi}jo)}K!+GFLtfl&yK%;7tvVg-`*T>Y*R zPKRgjOxav^t_l-=56Kj9-x2Vu2&lECN4=%8^G_!dZmxxv4Nq&(i zj3xLisYuk8CBPr%WS?JZZAS`JBi0EhIXlsS?Ju095$)W^9N6%GD6h1+3RNr+%YWa# zDR7QYGjU*;FH>l)azYP%H5N$WCFw4jMOLz*nUPD?iqgy*j1r$;)4<*+q8CyOG=@DLv|@*u1R$;V5p~w;Cle!F+n*_!y0&bfm1iE@pOHYj-znTz zF5f-Vci2hb=t(hA7@TaC+5lZQ_hsa`b6oE0gMPsWFW*z$$dkpW@{1AD7m3QBfZ51| z)rE|=IWqY}MPE-S!*k_E`gBVYhiwSO8?sEBK_vcfWM@}mDo@=;-wXO}1UoES20k-; zr2e2;*w$97p!di6`abmtB7_%H+%(CVR)8cqn>)WeuXbK63|;KwqZ8rCLrYmG6hc zd@e3-grB2&ThyEFD-&BjZlho9FcXZvj@7ljTDJ^{JdV@tZ$iu({NOjrm6GbVI<*$? zcd~W`1x^^#??)#0Z6(AEiF9et1m0K0F{t3vY-$#SyyxK+KTLsTz>-tu4TT^>>O=N= zkzw``O@zOt-7V&3g-WJ&KXhDpihRp4+Sl+hY~@iF(;wnoi0VLm;YIv5i&N;AZ5X>z zs_he=7Y^Hg9i9q;``e}E=BOmI`f|Y)ygt|0M`(3#iZU9W( z`srgC%DU0Bn$|N`AxjNDIRXhUZ*~eu09|&*HaY{R<4}(uv*3j(l*hN`!21U7eUW@e zO?8@c_1A+K=i*cm~rF zyPL4Qjr?(@Fsy8_LQw8N(c@6>vkL~%NJ*J=L=vS|EI$L8UUJzs_*KD(t_sa^u-OR2 zaRg3I#yukYcut!R60HyiU!C~2+iK0$tKNMFrOb6+b@0`}s^66`6)KVdD&^*qOVsm(k!R~l5Sa@s*d}`sF>Pp)5 z^=XbB`r%bduE0~Hh;MdqAR2zAHI$(+X?KD-xnn%+wN;Any_^-WnG9)p*X_hNsJqjU z)Z~?oXXn14&Dv5{H#0en0W!=bj6WQ4RgPAOowNm-Oz8EK>8_M9V+T;@vqFr9>s$xO zEd#meLdC9+9>oFPp9R1ox*EJTdUxO=`D?06;``168xzlr#?p>zMYo`cpgrn|KxMD= zP8Nd(URQa;SIQ(Gd)oSiKgDn>&nYYLvz(XY?%b|Dt2hgp4%BdVTE62e*6INE``(?N ze29Ek8t|5ut%a=dw}D6BZ#)%?DIq-+3_9N^5C|-qww4L(LEo{qDOLphbVusTaQ@xs zd$4mfcyjJ6tmK(ZE0%QBVD&nDhy#|!`+ad2GR*mk1h~~cu zx@8X{&)g`j8kZA?WdV5#%s4z#b~_z+9?i2{-k15(54BAHm&g}au-d5>x){!$OLJ_W zg;V_XwPOx&6f0R`R6{CQfi<9D+@Ddpcj z6ypD>_&h!3{Mk=+md6+;q2!j>XxqRT$dtowHQM7fG&j*3r;PdW-Un~(fhvG4QMmfO zo`OCdRy((niCP_|`5=yC-T*qEME;dv-?!qb#;7WmdusHXk~9Ucd*%?4*HR(8k~&Tc z?|gRyrJXWBPQ>Zi1nzi}L8s6y?%HY)CP*1x2E_=$iNXti1N&9>U<0+0D>>g{sY5;p zIR8%gQEw~owMoh@rb6vlwOM}ZL^Z;VHR6;DPg+WtfomYpFk`L3hCF_1ro<`G)u=X5 zjg*deG*Mh5n0b1!%-O5t^T#@D2@lxCy3&(iA=LP&f65Kp z1#gO%|0>_EgF9IndXLKLo-;(OD_Z=g$arwc-MO!=j<9y_D06g3=v+-71nYOsKZ|M^ zkGBMV##&+ww2gXMiaMVOt}#m*>A(y>r=`lFJ26v}A%$LCLvW9Y(~eX*D5O^8B)2hb ztSfcj$T;L9P6B+Tw9Ou;eMip*hka!VEmOU`g>5gm+e&Ghze#P3eElQAQYZ$Z-lKtt zJeVPIDkWLY4AWI-3b;%7df(IqC@J4#>qf5BiPR6Xy&alJDw#P5G+Y^iA1JUW!=JVg z$pLQnB*(uU3~SSO5Pd4pJ|SKU{DHLE4k))`ot}S*g@s?|vPKU(Qm# z$g8WIYd5q1)y%6Qm%#L0{;00wx2PZt;d=;;%}xI96mv8%x-{M+qycPIUx>eB+B7yp zd9mE!vP%%g4a-(~j9J0JWMyC>VX$pmMg3~+A?y8gedaQ|63SMhX_2Ke>J39OXgr{t zUP1;yp3wt-&*(UpBO9EUG?{O>%cR0Ad!4x~d!P3{B*Q5EJNB`mNoLXdZX|xTwt1ny zY4zcNcMWbKxJ%>i)>wcBf?G)A5ZtYC z2o@X~cMtA?1gEj!5Ue2(JU72n_q*piuim-u)&1{Py+8M^Rclx6J=dONt~JLPqe;(i zoyMG%FvpsAMrQ3N1@b=bJE)gLprl2}==An`?_D_;fu%U&?=V*=@E;~(nA|67k1jRZ z1U~4J%p=g>p<5%-cu|*8QD)s|?S*4{`O_}G*0}VyE~D)_^GTyEKR;xJ<~eW=y3F~L zEPSUBmgblo&4LGZUQnX#^lyVhVOSt_fns|n#i2%+Yd3|mwJ&myl*=!YX}Vw5K%qeIJ04i!O+cXW^)@Y1rD{x}t`X z7gEhR&Wb$Ez$1{r6%U%^=U4y}#1hzz8H?jg@VMN~T>ijY zAn-Vvo0A#lp%|DWxM6VBS#hdnf=+Vg;t_IlU@veG^f}7f&GGdy3MZh}p`giO*7&U*?(BDeNM602 zCAL10qQW@MMKsBE!2wVS{)S zNcQ)2EJ^m)lNowwq?`iq@-@(hqL0dazI~U32{nA9IsgLaok-^5z3aeV6(Y@%6JZm> zDJWbE&be0>Q|v4RH1ahhN|#4CoN>>8+tQ6%@ron(G3og7(=UWDh>Pui>*P1 z&7p4)$wQGiD_S*u<(sp*<6F&|Se)^R#PPd&tC_wqiXO-}hwi(h(6Omzy31^bynB0-N zHLn<4*(Y;JF#%j^wB>=Q-raA}gX!B&jd*PR&03-IiJF7i4CnH&hDrGQanZ`{Kmlwi zGV-T0ZIm;vVTfCHuMqr#c;@IQc4LC?=3PKL#EB1_*bN_bz4TD4Mgu#Xje=xOgqIW0@}vL#@c9M*)Pq+IcX>wcjGKMMPVY3C zn{kR!mD1heWZ)t_2QIANTMUZ_qj*=4SC{%kpA(*Mmm#)%D2_!e4~XGCQ*BfQ+^qz? z{kVoJFYs^31uy>(faDJ#PAI@S!=&uRr;IC+&RNqIM`i40C+2Ky53W6?ggce~)@5gO zy*UN7J-Q)(@?ef?jT7Qga7NZ8`>Qg$8m!IaQM#c1bXxkq6|3Sy@STu(Gi4Hg%kBq{ zaVgpjX)0{yy@}mRC#Hs_YGUV;pV)4A{9^!L)gq(!OLOwHD0vg_9)$_AC+3OkHfkGZ zkRuI_wa5&D^9&VM7ECM9!An55|8&R|$;V)gDasejV5O39MPa7{q8H67kxGS|i5q-Q zY98L%j_n3Tk=ibMF?q29w|5RXB22zzE41RGprt{?`E4VrzJ>7 zQ^KpRXLQZ=npO13ngelCCg*(1*Xf5_U~Y6(oz_cw(Z)k0Sdk3z^NP`FS5H@^8cy5h z{{VK53a#|nFbmO8EYS-oQDi!vw)=|QM$D1(b<%Q)b~?B|(F-(JkBhMz22QZMw7;I( z$Pbh0xID2oYU4r}hnjc}VyD~0giqZVb0G^-MG-ckq0)qGX25Aeswh^yD_5G3)xPF- z8&>g=BdkR(z z(?kgS?WKd)@AS)`}i#>L??uym^TmmjSO(J}JPvjiMc}|YwmTW@F(ivc&`LVsA z#5r2dE@v^6!Y$uK_G%lZpljA5kgG_Oh0MrHxtmhsrGp?vA!_uQK3OD2nOdGPS_!Wd zi!RR18rK@%r)ePZmRW{Cw17u_d=wuEi0JblfEq+`jmvXo{BYm>_V#GfTH+J5q-lg0 z_KNK;bg1$EX$LW@fS$QyR|8ocw6*`{^pd+R9Ois&XV0v^x$lyPJL(dB{Bo9imsXA2 zKNaj0W0_8fLNm5Ql+h$mkX_p{1450V$|mQ#kkMkkpP<#d%4yP%bYNRmsj+BEs?@>n zo@Unk5wvw@_&Qm5QQXg2i=myLHG5m0ct28HNMqTyiTcf#Qw}*KgX|JnB;EKQs)3$< z0Eiftx`k@39)%vOMx1^RHpHn3xnz_NT~_~^j?>Sczg1#Cg4065l))AAa(fr~^BYTb z4ONOkX}!s-#GSHr=}aJ(g?e+9M#==pI~wd{!&Hd_v5QN#O&-xpRhe$x&Lu?;Dt8A^ zyyZ3aNL{Hx9d|6f7dX|=C*?!5*^!Sc=v`gLx}~J0OfJnPppCHdnz9m4W2#`c*b1H+ z<%y_J7a82vABz=NBfmr?D3pzK`RX?<&f=wp`F*E2ry<5?aXS@}Ml=ceV2g_c_Y|i6 znCg4V=|km>_%=}(G)e!@jOoW#^0*cY$Vd;NBpDhCS<>lFG{CfS3jljO^{XW)TD*j zx8=AEBd4_dA#TEHWIoPL&qpE-FPE4#g7%+<7JmS#>#@I+brW;xhjza2`9lHLzBINH znlob|t8_?DJROC{ctP|jb@M`EG0 zus5N<@4`^LwmlI&>iyx1Gir{SP3a5TQ!Gs;-XZ7|gBa?5ouN=#kA{ab)^5_8{>^k1 z`eqHglY1?^v%8$7SOztwTMM8P9TSr=d}$w)F=I)eM*-^X$C!7Q?AA`-d&IQ_h+jeL z9Ek+wMhrp&@5FI=CJU6{KKGoir1-u#%!suhYhM%9Ho_tzn0jt*d<<2ye}lpv8+XT@ zQe9c7Xw$go;Oy{eEW0ul2i7Ca40HglWXtM`bq{=6wRPV8FiAw1-_nHkXMS z|AK0RK%~k1h5&RFU&}2eTXp0wOcEA**_a==b9)apbA8H5)-kKe{waG2)8EAgr{7RL zZVN55u@;HD6t;JzRcai;_M&>T3?l}hpA{89>?aM+VO1o1 zEkKlEZ#0Op+PTMzdhJR=LG4sm`J`UW9lYC|+$Gam<9;gtRa!l_bxrYsXtFHyI*TI% z+!)fqy7eNAI^aG%HyZW5(U3}XTbe)Vs|->oc|KaKa<;cSrs{4T?be+iUbN^B(h|X% z+19Uof;J%5NI6TsVX^aI5Dt|(B=_RWoCgB6*^RF)BV%Y$=bD6=0LF*sX#S1w+}2&=sf27 z0a98d&%Ad$*%p^fszD5BRbiy-&%*Eg8dS~Rghy)6{Je7cT=)3ymS1jY)?#Eil`}_} zbFKb2h10xo~G=Al}Hz^gS_FG}#lMt~P-XkE0<$7B)w(o+u z^;XN*`bAaS+a5HB*DGVnDd_<8oN;ks&8h;nhu%&`m46d~8Mqt0$XH5Qn^sekW?`vI z(XY|tHE=3~zDTDSipT#!RYd%ew*GC+*V~+)g*HoYjNVj zUDIF1tZy8%e6@_!@XZ8on>Bp>@+6Ss%^qol<05oD=W>yBt7Y}BIMyd_c;d|iulWrV z&M(C^p{5 zTa@Z5RZ*Xamw3oE;EYAO44hukW$qN-J-`3@_<)op#9T+JBH=dbsJ83Xvl3&|6*R73 z-}T`p!@5O_WGn6}ua}ZzQhd+7VB3|p-tT69)6B)TI4gN2WZ0J_?*t5GKr){nW%X3F z6iFF6q(#te2fY)|9X86vLkm!ZNTl6%rI`5Iz1exE9Nr{rm7rrsSZQA3W{&<%0Qhf* zQA*h(@%bzp5@Xh+pY7v6dUB4r^sWof8rgO`)T($+8RlRSQF?yqM+t|9m)WeVP%n(H zWV%Cs(O)A8$M2L@YdS$}eBEqq$y~{j8irTdw)F`-Q`-haQXu>5N|m#^Nk8U2c3kIT z5y9_2a1XRvfh<)KG~1sqB9l5Sq;q30X*5F*hP!>;_1{(15&b?d#C z8N%t!Llx+@HrbDc9zY~MJP11>k-a!wPP8Eq-IXI2QrQQr0fer_Flv1g;wU%?U(1Zf zcX-w+u1n4G4w!4CoUT$er_r)Hz3pjC|aZ^dqRB6;4D%!RGh#e>Ava8NOc0 z{HTzj#&&36lzi;OeAqPUyiiTSCQiZMntb^FBFNoN>>vRc6vWva)u<#DC}PXR%c z>`w2mXminKVzw`Rrf4}5I<#Ybj?*pB%$K#W18jrN9{Ad1(2jV|A_7 z%iqyE&*zUYgI1a#x8D+dbA_sJ2~{{DlHcfdEsG{U{tCIfx_-|5R+#fUp{4^i=1lxs z$le4VEfE+#&i3~0(ap`~k3w&nc;ZtV*h{RZVjB|<#WkTioFK-!x4)_XPWN>yIO-3; z*0y@nNn3rPr~#1f$OS1UrJ(9?oe}066Ax52z}9@Qr*y+o95x(%7+Gzlbmn>gaXtJ9 z)4O$Z9wJq@em!eyG>qYSwd-FRzu+`~>Qax~HSyTCd2jv)pw&@W*|aVEZUSC#DkTDM ztFm#{Jwc&|LI>gcxdjuo3);Phey%SzI?)<}P)^>rTqfAP)NrU#Z{$``^L(fc=8iKT z;d4Kjvv~_FY#O?q*m)ja9nU-o2*~=;8L~#`AN-ZJJaGd)cXlY*x6`=Vm747m{d3PA zlV29RJ9f18gF~A6IsSw~S^U>>Vpr&09sYx==m4Ccxn3_UZip!%f)huYLJxYCXkkVp zOjS1u#3dUbqU<~Wq3ik9k-TcrWS0G=+O#zVJ%}E0(7StH*jgOhq>LImakH@(2ay}? z@T#{7T1_4dG5R3UDjw3h?u}$ysOW5*Dyql1M!!&FR}tl!aAp&#Y1Vc$3U_H+pEa08 zh?88Bl;qOC8{Ii*a-z{|Cire@{$+hdj^NcuQ|AaWkK7e0V<5_h08dyDD_+9#drAAl zGAR|v*4H@v=+-a!Od)-1vqp0l56!$jKJ2@{$HCZ1)=$x>agJ&XIrC8YBr?(rL%x8z z%lteg4HS_iGDkYw?AL-Zyz}oqf7NF7TJ|w7rKib+(dh?@VYj9EwA$6;I%|^p6N0+J zk}&t2xMCP;p`%2wo*|RzyPMbFUrkBtSV<-u~$O`v1g5A!jm1D9G0 za%;6Y3-F;0sTrx&HQ_5Ww<4u=;vnsNO}jj`-TT-kF&#wxOx*@A3lr)a{AtMfAW>!p zFQsJ}A;kFJDZfocQ?s8Er(DNIvJ{-m@JMh}*ny~{HIsOMPD7IK*)uviXTmWNX1ias z#|31q{6~-}R*O7C<#n~$9{{%#gB~++U|qg&4U?`I*Q6z@D7QzWKA;1?zV+@2+7FxP6>52kT*RUzJzb+?qn>W!{qb`ysr~x)w9p^hbCf`N zAC)uXjiM)(X{M#|miXt_{%yGah|Stn)c9(^3K}^^WD4aqd_R2PENj|;HQy{u zl*1jKfX6meL0*ifB3_y?lq0rsO9y5F_s?p^5F<$jDh_s9XCnAu+Ub^x|*5 zdorF3^(oCzFZso_0m&Zs9?n{=Sj&&C!Qet)6hA-q!qR&t_o-1I5;aCE&2P!|cKqV< zbz!?98JBCE8hc;x-MQ$mqp{P%#F>jZ0$N%zV^G;JyfQKuDXtqTE@?7%aqtRPt-EU= zo-Xh=Z6}Vo>Q9pr!SoGEUB^KCC3De$w9_2zn_+MlWoUkf^jnFjH;dE>!YjkwQdlH7rsJD>m6&w^3hHRXkf!GuDPF(1sm|5 z_3QUWoTUY-A4B!h|7YYfH158|l0Sgcs`$A-0Q>+Pnv};R%G#1@_7)8Kum<$~Z(7y? zNuyURI?>|>W8@;)5e~W*NNqclA>wWgaCzhZ;)4wY`H$3R!dh|-!c*&!3UU);g=k1V z&T7OBSU0Hg?fm5Suo_BDU(0kaLg8gfy{w=__xf*XBPggLKj(m3wo?C)Uno%mkqVK} z=YT^(^jW--3Tcc2t~z1P#}Hd_Km0(&upZ=t-?7gTeH30;zPL=b^@|lR2&P{}*6>o@ zz~l#%nNf}s^^NHKfyrTLdntNF64&i(V^l``Kjr73ULEh6U&YvT)=&YlIjrp7W?g86 zP#tp9BTllO$&3)cBl**k@JJLxK9N5SeOM5=LUHN%TUb1FqBh-9w<jqjzGxe0Fv0!iVgN9g-Fdz<@h16)CSB-4QVjhFE;V z7->r6@+rx5)3x6N;4~r9nxStg+P~j6DVP4GAaTNjFWB zG84Mjw-@&NKjbQ6n!a<=CAc-IxJ^R1eRpG1oD-)e*20la{*=Kl7 zmO@?B7^}orFguOUdLBaGpIc(gPkF>Ct|3@%>Br}cu|ELP?$SSis9#M2mlE&i5d!Bn z$3R6{Xww zj5~g!F?Tg=qoi^iwBRV)$53g(I7W+Kx?qXPu_mn75(A|P>IUyBY0?XVf=$xo+^U=G zUk9{_rWQY{b)@{>mf(rG9l8@w6QTRsQ=W#~J@1M}58U>-rkh)P5j?;T`UAikQ298q zM+DdTVqG4wSm0^0qTUlz7)!h6TnA38?%4gC{Wx$x4&E818Ah>3kEl@#pWPX#>r=3^ ze@UgVg=JjgNxbQjJ*DQY*TpM?-+SSG4#s&;0jqtnc4zw1Q}s?Ffn$kKFs=tp+|x+O zMk`GSkuoQ5|1W1@@_$9Zt`cRJh&Ij5{ui9D8@UA?g@+%3sIGVwvq}~%j^A#ohmwb0 zGB9dacU&I|&8qyLa$^4%uMJNIaEM-b`}bD{E9h|w3Jo5O($V-2k3f?42hIAi&)qPz zIFw|phR26{*VPw+JI|BCm#lmCcs_psjnj`YcP1zs(kD&9uYwFe{!V(}+8irLFSMYl zbzPxd3<{MhVHqv@b=Qn`Te<6~qQwv|%%Ro>=|&7QxeP^8r^M(r0lcV}Ym%D4Yb(Rv zFo;d{29z!Pfrx}}cr5Q$RAIL_%BnZy<)hIMYlF$uGq0{GF_f)x>Y9^(kQ&`bmqk(s z%(#a#_oL9oBg@wPXN1Cs=B0&j{7~-BG$+9M^L2V`<~^Lw96g;k%h9f~GD3Afb|Nia zTQ-t7FHF6`gYjcZ8rjZqpck#hkY(L+#`FobAxsNYF(WVwWb9Fr$nR<*G+}Wq#nV7? zBM5D8Bi+E{#7Z{a>1|vJ89Ks!Dox{+81m0&=#iqtINSvz`}6SCaROI=Aj7 zC&@|rAw&EmH}J#l-3_QOMVeE_fAlHCZC7hzmKO21D#^Vgx@<=84qmZ)mVc~4 z`u|7$e{YnbvFDXI37d*Er(aTE>wQJiKX3xp_g~lGf1lw0eM$c>dvX@2@^(T=`heoc zrY?M9q+=B^jDs%Cj#s`r(J(iD^bfkPl3d;9pA2?|rNV%?a@>kh_8?D62gVozk`k9a z4@zhSdBpw~Qppz~)5yOYjgJYq+G^xKcw}^4RIgC<@5dsLfi0_(!0$u`A7VP#OtK z2iIXbCoDl?FACMT?Tpk7I2g0{%cU?I1d?M%Q(hyO$M>RTYUmOxj-r5~uv4 zWp(Q*WP*w;rNt9?qom@$IDw$leb-#YI9)4O?E-a3e5fw#-%k&v-<3^RiKbD31BE`$ zdNRe2eT#e{4`@UdMrvD5`3(`npkhrli`~(vhy?ENbIbl*=M8I!}U-3 zjT#W;9@;NV-5!c09!TSbFL?{S*R@HONNKJXMz+4A&@W2%GJ4!%F#U;hvk9)}|EG(e z(X*npd8+y>hyP8O$4o1XxOY>D1tk#OQ-#`TLJ^}YWIP%LB963l#Oi`>@;`$Ff5x+f za4FIk%I?w;+bE94r(E%!SSF~+UC|}#3(>`_M&YgsMM^O?b}R}XvM2!lQTd@;a}~Gw zMJQ(`$MDj{+9-()+5kc>%~l` zBC}VK74%iVTz!0UcM`DUs5gvj$#YrZvg17-#$}wyil@&*L!yqqDkA07n()4c{q4b> zOwg7m5(H3bvA6Pg<6BI!xGoVcU?`eX@Ds5r~h4w!_y(m!pQ6P(^%EIeMSyywBz`6T;VOwE>5GW;@kfbU6o z=X9#zed2Qt=6*HmVuRAi`E=~)aCqx4Y!61>Xf?AT5x5FQJf6a`7u@PkCBr&zi%o7zfs)A$;0>h=yW~{Sn%6j#pj7<V>2Cbd%yAGhwlgSPa zw*1*u(47qtf3|ALyFtZ?Pz$S{*SovUrsZW{LJuAj-_i!8QGkt3Hc5-J@Re}D#H}`o zlYQQ4Hqp88DnxvpmaKq5_?%7U{`(G&Z1h;cuiHP>I3SI!LzF8~(KST>2CTv}C+X8Xkm zP^1dxjBBbei##CoL*mHy!`u_qZkFPR=B!#{fsJ?7#OJ>96m;((bi^aJ%(3J@?Cmn0 znh?pVjUv&>ienQH*8NRj?K8tfgHJ+-#l)OGv;ajwy1$w#kr*a!68&4*Ez{A*~8&he+Pr5aC$L_;W3IZ2Fl_K6}#8+z6+`MuV4DI*v3=B6Nptf8G#xok&g z_a+OdDq`eXZz&HRMH57H!wpJ++)xZVBL)u-Y2jco8MGofor6xQ9mK8|?(7JB_j zqtO{dH_Q5LrWk_>mW^NSD#C_)&tY^GqTyo)fzMLIuws)i#^muiM;GFk#2!l-gEC2hl#ap}dhm75D1n+oDHU;6zY5RTMwO=G9$9;y9_)V#rt}UfW>y@y_ zD6REJ`FfcQ^#G8z+8T}-t-=`GV|3>;(ZxCQ*v8bBuJiGxsF~!agh%^Cq|+0obYc$3 zHyio*8KwYRJJ&qTtwZihUzMcv@uXb-8%fm#PLmKoh(>0PudczndZ=s6Y62uF4mVKC zU{V<^BRP}6`R=F)pm$;hq6(%x+wyXj;qbpGz#Fk0R|Dq^aY3o>aOuNaF^nmIsA z+)1j9O-#zL;Q=EyevT255GiGOkGtsP*o~~;d_#vA)qUsQ&>^ReURSMP1b*(yno@a` zps-XF=amv;ALqTqH_i}bz4G+Cu)D8$&Lc3|%l7y2d5X0=_dl!x^*VP950nYev!%ck zC`sfl61-7<=2y3y@A83+5EzZW#>faMf0xDz;;bcLYFHB+Zo*PtDBOlBhS4QoiIedr zBquQnVA)ZD0<@gLJ0G>9qmL(Me0`?Vwwn)lR?A^iFXz{ zLnd#g*>(M3{u#>!z|VZw{ET$FD@GIxV*^mDYETzX+Y5ob6Wpl;OeNBj@5trR(jt`X zT^k;PnB@{K+}+Fp3EhF|;fyGK>c;G4%)*ZL;%4)f4!e)rX`fzhNd8 z0O7!y6B9@Zlygr}73n>Ok#}rwcGs(1@hhgq8 z(r+xgMTbHzB(RHw>itN0?|q@CQAbI($aspX4nh|eYU&6YW81qj7cdqNp0@`uA;FswVdQ)k>|Q8M7* zaT)s?Ic!8!l`F3i?!iSepNyw*e<&WsAnTODE@#L7TA!e$YV4oKppMwc`0~6dPkipO zC;w06AkNX4Zb_jfi>Iv^HX6$=v>yvcMyJP1g&5Q?TiE@$u-PEbX3+pYQo*x{_&4JaOC;& zHtI{TQq>;->mcyZ05uuF{J?bKXQkH;FPl->LI9LF`zfggN-UU+~NT^BuC!^Q;FrUlvL z=wgj?T?#acdter)c8GIC(0)Xklli__Tf@kuTqFGOof!EK05A9G4?r`lq9~Spkxd7j z;KxCaS$vLEi0YBhs&fe)EIibFDCqST!xMjl;DlQ+%M#SXqkp~aS(*bLCGz(kOIefu zqEUu}e~%0TcV~eTcA~`~uvEnsUtaHzS-%GPTz3Tv@rY%ldTAnrs73y^ik1pJ-LtwaHO)v-AZ^q3mdHl?GZ_^&9SZ6a9{y&ACMKF zJ8>U8e%&d_8hg`v)-ACk$+ z;H^Jgn0=US9Kc5QGi;M=%%(@?Pq<+zhE-E@Fg6y~f4=I8&@tTYsPNixQ4wOCVq%EH zfQe*B8_}Cuc)}5?3?Mxo3ebdqnB@$nA?buz8s1!jWXmR)G>_rVjYu3SRD6DQf{bVO zERN~sq{0yt1RbB#QD2}3$+*lOGT9oU86)FWNGgWKR2yYg<}jrdt&3K;vK~?0+cNK_A8saZj_hx@2XWuXoBqwF`0S1A21s;@{RMXd1)Qg#e1 zm;zCe+D2u{^w3NhXq0KD1b!OF&ZmFY$Ko{d;8NWUm4#K*U7q&BX>&tKU&kKne6h8Z zW2Xwm`1hba@%krP5s04P?oIOwJL<<1psN`zfr@Hv-eS^*sq%R?BAPdh!$Qk~qd z#Bv~&UfDM$Zd5zAG2Rg!)k@k=ig27}!m5AREBZJeX#kX%{&N1VQW*9(nR zrEhu}M;I#;9u(}A(xG12OdmcC&E8~jzDQ1#=qs*h=)2&N{OXJABpf-t)jKd|W!R;L z9$?J67HPXy6+y=l_7kx{PI{LEJBlW=IRf?a<@CS*Y&IHgwOC~$FixLi<+>V@-U`*Il)Q>_nsnf$+Gl5*^7*< z*4F~FEn}y0|I%Ag3XitjiGhbRbuoW!$Obl0WR^(0ry>M6@jDcJJ0Ovk!7HVdmdfh) zOu?5r7*oJ>a#^G5p+uEB#fftO3aa00UF$rIk0cwvT*>Y>$xORr?&cExr0#3Nr^jh% z+Scez*JP~RknZMy6c73Gb29bpMeJFe&Hhzg+o6q%VXovp-;QLC^qoV)tskG93N2|g!ssU-t5W?q`WYG|hI!t4((732 zoX+EtT<2n`<>Ig#QPg4rLTN<|&%jWLZ4SS@5kp&=Y$B~tUgSMefg@^UkhNyIJ zT3=hhbWCF|k&lfVRwFUkPDdP=Pg^J7clD;vthnmX*dL{2a53;XW^?uH5@^NQmlmv368zb-5q$ElCr62yV+UgiB#7aCS-ga zsvl|}La!?81S_>ASOj&*6PsS0GDwn@>(zTiUsjV;UN)(U@$PbHWRJ8|Pa(n`7It&z~0AU`lv^7-Lb{RWlznvMpI zly%B8jhA3~S`SCV!Mro`RY8w<4a=^4ihxH|X8c)~cpy4(?b&=!zh>QZxpP4I$B4h! zo7HzXEV4Tb);E;ow>L91Ulbprfc~*lHate-quk0rcM(m34h*39WPwPGgMk^_D0V0@AZgE-lGizvb!R zzW@1J)Ouv2%{7AaRnU8i%9!l<`kR5z(k-bmguM4%AsyS8dRJ4?L)001ge@8Bz-fcf zmIC*al+Vq{qV`+*9_um~T;+8-ZQ3mZ2Yfg0g&RcG1N0BdO=?OrdLo;s;~Wk&>6^9R zusPA(f7k@(SAV*CX*JZPgxb3Qb@v!!I5Ls7#@sa=WDM*Zv(g4AZdwkV_x97ipLUrx zNwTuYJKSk-TsJgMgU1`D&3w6p8)3a!3$_aOEv%%!^RD z{W>Hm&zRadwK?45fawh1e8?&a-CZQ_RsB`Tnae}{8oBf271j{PiIiSF4k?%)T9;BC zKm0v$9sXw8CYLDZqC{K3-rFk?@_L#NK`jLL)GDM;f2<(0?L??HSsjEHMv7zCPo6&@ z<;bJNK_2>E@BEl^`9(dtFMr1!Ag82j>|&e`<2P)cQ-vBO>`5NRv&DQTHAGhAfaCN) zF!*|bIU{#3Oq8oiyA3$f?CNRzV|I+79_*34)FJRtlqRwBda6Upmc2~+arM4;)z(fH zb@BNJ{tjI?T|gT8ErVh_J3(t3oa-c-k84y{riP9_u6_$3N=`w<;$En}xLBvm6s-IR z)oWI7x4ZMyEZvlhHxu!TQ?JK!EN#(>t&UO}pCR9T4QFhx{-F~qK*){t9fOoOyR4Yu zb{$T|6j3gLz`TIQj><+&=7CkeimHD=#T?Zluaw!PcMX}FHf z9H_bx`?Zb26Z(&SsLSJLfo&F;wT9_Ar>WhoOi=GVu&r_-_wy-1THCh^tR?rC>zC^5 z@eu?jIm6M;9feDz{pZ4#%8g`UZKJKFD6X&C?J(IR#^BLrU;N`IaEH^;HM{J&B*NG;W3}j_8-K3&!^je)u6nglLn9pp&jZkJu% z7|ukMkonDi>sK|7m=~j-A1ZEf6--<@WHe!c!4I!%6|uqa->khBL)x9n^^kT1p)m%0 zvQKvNy-Z!!omY@#{>V$}zV1p_u{6;O&}lC5PE@LMKZ$?MgshMP)1l<0^P}KSm#R;e znzd^4y-5ancDZ6olm|gR$xABavF@ZbNg1Ws%lMLX-ZYP_e!*;oW%vd>oq#kv4&OGf z5DNOPxqac8n||zfUN~oY>6AXGGY-=L^jL5rlhQYOYYP)9$tpg0&9d5`y3EY3R@@d{ zY;I@9K1?Yk?Re1YY%jhZPcAlPl2tPSz3phg)-jFyfL?bmU|4tSvTdQ0(Dmt3nyUe| zS8kV3_FZV%Q#3h+QCy}>5qvs~l91yg(61=TQHq55w5}!>OIvwA##y58=X1F#$DG{F{^u2tV z$pd*Plw_%FPfi*kjketku8ip4^=x0hD4t+#!%m?khK>J2%rnVma(KD>=$Cr&Yc^1< z8?hWJx-IcJn^bwG?0C@QxrTuF-*i=k{*kH?qD1BQG3ki4_&&5)T`ricraJX&54*P@ zuNKj}sk{j;{EZ$qyoGSzM!4Uw8|@89sh@zBySlnEyuBe@Q$tYA1DTt_f24*&-aiZn z%WlSZ;_@wbf}G8}ZFl+fx`_I%NOFXD$4ZUSWntyuW88Z*j@wq2?g4j}j4$=AQ&$>X zwKmG}FT2F)(!tiq_W^+_Vz_?*h;F5}&_0JQgRPuqx!hl|Uyy;l4|%tVeK;s@!0i1t zpahI8ne;GECP*=JnzQBx%PcglLV(C_mfO zkR^-T-^?FTCnS!()f4FFC5GD_j6^D?M#cn^d@8J0zckI?zcBQb?45pN!5Utgg?2x5 z?FIuzKL(T0wP6vg)^wZ?b~UW}o1gupnb8iMDquepJ~|X2`F4w*zzjBR;g@e1#c_qO zf-OXBL7!Dm-ui^9P`=r@<-9Oh=0b?58aFxoY@Xp>k-sU;2eH_tfR#hmCq1Ycb%r67 z7=ParjJF2oUENw8D!-9(iJdL4F+er`r9>DKVpeDM!lr=8x~iHv`{bKp12iFX?oxG#_abH;tcMUc`|^md3~0z-V%&%KZ7&Pr0DV6P4rZnM;RO)1?FDUZZs_*ZpQR&YFsvJ@&Kx=h5-F*q1iRjD{&X>Y9V80qdn`ty}^a zJ_QMHM{PYpYH+TlqH2)!Z@mr6bnGdL@;qxvjZl&BWtT}$;}g>KZZ{GWn+zs*aGQ`U zvja^!Yh!H_32I*Y!`HPyQJP=)YTF{-r&-gnGj#2%CW|Z)6RT;{d`*n(^kd$1VNW#8 zgm<*;bvsZIOQMxJuJ?xAb|&$OQLauBDxB3Gc63H|sFjDBp-m`11nCEIK=#nVX~Cni za5b)PrzzfiBi~h;CNEVQ>`>m%qx}M0yWtPYq_PvuFozjWTMu1M^Ac}%n2RS)t?B%B zX**UU>HxR%r+)!oz6V-^1q`cUDT8*+-+^q2u98CsRO}pU#3{c%2Fm=cO$Y1SYOwep zKCb;#V{)+bN>pK2W(wI=aHmO6bJbb|yjVjjdTNd zvxa9oTR8|4C6J*C-C;~&Gut(SXphxSJ7|P7{gXzwK^WKk84R&ZsKzL&#vC8Z#F`T_ z6#;lGwiE)`i}gg0zV&iSjtN!blA!X86rE>^ojmMMb6JupNVI zShklK^r__}u!0!~(Sj{FLSV)@L2qP1#R_LlE)DOO<{wpN<)5j-oYQ=fn_?K6-G(t5 z-h{aD3AnI@3%fy#Tt?uoYA$2vg|P+E;2-0YmV>VbiPRlf$-5pp>ljnJbv%9Ea500i^YB{c1VVxqwR{zXovo*W<(mM;|+Cs8}8fcofmo zrbIZoR^_0=)TF}L%mf8OtcT7<_csGkGu`K1jjB)uwJ}}5oplTuva(UAH@jiXv+c=DNCr8Cl^BVLcJ`;cuYMbzWO%j}#=wOH)?D#WxIq~GQnBVpErZ1j^9?t)gl)lh54P4PF~ zxN=@To-X=`TMJzuqFagi1-}kkOGGDvCXf4dF7Fu*qbscy8?}P@M{BMsG3Hp?3<~`h(Utoln!Bf;dn^C(b#j*%872%*2#V0DryKwL>Oc2_|00cm&D-^T z))C$;ia`_JUPIB-LAlI!XbpKu8wa2?NYP%$X6^J#-o0C4<)s$?OiKjsE@5j?KTC z7OD66yc&$*AkOcQO1+qaCN@LQh7nQT?U1Y!^g^mbc26mnq{z5c7&EuUscObnPD|Fl zj-$SeA*n)o2Uh`u0ewNY7v>#qpz9ComMBwQ%~lIZC?`UNXrN}=Hj+F?vrqq}UeXku z-64jkaGuYC>cVcuP#tk|Dm`;-Pt1a2e%=u++w!X?=GJ>JN_rq5tX(P!m^gBGYF3cI z+|tNq6DeU+#&6KD%sV&?Bk!onF4px)r6LqXK~P2XB)$2vG%h3svL$7NV%U0EKq8o0 z>O(BtBbi^D%dGb(-+N(g2TUYX&m^{drHVYQGMKUUKxu(M42aTC$#@lwKmGxr{IVCF zxO>+!VT1VMZ!n@A#maqWnPV@me&wxwa~sf4e+RKvVcnB}%xd;pMaLpW;OUEx{BpYR zQH%Z>np}(|YPy1gJcOXrzZOqGZJ&8HVgpk#=?fAk7-=G}F>El1cUFzm z5mOp-6%zLgfUMaQHXY;(noJsHm?A6G&xdiVsVCVg?vw8t$BI88scb$`;$}|pes2i~ zHINYmTh*w)&VlWzKgKTj<9o&w zd&kN&mbf0Sw;uN?%@wu}AMoA@H_+&DOdF)Xi}bOpdv!&f(yrdnU`QMPVjbfe9axZh z8>Mh%z^T9Gp=EeF>5GLW`2qj?7Iv~k3PxE{S{TF#4sJg>#_`F}z0sUrIr|E(k0TV~ zY2$ju?5YX9XdvbffT!(U8y7LURTZ6KedYD8uIqYlI2Jqfy}5oGo2IkTJsawvulPgE zt%KbIxodhjd7ODyuc68mkBk7YOK<`- zZo%Ch65K6l1Hs*b2d5ivoDkeKxCL!Af#5U}Xe?+TxMlLro%`N<>-*-`%+%EUn3{j5 zR-HO~uR43}{XBcG^=wiFURg>}+A&<^AMQm~f#}k>WRi6?$g12bND0Q)S%HNfJrdgZ zJKddb@$<>afq6^!jvWN6zqNB(j-LU}e zjOdcNuC?5ABC*OL(l^Er&7;XQ?_=NQ#A^1%%355Q3vq6YPVGrJz<{V zt=j)xwGRtL*$d@dlH&lKL#%Pwr5<#35_dw|7)~ik=E~Qzj(*OaIdWFrEhU+$q;mCW zmj%}QAInJv1AVQR?y0a%JE)zdz-bSxC@OQUaIi8h(tG_6mptYd1PN!Ho|IHuv3CqsM_7Kce=_n zQUy8}S7cXxFz3qIh?30EhX~6!0M`ADE}OC1bj`Hj=n4jCU3MBL50WYE=MvAVrynJs57(!;J+y1B7Stf+$?Xq!vJof^ z8KKDvl{o3xoOdMa-SJXVVfn^yP}n=G9>v9P!mp|;Mixxu4vg*;;h{_H{MmMo^>+Hv z*QSPXQgZa5(JBVJ4U`uIVQOq3_52(+E8%JHixFD*m-f+xZGYxS^fvRaIi3UlUTUxz zWL8t4*h~Ec9_0MxCfT-Wdr6BHVl-(w{?E^8#LMF%Oxgq8vs?QCSai>H#n`u{^MKd-$ zWyb~*Rs72uuVDON<7PQywFjUgTnG3M=e8X)4F95C_NwsBqy00@?V{Rwj%35#ZI_m1 zkFMq{eX#-sgVx$+2)UrN$Swr|^C*uNnxDjcP68#<8ky&ONey6P(*ulF9{1l*0*_*S zRDI?O*#DrD{|#s)pflJq6hi{T{jU7&i_Eva$qoq@EE#|gG3XByC+OFgctpOdXk@%4W!;EpAfyO zR_^hrqRD|wtoDx+$$tEccN;ngL4k!&X+1_Iyvtc`suLr${`8!H2|w%ESe-dJ>wlB{ z_zQ;`#sZ${8A9tGTA{)E#Z71qHgGP#1w-Ghe)PRc44s=^%_y0uXIlNyK<@VyzH~8k zk=u_BG?hDZ^#j2pdr&n?Cz{dfirwuf2+T{>BA_2K6h4y6w+x*dw;Aas2fgf`c5^6H zm@Cr$PFV7z8^5m$#}(<{6}l?qkG5$Mc+)jwn$Eu=%z(%R;eqId-;}xUp_WRx!k4 zN~YxyJ`uEto9u45RL$;+xWv1p4C+J6dSLckYEGGIZM^pQT$<3L?Dx5;3aV|No+^h7 zcma6|O>Hz^InQA+JLHPKX=h)fXOKjb9{qXM_51p{AMaVhQ7UnCM?w1`C8SMrRQ2(r zu`x*m{o+s9T8KMjqrivA;l1Uex=V|aD?==Ag6MeaHqY20h)=ziHYhB|Ot)-FbSQ zeB{G^hB1API1o7?Ze!xccMHDcQJ^&|NAc?UB?z9N&&*{tVOs79=AFVs^*Wk&n>NI-z!A$7j9|;WQgV6DbA^vYd`k2zQfvFDHB+M z*gM#Vf=uX~j`_GR!`Q_!Y|qC@m!yBtjjFq(-bpDA>cH_$lyOUX{+12jGy)+eW(=)x@ehE3po*~Qd;;8wsk!lTTKFrA$ zA_hz?^W`P=bdj&b)qIi?e9=QR9{WHGU+=tpRzm)2d8mt}h~3nrTNw;+lK+lgN&`2V^9WA)>g7 zbK;1x_GxaDpY}@%06_g}cZ{`U8=Zh^+J<}C(7f~WcPZl>2`3N(C1$ha@l=s}r9x=VD@ z2Sf7O>pgs%?B!Hfu7tSnlBeOy&8`=)re)V*pBd>50sB`J@5t(^-wtB$^;X1vcKfAh z73%4&H>$c0Q(5=ltY5|c19 z(ex&6o6nP?ljA14Zewdl?B>&U{7*Pj)^y)0CgR+s+1^>T6Ek$OF6|>r>$KllQxoaL zEM;(yu!##f9{h48?2Zt!6n*o`_xxhbZQVs_%Dh>L{B-cUV(+j8y!yI}*WzYIX&Xbx zeVo73Y|5^InM24bYeg$r56Ewtrrl%;%DyZh;H_D*?!+tF<3$@6*DvvACCv^paGj08 ztjXSYtSw3q4tx#iDNZ6g$m2U|yqpOt6oHNpc{!VqI**g;SF5sXSOU}XpAeiX!2Dek zpuv6pi?};2i%W7#GX%*UJ{?t}_wq)9ek#v!enN~MUZxV4@aYoNc>e6-Vs{>l=J$5M z-C|5K)iR!)n$)2IwMqTNf?ZP6Ix1;)w1(9oWWtRS@)+|4Ejjh}RD;#FSLG$!i!xAp zhl&&FS6jO@5j956k>aECmzVZTA!s2o811Bsd(e68#fs4>rbtRMecOsN!q@5QQ+Ah| zMf7sF(cq7ifoT^HDSf}$wO9!7ZWF*JNnvJH?oL;IG`-@!fB!Vku(aOzdp|abY8$A^ zcn3J?O|o_iMWMVXda#Glo&Sze)|*a8;K;4&r)+1t`NA%Edr*rSN}i5}$Jp7Z9xw>q41)t^tZgAy9%9(9$|JFOioHm|WMcoldZQ&9+e!6r5-??3^MTFakG9XRu*^ zmK*P=4JicBj$g5cX^#hrK=wR0WTaobus=5IkBGv9o4^0f+3N#k_9>ul!H~Yg+pu|2 z5+ad#No~CMky-vn3R~IwhE)6Rx@=$fCEUG4(YhxO3p!$RVmPvrX10Q>pMAO(@bd)2 z$H^33jmbWNeAg-BOoU|S6uE8J^6mNSsS}Qcezc$^rqZ@zD0=l^O7GeDXHxDk!5u6tZZINhKNt{GJn6)qP_O07?Z z)RBU;2miJsLT7hDXzRJi`<3!j9ks?wSsXH*&Shdjn)UI;3TETI&0z1~fQgglPVnw} zJCpUOK+)k-C#SxE98xPgN0WSQ)mS&$S_>g^{bTkMN)c;$MC1e}YPi{9WJu_BgiD)x zA1|3dtCfIJ32Gb2_zRCNDbIl1OZVo>qaxO^0ld|WH9qLR_h(re6{kQEo_^(sOncYc z6h8^tt}80+j-EUck=9pZ_8NZ2I%=dYH9~SC{)Ia(NVPxcleHo?<(xb2LxPffiz>rd zM{Dr{#QW&jj(d}Go3por+~H7>w+(%Ve*pUQ)&B7EE!Sx*oG~vc+0FWJ{OE)jn%K(C z`luY11R;)teW-4-v^P2uuits}p_`eQ z>qgO_j^-0_8+K7)D+7>&ubBgR84gtM@gv%NEIMCN-@Ey3%C`0ta6p|F3$@eVrhcma z7;{9eu5!gBj$d!*_}$oaeiHi|htY?oWx?ilQn?$GE(o_lK?11%DWw@VVIH>JOJm_jB2$RXfpI&u_(}-PpAusb&hT!d;A+_3p&W2#7 z%3F)?1~dG$6mGScS8H^6j`$i!9rrSGMKvRP<^7>MHZ4Qy9Xg~JF)IE$TXDL=Kja~- zp_bj1cN%EL&5i4-Oh0LTXg*hyO*|flrxk&pMBr6`unIXmoW8>kx}6(Qq~t5xlVR78y5!Z2=fk*HZ2oNLvpdK3&n~}v?FVgZhhANM)>#U<``YBwTtPeZA{c&ccx;xX)Hc&9Sid31w6AViZH ze6C&7QLgNxmG_MuDOwSK#37rGAF0; zFNBf3xsMNF5~yol&r)!w?UH5^DQ1jxfbxn}_9*&hJ=g@k^vmYZN&>4l`gI0ZlcNuCou`W2%6(#Npd=s-YicDMfFQ|5v!hjhUZ7NSsNCzO5r#Q(&gVHU?yqiyKSd=QoGe?! z5+{DSyqXEAQT(^^JHp@CCO8}1&h3NPU_bM$O6D9G!A(l#1~yd`2H6$>E#J zI;7$1lIvf?ohMSK**GqVWaGgKwPekv=jTDliNtQ>nYY#${OY%w3G#K$%`bY~`SrOh zFWNs5d>Xn0M=ZEZvL&Y@Yv!N{13lCcpwMG}pA@zX|dB`ZY+FXo=W zY5O+?2&RV5Xr^t@0Ii^X_szl-n7iXOXFxnog*o-=oLXe^0v!8={X+UhYC3iX^Org} z|Lqf(o4A|7gzf1tkXYT;+f&_FYvKO0q_!ho1aGKvy*RqMsqb(t+Mb9{_HWJxEBeGoB?Os%I{s(|hQL7cB zWJXD*A&AS$V`H2-U(P>_I(8T)syOF)V73(Y=4<5Z&E(ZwSY|?YtFxGkSDo`vbEFBm za5B6*eGRX}vbM+X_7W~zuR)zLvDuya5s9zTZZw|nnySHXUMSbWcf~$nEPl^uiz$30 z^fY`pz?|Q>?~~L8{y2fSNE}DSdp~Est7Z@ZB#B?Kd=ejb66b-^C2634`3! zsL&;2UwB2CzUCpSGiXh0(xtitI~t0u+|+4DKQ=$}JHyB)_^O-|XXWkeKL+W^8uTISg7DOLtc4 z==AUL_K8h339^=fE!$DM=IuKD3g!8fNo;u{CI`X~se` z!?jv$_i{ub^TwSI(41^BW7^e5cfy~~Z{uat zJ@4cNL<;lc`1{v8?hfv_K7KrE@}&VaTui6j2^YpGeg%;8W{DE?pG$~2xsl^g>t-YN zB*m7+*4(lbvw@>)RKhZwUieZQBjO>sdwE zhu7ySYq=t!9Gi41dmt*@n`b;`8oZ#61gNL_#tlgW~1V%h^T$!ZtKu+%KfH$IsU87k7^j=srE z<4DKGr^DZ=!sXA3#6rmy&a?<aUv?F*Tz^I1x`c;I``EgX2^Wg?2G;}p{6)NPg($fL`_iAvtWhfJqBJJx+ z6!Cu)ZASw`Fyi5Ii%~g1$SW#kOe}01LJSrOwxe_4u^_D@Ljtz`cE$*eZ!y>JDSZxJ z5$2uLwq>_rsErTJY`^IxdeCkHM!+{AJF8hSWg2t#E6dm!NQsBsKW;mtiMMroZ%jhD zDvST9InX8%L>niL%BTN6*gI>)u#%cF64Y7aD{~o%!tvXjzu7>4u*W~B_gG_sF2l|z*K4!Kt~*j zre%P5n%WF6*2q#Xw`1_Djn8Bx=S=YCA zQC6ii;cb8F8f5%o_oC|z(xNI-L0bq%+$SptVGUK~CFYA=lru+`870GA4Ue1Zsq~R? z1i$h?R=%cfsz3dA72R5CRM(dyc|*e|*epW&R`2E>ApKJcJu1QPN2e~e@A7Ao;&Ey+J4s_V z5ksVmrs!R|froZ!AL?CTU#9w4?daYi-cDL*$Ui?AH zi6+NfIgb(Dw!4w~q$oG&mvN*jmvW07M+TIgl%KzGxrTj>Q04Ey$90pTH8+GU#1vR* zU|NA~WVLhyicsn!!2gsc`d^K+eV ztK2o~hn3XsgZ-|ol&6&Z&VM=FbiHD72r}y6^=b&!HHUwvG@<_+3;#?N0Rw*z_B1Nw z!c*HHwF0Rx;tZ$Ln_=gp)B5LGct2t}QNUJKF-a2a*lFN<77o7b*L*87WTkxB`m%Lb zh{vKyX4Ry+b-O$=^~bdQ=gIp)E;$oh&b#k&+W@q0x@G6xcN+7a6cd5uurE-4-(2;d zIy-#Y*+bYqCN))-`5ip#!prY5gGZa`l;5H_Gi1Eb<0Bm$vBuR=hQzOdw|+=O?aI?g zwC$XVp0tHuye|yuQ;?8)ol|FqlT;JRVZ&y^oLV@W@%n2WD~2&ysIsnj!6hM3-aR;e5YP?02Z^f9PMp^#VcCR5z?? z;D?(^DQD?nWvP5U=qsSiUWAFWYfm=>c#6bXq}-l%C&WuzmD&O&-y6H#x$_VF5pCNb ziDP`jWNgT9vpVZw1iCM=5kIISNVKcd*a@t)-3wi*QSYU+$%G;Sy^POph*rCl!Cj+C z(w5-|31M_iQe2@dWIgVbEq9Kfz(sVQlX`hg9Ju0-wQbx`Db@R4L0za9W!o>fbNYCG z@@gTcEdzTRn~m|FF`a=>I(81MRe;gR(BCoT|D_k>HNyU@M@*IPdi1E&#s*#{Kqzu zfdKSfV@KMW)UQu9mh(9R%o>!5qGv5r+Hp`!L|)8SQjIkNOv%KPHbgQ^4kKDEz3Q5j zAjMhGi_~TEgih4J=2eff^qg|_16oFnH)!+I&vX3WbUNvDHg)Us9OqaW#C);(3Bw58kU)@H8n}Ap4W%x>HQOW!I#7g#}rEiLeU9pQ;a-FIXLkKkTi%xwN)&}(Yz=*DS44EaG>6t+%=-L zsqbYdkPRF&Q#06f#9q-)k57+r|FVoya{85S_vxG6x$v2^yeQ{C-JYr0e-Re0#sWD5CCThDdJ%z%UMzwiDkc2J}51I2kiG&<=ok|kS)cx(*N!{!Z zM}mAMd}oRC+gGkVg*F9wBi(PsDRG<|E^Hs8Lg@qDF~II}`Mm_DhUB?oG}w zRH#A}H9)tMxy2Yj=;QTwm0loJmh6e*jvx4>vPH|JA_z zA5s?nb@BVB6sN5mZbsEOwgQl-hcCqzoT^^+wq}^95x!NF!5G5@z?DU7JCwbA4#9|I zi-9vjxGaM3li;T+>ynTN=iBAFC1Zagv|O=v#^;S>cIAKYvk z{@OCqiSTMw*&VVrAj(nGvLjP&rdW5u0aI4jC+59`wM;b*YR`FOe=2-L1FE&6XEEw# zoB;su$q)W>CWtZ46Nwb{J`ZVbYwlnMkMzxC8vCAT-w)b(_n9ZAsu^@P$V2ht6wM{A zv1`)6TB9R{8u$IP8DoKXU2X7tpBdr><%p8F2fvfgI&Y{d*oN@>WDh6j zto&X=3UjfK3BZfP8X(`CW0N)}6QFOxE2h{i%#Px zfv}NyVX;g%0hgNxGeK724J1^V+qQ^Cc*ND)-Wx$$RN0Zi@L_pcZIJ(1DS5b*J@Rya4sBgY8pi-HFXL%=O2Q z9(=g##Yy{{m`H;d(&W#n)g$vB0JNi{xw-mC1_&$$JYpOu|B1nE^)#+mz6xGMFFW&Q zHL+r>m!k1Ny6H+LtUlbh*iuqQ1t9MNSf;p(W73ct5E6rr)IdE~kCsKPW9D)I4cmUmm!M+d!5u7bFSbcjGd+RhKW zHrw_o;d>wA4}YD7*!|PlOB(D}sDEQ)QK2l^9=2F>vaH!W7?tAKPOv)nN4&xdu07F| zOa~CAArLGqyQZS0W$|@ic9`r(1M!fhU<~tp)95Gt_d!T=a>Jj0P9imM5sf2BWap5j zhuqwkx*io}MV@apZndrX{cN9YizH|{e_l4Yo(e4-XZ}zN==BEG zYaDBrq^pLXzD$i)X13@CZg@kt|G5y6jDJJ)4f1fld(^%*6J(tX8AG*0Cd$BD3QIV} zoYC8QG%S}6He@b1({dBtN|{Pw#6&oFpn9l~2DhkBO)2l60R&(Ct7<1{+vs&E{bQ@n zMexTz0FO`+-I+RR4DmF#upz}lO;Ae7^Y zKY&=7r{T@4BI*BsvmRwq!%5!n^gn?9rayq+Bw?_y=OFaw|EX`7(%6Ru+ud;a5?$Vq zJYoC+6h?e(;e4j~1GpgxwG4mY@8A0N2jD5PdqD8N*&Lyl)Nq|vxSM>#C4572a<%l2 zwj2J>wEh3g{}-BNb`Llml2inW)8x~TY>fW^N}GU(B{+{df7u@ExKhOA?W&S9FCqsi zB?cUOQhKO8I!2Q^d>rIEs}Y9RXldDb2E6F!sKOV14y*whj{!;iiYuc@TOyTDCV$Sj z|7ZCK|3g}g|DegkL5jMXMD# zPbEwAb{KVX#vy!JD6*{E7gJ7+?6JSn1)_%Z9k9q3!MvPngsG^3^J23kNln)vRv**=N?v7(2Y=O}S z>hwZwr0##09+_%n9*MTx9ULN22OF2h5Y}`WTK^Vv5`X;U zLxtU^@TTXTs6@j#I0j!~c(0Np#@^U-jsUnL3bh!}xhO{Z8z}6XEnwVppib8uV^3Am_ z2Frn}h0(-Jle$^c1e&pBz;5P%Z24y}Y4-(6agXcLlXNcj)x{&<=y<9ph^o>CdrrTF zdd%gOu_4fLXzc40zyS3$M3BTv;2flToGQnKr8{S^>g%|kz$m~69_;cBiDg)FQ}BIx zz;R)zWyTsYMx$uN$~n<5`lHh#`vx2s(lbsXBFNCu6^XtUk64o1keT{f&y&%K^s3t} z@Ex~t%`((lkYPP_*2d6~NM$^`xav7szB@`FupC)@feVWzhgXidl9+0dIlYB|4$%xy8X3jY|7dfzm~~>pV%OF5*F53R5uY=rs}C@ zQQ1t%VOgfR9$53Wxw74c;v0o}ZPIJ+(`Y%=r)@#JKY$%yo_Q2{Tew-;Qj=1?JNne{v_zCjvWl5H-XO79qy#rR4ODEqjm1_+aN8=iqO0RrisA)Bm}2W4LLCFv(Koy z(~+E11|$!iT`-0;l;e>a^4v{dbimb|lS?ti0G$)NA?6a=P7uj80a_Vzs8E1d6I$pB z0KiKs+z~CYF|#iZ^9dBE#$)g@WirV8v2BH5-0o4WlgKLut060-qdx$coC9m&?WGXs zGE~jNq2fA>0cLs98~Afx7Z|vw}g}>*SJn{r%H%iK@1^#BT<<15roOFy4XEJIq2g9X|8t zndXIkvTZ)amPP^6lY$bDAd<_V114$baCJl1iQj{*beP9-%w|~Drtn%1S9939HB*NH zM@2nio;Irg5r%O>1rv+nPE}mE{{8ULOIwxk*yHpJE;W67GPHN!>w~w|lD#%U-mA1y zQ`#cCXS@>)Rlg9_tpQdiVRyYc6vWoQcx0~byI{%JvjxOVE;iBVChB5-ax9qPO87cd z{fOyaEjJUGd!c^iv`z*z?6(Z~$>mPd9G0C!Y=A>!o8M!TAwznLjKiyoEZ%3EB!4<;+p_f*O0GyWFMy_rH?01^)%DlVoJeJL zNcPX`uKs|S^ln?lu3gF$q`3cXyB!wnW~AzDQsX$Gi??cceO?jlp1~H<0g>x-OBkS$ zej5dwt^RG%l5(@KJE0_Lu-Ede-{EJyoM;c>-sS>N0IE)KgNz7$F~utBmv>EBv^$K zYGIUYS#7r_dl^==GYMPAIlSSOttLB>3orVKpqFO~+U`MEu@9Ze#hO%r^K$xHuo;n( zINY?2iVWi2ESOeJs#VrWpW*8oYk^^@RNx{v+V5JLusdLA4-sQYPgLN9tSaM>d==U( z|Kb*U8kPJwgzjY6PW_Fo71%grDgL`R@@fU@>qv%M1Gi)7Ou4=t1j2hW$0 z=(kc$qSo|HK}7VHY=2%JaPs``lXsPEPqQxh8t|-v$Ap^9WNO+h!260^pUvN5$+PKl zQ_cYTtF-xMRC*9`WY?6O)NWw2OUcp0F_l1xoUOBtiL$R-;yK_$WBe<7=Yo?`>q5_{ z-KKYv5MDhu)ncfM(8Dd(*Z+y?(mkr)$i3tNP?a>}=rp!BPm-}8N=*m0z5xk9q3lE@ z0yhEYr|RZ(8xQaM{bl#w;-uwqnsFy|(`uwBaGMYhbK77sW~Sa3tD#^hCwaP=xfm18 z6Qa?eb-3G}uJ$c)>D9Sm?f78Z2d69W*>C$PCO3`fHB6{j=B3or;Ui#QSvSC6ajhku z8sd^Ff|F&s`~S|Pb4A@z2W`Kd-(4pv*F_MSuF*#eH2Y+N zZ)Rd*C-z%6{?mk!RNqywVd~1M#lB}bK()?B_pkV|ZYAYWxt0W}WrWby!&!@DwiVS# z15aa&isM|S7w`M$ZPvO!nr*eeLEFH=bEf_9PGA|bkd-$7U6X;GC|GY?>~Yp#Qh%~- z?fyv|o2m~drA~KHB{inoT~poQ$S6ZEQe8JE5c|7vmNl=UJve=r7XN`3Z8LEeitW8o zXe(6PGkAGy71X1lM59w-BY&YX$d>ZTyPx|8K7-u$Xu4J?gU*99DE2a6^Xqww6330H z0%=oeYLmj`4@4#PsfaGoj~;1rr`m5I7DpbFE?rDqzCVB*`Ft`{HTCn|zK4S6y~uuE z@R&7Ig%FMxwHn&Qg9@bZqQ4^(^cMQUa;^j~quWEu{~^K|eEy&^z}Laa^Rg8WyLI0! z4K0mgM&y%rP{oiO_a6Y2v-fI-3D&8r?FrIQDC39O38N#thl1YrTle!BCHIk&p0?Wg zu9USbW;)Go4XiXlc0+M6bx|7sRw~6Qr5`ZpWL|3Uc4R_tvBmAsq>z%Ic*6F>V6FQy z38308r80?^uJr6La8k%0wttm9@oW2J;>L{p_B#{ojfeUyc*~w|EFR?|we3sZ=pu;{Kv&|W8IdHD_)X!sJa>CJi(Y<&-NNQ1-f}o)%pPaD z17Ib?`}VD6fdc!kv_v-Shr{r;tA^0zGDTzA3wpsLrX@97@OL}km?m56PXBmqVHuQ8 zGnWmz^&Qxx=7d2vxRLA2#V9B~K1P+67G-#tV&65+x@r095~$k%-fc2I;7&@LPOou0 zsbVqJ)u4$_DcEt0b}Ty$b?I^$xVa0uFF-Mn6snmmZ13flN(%lC1tr^nGIyYAw=v7; zf$>|v?tMrL-zHA6_Ka>qsTQ(Be*sb zs%pfIT6CxUYyz41KOwrhn$eRU$BvQkW{!jI2~EF&6DfKY(3`dGH;hOaA=)`M#-js? z=p1@k7RV~Y7s8g)wNQC>FLL|Qrl6};HbWZw2A@hMCwn)|6PDw*<%o*Od8X+fdzFj) zGjO|>>(W4uNA^h%hHLg@#|=#C?w58ufjob~Yo%U?)|S3|GHn6>r=%s8j85l7=pt}%zcaVbk0Gj@S^zaMjxq<6t(qPm zOiZmq4jT`<8}>!?n$}K=N-MVRs+DmJyvDo;)ojC?a9bADuMJ<$C@0(Ye6s8km6}^h z0k9*dShwc0H_Xiia{QQ~g;N?wCA?f( z8d)oBC8hi$1)_(vLta?dwIaT7!8cb}kYidhjuRY3?a!3hR~t>m6HyR>Q6E{s{3zb* z*0n&%W{RX)r*tD!nprFqGxf`}P*8Kf!GJYPcgPCGAZ;`c$~T845jyy-lM@yimJOwo zI2HZ_2t@1#OkJb8Tk>>Koe0V5%HDB_h*)xR-)9ABKvI$W_S58oj zUK2*emxCr}#Ix;opW<9S2B#UzyJ%rF|NSr0kAXh7=i)fv|8Yq~IgLl93zHt(0q>jx z(co&*-L#?%63TqYt5`s!{@7%{1v)wXc3T+3*0a)Hz)ubW`oY;;Tz@ZCfsF|jipQgh zS5^({_WFrOeUI@vjm&RV9@W))+}RcxTVuc4R8%B>hSsPEaKpEWEEX|Y?S1^3W0QRd zrTk`zh`ZJ)_zY=X{E^T{LBn4wxLfLY36^N{_RMXczYfL z%{9}a{pyiNwNia(RgIf{`vo&L}`1zlDMCe!mV$Cl>1;|-mjJN{hU7(aNryhA7<8;b)4QNW0H)5{Z*p37^ux21{H+`!QcIrrti}jLr?229mCO4>s z6RE3YRgp+22YAA8Mb$_xU3me+%2^7XrNH2&3HeoNO zX5y%sD#u;X+}4Quxb{j@p1U?)3-yX+8Z?K{n?qF{D50^!)Y>?LhgH(w0B4DhyuKm> zhF7A4NV%+FoEp%p#(L^nR2{}>;%Iw@;LN-7LISFoFeN(Xqp$g6?mPvtZXODfPYbFK zm@Jq;CQ8HAWK=F3QPaeb_!>R1boHZ}=t{~XOao2Zj@N2G)Xwi6t2Q)ptyk{ugcGZu zXM|PA7VjNv?8t!ROnQ6RMi+9B40f9{Pl)@=bFUv-~N>bQ5c6o{OsITTa8^ z#VU4ADHY>2;i1%kMQy$M9nY{5*(EROefR8B*U1acLVWERcClzA>yb4mhz7Fe3wM3!MePRGn1@d0^{oPws#6Ozqri9NxYZjtc^J3 z7vLF1nU)Laiml{N`dwU!bEh?6R56z;8nbz|;WRa`VFO!LqB46Y$i&wdhZWypa;TIm zwfmd&Xntf?Y7*DXG=buoD6LHr)dfS|IQ{bZF%M`R_7W~~Yi`mvb4BN6@#ak8v2F>a z;aVG1n80?9&B$tnX`mVq8tRDp9y{6+^|#G#my7U$zjS!4z;2~ndR-D!JBvq!YXKqi zT@{=25mt zYaG4&-iJ`;oM1$HmkA6paN20x(vw^LTKQ2Xu7#|i>EmihHA(7J|U z$qyijiteECt5@y^W473#dy(nPkGyqWd#+0iK+(sON09o4q;ff*u(0ZeCWhzz#1i=J z0Xz&6)%gby)41F&6yMCx*Rt~}knF=rCH^}F8iOPEzDL3V>Wizj5DYmBgv2QU~U%(mks7jmTF4=XxPShF>} zzOp`zwWkiB=9oab7X=dq?n*P}bY;gew9VsFJ-I}CRW>tGbw`ktxL%~J3rj>I-8!-( zo?pmI=Dse?Q7avh);rmX;Tt76AwvGrEV*e>qRB8T?(&27E8LOz58&Q5eRzv+2qXP; z|5XNm3WBvcp{Y-W@Xe`*y(r2^8DA~e$Et%buB2(iKy}$1%_Igu?ijHxIP;)JHl)W0yejX z73pdAWtLP}Hpak8TM`YNo=hsG0{CpiR@41DmMI%wV$v@xNBny(K?iJTlCtrDvNd&Z z*fbJ_q^wp305D5g>z+96PVi1tGSJiK#MU!oHBrc`CEMO1Yd3x!8>lrba6CQlI^$R) zS&?j6-N|;Ion2bu&0ren45J0Ptr{r>7A1H!`WqV09i7Y&i@Zcus)$7JAUyaDTP+To zI=zgG(i8mO_^6*n!sQ4Q`frThnQFk^fh zZT8~5w0Y+JH*}S8q6?84#YcMu5Si*H;`e!y28*JdK8M{09DK_(m&WGNqMnQ#zv{3Y zVO%~n=1t6M-D%2urC{^N)FN;)LH5Uks~N{f3m&!q!rog(#qoV>gCw{FcZY7gai?)_ z2=1;;NN{%u5IQ(?1C0eqaCZw9f?I&#o-h>#^9sbexA?0e$6zAb+4^S`t_Y%H|k_X78+zI ziq?~lnjkWrJg4f%BInQPMXZ82Y*c1Uf+9$+O@tQ1-uP^!Z+B<39bfm3NrcUhVrmFF z-T2K=_UI)c=igD3|G*zl9>LvBxCmVkuM=SyJjt+u@0!R2EHSi!pHh$oM*Kmm7mfnC zVsoXoxWCwJt#iT!T^vgng}wR7S~d|TwmB=`aQ3p!xTg%Kx#3zUaGWPD{gZ;ZkK%>) z53*6b695x;!y2>f-xz2T>Tces)=!K)OMSt36xcq2N6Y2>7f!^RB$KLS(~LDRef7F< zYnObGs3I3rk)l%A)fvfHr_*GJfQe7t#L9w+tvmTx_6cx>~-Ld@Oz>p{_t=RWA zIIp~DNR!)Qi)3bHJZphQf~O+IdvkV69;57HgG@}n)~|Zop~ZhH#pu1pO9D5Jj|uBd z-0H&!p{|BDnPIEsM=6r`1GX$fL42yghTCOHO&aOW^)bm}`81%nGA*l4BwY^3b=Cfe z%tB+Gt;A)zW%A+SQ`F>K2WEHCX-ME!4M8naxV-;YWu6|CyV&6z`EcN_w)Faod!E%P z6Bb09kMI{#-o<7P;?H;;dC3=w8Y7V=Ez|j2?UGxJ99MvE_tZD##neV6sYkJkLE8dX zGdE1{>h}EIJKckS9bl*4yzdPV_jTCHUz_JD73;^jk23$N$^301Kr#8?)8%2I@!z1a zkvX!~Tvj5I|hM7>u8t`%grKI7;NJxy9pV_L7^ZFf~N zD>EP~O7`M85@+_NPfvjjE5zAQbW5#Wh4Tp#x3YFix`<>LnmfA&0IP1}fY#559SQF} zrs@GG_UuC5n>vv_y9RtIx(RLsyE(d8^yFHDZ2&a9Bn-NF=M!28p<&&M9#m>XsJH;Z#-3(8@O@hVPsq_tNhj}->s$>9Q$UMRp%XXi+#1vI z$L#jyKGprxALk-+&`3A$GS=naDDb@jjrGRbW1l;Q$u|SodcfthX^^|%k&_n{6P8c& z!JrrW>kxarT@nmiq&3j(v((*#FO6kyLXgro=E28wSF`A6+BG3Y-RX(E12vP-1~(+s zbTdJ9Ch5^4+&aeX%=8EMt=Ox6J)F!5vSGOO!qjKBm=A6#0f?+yKWi{a!=~2oeC?f5T7^{Qsqq_#HO_+@-aMBjD4#Ehi9CjgxFM5RD=#v3&zs{mdGJTrZ8yQb>#^&t7=VGm zn9Pzl(JYBr-JtcuN%N7)5YI`9mUtz4jQ)<7iywkLdS?q=Xufav#=(Az(Fp#9m@Nwu zP!b3|#C|2GGFB5!rsumn6Zb>6j0n|l4%IJmgJ;KT-#P_%TgZ8Fi-sZ|#%24I5vZ}X^82iFmX4-uGexYrj;~~(GeB)o-v0C9@FCJx5 zPB#@|FWS1}E~aSC3mR*of`$i<&Z`nPv~xcpu8V=iN2&xd7ORbvdb8ml3EJ{U5#!$k z<3oiu!0U6P%aMTOwe$IAvk;tV2Mv%v2z{MY!$0vve62NpBIunY&y{T*qA0T$C3Hif zT1KJV__aSfh>c|2ULr8vi~n-XwUgnJ=|eehMv<8t!%=Lic36OCQRdyHTI#>)WB-#C zO5_LH#_Z;+#8c08Av*9Xiz-0Fh3E zS#Wg*UmrtdV^T?!qZz=i=U%9u`EM%wkCYz^!x5qE>*J*=117zN!mYDm0&Qy5`b!qW za~8!%84)5M?NCWVM|Z05PQu*dzW^W!Lhy-#K8sWw|MKzpsrbdxM_uC_NXFohQ8_## zAWHyc4#ZB6Gzf5~%V*AOer8^zu@q}w#}J8;AkAuM@|`;jLX`>@dcZjlA#;BAbly8~ zHAY2KcZrvF;sY1Ob=)Z4cAOlKtG^VMFIHs8(owi#M@@LM@gV{i=4+-4-w$jDlt#Y` z>+&7t4FiBgG-X_AIJ{`&ACpn1 z#S&oz6x9K3$HH*HNf<(oTq^#wLeHz*KX>-wf`zLse0ct#Ev8QE6l(J13~t#$&c!I3 z^(EpMt`8;`zY+GygC_SY@fluo$e%<8{hq4h?38=OWf9{Ay{TeEMLHy8A6}?`<9;xG zlp^xjtWd04?O=vATLeIvGju1Y(p(A0#BZ}M(JOuw7APr{Oi3647vY#9RLye>zS;C&nI-`(dhE9Nj55ge#NAiRA{0ZeMy_XLarn? ztq%%7xAwmS7r~0cTRbpF4CtyeY9Rbw%XCLMFg=SIy7lJYekF`j=ZG30nZif_k(LLR zDAJgjy3?rdE70O4{EvDH5{%%aX2$<31<;{;kGZ>NPm8FMX~f3jXA;vsw^;9ytP21# zO~>!f2zOrJX-C%lyOhbUwb7oWwAz`NN-|Oj5dHZZ?S@8=T(cf~i*43Uo)eNdP)S=G z>>lngtD?8?n`1B3;l?d?)S@9}43#Y4*xrJp1a_*_3Z9S8Qxw3XHE4N$0K z8gN0}y8h-dPxOY`kFnXqROtny(y7?Hneo)O7BKL75>bA?mg1SVHVba8G{RL9&H@2y zgGQxoLP>J&zAfqL{np$wSx_~*^Cn8@et+D~q6z>xVbPs6w8hJtn36Ozrm)rO+Woo7 zs(rqH1u>{V)4xacW`M;Pt*`-G?FKcyAJsN z_#hkopOsfp1vhUVq^YDIhu$XPKie?c9c^~Jz;8gAEV?z*7ik zaZH{Gw2T1cA2iYx9<7}Yei!&)zXxzBROAp^V?zK(m$sK3cqS5w6gc=Q_X+XZqxBnH z2bHh)j8o`xXFMjz%gBZV2opsFu?wr7D>aq}c%)@gEC>6d?elhhbdg{phe_kwrB>QT zfrmBr>m?co*B_8XlZ~lh z@8Pa7md(^<*g(a!$vEPiPC}Bu)_gMP$IYN60^~wO)&4`cxe+U=?GOi3ir-*%*7kH< zI(g8dgM{7xIdmU7T+2fr#ajk@k7W48KjU7S&JAssziCEv0zG@Wyx z0w3WrI+k~U!_Fn3i4dV-8iyMz95Ase6A2#;*Jq^AOAE{w9633bqZ&VPU4iRaMkS8N zq0?QR0!;64q>j|ttOJi4HQ${jbnxi+hi^RlDmC@nirv>aFQtvyD=pf`@s~}}&J3mG z69Pu>D_T_QaxU?>enXn`jEpGJw)$%ZaTQLQSFKLY77++mV~JEr`x%>l3S2@A znb@Kb)xm!~iT}ag;)CTRotX8?cHI?^mVou?%Y!~!p2nDGePvK=x0}eGJ#WPnssLez z3BS=sV^GP_ka_wq275ugUn__54VA3*&X1Lx?iTQ#`^zQHdTSjK#Cj%!7lD6$rjWNP zd!0<|(SZGNOAHK0StwE%OKZtp?j~=nqs>P$p&~sITD^puP~y0n&5BT`g+P-h-xwzH ztIrlZEm5$Jb{mSV|2a_|Aapyzy-O#YTsdX%5K=Z*hBz3VJiBrm1(UV)%eT-; z!Vx8I=l*QT8}5%ZT zR{}!g$kJDLb}osZkT*avBlySqEkN6B?EcM4__sYm#=#We<5iwDsNoKWr?_IL#{sU! z_r~VcFAfbU2w(v~=7#^%h2qucPmMy?JjFQEu0QKY9oLdNU=HoL2dIafl%)QbLjK-V zCxHXY47>4?)K*av8l&WTss*NB0#fV=`|S=pC^r}~<2TcG4)nkDcu-j<%Q{=-&=^aW zB38zSoHK%`Oj9$!XE$y=E4VH@MIN9L;}Ivun#wCZ!7N+*lwO+^U<^{+0QgY+Qru4l z?~KmNtzR_$0yK$i<740KMOacyBn4}Um~dElW_99===NhfDQ$4iU@^n%S5x$BK@cUD z`0}hxKrUC0;#>c(5NimlyIt<%nk_(Gwh?~*2ThqTcKT)jIqA}Jw2YXk@D60nx0dOr zW=R#)Ej)WRz|gkjw|3%7^PJo}Q7vU_f0vh=zGP)t%ml)*!RaPhd$d0!lc)C)ZF66W zCxyH5+@>Y5B_jvyX+BuWK@PU7Ra%ePNqwC+Dml7l#(+ceX6O6}@=OPDzs&#bz@$@@ z({(k&ElUCmAzA@`gF1Ln6E$AXz5|t6Cn`K62imDk>V>43zOQ<1DYc+cfvNRol*oyfYUA zWlmlTghfe+aO%qT8T%Y7*E*f&(=!wK%F%k;_aD#KQWufqnb+A)6=@9+!6gUpE?u1X zT>26oz=ay`a3eOuP2OFK7N!aEmLa|gm6*LO81P<$gG^D7a<;mgV!dv*KWIDy z0p8v#Vwy_{XZZfLH>Hd_9R#h_`gNf5 zdbFl4jfnv?Z2fR_Wi{91S4x*+m2%QfFV5>QFS=lKB)b)w6wk=ViWybc4~}Lh##~h8 z`D8P`iLdIFR(*;{RuWC@@R3OpIn-;guG(>~o}Kl9=27ZoD}BI{r~b8?y6I+^QcbMD ze3xQH^76mk2*n=kO%6H*^lDC=QPi0XZ%Icmr8Iy*jWt!?R!I2}A2ks>BV{`y4FRWp zUrWf|ZKv-;6#yAU>%kP2_;-@K>hRv9vv88qE?|r=?WU{(0RizDX?}FhA`!z(+`|rM zS-rF!aLebiI(AhXBb`^BrgsNy9euw^HM;C{KHfiw2-g2hVf!4!AHVG*A#XzGM6whU z1xt84GTp8}Mk}VD_(VoEw)uaS*peG}aSXdb3J}ipqp10>rFH|2=s>}N=@0CaxAml| zce#GRyM3NUrq2bqz0kd!>Jc{cIQuTK>V9kJaHsBung!n26G4KOK?}xtWW(al$J=Sw_lEA?1i@b8d>g?sHQN;zj_#> zN!NBh-~0z_KTAsNDk2Y~CE{&3hsnt1h+P%)h{(BxkqcRiZt0wKy4xkrA2fnLXt41u z(jE5^JIY2_mwk&y3_hi}%U(Q&Jzk7KU+E_V?rJM)@E>04uZjNMHLy zA8fLXY<5y~iOp-&A(evbB z{tEDEVdFnTYyO9ePDC-&w$;~;ARG>h{Y6XU|DPPYNTP;9=+N~pa-hBKq+cXavNH=< zYi`Y=nGZ4*F-rG`;dhEX|oqVwA!xYro}Gjx=BvNi0{wJYA{g`6s?w4N zgY_egXBClr%)w_e8Ht~2SnId&_v8Pd(f;PPYy7PRKfCQW>Lk=y08`yoOc<+BXOyw_ zB`U0$kcPX;em99oj`k@0Hw`1aQ{j(u(mMQpFRn^k%%IoO?N^_<>>qmQD zGtPdE*?q^SgI3KIeQ}B_jpHpQZSHS1C!SzJEvGz-Tgqo<9|>Zp_}R*{0&4+JIa#{J zYW=V?xGmz~o*hJg{>8y|9iZQ>{RfQ?MPQTZDCAc@3>#9skkRphax~5;kya-?1$u*o zq~EP@Y&~~5Px>-&T)40=8}bJ&?FCWFoPpvU<%CJ?vH_d>a_r7mzz@mX=;3p>)k`_m zs5>H1C%YPo1vMuh!>Z1cL39-Pi);m1BA;wi~1ss)DNDfB74-Re7+Q ziI+P><5n;Y8-TG1#Oh^yn_1pLUQ8x+2KC$>6!*%OM(;$jv4*;2zps$>X@9-SqA)nW z<6C`zOsgfHujS>=e_asczPZoza5&UPK5x9{?D{4Rr-mCjYSgX+fef%sVn$o(P98*W zLi`s#spck$+eY6bwlq*Yyu}kfNfR$nJL)XBb@T+oJotld-rDRLL9)JKJXrOWxOW0u=$nP2R6R#}btLt6 zY~#fH=a#U3hh7RP9?j^<9bOb@dUPf}FVHmS5gk{xM>~NY}I$+F(=BjJaDFqmp;#vt&*-q7H8K&gh!i$0w z>%WF{7~@H?Zwgwxb4%aIf z)2cw84jgACM|I%xLHg-$C$VHBNVnb+VJFjP9HAaHhUyxMqe&SlthenSfI;-*j>FvQ z4OfoB)Iq8bE6UI<^_vspnuo-StdOvKGwOy-n>h`D%v9CSlSiA5!w-O|7w2=wqb3x| z$q&a4Ky#nWIrtEv*#fLAr3ckfDGlFKyvev9vS z#A_LP2qq0!Vi?6sp}Zh!F=0un<7f|c^v`+R^`>DLb4uoP(C?Ldg8$a-lm63WwM?{Y zs-5Nd4O!s$%+tW1XDH_2g^=^-ikQAWKre2{Xr{vj*XClG?r!O;tEVw*5zAeTqE3bO z)r-4L_@%}p)ycd%RK8wtM<@Navt9WJb`vMc)UFA?EXFF zlhStM-?n#t7rKI5d23bhV8WK$opLml=rYR7Sweat0!0XZRyBRQ7ZOtY&8^o8Q#xo0 zScZ~Z7OJss>{Fwje20G#eIqIsGD6 zF0Y0PQLFtTes00#O2+2!!VwFC>Edvf_06Y5CQc#A&FjLc4=gDG;~G z?t2Lq`SavMIss2)EtuF`*aNf$Dxlu>(FyOfB{EP%Hd-HH(b(BzX1y=y(#j|-M5`8> z>o9gdOPL9k4*Z>o2h(DYI7`Vrh1gkLCz>pxaSQJRz8B_9dcD#l;NaI+jalkn`Bv_j z)GD)nbL4+mPq52BrnorT#~QG}UB4Drg>p4lM2w6mE+MHMt-BR4+nD5+oW<`5r1Kqe z+TP?q_St1Tw)i%Om+BlRSwsAEB`f0jK+0p|gSpeu*9!Yxb-c#;YRA&PddtJQusaZ? zxnlTaB!!U9&7%uEp0wGPUb)QK-Dw?zv0X;Nv`JKX z&Q!chm3^@g?l>ObVVCO!q;spEelxy>r3_Jtwat@-KHW_~?;c0BbY?JmB4p25) zrxj-ZgT`OGQ6%4V`|KcOdw>3V!GKc`-d)8eiB-;*ZLL67kYQSG%@Nk^%V=`GHrb@z z^4ySvO|JJ^P}8}XB+)IViUZe}D&Pddn!X`=8?e)`uedjKewuxD znK()9{q7Te`}t~EGrr}clTL4C>_5xX|NWMU{KCJ^yZ%jRPy{P_4;cZw%@x?=nhNg9 z5SCTZ5eKAuu~eCBoXi(gV7AYy&n4#uKhkn5|E5Fbf6t#^DmHs4yk!`~+Y}*ISSfpY z`p7w0kB1&O_#ZFPegS$9T0O-bAULX|Zln>w^QR@_GW^>O>A0?yBBQU!C)unDYUZzcLO zi^en&A31Lo1T?MvzIU=ykok_Jusyy~O?tL!#5`O&qu5{JldA-Pw4!%7_V8?)(^H}; zC56#mc7f~bR}S$tO^V2u7RdX{429L%?>`E)`Kb!CwiF?Di-E4Q_uXJ_I8JrCExNsYL;=*0fA_wqO(q&h%G z;hJdrlJ4@7mf$-12AUX=+6Q-bs4!sC7{n8G=y2LUUP98KspPSml3?0C<#fAV^(1zu z8sBc88yiiFour6+r)e*-m%)NmNmOQ3H+th5@`|ebuzqvenWW~MwWPHmo|^5a^xdI8 z^yT`qLH*$;K)oVKJh3=M_`LiQLo*eLL#0ZvX89X4Bz0BiIgtAM3r9M#HYFavX~lNw zS6L&8rxayf1z_KN-S4@J)7KVdrO}bw?a6b3)RHO~tsF@-S;_wQdB@js0`B*hGFXoy zxbr_#m?9a)AT`RDtMvA5_93{(OzwJ^8EdX<@*Iauanq*Tf}&?L(t4Wq(6BbKYAwgt zMX_iTQ}wI2VLDcr?s9!y!EZ)EBwwD30su`wvcHE-AfPE$6@C50>7nGKN;#2SSMjAM zJu6sh30ufD|Mz0d2+Ev+mfVJTX%y#!4Ld( zVH}6*;RRMI*5SUI7PkJ)0;T!Jg8Adv?}_b1*DngypPs(0`-4Vu5&XE0p&N*#3#H}8zA-M> zq|QharDbht#iM@D@P=u%?H&#aIjRC&gmOO5S1ZKPQwUVCZ5Lq%I2loHbYY z9EKJwP4?u=K;216lgr9A@2GqKgiJ!`;&*_g>o1qoZ+7;aHNBz&7opG=rpm|X7QST>%2(D8oG_2bvp}f%yHkg2S96U*B;FbfqLXu}^TdN+t z@wx<5)IP);N`b;wTczR;p7bk_hAJ}uX1cr-LPZ_<9;W-$NO;EY4TPBEkM z%A0i3>uA{hQ%)Bjn)z8QYeI8wa7EyXb}ywAW=g_$E%jH_77fVxbYPo0a9Ch{@8Om*CZ4AdNbMrX)5{O(sprBiF zCX?_=KCU$vx|aI@04RAgqY(&~+6R*EzcGbgj` zc;N)}Pa*C#48@A-l-ycFU=JFaG|?kBKQ12YL8)xIB}nDdgnN(iJ)&=^ zb?67bN5`p(6;oiuB zW&30PfXB_RBBmEN5f5r9;}314Rom5rKEr1-v#yS3Ln9NjJOLfZrMx^T-)WEL|EJ~i zhyT}WBaLH{I8hR+Yfv)>DAM{gCU-gdIHf=MmwSQm48+Zrf}PhKk( zdl0gWgs{Y%k~y#zCrZF-{YKQvr6OF zea43-5xux&Q_S4v=?@VDCrssGCPn+AjeA~RA^AQe$Gi%v5%4LRWB*RbwBOE&!-3SZ zyE_K#?9eMP>8qM1F2qsNGt)wt1>s3Ub1`O&WfDRRoS%a?QI=)DNTVN&TsMCR-^J2E z@~ZPFj<|vqXs?MY+Zfge`Bc9Zq{oyE!S5`N0p>y8oCc{ zy0~<&eQ^Va-#MHwt$3U6VcwP}d>xwKix)G*V|S)id8(}DDQhfS^n;d&Y21PyBU@aP zy!+jlHeVeq3uB#QsL_IAANMCARbrn!p;)>*+ZhzGxU1b$CBEAEGnpA z7l7sj+9tuogJ~Ty5SNw^B8g)K>B8by@4oCl>DX?ojau5{K~?lovM$B%s^U5of$B#B zL45GBDLR~yz!hBrkAd@jHKjsh8y@%rfCbf3m9>C}todreh#17{?BmjF!pNYoiCcax zg_}08oe)@^Y-_2~Cu)W%p3Txi)NmS{59-`x6 zOLeLvH`=Wqs#14|8jsbRfQU0Jwv%7VMfp;8Sk4oe_njmrURe%WQ?nw17@~yp5N!VY z5Qa72mm2QT*olZQx3J8aIcmOo5b|Zhd{f$OYON~SZ(&j5X_XC zsF;s{71VSR3i{P)8y`PKJnRC6oAY9)Au_EZ~I-C{YTuRpsD1AI^&ld z2;a8nDAwSNBQqtV!1LTdhp_YjszbkNzsw5{`hn&s)VUXo`e+Iyy4OJOIWg!E#7OR^ zyF<8I0Q;ST-FQ0@&c-9!&wjOgHD3gyc@dD=dVYqB*BPdsb=tZvg5wanJuD<<`}aW| zD+u$SA}!U5N%m+%rjp~d{Qk15=UTUfyt6xC%r}w~jvJe8T(T!Gs}#;9c6i%xdw(S?Gy!_wL z(M8&F*_BX<1~bywB?ATHVFO2r`LS4*9*)Nywr+=EvQ3dpt_dv{a1nJOCxp6QV#Jwi z{8T=x3DSFUB0j~V+3RzNNk=U8)^v)nGo>ss9$bH2?pWgpBya0{p-|!xqOg$T zp>i*ptzE&V|H8!Mz-9qR=%lb9Ud*qmi6z({2djSnWX8e*e}CuCT+r@IQxO5{U>{r< zdaNRt?n^0=mx(`@R4whYRyX2E7CAZYH3Bl}_uD>QW!uWOpgNXuO%#~!3{TdW5Hfkm zPNY%@f{(DN;IkSk%;Oq#98RNkb|#B?Q{UTbKTSkPYPIdH#TBiF4Xt`_DyWB=@S7T^ zQ6XUXx`VH}l4Kl2T#=<@JeXzTE6ec#h%IR@tyomRUV$t;OEL*h%@AC5T8x8HM6z zHll0baQhOS!tr@B`?G10`BcNlz;V@|+I#jBARx>dqfVfalP%!(txj@O{$BKoMrkSS zoqmlNpR^2I1S{aEe?kqU)_O}hB8W5Y3B8& zqEr>{#*K2i(r;B5q<*?HXXilax9n~w<9?yXS)o(^L8EQ6bU?bi#+ck`lvi^ygK3sHe~&bc3n&Ad*37Qgjik>sl)yJWsVx zB%Gi7hWhM9E3HT4?+KUn?nn=hWudE%V2=y0oon%FpRBX&MY z0<;mI6Ux^Z(4IlZRCu~ia5IQ&TV;QFL30egqwyQg~p+nNA~(1`dbMUM{Cc< zid&6}##T?xj{8|ZX04T;dkk>eeMgKo0!yS zN7W&PEXj8UwVVbawLULz8YcoZ7@kr;I{L3MWw#wDPVsKdICfbxG3D5^=r}j2qjULI zfxM-XLDk)Zv9;endh|pQc*M$J49~-+@5RZ&jvZY5?*`2dHSy+l#@z*_k5|FI@)d2` z=7ehTsLE061*r$UjXGJCTOD*wGNrUe*G6(P2iuvC!%g0Y4L>e?aXD||%JgZ+T}PLP z#3V-c(ZLNE6N;%=dvzp*UxHu&!DpITU54inF$*T^1bM-WiI}2261$gXw$V9alk1zY z^swJ=#Fjx8mK_Q8Y{!XirOhVE5B()BvSf4k{P zyBl`6`1cEY#)Q#Vk~w87p-4`1pht5pZy~t|B7?+pdoJ%W*qL_VW_J25CQTzy;+59( zeEN_Q1aMc@Vfb;e%*MtFvs<*ag~bA)##6h%YoMVBy!WXV;w%%6{OgCM3@Lk?oUhFOB}yVEHe`U!3ztR8ijbgeUO$j%#B&N;Nxeae_nMTwZk^JNI|Gm<1 zWX-?M10yUOu8V#<6gtTNTaVn1$F1J?9z#|bNY}+GYfVb1smte*9i$?Kk)gX;+&^MjiQW>}j>VrJNQ zzDd!gi(EZ*X36ADfF1cl+Xw=nXoF_!#%kCRmBlCF6_@|C6{gPykm8I#0X!YcO;#~{ ztQX*g z2XHfFgsJNvcHFp&;251hH>%jtIFEA~9H86RI~0K#;J(qQR`UW{gUV{7KD!XhQ6k25LWljI>uY#;IQMTXFF$K)x1^mLQJonPc%MN0#qY6cbU2HYA%TVvAqs( zro{_w0Pv!u65hjE-r!V1gXe$Hj7-AXz@bw6)YEEClff-JO-@FzE}XAgB5$}^IoGqZ zF43NJNa2cLMM;1b>l1&fH-6|Gns_5XL`Uui4mC=TlFh@&L06y`W6m>s4|g>5PZ}eZ z_mwu&-lPE7i{SD_(6G&FH-DIeOUL=Whx%5|F#A)|g%x>Z`x{&^T(8;=V8*h%hJvH# zNcL5ukb8$hVULDN|I`&M*le`)D#&g3mzQ4t3z2vgRLT7~iU_~M`WMd!^ZUQkRsK(* zh5wX;q>v4N!AO!Xz>M%x9DXGRAs@=cPb163_iA#+-gt3zi(P+KHVQQd92Kl4{Z({uri9#1Ct!cWSy&`NPN9GIiCXbNvubDbo-t7w4*D^ zr7piu)JgpuH#LPpYEmlK!=|Z;$(ebxdD99i6crY*eePW4D&0|DHoW3;5xl<^p)q5WLP1(fQyx(6p-Y)F| z!J{;r@+~FSG{^;NzH4=Wa-FsGr(UgM2!HY{-+%%h4e;4sL65vumr?jpXd#iA#*sH} z++p7mpLG=abC`;8R!Sz5Wvz5x{v1#_C8HrO{#iGe6J*L_rh2CH{urxl5yFi8 zU?hllV6bD`BvpCGm>Z=UJ>lddZs*g_lxpF%&EwE0x=`~TZo>LFpIg|Zu96JIhyBd(VGTm`^7ph=Fs-LZVPz)^;%2)8Ul z3~t>*j^%$APuZ|^3$GqmV#VFZ%r;!h$OLeoGQo-26$EG~yJM4ncIS=((k?E{kIZ8= z;wgH^i!C!f(lS4}KB0{eYQVH~(-Z@my7Z?O&pzLaXT5(zpPeEvb(e?rV!h>*Ygp|C zi%53xa;Nmq^`|Nt5+ERH)+d5;2f-0G;JN>HuWn&ks8r~u%wg*V)yb)r`U{J$Rtbu0 zoOul)Orzr?kkpY(I2hg&TR)~^B^MjWL#6|KeknvOpEqP$oY`SC5E@=3sp7wVpm_So z7^!JIq}cY>R!IDUa$YEZvMHO!OwC?A2F2ztpUN}g5SQy7AFw7qSy;f}z?Jrvh-k&X zJH723r*(Uq9$E33o#Ix)>gG|uk$vzpYz+pEY8Cb=d9J_fgA|;mrNa5x-M$jysR19F z2=scX=sr$NC&_!B+Km^%>JE*FHh@5PbB?E&PM)7du^~*#CR=gD*H`bD!zPK7T_rO` zGX|ibCz``N=EKWTDjDp)E(jGs1JMQ(=f3s;S#Q6>msh)H4_{45C#8%jLnD?)Uxm-= zm{PoKS6E8_GMMj(-7dkTEn^n{H7IYd!iLtd{pP`U(O9|!#RAs#he9{>apJ7~lJNha zo&Tac{lF#dAfDEQsS11O;LO=@k|@nEq;aSN*Z8p+DHx$~w_U!SJe$^6LgXD-kL!*t zji6j^2Fp6_u6DG~a9PV-xnoQGRd>kv$5$D!_TU!1f*nq!WZeX(`oi{&7Hy<3XBX-H zCdizCE^)rL+K9LZEVedNGO>h`^0O0WBK?)Cl9=L4eRYcqeR8z|cQCd!H{`&dF0Jqj zRJtcfK%~Ut)H>*gMThy?Rag|Hxmb~y_M-Xghu0x0{!0&^PN!>h(#GvKe@^l6AV8-5 z+DBvEO5Mi581REmX>85-%D8>5us$dTSw(99!bSfKX?|wW1{5zg*`CqI>C98Wo$r=% z=6w*lM9%Vj-bM+gS{-lINfNC^uYNuq()$X9Y$y|5i><+XqH>8C4l*mu;&+nQkACZS z=Oh~TEpMP+b9>!JNaFSKUT=E!47*`!^N$DzRUO-qqzY<9kOj}_YC4}zF+5o_y|pF zI@ZDR9g~!1#G5E4H=+9q@i^0Di_0G!Jp1{)Y?9JGw3pSneo4N^OD_qkSDz)H1S5!) zE`yz8-T$MLP&|0+@XA^jlwrQ z6j6DRU*Z@w_%dJKbt$>Sfz>pTk=@$D^FH^%m-1%hf@ENu%f34LWt{v7>pdY~WR+e?rk~8psm-$4sUZ z(^Cn=$RY zBms3RM3dW3u%EC1+gLjpRx5r@Oa7C|AvZP-v>qj2740+y4xjCm!arO*f2C}dsP6pK z2v=G`S{7Y}@47wphVvuho%pA-F+WcXivi)uIP zM#*dhr%Rv-~$z|_LI?xexPZuJQMq01Zq!zD`bRPvxYP%b7V`XVSv_KUOK_;6TwGo zCb`L44NHDY`@|hC>`^db?t0Cu?uwTXHe)2idy(A&#IN0yF-94t*7BU;kDm;RQ?aj-YPDxrrq{!Jh;0<2y~;togg{yxAxh4z3W`frn)V^+0{c#rFGv!^a-vB$D3Aa7)srZWAI0T*_MZx z2pXHFFuIla)MT$l_n!rEt?z?r&#Ecf$JodXK0kl|tZ&5-?M^e63`2u9J5I@BCT!4| z0(N-=uhJ7RpbF-GtPmH`nx>nwHeF{YlD;7kVGO7D(n(t(D&M^@<3oV7=w?SKWdjAp zC%5y~c3ya6{pq4&3vRj3YFWpfF%2dHKhiZ%(QHAd3SL62?_MW0^iuf_l4;eVh!gkQ zu4WA8&tGwwJww}8}+1L zG`uvKPwA%j3O_ZOi|xfRRM)EdJkAVc`efeC5PuM^DEsWZNI(0Ng_sGS0ne8z>ymo9 zRADo0unQl*J-16#nnp(hx+!x`u-}Z*W+49*WIMP@4{z>ctR$C(GnaZQaF@>N;heXT z0@?m5_tPyPUWx5nc=_|3-{HB}S#~DLN|EVq(5bmMe*r<#*$>PGxtD&Fw;#FU8ICdu zcsTf>D;?J?Nh_?b$#i_cEbclfABh87_VSG#99Z-ZG!$*9RF%=VNge&G;_Fm9v*kfo zS}F~D6b@TA3dyo0^(rUefXO}#cBI6nCB|kn;$>y9cDiI=SY{gs=_eX|QPWV_zMgpN ziHleLDr4GhLN4QF!_`iw7b9PJ_iFMAF3D16UMMF7+6tiFu~w~ph>uZ4(aM)vNLS`9 z{c`bvSmVI@JVn?bum~G++udwX&^aT~{pF0))7rV*GJ!`Wk2O8BBZ_X_r6lLq$wDLM zb1pz<^!TPdUmNqRTqZnyRKDY%Urf!dG_Hcs{ZrXWD_^m0HI9!dWz`@=l0&XD^~o#u z^$PxpRQ{nfFhr++wl`H{EI>{EoP-Brf7ezI6uwQ%$5LErb>)+;E)24dYyz|WQ2B-! zqqw3PkudD!*%UVDN`I;Q=UF;z=v{noN22Y3s=x~2>&`JY2@0ooKC7@@3Njzy$wb2M zo~Vzky@jtfht*kBkd1Chuz^aLf3&w{CvW|h9`+jce*g$Jnde;7oIF^%lm{lwArrVD z$9yw(`y}BA{b4dyvBI91Q%n(S7uy{dSFE%lJ_!NKDpzig=O5g7&*vd$@GPjPsqv%74RSEv(L$_?)FttE_u3YAz z1AEPQjw|dl!l;c%Kq1z_dBf)eq31`Djm5Gr(YXq~qXx|4e2!w)&Gz@A9LMTFAG*yR z7gfe6uRg0w;-z!>9F241y8JQE#zpfV&s%_IRI{u`Ae!KOwO@Y$yiDChzZYK{4*PP? z*gA8Fpqq5sF~RXk4(lPoRJwDU4(p2^gPm8uJN-PcT3p@x@0hT8eMcB&tVenh=a&m1 z!X}B3my*8^h@#6z#Dep88eR$aC>|Y_h>TmSid!X90l@*0*=4S5lJsx(4;0WMAN~S3 zn?(&ugKFeyDjKpa8a+#NXFZzK4#9E>Yl|0%2L&U)HLht#`L_nWU=W_YtNGxVc@UGv zmS1x)39zWPlVn`j zyCp^h+KsYh2CmF`Eqz0>48xDr`mD-DQrEhy!v_ws&`3&B66$$Y+55;we z*bl-SsHn^<+=8n5=^|`-hz{t>$ktkBXg0W~UX9pNr8=`BJcm}Yx{ID>Yp`L0zfuQ% zve;F6*)xooN;2mJ%N;~b9&CI_OcH&dCIM-UGQ#(9m~W2V>7z0uS{bizoyBOGW$z7X zo`!iKakJnih|S6Sh0x6AWYX-~8sQ_z=F`azYSpvA2h9#?=CW0j8nveoTxZ#6JqV*R z-Oh$2-Uko|8#o@Tqeph#wd`qowBsLgf?veTc#K9%it5lB15-c0N8;3dClALaV;Bxm z@$rA`rg?aW8!Cj(8f>XU;SXsq%!_|m6BW9z_hpIw{tXio5uXJSWWCsuwlz4{7;!MxZwG!< z#*V=#tV{1k88;f(iwUyE%Xl~Cl1t?0EH6epxVkF-$Ozy+Gz0OSAA@6zk&u!`1E)~Q zBg(ATHx=E~%-nLk@-L}gJy|eyOYOs3|1Usg8<9F_|1MP~sx_<#D49D}$(pZEWjGzh zU@sbWKf|PdH{$NbubuEWOtDYDdgls;ngnvl@wDu2!W~~oih_iL(5U#;d~Dk9 z%H9s!W-ZRYzYnr2g16q*1#1pLf}QwFf`7s$BoQt znOJ`g%rTR~@VzX=xOO#ZU?+!r6C{g=p3Kf1*ZkO=;WJ*d*{oU2Cj zg5pa1f);14a~Jn!G+)uGboQV2lm7n7+YeIWXSXG<_zTz)XD}bI6S$xDMjyM5^RMvr ziIhRVk^Z#whv?!@xGeflYHIftNjLs4m$;Bcfzcp4!O>W+Q!$zS%RRXfJ6=1uvs)lu zqpxGWi<8eF+Ja`jx&q*KPyU{ZvF9oa*3*n{vg1R1D)cLHQL{ zd=L#-O+bZ}$r~yhUNf9miK!9CQS^%BNXei?S0;3tswPeG+2J$L)4s!Ve>3Sw^*lLe zftv4CJ{<9rwi*i>UyS8aOQO|alKZ!UNq%@1XNL-H)k6y5Lu23P4r}*zf^x`YjAwIZ zb8M9HGWX#X<3V7>Fozc$TBkz^)X34FX0)ixB6_yniHTfJSbrK)EQIQc3-q}e(%jK# z+(q&FdTRywa0o zvd5@f{qb!5xOP+rJr&tO7F#{sx1q}fv6J2R`_|-in(_|@b-sx%hhh`#J4oAU;q_^W`WF4}0cv%XX{I^-OTa*#lU$!@~r1LG!-UBnU-_ z#`(|mL%_P~wk3=>*XD*%qm1D#LuJ5T7FU-%e~PpqzqUE+1L@MBKVGk*ap zs-w=F(K+T9X8APznw}sD82!UBq8gO;7x2KY|CEYehrE4cC8`7AjIp4JdeYZ$0N%P-e%mA{S_# zn0Ww+tYg&LlBfcH@4JvA<;ZnQ?q6dUP6qII#{=I(XltjNd@q zA1DUN?UgPBvc^c)Gk1^0rqEm*;NpCV>hhFK6HPI49%QKi@KGp30l=&|Xt-_^FB1>) zk`rd$G;eOY!o)w#1~ic3O5$FB&z4$XJ4S;Sz$iBbM)bt?r?PDK9>wNtbC|i>hw>oyz~rvtT|CssJgC%a_}it_ ze+keSp`8frZHb3ue59fXr3iF4S?EDs(0_7-mo{?$nq)8IyJ& z@*-)7;=XlG|D?w6GYB2-E6!A9Csrx(B#Nf_KS~$`ed5=& zQhN6uA+UdTAgoC2zcc2vIEwRY-2DT{ePh8>VuY=}olNq6#yd*41({j5T0IUD8rAj=nUz1H1>f|^ zPlwG^aehCCN^jeysd^ggjXd|=W>QDpcJT~5oZpsT1Q-mS=lhBJqNSy=05en}0Y#z> z^@bujMi{*d`=4{pyadiunw6LaZo3&g8Pt)t4?Q6M5&n8L#-Ey4=CeaU{%)3xT-yK! z@JKkibUN>O+ryvjQDFQx3^~+vRMLmXog(oOyNzy%fa7Pysg6}#97oW>tllp%zyGlO zcfj6Wl;Uj8soO_)-h9s(3~VIgpBmh@#XH>y_SO5`Y{`k-g~ zwHu(xot^&!JJ*|lTd#>P(VAf&85z|YDjX-n4xbM}IGN4hjWh;b?Bf$L3bH6U=s0gN@__CymmJYh(JhZ$Z{;-4yzsFxU5|p25Q&eJ51g-J$Y#j`g8MCCtIHu(X^n4!5Y1k%{rBS{P=1T(VS2cZA?Zuo1|5_W?|PzR1mEI0+1GOyC|&; zn?s5%t)?B(LHwzLo05J;5TNH%&s%>5aWZD1{(EWuio&V)s47B-I+1$Ece&mK@^Z-o zErU?W)!Ik!FO=0d} zm0eA0+jOcket4ns5tvj`aYWc+{Vx3JmsrO6A92Ceq)9Qn>?u=+Rt7J@>sk%Okd>X9 z3vIeT(ZMtNt5wkQ1%Xgg+VI5%Y(ihF=%<&Dd*ypN#c8H+c9r|1R^o#2jy<};T|}^@ z*|=f$Jq-|+ySbpBxk_e+hu*49MAmi;l? zIl*8^NJwE69g(l1x^<~s&+^>Q8gXMPsWda32!C~D_7vY-`wS_HzW{9^19ZG1r&RZF zO(!9NRcz-et$ICR*Fh`pw9`9(bjh`LqS&Z*jzD~i=t*I9jy(0U~&Ed!d&EZP2z&QxiC5tCL$YbImbGC99JjZpn;MhF7XtnypbPs-54rqb`N#C6tE0} zHk~hnYp=dyOAk;oIC&lp*kR;6e4AU^6=W@1(85tzhT_W~m z3*T8`rf&xsjWf7uvgEyJHn*Paj_oP_Zi3s5ZVh`Y6TnxKBJzj?8_fT)>UVgy5&@w)Mvby^>U?o;l}?}+;vL4OI`n<^Utwr zS8rywYXFvJG4#UX+SpEFH@xI1kv3ExdO?vQR>T3`AVtVxx!k33mTGV`+s=2&&>X%J zQMC?L$gUk@IKxV#w5MF3m+pAS6+R+xNr!u$w$)ShvSCEg z9kXm}u_5R4>N~w#TnUl*h``h2wCTwUl&^@%1Xwiu=ei3%ZC;#G{??$sVt&$cB+gk- zir&ZIVKH1!?Y5A_H1qSZ*DDOmKo>x+5AkFK9o?UwmH#HCfpjv@E5%EDscl0AQs3%1 z_rHZZt+oOJ?G43ZMgdY^)LP#EA;D@Xu#R^$s!f!(4_m!j%l?oCC~b1FZw}sP$RlYM1eDJbtF-k;G59A zK?0BIjGc6TPySVUQ-42y2eR~9_?cJ2jBJ?du*I;+&?+PTYck5(wri|n(ob0Gh76dXVvcrD?qBv_j2eNxIh+jSObKmjmLp7_Km&?sl-xqa% zNXRg)|B#3cK51WXU5zXTIYbW_^xJUTl*dybnzt%UWl-yFFWJt$5|={?F;@PMRmb|x zcG!?wf>osUWN5PK!JhrMeGOmVr{+Ngr%ZLtZo zQymB%khyboBmgo7?AOc183s}5R2n9|C=4}FJ;@(8D?c&U6k5JvoR8vHA40BG9#74D z)VZW)zMY8NxC4B6TpKT8> zg>qX33yBB3sfJgqhUbyDJrkZ6^M~QjWVhT+^zS(A#A`Xy?c{ojPzE|>GMYc5%vma` z4G95+io}mCjr|z26C5&_cXq0tkjEbMVvJ85+iFnmn}=Ja3$$!_?P;SK?mv+q&1H9viu6`mSqB!e6y{7Rby#b-|T5rBq#9&s(2Ze zU=uA@{YX#M@*YCGq&6rGYeh%~VD?)O=(6&t} ze=B)Nf}5LZ({^++7z6(}B66cJzt(-PxOFs?R)KG><(z34tP+=Gk~7W2k=YJg&aPdT z%}^CXQm+tXSA?s%2z=4xy*J}RvB#?OlLHNkztw$}-XH1k5oIEt4h|Gxrj;b79NVVIXb8)}TCSCY-LB;kZH?oMU!wJN-`P?1#zz!okLb9z912kW0VyZbVMc(&yN)Jz|u>WCo`z!E+5>6mrt=*R9}$b&dV zPM4ejq=^vQIQ+_OI-u8wmZOSJ({j;upZweRglmrBAAY{KN}N%XN=YrUL->SVy&R@> zH8HEm^#Tq@IfK#S%wL~1R+Ieq!bAKCdNYHrUy(=O%aOX8d71WcQY4(6FOxMpue17P z+G|wFxU5zm8vZ!d-F9!tb2+hPsi2I4tUJ}olb;=bp0Jw#YQHYS?!EPuBtYSrf}hHb z@ZG%#@{l3Ue*9&TX6Wat{1b+Rvs2;schQu6+v`_M1&mF!Yw4%cT!CbB91|uVrqV;i z6!JaTfDPic*Hwcp?56AYe*wbsJ(Yhv<|JuT^hamX;JMAK2!jzt`PSehysl?j@{)km0?iLzK@_TC}IS9 zX(m;+^l%fxL{QFk?0s}&YbJSge#OvoiQ_9BdhPXN4Cyffd6eFL8@MUff4VHvSj9Gm zk4=nD()Wbvu?RQVeV}H|ZRBr2@zoc}?ydi+<5M}6;&NTpO(w~>I;aL+@k;^(c{dxH zE+nhxyQ!C3%c$JvV4d=P_k6gfU(EE4^;|4=Qqvwf4%JC^sgdBs0dlAIYaJe!k6G!y z9X5AQ2xP0>kGk3@A=Xp#yRZRA*huSyNezK%sHJwO*(OYrpi8yfo9hku_YXf*SBo#) zb2_C9$=aRqNWEVJ>VT~ay@X~K%Sx_4KUSRCJ(uLkFCt;13b5D}n%=_XT7`E|lGB&e)t?*_> zPbi(ghvzRKy*pn25caV%RrxhUI9d&YlEU->9E&puGK<;lX=is^yOgiqXt+UwD05fG zh|!r`zCDx*OhmS~jwn~0S;hrMf0KQ9^D}zrPIVeBpYt87Od-;F!L-2db%Ai?-XH%x zswH{TAzNPLV2w;2jY;8GLiRtM8L~t#G?$#oTQr(knd2%`9K1G#PQSM|*qx1s9Tkr_ ztZO$`zY9D-9hyFNqhHudf{H$Fxs$E}%R+ud2Tcy-MZx%7`MsRQ#ZbVOZc z6N?yjwE7}}qKiJ?H7T{4!rQ_(6DGIwC+BAXNs*=Smf_W+Z5sD!T~~6guA;&iQkYop zyf6L~(_g@&<(|TScYvh)jf#-JV^4lj3Lc9#nk64}!Xz9$^4ZC0sK}l$P`C^!8sx!s}<~Fx_|GG*@&lpD1S|^B~Z^%uqKu zEf&&7jC#-Cm`net+%Hi_|0z8B_>=Ds)q}%~@MI;fEr6-yk24$9K`WCO>yFl!NkvB{ zxc>n-rsvY?=c2^%(L`(8_Q;R$|G>zc_^gXW7qs?VuPUm)>zY=PGGMhvX6Ct%e|WnQ zS%UEcMCar^?ZaEeqOgaR_XXA60*L_ddCi@`^B=Rv;2O?XFUKd z0D!K!I^(IV-2UK~eb&l{K$!5)*2oky(mJM$rv-bnYSnGbXgY~#HFwOHhNouom<8(7 zT}z^9pt27uM54=l;&FD?@7sT706*BL3G!X0ZCZQW@+w3WV${gvvkiae&g`iq!(b}7 zqytO?a+~b+1;1WT5LuAd%Z2Pw6$quj?t7DQiuCAwZuYN|otMZM-sp+d zpg)I0R(jxZo4{&T%ACa3K}VVpDopilfnH>@Jz9ndkS%K8ZLLcJrm@)D%b|cx79^wfvfNh zAM~-ykUiiiYR|5GI^^&-mexS_dF$u&&X!#y+^n&AYcl-3L#PmsQ7Mmuja(ioXNDKL zXQz=U{}t!U;2v{Yki+(B=Bvczwu}J9f4(cJ9_B!{0e{TC3QagOaW}j=S8+O_F(eLx z;3uCldkxe0g{{HqOq&npFqUEU_*2+h+^d7J?<3?vaji7|op!aR3`5vQwa83RX&xwqQi1S*%V!MxK;y8SC2(7 z5|8UxM{1vnI-Z@GB?U7;lsIUGhoI4Xl*QSVW5f1jycxI*Z#_H7;Xaz|sRU5r=lY#u zBmic=LM(A>L#%3#-`Q^3z#M)}9oCPo{bqKrJF6z@kFGW{HoiRK?!()lL3YUX%$EqX zU}5^K8MK}#{k*d4uB8?ZepLeUbK6grrosA@vd5-$N4&_~ha2BbZ5J~CG1HvG1Pi{D_1$sF!`YW z{vwF+MXayguXgF{?!5)|G_cN0&RVf3w6pHh(w=O0L=7+bM*Sx5LSh+A?`a5V7)rbwQF+HID{PFSdacSnuuFbHde97v3 z%Oz7mQ9jO#Q{3lZwd2C;bnnqaDFp>Te7)R}zU-=G*y~)+{{Zp0Jhjo(!h243P0H@Y z2?X*FE&0n|*aZV#2c?%h(gBvM*~n>Ms(`n2RTG(ddh&^_gGecVsu}s9i?E>U!7(3Y ziRNPf@%tVGm`hO?6+d%&PO+^seH-0E%nq9y7zA`HlV4=qEd#(g|^vwl79hb zf_;AhU(ECvv0FzRn*}8Z>J94953_$T${=tYjIg$b={5sc(s-Z!vu8H`+fok;yhZ$C zGK7r>8zLWkSXzrD zzCkd#tuB`W@D!Lg-RMB3OUVfHtvBSo2CX5s>t{Ta5+f9d%v%J_!mQ+LWg%uiV@%DD zlYv6CP>G!4XzLR62I2iVe~jl!4^sU*Z;A-xhaByX?Ojc9g^3(~$&h6R5-%RHn%;#4 zY=DCQx8qOV$Xnqk$4w8705~fN2c;fHMDiiCy1Uet8lKdBN8OD-7fx;)N0qhWFJ;Sr zV8!O1&5dp)qhO@;R=rI${0m^6xbvi1YhlkC_A#saygw{oPWt&?k#U~~O4e->`_1&N zOxU;|HMM;Dx3GYBStgOJA6dQV-}TX(2n=A{^DXm<4!HK0h_DJdam>{ey%Z>eBT$%O*x>){&v+LPh9=m*^?cm9?n_9mvfGO z^<{5t+D+Quxnp*a)Y`27EvAL+Sv!116S6M6==fwdZbbnGR*8;Uye2^+))68_Ec zfvBYSPW%!fu`s_PTr2t96zS!UK5l0(SLZQ%Z?B{WTHM~l>LT2iPf~6hx-oEYLw){s z!@ABpz@QBb^|?WNPx@=CVj%h0qJj=zx}MtpbZwYTBh%eFOK2rcrSw_5>tIGBB}&pE z$MlhzsROe%sDIm5)U1Dm?gM|*W`&I#BFT*Ch~(F|m9Vhf9z7=b0=PchE3MjM8*-p*zXMC!l(# zy+3?T3bS82GbaUwfN^@WRn~dE*1(4++&-Us@LGQP2}{b0F3ckbqM={*9K_%w8-{&O z6drUOQAn{HU+VSnW7MH8fyP1H+j|WA>W&)R66kHVou~nRi6d~my4jNOiUWB!R;fze z@V@v{L2H1UB^zIw_!R;+lX!okK$azZZzq; zJeg$?jz*j6T?VG>-e-}am)`d%(Xfci-hpRtsN51g8H|h$jRPPATa>A@dC;0O%oD^6 z$NN()Xe8>#_rXPrKwf2$hR-APq4@_plBylo>%d>CmzRtoe%Lj)gEvB!H%8EqtX(&I zbj`k;&(SHQiFjF$w4e8gtqcA*%am^Mwz_bn_;E2qc60~d)Tb7wnETi{=)!%7o?^c2 zf;^CvHAruo>K9EvC88@#GR?&(ILVSSGMHh9HRopraGtgF+&2(C^5~Nc2QMoNT*lZs z24bvE$^m}owN?#|^m4~5o1PdRx50+r$SY^lL4n@^@&R9%KDoSR8ov}7TetmoFpe9v zS{UJRS987B!Dq9bw<=kQq;+|$Vx-SpYE=#DE2QEfA>p)7O!4W^!Vvz`EqnA?bp9b! zjFRr^pR?>~2v^X-UDE(-WZIV5*IpsKd!h-S0nym>37564{4Q`-=jG}9vi>dj1d^?2 z>J>fB7*)hvDZeZjm>fQOV0SQ3re{U^({AASRo#1-Iq6cbBzmbVxrUt!)~HSyD`VQ; z1TgdeMHFJc8xt<(@x@rHgjE@g(n~^Krc{0|%$vRKtsomO@K{8i&ggGGaLW7I?$o6w zH76}sr?%TCw^Z|*y4ec7*E8Y)Dsv5#fkxnb$TougbGlYh(_XhHtxH<63J@=CwI&AE zTViy7GRXeaRE)R1{4gllEaEcX<9ZS#{Pk0t;Ny_vqsTZwCJ`!5N36 zg6o&PJYf0pST2k03Z&N-0#ca^okUl8$esDn57NB8UVi~JT(jV4eyMjW0mawxVh=T8 z+aIDq&PMBO(AbRXc-g_P_&Th6F%ezqR^O7ki;)*)ah82~WbACOqMHM@Y)wmH`c?tf z$}Fk54!1-FVd5%exBd3W+8g1_5xUK?lBPp}KoM;|&NKH^V5AhWv79sS#gh`M)r`&E zPKW;uGA{H@5<#%?!TEh+wNx7+{kg+Y_-QaX0um^%hU$flaw@V%4ExdsH1|#=>V%AG z$>b?MWb>+to^AL@(KA_Tw2j++iR2xyU&v@C4Dwij>96i$=-T+@Uc~7!Pl^`Nw;alP zw4-T+$svBt>enU3{yc^hJ>(n`zVv6p%C?lTKDm7q?OgG?L)TKHI;|UJzVBIFT}j zMXom3Z;fc#M0$`8b?dq(Oq00qQ-v3E{XSQc5{SnBs+~qN+#dfTUJ>eOV;L#?Rh2Q> zg~NrC3o0F}Z7o_z3?!gV8)_lMIsK`)czQF;{)=rhsieDJ6TjJy9zCS6iNIoYU9-1L zu%rCW{vU1m7tq!yAJ5R5{!F{oSzPoSw|$Fv?00Kz@^Dr^-(LXPX6VPe(n*gJ8|Hc% zlpin1bJrJId;iesEFt?p6hFm#Z5Ug}XpxK^8=SCacuu8N542IlBOBsxg&Dz>)@r&f zprOGEH}^a>4^ttKtLu!{P+Ku`2vz`uLPM!C^+c@*RbnN|=iI#at! z+NYXp5LET6l4p*|l#Q>2gQE)3;MV_bWw4MU4v3<;UFTzA@f0aVv7h6Bk#J`;T{r06`|gGu>DM7LrgdV83xeZ`oW`x5+IRHj)=ck=5e%&=8q_Ai6NEU7q5a>%7==AkcA z47DsKP?KP*QkbTrFMq=XJM`P}p;_XL!cmpC@evn=e1HA#Pzy3h5ju>IGD_-+N?cbJ`kowVpdpEXS{0w6({urWOJws+(xS$;?6k#x1JY) zrw!#_A<0a0Y*RYGjH55DO-Mf3MyE><9FJUHI4vkSko>m%|tW|Dy7UM-kqzD<8j|VV98SuyEoNr~K5m%_3Du z>R`vt?>(~4o{1VVBK%VrAMG2G(b1%nFtn5MtvR^PZ;*y3gY%&+Ue2p!b&qRC$ca_A z`sy`;J53u(vGPt5|RfmJ6T4zLCMobFtrH3%4pK+#@pmxtW(rTB{KSkVt4dvnJ zFMk10g9=96%<%cJtZIL!c=Jt06#a0;I!tiWyZvRsB@V~~o)#+c8x9SI0G%`jWbp9E zx1<++&zxSv!!&0?`A>%i+71ebahch0I2Dr=PjqlXFhGM;EC{kG%w&F@URsiPL&Vad z`udCz=F*4!(gY^_Du@&5WE=?#MmFIem7S^YRX(mTJ0+sEuiRj>;PO!mqUA+3oO|>iha3i6%3;<| z6P)qSbc~Uw&dx=bg!hXx?y*Pz^ER5lG999o>11BULk#yojL&9NRr!)fixu$StQyJ5 z#H(c`Dn_+swftA!2(QJ23Ne>c(~sD2&=UO4P2O1HZk7w3+51Vv^cbHl#f$B9^;d*egx>Z?_qxhU?+6`UsPHDSJ;eNsmtV2 z;C2FDcY%8h+G=;H(4F@vHPZP#f=OzovDt zwD>IT$zUyMo4c~eIYZP^*69-9s1b4|WiHpwMN?@u3keNK0^~RjCeCtZSEeZ*JK#+% zM)37SxzmKDKe?PAG?_UBPaWqF|B&CJDVDd=?2X5cwl_H+`?0{DfAnz- zH;*Yr`h0&x&82I{8Gd$V>qy#%b?EnFe8fQm*^AMMxaH-A*@mDkK6kXf)*30)rn4x; zJVm{}p0C!e0?wrx?VOn$ifL$#3DH8VW4*Z&9A;b}dbTGcXd7}$>@DpxS6h<0I&;`O zj<^^T?Ur^%ajZdpG$|X|+bjd>0x2=ydtD2=Y9I((S#I`xa7aD41}jE?QDXR$&VBdXQTD?Hm4?v}(<-jw zK?dZ4*mZ9C#hRgv^Y7(E7S)!~8UyOrl8g}nT+i*pPLw3*X)~6`yiNEZ)wizR319O% zTP2PB>_h?>TmJ&$;ZhSlD8|uXL&%uDNO}gTJ&_k9A+N`v*4z%oeRmUk*7Kn+SWiW& z;UmhgF!IjnBTQcxu$wXQ-E4IyK}W^zx$})HXMd1jtJcTsZss~dxM~jo5?c^4^kH;u zGd^l;6I$E((OuHB}QDsNs|+;gCWP@KREJ@z-C|RjvLYRcSAZ@to}PmqSrx=>6gwEk7_fl1>m?7W=a_W*)|4K_6^eGxRb$IjV(vfCKAw zVklPBdM3@GhVK3Fz&7$q-Ku|~X06mMYgUT0h zEy>DCqpGVr;~_Y2z%e_f{0~MIGId#vnUwq6yW_T-rYIPxwT~_7$Nj zjq)28pS$6?d0SVCHieP*`CKzNs4l?qeOc{f!!?`A1Ow?|N;UQdXcg4<^}fx=EJSn# zwnn0fzvyz?2#2wlVer;*pz!}WcEh_R0SN?wHFq^_=8p*#2E{5t6@&VAF7`z;nIFys z*I*O|T`jA}S2GUskpj}V5*A@;9QD7tuB@z=CZrd&mnVa&(4Y9B8W8gn~mf!25f?g^Yr+k}U z)BgK&*VwM>cKj>$cVmejcEaf90S66j(L;^Gfvb+-tcQ-UT4Kg-*}ZocQa(W?6UO%j z{c}l{mgylc(>a0!%#JKrZ{5q;Q(8H3T012-m6!PC$vM3w!_>3FYUtV(hwz2^THY-~ zGCq$ceO5CAh8I*QY0d~;!~W4J;(q}n;e&-eXA?JVL|pXCN1>j(jP3Wxo}b;_*sr*9 zr&fk-%tPm0%^KfEhXkIJbJ)Wk`pm5@7C&eYK{-W;6noy4ku}@#^yZjWz$RK`gHV-i z)gj{EBaTw3=IZ)vjXK|K&+2iu@t$qzv8jE`)Ako3#S17Y6K_SFHYcc1lTHQDY-8ki zJj^x<-urEUiV&2)sjBQadL3Z78P{&B>k40Ek#r;I4*?1e_S>z3N=#OM43gG^{@zy? zw23^nLzAVUv@!(x)DrIU{;V)ZT|5GtbiueJqHc}X^FgJZ3lCoOju&DpFiaPq-;vz0 ztj6qHX|dW#6VKQqc+%3(xwjEimBM6y0SroUq%Tg#P%rrr2z8aLW4ywIzktBYR4Ty- zi)nfF@u^JYGWR(rT-B+iK?sd=GjONs_uwCAq5s*JTJ#jz)#Z4RW!Pz6$aD1k>ifJV ze`Ay`rW06O7|UAAB%S%C-Uui-`JE7jpePL9D&m0*ng7`kyX41vVG2CywHo<3Bl9mm z(Cxnh(*M!|{|?~)3q|&y$MLU7ud`LyeWo4&!S?C^Q5f%JPa!Q{{VgfnvpI;* zB&pet6ok(IX1LhF2-Hx{tc(HT{7(wMvq;JMXzy^P(N=>ECWousMtMJTXqWN!(=-)Y zGz>ZFvl`KXuY(D0ms}VLP^OYhuYYz_q^2h-xsida|9vKl>-S$b5YQluB~7Cks;0?l zTVE_pa7cl`Bd)+Jxx95|9kct5^1gO9+d#NV##?hGdwV069>fXuq{Y5+k$#*-5|43|$VvKfI`!Pv~>&t?P?2Ns6aLpm#!;F{Dw^aCBFmy<4eT7Nb8LUX z^!c=)>U4b1p)8q;9mN5w2M_E1`d8+n%lSFM9;!!2nq=}Rv_pDGZB>DdOQTIgMnT1!u2QZLumHsMv;vYFTM(@~Y`l$-kN-oc zl!0G+(^fDvp-cG&XEVfm`3mK*PzJi1y?cyEr>Zy z2~>_0pLO2J4Nrh~>Oy|9)*^gO$`D>Lv@8Fa-|D%q`SxMFFRO}-{V_NbM6j?#rWoLp zY>`x_TR`|Eiy?#3vk*xa8z5Yz;Ge4z?a!sPDY^#|JTAf zY2BkF4F|;CWogdrC z<$PfU8Q!bACfbk)9S&TdcJUO{VR)vmkXCSNb8?V0RT8cHVAV>Vyw&Sv$(KQ%fgB!h z?p~C%TP$^DzpTEpsdM0{{-$5t;Gi5UjRTbk_M65^b4^w1N^k=;K*kC#{1>QwSv zjIwYc-z+r+USXoi5%aioX;l#Zh>=b=F_CfpDdFkCD6FLHPAQ&(zrC%5NMnb+#7;R2+$B9c+fzSH@|!D%>CbaWzDRaS!+Jbx93Bx zQ?+WHdd}H(cAd>Cdf6G zXv4OjvytiZ&3(zBzYXAl%{awF^NfdQC$o+6xYD@hYi64kB)>@LlN~6GHC&9Ijogo!D?K1g4(Ojf1OXI^bm`Ql_3%;7 zlZ|Hr3;iK=^2PVh;l(y}(_df$5$+2kUq~D09yZ0I$PIq^?Sql?8%nF@6S2F%Lhrjlx+j**x^t)x6GibGc``Wa$ zhpoXm*$x*0t+NtvP~S>gWqye8ZiFly{tKY~mrw5hXwt)${r&%e7JBq=YRpf~+|2d% zgBL4dU=4P8>`f1UqSYaLJ}tKF7xepXSDJygJx19*&kiFYzarni09lV*-jSG8IyUzZvG9&%ump$y4cG_ESj3(j zI^=Pwa@^*YQ>b>ysiV)($+@P@Oari*e&WDZk5_;GN;xoyPt7ZJ_0ZJ%=}=ht_UKXu zLLtE5(!v)0C0g_nXR9BrcA5Si&%TdtiKpKwK?5 zZNOs@HtBE+PS(p96JI;&FPm;0#jSa4CK|am-_}fgd9Rpdz*@)tq=?HCJq2XP(eTBD zFfeGiwLsj&-+8M&-q=%VU1 ze^74y$(NpJN10MI!O#x|M%j!T;82o!qv8xHRx>tR8V0<1i4CtJytpcWz*K-e>f+@X ze(PDF%Z{_lino5w^dFQdNaG)rVY$##)yYu9v)z)$k%zS&E!#bpQis_0j+S6`{J}uk zl55iW%M$=?>t-EYmX>f7 z*7R7qQQu;`k?qUo)l(|#<&UY4kv1`c4&1XpEiQ4j%QIz9@62Imj|Z!5nbxg!XINqZ zE((f1b+0sJR%suUIOr}J^!R=efBo5eruoW6Gy?FX*j&(f;;u#zvas;RzwM5XFV#{S z!;s7awu()6JG@1lEFZ|KR6Vil;_$tJ(q15|Gmq0G2nkZ#!~$tf%18{SFGa6rT_QNW zM}&YoP_j$y@FKZa+8umsTV232*6CJ0P^+)O&T0Y^>7olo-%f$qtO8pNV>^__sECzq zoZ+43R;`)6O&ia|m}7y+iN&rz;l$o*&187px__tkhjhBuQLxB!u7%+=*yN-P>aph0 zH33$kH~sK_ap)0W?W++sUb)K=Hs>Xd6iLl}!!C50EV#Zd7HLpFt_Ngd!Xh+mFSjEY zU7t_IWj{y-yHphg186X03p*6U=lJWTO+wFB+t|mu;Zt&3vwJ`Ppy>4eL3!I0tC)Tf zZ81U0V?c8OuyD1aa)5FCzFaD(pWN#He&sbm@-ze6^n?+pna=~D1TMiqh+2w**McP3 zGYw9^*)iKi7~7LS$^Y;drljM2Q>ggpRz{jNh6aP9ur3A~{_4hIX*2hH6x9%9Y}^P4 zhyM)9hGhSD>bV$B3Ubj2Ds-1Tp{aC$awn$1?ZsruNF+jZed6~#;Vu7ffv8i5KPWDV zj}-rO00y>3eo*<98kq`_HB($?{yj1&4|N5vCsZg&d{2*@qwWN3E zokpr%o#{j%;}@sa{DV4B^b~`GUzS5jtoIdU<8{r#AC#C<>YWI2Lna}!Rnab9W!9Xc z4@q`u+!5=QE~e#YGcY@?CEajQ)&GkclK&mRicRa+rn3_GqVC|FP^mAL%rG(u*^EaT zdEd=O+ak%4<6kPwsre)%1c2XEsFFEsXL#QNt!H!O#;*Z9rXUrcSiurF!J%-_&!_WM zK(1p!WIljki4GblEy8;;-cYYGb6ghlt%p&+Bm_>p7;by4@CQW~LqTVvuSxr*r(8fo z)hcgQk1#+;(2Lt_fqy-i*epwYmpOU$BaD0tJASh+{abPwkyL$DxEmhgq-<_W%%90d!>Aj=e~ z_o%APBv6(<=?HSbo6GKM%)OTdk$p*?lcT8O5fT#SPc%Pe?>%A5ZK{I_<Zyh{TNc+HQfn{|SoXb;7sH?OtJI;@k@Ib+aY+@48czRhIcN1=J+_WBM(VLuvyQS^ z!iLhjKg31K{lh{_>*vw-V!O8dS8OI$1+JaUY11RQU=$ocZihS zH|uQFr;MMvmF{+rUGnQ83zJ-NZg`6KO~j!LUXt^f7S9Ef`U}GD%#B*lkLX$7;nP@G zF1#Aq2n8Xz#JJK;gtV{)^1MLRazW~9Z^|CNyb%eC8RcEvk3Rqfec`$z(QK+RitfT! zTJ?m)(u41$M*18L>PtOLy1_gwFkExh2g%)MHaIBPo2UKJRWLNAZ8NfuCIvY{J7b;? ze%Bi>s-}C1>}T##x=>gTQZxZTPP^dA%dyXYP&%RuJa|`9{tkD)K)_I>?&^2>+TMQ9SzInO3aMqm%@>vZGD#CjR2yW(W|X{Qlj{(HY#$s#G@ z(uOqo+RNg!BewQijG8(~Eg;h`Jtu}LoYnjF%8Nd^ehDPWocX6-q3N6b?Bm)z&adBl zJP)_Th&N{tPz-khCU9R}9(oD2HtNRHNHSW+6htIA=xC4No}6EB(oQW;YB)OSXR9>M z0R8y)l^2U}9+jaUIo~^M;vbGyYTX2I`9Oq9_N2*}8d-6DlcCM`;}@h){LF~WOA ziNa9a3dG;amF}mQ|Dk=_xzN644H>kHcGebs=g+X~wFxsQgOfBSLr5ks&seu>%C$xT z$mfsb58*i5i&C-j%A18U*N!0ff-W`J9cOIx84}GD)3;2L0Vd&nfwcaJ01a{T>CuW< zOg$dNI$UYomD%h8!^DA~+Us@8gXvH2L-p8A4mXfJt@(`xoren90g2HBRUvvxD+d2a zhoW9|C*Mj-$>de#{F%u+4=OKt^}TSE4tKFrOGgzMlsRl0OQmb}aP=5`&)Xilh1+GR z1?Lo!R<^47=bLjLxmFr}lzzaCaL_Sozo78o3_j_Q5E!RfALOdSNp;Zt<-mcxTkrw6 zakLrsJi4LZuV0o99_Q^PO-;cbHTL7}_o;X3bhgT8TNcfbtt51g;fc&_Mp7iY@`jgn z3mvnSMl>GhbY=B$-La-=i?LD~(S<3Tr`^61%);91_v~vxc)w$a+5ZetYTe6ZoZPIpxWF5*J^77x8 z>g@v)mW*1m4L+K*fLo=26(L%U&@0YN)9r`>i=F;hwdmn~h1-BQJPdcZ@rYwa5`O<| zuimD~aWWZ?f5HnlLpFcL4#J8-&UDBeUFYdlK?C#w~4%O+>j>ebl%AL~8dJkj(DN>WH zr9&RgWsY90?$)2p;lO@dR-U)8b^WYLdgws-#$NKql#Sdqp`ll=R*0SMUan43nlf z{;HgYdA>P1wL}SIRrFfH&ueDOUGi4)mV3HtNg~eLcE9%J5-r=;L~x)q zE12{b2_zO#dluy7@O6b@HR#L~zW3qcLT58E9q$!ij7Ee<18ELyfD27n_@}=m<{qi? zj7O<6UeyvludYT$uu{+1<^-a zP)utkLFBAA_4l@9>f&!SJl}cu3UNO>R(;xooSN07Ml%DVux^)YB!V z$vXNcUG>Shlfp|gfI>@WQdDVC0RKdAD~xAL#k&jPd}`BMx-5}B1(>re$vsNcn{y`ZP1-k6CE_2VZr}|p96^^ak8obQ&bD{=l_V?wRUyi!_9X}qs0tO5M|?r zUV+VWzhxp)Hn~mS<;1wMLr1L4B6cz<#Yl3vnYr`ch1*AgN;sg`A5cNgeK=@`=ch8L z&3823bR1!`P!He!iw3QSuYkU!3#sG;T1Q`vu@$|g@(5A*mVPE&=^ZD@6BBllYl6Ar(@pwi`$wwKM)?VqK#I}AW!V_${ zx|0h_O-qn0mUfXxXPX5!y76@M`iz^6{Y@8&sXdS7-;}$x)@5{g<@xw|zExRSm6YH8 z5(}R;ytX9epGT+ki@Oc`_1=Gg8ZUeCrR+Hh!QH5!W7L7BYrDwLs*Y<^KhJOA2n~0% zLMWN|vHjiH#}X77nt_xXBx2Nn_EQz)y!|nyW1x-t zix~=bug}nYn7_T9i&4SJi$nHgHkTbFdnOEj>Uid+o5+1cE|N7pFV-}g8N`$K`2&dB zhJrtNr(r;Qh;m%wA;PLe0wEZQk-I$}9~K0JfyegUWO}vv*sWa_lyR6Edg~Q7KUx>+ z3pNh(%enPyY&ti+DPMf9emrB&&A^#C`T;sP@yO4DHp@ZlCxd^YK#-X_c7&)hrZLV) zGaX*bqP9ofs6=H4rUIEwwSx(6zr&kfbzRDcgg1jHHPYYc(h>pc=$S4=sp~%Mno+yU zwSd5E_6Pe{9xtBxlSB6kDLx%s43T6aJ=L;_oOMPva+}6a8O|C!d4&SLJ@n;+K4wz- ze7N**Ebx1vOCG^zmldyDNo6o+P}d%{yUJ}^P<^IlATE2wEOU(qQLjl`cc?R%l~5RY z`D^M*6ll(E^KQL}8lbf8?@nBY4@sbxM3IP=jo{2p=tILW(+vr{0=Lsdj1PF7CNogK z_Cm8Rml*c9p*y`q7ym7t_Qnd05u|sHo4c2+mY|WVT>H$j9FLm!=qkNG9d$*~Ec^Vp zoc?d{{jV*={)xr^E7Fv3;6O6TSW%A-eNs-NFDw`sozBh@PzXrd9?Oe8$=KY}zej%4gaCs#9=C7lWq z&7DI}q|Z!#M$&(vTzk39ND2zeGq@)6y^L~z+o`57k4N?N5cO%Tx`>)7?vBOVw+5vw zi{yN!FQ~ISp$=>#0qmfS(9~v@@-0y7Z7?2o#GHN0LezlWmaCfyj1nmGrt?^h&G_|K z8>y3?HeNo)c`FYkZ5}c}v&y_IgaI(RtA%`+C#%gUcMx9*9PJp6L*Ai?Du(}`+_3*> zx=mb_#8#wfpyq13x0Oa@7EG{`dG960Fd--0tHm1cS{(PHv|&)^MB$vA^B2wYYx4ZJ zOUF*!yOn8$=cqO;n$P5v1Rvm84$Ln$a}6QDy6UVC;xTLibDkAx7)G*~do71DLNd>x zX3cKB#_pPJCM6V_PRi8ubbiJLGDJ$7^v}eTn0CHo*`IZS6jYzW+Wx#t*6s+FUV|2vO=D1oW!u)!TZ8s&|9Ly+v4})4* zl|<_6<6oghx1d2#T*#q$qZTl6w~pPSk+&Z%Dxfj}yg#^PL6Ae5f9}EPLy64dotjyu z@P29i!)Dwlqrnlwj5dDbWB_GtkgUJMl@T(tKU>MS!8xK z&*?|CLL|l)1lbKXeD}wkc>BK+>8sPmCEH>B+jf@y`*x=P-A?ZdgxYN`(!TLeLCE&S;|jT?CSXW{Dfwg zB2*4t_>}cSv9A?Yrk%dhaQfZ73r3q|Lmwblw_u(fOr#;Mg~uao{fcVzBV(sO@kC|~ z{h^Condhnom?}w8Wb}pK^9_HbjQ2mjLiwIqxv%KP!z_hY5|3Y#e#y!pHXD1fWFzH9 z)`cAuXDj;zFL7ZP;EqvAwT6WKLvP4_$T{ z5pwq*_H<(C&2mB?)%$~jxeMGlM2JE_wBiS@2HX_t(T{I=GPM)Y|b@DdA$qzP*h1@XR*)r{N{! zggq?Sv5aMo(qZ3QojHD2^LQnwjJVBvW~)!~`(mt_^^UrY{SR_spQX*95^IW2n&-nY zGhAJ)nZ?bM^I6}!Xb2SF-OsvxybPt{$!%^1Sy2>|yBV5G1Kf12SX!|Ua1p)r-@C&U zNiNFmQDG~-$)A1ILa1}G%WXk);yG6ZDRh9iD!Y0K_{ zF+~Zw?%#wi+sQjn$Xm3w+!n@@1>GFFM5WcSAorw@?u(+|fT%7D`pgl&jwjG>YvGa} z^y!-;?#xirp@Nm}*#xP@uo_4Ei+M(+|D>=a7U+60QcOymvF&p#+4&}pBa!;Qu? zBXw2Ne6zDHTP|Pm6&k{m3V43azVufo>F{E^Oe2{nD5f=*!+qpz?6`8URZHJxf(CNL zHBG(wWoJt6rO0hQy+6S+Wb3srwdCKfdoFxL_xIfK`pGMU_Ix)>hzrIXSt54{%#MtA*#L|Wo|Gqf0Hu>p3T7LB#&me!`YaNNnzAn8J28L(} zMxJvBtSmD{pSQ=FIkyNu4%lgb$sXr&6W%K1kd!gUE9@i^Mn%5qyP;$fcU4R=%2NNu zwUy}WnN~rf?I!31vpgc~*_CF~RalL8hAvh@*sUahW7+f z{Hgf@UHG08A{5nkUATfmGv8iS~c>BRTm-{u+TyMpA4TfTR3Ao)C-7VC{0$+irSQY-DFf&vj;yR_y=G!yc z$f4|l-`jORT~jLP>LutjUyE}kiIhLcmqJ+SxYg8{0oRwdIOw+(<$_04&` zY!mDb(l%@;Ps3~@35@nh!Sb5mz^04BS`ysoHBD;#C^bT+3M_V#8!9uLD}qyOBf>2+ zEQvQubvLH*4L4ai9&+Q|P9Nr65O*57-Ks|6k-EPvAN&ykyJmDV)2Htop(L&M3sc%Z zWUkx9uK3#71Y3|3y0717=o$Q)LH9Y}jGeWryi@xupG`*Yw*E!?GBm=%tlZv87|Jb= zIMH&vr;kzrO)gD4v`B3jr>8C+bjh#x zSi<)PcbXiW3{vUioD(><2r>8iKb}}LFCQD4dBiuc9zf-LjJX?3*I4q*I;l$clOcsg zbDq<$qDk6HIirv!Ud2SEjO=+6hUOKlOwG3!^?7dkXVOMw@v$`PK^3k<F-ED_%k|i67!>qn4_ZITl7$g& z|EwruBhvfb&2^>E4yObs@tBIAERXNGQ8~5(_7kSthi5RD@se%1rHyks*K)f-G`>l6ia^YuK!Rv+sT@uwGiM{_@-f5QceFCY9>BD4q|%_^HIl$T_V(%_Ob4RyWW z*;u%7cs6qAI;`sh<)RTzKi1q0Sj|d559L4dq`xB&PY+t}oxKvXrPdGqQAg#l{lg~V zL2JLfqtl(DW+E8faD0Y5bb{O_1U+rOkr`KgOBOVCUP7EumJLn6eD|D#7hFNslE=3( zz^=IqGcA{Q<)iwRsXM6;rcc;0z1dIzK|sF0Q&eB}7EBy6gJr?3T;=>N3s&|hWz%3n zxrrWOlYwgzc#CHPN)-Llw^bgcGQ8Ayl-aB)5{-`_HauZDrU@#*YepZvK&7jviX{3# zRFE>aTm9x;5a6ON8gk1Eg5 zld}DfDOak0J`a_2cf1Ow;$KsjK5i-c2pUom56K*_R*;W?d0CYuHf^M%2lZ|ZA;|%) z1``3zNc$OkhYh$@9LrmCLx!PNMM*3i#i!`I2lyuDL0`(P`-oF-s(5ggLxRhyh>X;h znW;ZhY$vOd;oF-+h2Qne|74W^$HFaY=iJi!>s!TvaI9IyWW@bQ^DbxN;tw>mpbfyJ zX3I7YS09pmSbm=KAhkhP@OfmQCwblvyi!~_Q9{tAd-hyLvkq@4Q8R}7YoNPSin^=c zNwE@bml`pHBjLduG30JaF}dHES*N`>fexF291A?8(`KdC7M===r}@-&;Tc1Ym0!J0 zkF{B=&z>S)lN+QZro~$GwT+7{;HQ{I=I<{1bB(95|KP8>5MU82p)Y2BA#h5V;B(7(%4VL0kD)?wU4Qz2heCZRM`Av5wQVn{ zMu=^wKY3WBl-7WL0TEgd!q<@6Av<4~-UAi?RAwP!*}`Dv%MP8MifVCKh3m5eAX4)o zc~=52{2637C=M|}?4-n!E06|A*z;UUd=(K3(V>iM%*Y%5&ep-d!F|SW8sR50ik&Wl z0RU{C)T3->A8Rq&{-ciIR`7Glxl4{IS#X-qbQ6r9itj@ZeND$~RfPF(+*)*4P|^K< zt9>v>5%Sb&@ha02X+z{a%yW`eULK`TpN`gzUEai6~Jr%?1oeEiJ)3y3qnT!G#(LNMfp2F!2(;49_^(cg|d=l@cAFElm3BtYL z@j-ybg6Z{NaENYRD5&byW#=`|kdMapKjva&DcqN1bSNA(ZIX4S#L|e# zHR_yXQ853JmleZn=lbIMMI)GG*d6cVOs|qj-oD9Ki_+-`S;7h>_K*wXW^%X72Jx?I zAgW9ZBUL(p(eo%22^!qu$VRO{C>sDq(YZe;^u4l_d9W0y33G9~R$8D1wRInvo{UI7 zyAtbOM=DJu{*Pw5A9U{9pY#^^1lQZG0K#+l#onW;3h#Y>(qsHi`kyNe$8LfIsk56; zTLH{H7Cu|4#Fcg9Aq)akUSh;=K7KtLLpKp#Y8W%QaVVlfns)m>t=a@#AAME=2wwa_ z8Fjj1E`}LPe~}Tgx2fQJ)n{7X$U8$jLancC+%fhBlaRHFDp}mJUb6Lh&4kSwMRP%$U zpARsewK_0LvDMDotLzO7CrsY&ujG|Z%#iw5Z1s$(Q9V>^%%!GfX*16hB(BRmlr+6ead{UDO^4$beC%Hd4k6-p{ z#Wog=-pQ9Vg;6*Nk2lhOFkmgacJ$}*rzrXtQLisb*~Qe!MVrKY%g;bOmpx=Ed<%T9 zf7npPAM9nJTqB%VW`fz@%<5HsS@(#$tuw6NsWhK#Mw`C+pjMIdcqawl;P4?TS0rP1q|b$*CXSQ!nz~3cec+#suEzEq?G_?Uwk~D5}*H zpSP2vHhhu3M*5v7kO@^m22-Te)~VE&SD6*|%Cb>8XrZtCbwiGot_OERLjpj)?N~uB zi3aQHhZE(*g|8uu&ZyEt{aOGt!=#qhOwt4)?z+KJGTbX{7;$XqqKJkqpE%@l2yy}i zz2#=pS-W_~?NkP8p2r?AM88hE!hyk@&f~)33xq}Yp{5`5Z835vz-;cRogn3`?6ozS z$R4ZW+?G%KBCY#gyH~DQosAgouKadSxaO|e(I%T$>J8hH*U|J?)k$TrP#&%abZPt; z7Tp}O%TL&+)N!74Uh_=RrOx(@f_HB;ABqERUj4v%H&M+x9m#ewnRFE%p>+(yQH3ht(~?x ziA*w&xBLl$DFUUm(P3-68B`A+a z;~AD2A9Hg$xie33KgK5NqML;EPctZyYlZ?{#m5gPN%|V+D_{4}hUt1~BheWDpxjLD zBdGqMaLnpv)_M$@+Mhd|@9vmRmmqJQCbSAOCWBKP$k3|4UMUn|@y!)jOF;2~tW?cy zHDI?9x*qM;Q8diwWd64Bsq0_zsBlJPzrHTW$L|iu(Y3=A zXeB38f}Y#^eq4mndASBdQ$Sxp9S^KM$EUfvHsd$XL&nGE+dq;>6mmmLl=k4A`DV-n zmJT)GMI#aEC~srU5%_u$Bl)VB+abcB3%v@-&?Y z(;ej*nB42?%@au`|L+jc)f)WdqOfzPr4UWHNc+H49pMX>cs<@NDfrv@^NNy5&X3|2 zTS$+Yoy4zqaHq=l({=V&nX$Q!5tCi&s2W&^lNx(S|FlyBU}yzyKo%;=-iYC!+d10k zrlzN-QTyVlgVDmX+q*xedBSs@YTQ?vvymUVYjsU*+~w#L!y+A--(dbKv54+uj<{cee_k+C$1NbNuothBUuDJ!Gd5UlQl;ta@(cA3lTw@dR0}*amg9M_QmM z1vB(LoZ-9v@zv=WL#fy$ijU-ID@x$0gEJjxTECx?-SI9X;7`MF_GYsD67=~QHf^^n z)m&4Y!E1EjgLiqe|8XC ztmspr1(~X)_N}p%j{j(`SrrpI{$N$OkpE4e$<ERf5*hsorfzi+?Q%5j?bW3y8p1v|RXyGp)%{oi4vYwZdoHu_u zFrSeD6ur}8?`az{?<`Citu|cR1l7b~GHWc$3hadsl096Obl-2{3peT%vAqY1?hy2R4H|JszZhk`Ux>lV%>wLCEK@}=SDq1Qxq`H|Ob)XmXMlkc>WLF5W zpg95sHXF4$-Gvu~au(um)evj-W)R7D@P3roo~Ml^evr(xN=SL#Y`_a%DBXw2_GoOz zsHL`1ze*q3gq;yzMJX5#yeRr&HLLQGXTL-ITc2@Bo@v2Tx^(&^lmN6Xv5xzmWn#3{ z#LDj6k7k7%kq53Cji#B-idv8|)YPJ#p@T>X&I1FsJuybHCcPZ4h!Ad(whJ^MH?v-e^17J@r>fK3aTCC44Ww^@||YRr?*_%XlIqyie?_~GY>*1Ro) zD#$Xcnwp$IGsbGcRghS!k-H;Y#B%uF&fH+D1EoS?f1nDst+Zv$ens25P+^6eWu1M> z>Sl(Yjzcx2W#WSH_5C7(xtTrm`2g|ezR5gnE^XKE$8e^8W(`K2ZF*O^+&ph9G*T0F z1ML!_;(b#mbGowVR&fwH7*ZI?2nAm}mGYPaeV5rk6#8Jn2gnNxDpQ$m0_dq2l{!+J zA`=4qf(eDLnnm7|3Xsz0-`=)om1( zPrr+xIp4cJwwQ3rGab$>_S$4k>4j;xqGVkGk(Gpc-8}ljKRoh8C)r@sJrbl zF!H1_yo)e$xEJMWnEntZj->PATmt% zw_|jbtYSXuo5B7_lW^ji%Z4*i#ptU1k;%`myQqRJ2ThKyTDwcjmZFUr(I9UB`XCOM zQS9<9ay7}<)4{k&U;*wz^;oi6x2D5E-^IzWlO!n66ON^nG5!Yy?ef;I)Ee0S2gRe* z@?<0_RIW#ONGR`^_pRlxgRO8Wu>Qw;{_oLiXcQ-Jiots5Jg*fjn;-I;U!j?RtWm=Bxsg$N*Jt~$rd91@9ZvbnTH0QlFF`tdV#7G2K>8eGTUaz;@ z?%f>8y^EdrejJ+q)Qt}77tg53ZHwT!WL0D~t;;MJ9@etq=@Ik2b9^uoS&Zmh) zSAYz=5ov#VAPpXG!K5SyR6OZHS6lDKmAsIeG1+iQ`wX`vr8IF@j1HfJ7f$BXO10x^ zCFWI60J8j&xbof?zI}u+dUNqoc*x<%e(%I|AfuQjdxmWp-B&ZMK1%!agPTPJUJJr} z*GH;BGk(uaLbVG;bd?JPX#L#o5tY z*N&%t>F4vHQ#}ld%YuO4XV}(_p_(+18JFt#fM-uQ-^oldJFyqOd-({Ckijt|OiMGt zv3vowvk3SVq4n)7kS^fH>*@Uz#Be;!gs>!j`GjuYg}s4|kj0y9$Qh)!!RaURf}PeE z68|KMY9W`+A%vzg7EXGN~!j77)<8`+Aroy_Tpe!g3PH69LG%IG|AY>WdZ z^?d@dc#V6ly!Afv-F~qc8i*9m>3?R1dvrCDG`c zOl9+VNu3i{@O)Ru0FBqza0E^p75)OjnRR(=_%)l-92;SjY(hmf4#m&n#5R?C32r7v zq@PBTKx!9@IN_?qXFjC}7qHJJQ6=#FN>DggpM5Ix6 zEQU9++o{E)Vy@}n(9B&*{qjfQvO0!Y&(q_!2+Z(D0KL2zkmb%YP1#iPNNyJk)aW^+v6!WE=&Wb;r+N7GLn9SF?94ZUUU5^SE4lkeY5Y_7jG zd=O)B6zV)F|0JMl2^|3T!g{l`XmfeAwMbc;jz{#yY7hN!B6mu~cns_46^6-JUEKIc zbZ|7^#a#L&XBA2CNGfZWBzf4lpxDJ8$HESP9*^m;nyUQFAvKijYWGG4c$1`k~RXMK) zY)1!2{D$XW)5k1P4ey(thvXhlp|t{>UD(fOISn~}&CMmAGlV{Ez^y?s?)M?tHpt;2 z^JgZo)dXnG0lAS!>L4x=v}GfiHcX7HAo5uSzR7b{94EM^K!pl>JeZobsXaGuO4CCu zL7e%0Cc8d;=g;^pI!uN*9}R<+bY3knM1T`7d!BRQot>7zf-u`JnZGH)#eMT~GX@o} z#u_LHaBv<|XA`scgGALKy)ZDS;4(b%bw|v?K*rwQ<*E=VH%y%d_SxnS3a^|m~OvItT}y)tDbjvWah zxc^Cjn*Sec2^1}b?*G+YA*RLDK-?GMeMv8i0sd85W-Fd9?0T~xmX_SD%Baa$pBY-| zJxJ{2Kw?2JJa@i_Lt!K(e_gm#*iy*YHsgz%u2b_Ll<8B!NfcJ^BQMN#ymRi06KgQL zL_2>`zVO0_MG-P5w_Dpl71E2Wi05g5Xj(=jLN;p9UWm%AAnc8N3RwlQ62m@dsE%)1 zM^u;%Ca?7!Qu<#)e*4vXIxwx@$^@X5TlMq0DF?_{6G1XPnWo9ejo{z=;qqohep7T|Z_OBFz%A`=CnZEEl`^=~C`N(_O)L?a zR{A1pm_!Ctgw6CLlDMdCgE|DZs8!n8#s?+SXVa#BG>`^la@qDUvpzhJ?kQE$P8P1;40f8BqGPw!T6qcNdR7GrKI@q#G40fIL1^cd^Fzh`I(EHh1!|dAM zN33=+l?pZF8Q1hNg^c5C3jzGWstpPsWa~$5zFVDr!V$q8Mh}Y z*Bddqd&Wm}L+~;7w;-~vI0dIeXu_UepULgCd$eP^H&Pmr_cV_IJc4f_f^{b5+wx$f z=j;_;n#XFmXU4sNvfTZg^Lf>5-~H>>C@~@%xxOZml^)}us=SdyceB%H=%XdchA|$~ zPd&cpKez~BypY@XIYZW`!6Ktu!1}tt4Sig1dNU;uTbzk&T6`(RgAV0EL@kDT%sFj{ zPUZ)&VQDthS7;5J5kd5E^okiPGS-FXs#F(Ka{L$pX9BgSyq%Ru-^XqV z24*-G;<-F)05k6nW-UUwuUTJ|+K;PQGbM$t?Uw28G>02tm$uIM=Gs}1hz7-=*9FREnLEX_^6E@7Y;YsbX?UV$23QwQuq@HD9=vGG4XlzY zL+1BB^UlShx@*$s#CsO!&A-n{za|S76dhmD&Ti*k2${lK|4?=+AGF^+MTa9_eQktq z`KY-OR+VJkKtuCI3FFmzpt(=BaO|P%;c|C?h3XdlpTZ9Cmiu+ zSgUl`y0os<3Rm|!Q8#XMoaDNh09@(H^WXNgveefe&wdOcGBr=J!(}%(MFW$qL7lj{m~l?uhW|4 zlh{a-zi%|E4wC|d1$<6r2!6Z#L6HiU97_F-gD?rY%Y2-kuDxy0v1Vyq9pPJA;9{UT zgS8oF;bb<=R^D~@KYd0XqAqwdMf;6W6If7GrM90P#FLF+1(k057UqC~n{oI?9u_w0 zUmN+R_r@CxI{3y2AT#M&Wy$t`Q21MCK54GKOGGx51F%*+#~_?0_lfH3i{h7N+>ETR zkiwVPL}E)uoYIuRs5Q^8yjsca$9=J09N14%5R&OLjVM1*)tE0VfrQYs$P0-u@mSU1 z6C95uVx$>tY5O34mvz_O6zaxF3SlxF`}fbi-e58fZ^ngn99_sBatkZiTXD5YHgC3x z8|uBB;W}ufQ>z`83~XSvo1rpz&sNb%-F@wdOL?F6M9nL~^XN`?x~y3p#Lr|bG&ilr zv^(1)oIE;wg&u%b9h3L1a5Y~xp(;IkM7B_t>XFhp>9+E={X}j8kJryw%bj>)k=G;W zOy-cU=E|QNA-7WGN9D8VgOEMf|C^($!yE!-{57K7f;@(b~{_>o?8W0N~ERrA* zJ)J6@TFIveeOxA0G~vs~_n9$&86In}De;Q65=x`3p*%Sh2W{hKdJ?0adwSB(ZDi8o z4mv4F?Q(9H<6{TYoLa-h=ya}k{(2PJ&#-Qs%P$u0u7^lln0W|Zni;<-h`ls$Ksrh| zhQnXgF3OJpk@uiMkJ$&B)ch$%ZB6#WyWQu5Q@h@DFfG-1D=(u9Q)?Az=h8}Xh-~!8 zeb#u`^PkU;gN^(z^Y+IZCj)CZ-L71o?Qo$C6M;hX_}uJRY&$mM6*UFI>+&f4PWg~e*CAFbBD z(hFoHJFD9`yS_gpfg*|8i;W$Nd`EJu%HKG4t2)nH=btgURqzZiAT$QZs;r8=87BKU^18dbIG#4oSB>a zzJ)x6a^Yd|l7hyI?tFZJ%uCx&WCI%aPbJz6P)zr~3%m+ksU|uHD2GH%Kil{v^NcP1 z?(6Ym$R*Ps6p7fz|I$JIpE4Zoo}zK&=hff8t_l9FEcY*5DhyE)>r_(U%P@uApC-BW zCP?UJ0kd!oC$k2}s+Zn6VVcep&y^d4jPHHg8!azEf|rC5oH3%}PdUdT&%b4Iw!#8~ zNmsJ=y5^0g2X>a7@TiZ3?xkjBbbd?a!VvO7=F5r%EathHvTU}~O%op)dg2~8;*5Kp zCl;#c`VDbAs(bd0+o%N@LdDU+oE>@9;%HMmD_Ir9gPaTz6+V(Q&s`%4!tzRFaO{bV zf9zbC)g3Kkl3Jg>n`ydlB+6_ikAIdXi_&YcvZ9nbbwBOnTpMKABr5Fm^|Dub&q=yf zjC=RBhlO!HS+CoU*>rI{^VpazSpC> zPvzj(d+h#x_3_aegL#1+w8X3xSKCMQeHh|%bftOn zoMWrG%?4e5PtWYNLQ8MW9KaOmrA(8ue^3NxYXYz$Unw;|SrPAk{z|bpaKKXN&^>5w zD4yWTR?svkDI)D9>v?gF;N*-`5_o$WY~IkpA&%^JtRZXqZ1Sq?D_D63+a?9~X~VPo zWCMnWKTB~swb(pAaN=oTwntZPR*~h5iygpDIBAbBVY_nX&kXSXh?E)`+q-IAN{2<- zujOf06luf*a@o-@0J%D_ZM&LC=n=%7c~``|P0^d_;#IGEhdM;fp1E;23`~M=XQZYj zBXO)?#rYQE1tQs}OIuj!SC<&RG6$!sHheNO`GzC#HEHVi+hl`a(jUGL{&bGLPJGGJ zc`ft5V4#=wmngSO@?+m9BMpDMTq~-_Zq}r$WEPz?+i8~WyYNEQDT9js8*A?!)zla4 zi=)z{gY*sw(t;G}O+pD(kQNA4S}0PaHvvKEgc3RmMyhl|?7-7`FN_&bTtP>_;Hdz#PB-)M!Nkl7FeU#iDcH!7($a z(+AtmXnfQ%JRB^r)BGcv8W}+~EkE5=`RT}_FoQoY1g-z8uQhZg(VaU`;(CR2yThaT zlDuMGH`8ZU1lkQn40Vm=8L+nP2W0UAvc12sy|ypW-t5NQYkpmhLqlbc_~EB?^O=G7 zwxo5D)VBmSKcA8?UR#uW5GvUa5w2=n3qshncxql`vDo5<>GS+;zjC2mxch?M;i`>; zMZ5BH2A!%CD-4ZW*h?b5w?4^t`6?C{V4EFom2-e{t;+_Cj--~nnu}SBubpwpQrRQL z4NC)=7bXeAE+}8G)9-7U+C7Oqv_CpIBDa@gt)Ex-uVyvRfIaW8nkVe6k-a?L{QbG0 zog8G4)SoQt)68ms#*ZcGt5B`CIQ&7he7q$PlBX_Hp=Qy*%PIzo$X~fl&c*y>0I{~( zEJsrhhdUD1M7Foq%#1*{vO7cu?Gl{GzsS6m1r-GVvVEt+^C(Vb&V6-~8BclTxV79T zU%5;3lv7AEGO4~VNqh3WmF*QhosuN0thXy8d|XdUccI#*JkhR>p}?7f`s?=}w*(KP z@~ElMjQSb31a4a1=U1ooroRGG#gXg!HAvm=-MHD6R3bt@!sa&>;Q&RZ=dL~?%F2~X zA;+US)i*EEc0knrO1FD?oy`Z!v>j9o7jgO$>zM@7f@V^-oytMoWv2n4pp9PCwr${g zxS%;Q1^M~Xc~DFQ80h&0c=KDcOj7tRWH&|M#w|#J+u!5Hf8!r5R$%EOd)OHOWtKSg z=^Sm-J#Zqdi2GaXMM2)_-4KV}GGN%SOkVEx7>JaOi2cg!P#GvHm0*g8ie)-zedRX? zoof28ZvB*~_GfR6z9qn+{DPAHNaY^MF*byZOo~XTqj~!g=zV*Ql=Ks4=dGoGX-f3@ z4ypy4RDKrW!W@*lxkEsIRq77=GL38>ZZuVbpCrys^y|x&AzRCx_IL7=3$_#EQK2=jr2>(z%kXaz zioTq0MVq&`o)-rr8|@UnraGqe6z{7T4lM;J5XejdydwM`_W6#WW;C}V9(=haAiYk` zAFahx%Z_Z;uhh4(p4K!u+}GAA7hsUy$4|ocfx9a*TNkx6zAa z=Dq*?s*j}inPZkiUN3o6q?B`6)Bfi%je8dVdVTmGbB>yp;nIJgFPiKczinAcQA}0E z2u?D<95$$#?!-~ZpG-bRZD`P>4$`W>b+@$}OeqQ@`FC-8!iEV7n$ACiXf@U>q#2K? zi9cV?F@cNF{sokk!f@ydoGs()D1%epKS~c$5cGp@nG?{mLa`Di`QZJG_BQqf3y6g% z|H{9^7&`#99;r~?)DFNK(i9>3xs#Ev$xWW~tCxq1B~rFm9{^)j{t0+cFPv<} zz8lDi+U97j|;%@+YXHbmZ0gg?36{)P-=GS{^ z%_=ewM)eM{5tJ4FNl8r$7JJ?y$R+q&=^qPzLzc8GtFui$Z9WpV6aw}*095_Dx(xUe zAG90525298_;aqg8ava>N}T;T?!`~`mda)o&!^%-EZv4}*Wa((soPLTpjl4K302{f zjV=}(pGGD{g~}#6iBn~7ZW=6^?W)c%VU8ejqIPWfv{z0T6E-m{O;SDy&{Tkq+n2J77{>|JP zp&J|-+(VrzUh@kZCB+E*kG9uhfK(lz>0C)9y_S4z2A~Aq~6W)R>GuzDvqO3%eyjgZp!gD^P)y| zb&ZU?neGsHjp5AOG(?Nv{PoD6TEk<+-Q&kO9p^uXpmn8Dk`=R-ekm>-NKJ~RyYD_O z+>~>Gm%tk=oldPr?qTg`ysmVQfyMv<(PN1$!oBStj=S>*{2wD^0w2&^pNO}4ZitM; zlid=$({wdXqvR#ls|vF*S#V$$=F~Xl2ugh zb`o-0a;LBs^a&}(A19Qg#@QvwZay@``UDO{%a7V8w~r|6s)L2?mgb1J(56+1`1iHe8qUQU6pA_MdG=b@HmC%cvE!gpyBgbmG`|~*zD;R0IKDGf6n}0f-*N4 zMkAeGdGR3-bY^WfT7*6xU)suTM7sY{{q>!IHa&|4X zt^{2ApIvyHUXOq?KJY;secz7NXbTHhD5f?Gx+wR*ezvYU*1(DS=P~%d#V;ef9}TEB z3W`{^z3`00boGSUJI56gL;5?Glkxw`ow6CFf_l5<@*X2VI>)9?YhMBX00ba}9+emB&ta^bbsh^Ut zh*BqyRV_zl23VfUdO!1|r+c;_Li_9MlL`J?g4RhuL9ZiU!3@=m^E)M*k|2>0iQ>8; zgY>~Kq+44wp;Iqcf3Ak#+nR*cBJ>;1-qOVDyKLlvTL3I^{S#p=Kl?Us33jHz`Te^E zhPe5XsQ2j(o}2Kj71yt>WLgcx_HlA${F$NGr;FCFH@h!|u7)~oZZwrt`wf{EW|PE& zNdtHxQAwpMhRpLZ-#raml|TL5p1MEX8|>Jvjc7?-K@|n;9*KqY-l4#crk>KtX89~> zy}wG?>6ty54Bh&!klX3oo2=Ze4nOR1>R(NTpmk!tT<`xVSh`9(k>BtBK*PR(XMf)f zcG^04n%vf+wzKOyA)^e3FZ*I!PScw;5!DT)ZXh&CG z@yds|IXK{egIH%SX3MBqoEK5R?0t%Ec7r0@y|p(W&y+AmWiA!oo(i;e^D>{y>cd&= zE!yT^^sys+@0l?`v_HI$vAEf>118D2Q)~x^Ddf|7Zw3w3ntnRLMAmQFy0#H?nl?Qs+{~lQ1{s`o|=F`SdYmcF|!j6`@ROTPRUQe$i6zgrMqz%$g zu5@cC=iTS;U9P@<{4uFzuc#@xTxC(a1P9AYOVGA=)tZO=EqtG_hyJb1O14bl3-<}` zXnFxA3u}Nli)+;rGyLuaiUMC1xtje>Ek?X%JLryj1yL9*J<9W0&2&m<;cIR!7qMA> z;UeSEL~jWEA-@|Tze@e&Oc*mB9#!Z=~P}?B#=p1Z>@S`zu8f@aDc+7B70#S-fTjaMBa+Epl6*g2F_u54I zXv{O@WV4np&BRCtpBYNq$TON2wR6a}i@j7iWxJD6{Ub}9kpZIW*nRg8lx-o)IVHUi z(v74%M{%i4`trwq;j8pfVjW|j*TM_7*PPOK)2DdJKByiA(X720mA(_F@ZTCWD1Yd8|#7%fjH&PCU0l*bhHO<~%d+ z345t31ZC&jKjNBXfCN*~Wn7EVSIRi9=@Zp@`v*Sle-p}<{NcS9MIIX zwE@X+?XXhaOcmV{u=tVuzh?Q*C@0(TeZt}56t!a)r7KAGwbLzu&70^pgqgFMM&RWx zF=p>Lzmem=vH|}E28^>s^}#c>mN`;viat$}@Tf#lRDid^lR??&DU{ZRI(WN6`rcmx z7bT|cyIPrG<+AmF$B&LOSR$%Wo^zdt64~cX*7MQI#^G2kPB_K*Ifp zjZtUTAbfYYdF=Dg#y$NvDMJ5hXp=R_G?TwpV3U5T&d=!ygVQoC zD*az)kYU@yU;euplbb63rDsLezxJ$%`Inv*Vka!z6(` z(vMS3(pWuRbq8o95VWDn0yFny(b@*Hl7)tbmdpH>b1T}2xFrCiMzd4KIsea$U_uSPBE{FWf$d^Oor>ZSR-_@wkQhLquhm+F2X{FdN2Icn~| zjolYjIRWajB^!sSak~i2r!oibU#F!Xd2=8An)V=uD~_wRZ03Si;BUnB-xz38gGxT? zy?{*6Dm7q6fNAaHCi_(%!9ol<<&Rl(89RGTlk*c(*Y`}Zy4ntnc&)4~7N`9Dh+%qEw##>QWrW8JR%;uRgkVW;#oKu zzd!QqAHb%;S6^;TWGJ@QUS|rZ`Y>F3A2l&*!b$&dXMWs}zR*=i)mdM%&*JDk)zWPQa|`OR{nm+>^g@YRycH^^B5kOEPGVdYKH`S`~_Dy}0Ue)u=Rw@mmak zEz>2aawm@w|IHVpK{(6=aSCiw37oTT*SA`k6T4$mL@%~)kVu=9YRwt-OyW-!`Oz+d{)^I!XygW+sGnYGU1ZSc{=|xe$ZK6H1zP;-OR}dMa`%rioXdU4{+wTc#7mdEc%ki&v5(P0Vfs-m{Svv`G4frr zQEq`*YmwP)t4UwP1(yTiFu8${U8eY7f2dV#eGewUg(Pme4bE%F({VhMQ7}j{( zI}X0cS^ONC^XH;GqqGt9wSRbJq4QNIKyc4U-IUPZc-eUqeeC(}hIGrd$M$1(F^ z)w(OPvt6_Pyi>a@lT!2YWZVJa%3yZxUd_%34n3)`2K7AiGRiAX`$E#;k+yK^z1|fSu6A9x>BC&x#KIK|g3V-y@ADF>~-H zS>!op^uV5G%JXI=&S@n-m;)sZE6 zA)Vcy-fz#;5dO2_W@hns{MbVW29*hb3;iAZ!S~wq$BMGoYeC$1jogo~3)|u=GTecI zKk6&x1n|W!Lt-L;QCNv}E&=?v>_KysBGjoI=YfM327LOC4G64tLuL-HJi~w;bD5fV z`vdH|-~52Q(R??!39(4#Vw+F4OocUxB;J_^`R6eY^AJuqn&kj%TD@-V%|8YPbs3Bl$woIqG&|x!(03NX3aLMIhg^3Z*yWqAFFjDP ze3|LO2}K+O7H!_}V+GUX>;2xO2@4pnjwt;OTLDqq6NZh7U}>xhHs0~5jXg_#6fTq# ze`r$0{!IIR0?a}`ZZlQj+1-;|BqfE{&KL$UqO~)g>0ORYX5LhK+r8c|Hgwt$>@0DX7j5+!H;1L6Y=}msOryd5B ztrQ}9r{BrdEZWmDmKAN5+T+B!o7&%u3tZ3t{(&=(@L*FhD&**!b4?p4+$|pr7Z(Bp zeSnXTT-q8CNS{uHx8kBYEPxW%`;a z*74hZ_w9Ycb!>$Es#JP6M>AeF^=ElobW4K`X#@PT;Ayz6G2pv>><@xTy;rq^HMpIp z$uaL4iG}xcU7d=9M(TLD5gFM2V1Q3%~-h}HC$Sd>y`)+(D+#GYL92Je10do6*2w1d^_SirBg{#_3Zx? z=js0|qO`xMGbc1+^v&L4`eU-oyQ$0=3|9}zlIJaE1GsNpkv=q^SN4!2tgAq2yFEhV z>P73-8}R5nh57;yG6eUXioKZPH*MeclMTmUY9rhKD-b z`S+OhKFa(6ii@i*d1^i-T+rhb7F?7;(P`gtARHcJNB?1y)dmRtW~R=$H-|(0ZsuY# znUSi%lGI06n$UhSWS5{9VZAdcD9(T60=Ol>))kC?J@vjae&#T$z^VLAlyl;iz&d%6 z7@63O*-tZrAq|JfDSRCB ze6->|;a`3*BMH{UZY;&ahFLw@A-29ob~Z75^oc_E2-m~)@_ypK^e*hLY~zeOaHRu)amxjY<9|Ne&+X`rrK5 z)T>$hxffM-Q#nnuH~b;yIq16@9xcC`BTxGsat5FJD=mCo{tys!{xOBB09sZH&r9qt1#ajsjeRcQ=;Ioi@U#lIKArT{ z#astuMx!l|z&NBD%}OpH!M;=r2jK%i1Uf2S%e$~7k|!n7p318zkL^iCxcBFVg2-}i z>0O-xKyYJEnc^O>4hRstN%Ohqmy= zJ^2Y=r|)2~fidGv4abJ&?{xR6WRdit%}ax?wD}f*&0AqP1TF4T@pnJMO+eyoNo?qRW=jXBD&LcuW?FelP5<&fY7IZ{7Lp!{27!xi~u)4$iJ1m zwAZ2J%X_|0(N(^)r^ag1qrkV=C8vm|7os(h?kVv>TUy?28bD*)h4#CHwU+h@5`;p) zBp(G~PvW1yCgr37EMj$hHOV5F%-uJCWs5fZsh2qhZmjR5V{k_=i)HNSsyzAPBOQY_ zo~Z<_khM#XLVjziYGPG#@S^Niub9uvfl@DY`4UF%2j$6?I=eb*(^OWlsGezrZN`AGve@=}M7|3OE?9?n-yJuXXUP zu&k|7g*Etzp9}DRAy|ROjrq)2QVRYS_L4HC6B_Mf@-q#Y0^o2SQ%$1~7omNpJ&Pg^ zjpSKsK4g}TiBq2ZA4y}8U=XMTs$J-aqdmVo{)IvsJTz3XtW0SMBW!-2s=^J0mJ6!^ zIFHef`f-XXzz;=WksdxQIP#4g>xf%^?TbAq{daAp-FS8dK*mx)Zs4j%Bg0hirgYum z7^27Atc8;N>j?WR;f02!T|h?KMZ5z3ddk;yLylpm&hJ&GIA+?vC9CZr#DWHBh^evq zJePT2g#HyEc7qDzRk!NFRpSNjL3gt<6@B@jAaK7YwU6cTJB^)sPWyKA(?8G9;wcZbjA zJKUMz7?LbDyvpf{_aF?H%E{`RAF$Fj+z_gm_XwkNxD8?IXV} zT(9ip{fD_CsC~Z)m)GL zLIaBqP;e(HjeP&z2V^u&X%Xsc`(bgW7WS+|dlBhbvM6b~M(!`t9MwLNYT(Ocz>`=V zoCEW=Z`8KTyK-e^qtOHD(uMgu5zAbDmN>F~wl6C8WyEA5rF|;nBZ#~Yo~2kx`deO* zd-sU$gY*)E!toBuSL8zq7o5!d8#?^tEz+^lL~~H%z6KKFY9sKOQV7xJqi{^(P-kXy zl!xD1i@pBlS7E@R`={72ho~cwxtgM8Y~_~V&&TUU+M(=p${ZK=u6G@_!|0r#U!5~v zrY(xI*)da1fstn6M#A3L_*ExgTbq{-q1hQ$GpYzyXZm|0@X+rgWyKXsB9lyH!}J+yc`Q}Tn~QwV%i|N+PFCq z+7Ed@CfvN)Y-b*Qw3lp~yeXHnD=`;quYO7C~b8iMmu&rgzWLgR} zxUhS&UV^dwVcSyV8K7#HeW4}wXOqLbabUy-dy86oer`Co7wYFw!%ylL_lFW@JAx}M za1TZ|i4-0Pm?k~;T8<9c`-Rdk%QKB=uIllz$nb!cLm8rRxtk5_iU4wf6rZDU0)8j9 z6YjfyjOXw7tdbau_lArtByvQdbqtO%8XDQo0^_kk8)ii2h<^+e((B>M^>+gES7>8z z60|EoABrfW{mcvI@qaYl_3%D6;+_dWnH;C;p$DyM@aOEu1<4iEl2 zUHq&KF4zO$&9c|jFH_0v5r5w-SUy>QWZtDD-1;?*T;Omv%Ldq(NOpoSm+_4!bPw4E z4qdSSvHRtSPF>k!I#@6-tg&{eSu!9Tve!CwXb{~R^1wdDe)3QK)9EC!+vKrSP03uJ zZjgPpj*(O%=7ulbVdKq}qh{2v);-|CpvX9!25&F9PDW1q3gg z5~egQECP-mc?=~LDTbvhl?!49Fkfp9)kycj+#D)O()YYk9@k&fqB1gFt=dH9`5N{< zBGl0u)|n3_;yJ}wIC>9_%s*66VZj4t!>#Ad3QrKp+V+FG2(kVpVra}soN>xs6$&HU z_=PZo(kO}n=$0j+C7Wts6D68*)Gw*dfUWQ1v%-)>v7^lWdoliY(+(pqIlpY-6U+~e z0_x4GX9`Bk_34vD>x0(n$;Jf8pxObZRG8g>P1J$NwF<`J_lUQ!Wsgx4;qX#HmD>n| zwpycSuO=d=HU7qg0jxB-Ke#>}~s?mUPX$vt( z{9}u~&`f=$xoCrCUZ~PO+pBO^65opv$xfY9xGY~(zuSatwGc@rjChj_GRo5KM~01v zoYYVb?;rJq2xUH+8J^{(!jcUHEt*iWk1VIoInE!nMMN6^p=@NI`$IO7Qj9lk3HX~` zK<&h;-f$+^mM|3V0}?_Hc6cqXYqRTmN;1iIX6hBlH>5yyw)0;^;CyW3v{|60DHn&IV8hO~<&0>!%>`Uf5Sa^4@5MTc1M43@9#24tu1=a> zaN)^^#lFiR25m4DHX2t)o5I=*of(E2#ycL5l;zZ21s1Yk(m%?4lE4J~@6I#Vz6%r5 zOI*AQW|J_Mi*0Y>Z=@95bXbL#lWVdIoJza_}AEOU^tXja~TLK!_`)HdI5)VM>MrJH&`Soh*e?ZcLBnSP$|P7bJb zFgQDPW=}^Mlbp!{x{9Ze7y&`1Bh88p>p?@EZvs3{kF9B=dafa8`);OT1%(IJyO;Q1JgEfnEZj?kttm5W>c^1Zwa!-R4u~|^fT`cr-T1le|{QEu)Lm) zY%K72MTTVGCFzm#`1Lf;^`ntsA(Psqk{nbej?w~yNQL=Gh=h2FZp})<4~ni+jtcU_ z{LGl1#C2<1viV{?=AuCBn}E+|UC>ZE^?MG;<7Nvr`t+j&{`COsk-cyJ+)}oEWRpWU z|0CaLSv5xbf3=I7|Cra=ReL%iG!k{1Z74^yNz-c?r`S0DeWJRzlX!z+mgZZXJKF2q z+U#*(aA|VHHd?=#JxPCkqeay=;4Xv>O_1(I?9ptHl^5h>qyvXazHAyjqa}O}CubXh ztDbpeWjE}-hsN4oY{sTcY9l^fp=3XK9F}$Y-75x=!hS|Y9_c>@VfdsucV1swF}P1W{CiNg?$=K16M}5HHAI?aye)u_xnB0Te?@COz9mNa;2!5rqsNWi zmu<-R*B;$bTQ?F4S?F0-h+1;ptRZAc&h2P!ed${IeZdDvRLsxUGj%5)mPw>a2DJbU zgi!k@uCOx+&LzZ~fpGKH!@y;Z<-?D>`q+J5BFd{3LT*koo#Wn(Hl zK>sxnFihzlIIGvZC8S$5^Jh^2X-VxM?+BZQIK)$H^(!=v-s94Lna1z_!r{%|i&DA! zS(%llUdyEn%At}NRcSf`7Q?Par^%4LL&AMVDE{HAeu`q>Mx(FVKU~gZw0Y1=&c;2a zJU>*Kxr$%;-Ty#WeDY!@&kRWlYyk+)`!cD2oJ{*hz^~weQgrAq`~n$7YCQU9LpuFY zRsH`cgw)>3v8C|t#AAU;umk2{)?u1Yx<<;Cs^Z5&IthxYUA?egxq#fcHtdeiO*U6H zc<%`+=T)xy2(gk35_>&#l**8e?&_tRmX36hla|iY7m3+cvi9XCRkIZ}l zuc2%z(QjuDwTCQ8Px>wWnluf%5gz6nwrcV0ufXljyL>}?%72_S4dy7O`TUjVIoTh3 zRrF;A!K9n$IO>#>u}L0NCFnU{?J1*D z+%KiPq=BJrpn6vRJS+r3V)G<^&tdneZ|CVBkjMtzXLbL;7}-!OUS|zjEM4jF-me}& z_a%`Truw~D|I_RO^U6?%Rzy^X7C! za#Z)h>*=~i7+g(BU{|%)zEj$?sDV4PTbtxxU)fs%EqRhxA838PvzCB-C5`%g-X;R= z#f;=n9nvNk@5mmiwMYK?g*r`1A_Z34hx(YeP`1??h?|0e>8g|7>&g|pVq{9;hHd;l zsx3U%3gzzVN`nt&_xhR=4i}!aJbc_RP+xA6radq7OmmjR4&{F>UFop@^-SWhBR-a5 z;vaKp4VIxJALhGHbxS~%M@})$b3_Z>U2tnI*Kc+kXRsnMbs6;YOsYak6rfJF!IOeX zc>m(Yt88F{h;HDcTx-MNuG!37t!D%#2dN!l_ri#v4nz?g958Xp5KBW1pSv^2%KhdN zShJnoI@ua_YqcV|6KjYH=t)@cBJ2B6+C1Zdv&S+vkgz;a02ij)EnDYWe_RjbjQ!z9 zYjJ4OMDehH!q@wecDO4D%wDGpN@JFG`?*QZ9!h$u7_*|i(n9>QfXkABLo&Hv(nf zDW&NcM;ydY;71McpbD#6q^nWL{dGPU|82 zA*th=Phtw39E5KPl5rkt(8Qppww!}b?j}fczUvLN?))0iiqAyxGZ2yEsVpzNd%VME zkqTAS0kaMiU#2F|dtK)N;v%fjXGJ#-CjddUObpisIDrx@L1TL5Q!96Pt^dhs2;+j=)X&{o2~WK zL{+j}^BscR7Ify%Ts#cZnSc)#o9uZY@U0VEva6$c5&w_ZE{_g5r4qh4EODvm&*Uf8 zwZQwaz)w#*vTV$7{VL?$i)0mCeO#0uHC&*TvV~c0OEFd1A|vcRhS^;(du={%cJD!% zz0%=u?rnv(YgxRos{pcbYDDBhqI4z{S~+i-t}&0)`Wd61DW`Gd4JF5xE)u(*7n>?Z zbwd@JpN5!EC6*-z+i1<`MQP?i((*Sm-@1Iv*(Xr$Y-DODnmAziOCBz<4J_yn*{)SA zr+ZxNHvR=1%*-pmzdrg!$QC`@WepAUCpK(13~@OcWg3d z7qKHdbKuQe0${nWoGvZz8>vYhbQV3JoP0pWANh1R|6CAyV%K+Ews=rntBT1K z;jM1~qQ#Av1wC4Xr^5*SuVdcds5wwI%(!yLTM5AsyG+Yxv^y#JvQ+#LHx|Udo$xZC z`AVZ*M$k7!4>0|wBlSRlD}%OBAff-H(5nw*Z6oH|AS}o4OouKBg~A&+BrR~hMKrys z!&90dr3@_feqW+#`_qVgb^LSW*OculagSkbW>4C1&!iQqs1EY2R;w8K7rsm7B#q+O z5Ut(f8HX(E*22XFfPEl`JZDjvAqwrq{kcZU2Z5{*PY$ZaN!s5HemSo@5_8=ia=Fb? z9+1Dd1AmWSsJVKZ#{{Fn^I5`;zzdNi;1A=$1+0on@64C0T{(&49nlo23+5EXr;Fy8 zI2c>yvg$r8 ztc{o-jhyQ)>s$19`{mLGDF?1xSkOKtZewm3d>@R2zW`!_F#844B5rsuE{>0=}+S?mN>;5Q!B?2%A5p7S87OpA2U z4G88@LWAn9FrUQjp=_q6=vhB_cXh3=Ep<<)Y z;YT3cPVzH`@VTdT8-5{x?ci67?NcJj@X&+;Ma+zed3n5+xwUrXRq*0VEtBlF{-EOx zTaT7iuv6r4)2OwsbV+Q7UxyiO{qC<034!$^VTl1{`y`WHtzRf~f(u-KL%&|LjeRnP ztz4+j`0H+hZPOOnP?)K-6Ra%W+=yRsgi_QuqIK|v%oC%@_XMx<$UDQ0S&-3X zSj(6Vp#kZv&Um3%>lULyt!1xYsAEU(P1ER437xff#r)?-Sf1mPyQ~#FhQc7&?MZ&z z!ewq=3P@VW0Q6``ti(=)`%a2STUnXpon}B;*~;W&X$M-ObM&-LEu*UUFqxMSXk7k8 zYiMKDJ+-kF>&L}46?qF0k7VVCNs zFDjiYbHMSVD|(KngRF%Z`Ol5T%*)U{OY31IQF(7;7|(nmYKvx+Z?{0}X}g&qbm#K4 zLLSp7drm!9M%=4gjS7BFqf0+I|8{~tp4V?F?7o_M|^@)LuNTDpz=Bd*JGAs6?@j7F&K| z=BfwLlhlhlCB8JmmhleVKM0P@?t|R%2ppX@+u)V*Z-DZ<^tSaX#tV0(LwRVK8uxx5 z69YHL&s<)T+DY3ml3e!L#~hH&CF6=ODqb(*DTae$?qmG7zGNp{<_~;tzw-f$}FXk z7yG3#OuZ?3Jv^#J4_dkJdrR;>OyfV}<*+*C~b;d=v0#*d)YGAavv)~}{wGzU4jM$r0 zd>b`VN4B)hg69$(2sTTZnQ$Pige;`0^Xo5v$jdDBnDhM$RB!?D{JXTlEp3N*^1(Hl zkOmrp)w1%*m)SzHeEf*l+;mlC_E;wlYU~>7Xl&6`PZ%EbL)wwXj84AH2TB+>?IR~n zrr%fl^#4gD{9i!;8fUz2R^JjfdrxubBEEUKUxMavxaYbk%@n)BN?}!?kcXYdY&u0W?fU@P{Cu>M! zAz>+Bx*{D@T>*Yit1x9QN}6t8jLq?PU7-ICdc=;We@>*14<|jOd7(daWA|ikx-`;i zpY^zn+>gOc!I|@Y-F%+s1B^h1#9?B*D}_}knn8)9+f%t%QkFH)bto+cqlMP?v1BNP zY%Xh0Jjo3pf|+NYAMEseCJqw|w|;_j@UV44);!_&T(ASF@>p1$+STyJ+rdI3ox%Jv zCmVsDdG{3^2L903*k!GR9QH*O*~c|K$PRtz9P3QpA0!;7fFxf21MoQA0PogN^LPno ziC5W|TGBNVZg#tr##hk}Nnd0}*FK9VI`d-)5L4DoPvM;{H?5j>*q)2&7h2Q0Z{Luysq%k97e=xD}c?37# z$GwU0U|$n}C`r;YM$$%fjbS%(7T$p&s5zxRm3W%e#H=c0f2yuC=tOoJo#KT+{ zt^7_w=Z!&cj6&})>p}%h;&4JXE}Jjz1b|0g7CDT3w7eb=dKH^2LZso!4E@R8V^ZY< zX!VS}6!Oyu*Tj7Pd?cfD7TE%0 z0aNF6_j6QgRs9~-@I-eelNC-pJ|9oI3OG2` z<_%j3B~pH|jkK+@01EWStZLGpHL_fV^XK0Z4A#pCYFoRK!aHJMZ89&!;neQq+r%p+ z2syvs12E;S$PbKtKP!KFZq(bgPC!abTuWnMda2q9Jz6}Gcf*6cFGG&4?@6LBER?|+ znXY~C0_Znr*FyFi44|5xh=UAmUrMEo+56*~Ka$jbNxDzM=_FJ1o8KC!2iBQ}Pq<{y)VbD!a*oaqME z1We-JwW9!aLBlPSpSf!`-k@w&3;_Mp{9O$4G#fPw4R+2k(m^6az`E2^fSJn zYc{XU$esuI(HfcE=5_!jH1iWbIseOe{`zzQ3Oeq-g!~DHox@504Q1g+&w^Q*xpO6s zg{Kit^RePALogZRqvXS-IUEY7uzpr;Jq#;nXEWE+OM~p1=suF($a2({Hpa-mR9WKc zs+-h^!z^{)5_o9rb#?0sGeUW63?*1cG=zoEOkM`2zxK*5#rP{1i`F`D4g@lVMoF3= zCwNz3HclEwZ@f@q@)WObnDSF-m6gdd`B^CFgEU2XOseoKu_95Pc!`DIOb$nP@GCmA z7o5tQoosWZjFyI-bOT74J3O@#x|r@UOpBMt=@iR#HASD3`&5*CN&Ol6!W`4A?hBLz zmNsKugdgW%gd0RhI$rA>FN@UWT-V6|Z9mXwaf5Z(A1ta`7Yi%ze#8lw557H(9cyvF z*K;h%aO1Idp|`JET@mp1KBQ_u{s0{l`a&sqhc9z|bke6LI2teqmNvusun>;xJ&%z) z%K6>24td@We>=Vji@F5p$=02pOp0dXlfE^x?m-r{d;xs)-dg2=-uYVs$Ip^!g9&Tz z>j>QgPT2PEycbQ>)|urrCadzp4JnR*x-J+)PXRfZo}}_OzTwef%$zsKV^M1dkOQYBv6OCwpvzgM{JYElff|Il_($Hus5)G3rF!4MvHaAJdL?EAoaB+ln=rBx>OLM0anD?E06B8gbu z#9X>4r(CQ5^D)2ctA7@>K`HIC9R4*?&~$tz7R&PHlF8hhZ9Xu#EL_~kkJ+=6_d zK)TcP#haa8AnE-}?Iqv;2+>DzhW{Vzy;V>g-QG7k1a}D#+y;U}aF@X)KyV9_-~`vf zAwVFw3^2F^3GOmDA;{qF5&{eo0wfGB316PQ_xtW=pHHg3i&J$j&Rt)u>R#Pz)n9u3 zgy^}nEO9P8vkXg-Q6p`Mt-?__n_VP%Jf}FkR|t3F+i_*O*yo5ZBocYu~V;An-q(YRKJ;#({D!aJ{OAsr~6GSp}sCALD& z$qGMjrgix@zCWT9_FcbT~IC@-0`A{v3!Ca1QkNQ|)bx?l_DYal@?Zc)taA z3#Wu<*>ah%xE(_D3-uoWEC@~iLxV5KmOSW9gxzJIZcbW6h-xaoGX{aCtLTmS>t-W@ z4^el|)?IOALbkpaUdg}9T7T(}mguk6HC~zQ9`c;p-|JPz9_SZ4BZmy`raV%=pI>%9 z_E#$>I~nm4hDyk}j5qxOSrWg7a_iXoYO3VeO}m7c3&@KsY*Ze1rvv@$k&H^%kfG(^ zTU*(}3mP1^m*EMVHB)0v7Bs4)#cD{7O&cYGam3e3G4{gg=VdLQFo5WEIMIFG-aY_S_0NgQK8Bl#+O+6#lNm#+G$bHTch+C%XoEBXkngR( zgdZP}q)NR@Tv+|#Nzs%L=?spq-z5x}1!tmNlX)Wp*XEiOHM6_mEzosvIuW zd{m3ge991y{s%n=p<2zv4$^jpdgBm7T4*qU2B&;I_E?;E zpf<%s87h)a!}+Lw-812HV_pw|7$ZG^cOlSomWXCtw`8{elyr2m9I@3zl^I$L5-fl5 z=q=zJeNMhrm06WhThq7HgbM+eV4Q<68wAg)1JJ$~p3w(^Bg@pX#U&d1fD|kah?0r{ z`0xW@hJD`WToRXWy+$MV%0-Q(%1kWV-#i#5KHns;c7P6Ah$Ary*Q8`M`O8v;JGrv5 z*mGP*9x%-rGj23eHKtBoUJjn<371gEh8AvS?ES9tMBiHvh$svN;jdT1wm+iK?7X2S zMc+GFl@(JS0Q1AWV};!7HJ1BoHbe_0N0V3&0G?dK>w*V>a^JL8{bq1SQewC`56F@r zS*@|qKE9EpKi64z$>Y>muOtX(T2WRzFR)%eE9+@}^(k4>8Z)&)#M5;Oc(QZJNeB&A zGrmou$mx6uTyppn0pHt7*h`O*!c^NK7#}E*7baV5Ak02peus)RBzhNKW=EUQ2T1Dj zCUf9)4QXQETu_qy(`@`7;-iy%dKVwpoD<~Ntht$u@Hj*2q60zZ`=U@#ksR!tWCaE+(xQ(h)P3Mauwm|ILLuV zrEy5@5Z4&Pds;g>IyU-)uDqckEdW~{KtudzE?#$op$ePv9eA6fb-V?nDGm#zNW1#!);|ra-sEv>J-}&24-q{}-yTC0HBY3JVbw$OrNt`MTWRqc8h-RiJr9kX?zHWYAKwU z2T&c=q;89{|8XXuM8l5kRY+8IKO06#0Fj-BQM-W@jee^KW4xE@-!)n3 zZzwxB%T|xaSfs>0==oys#rB-i_#D1MQO!8BqHMr#j39Z*)#bGbPrTE%edSJWz1Ozt zSsL|`#iP|$Oin5_kPH#D!JM zTaFlEleBNnzQJ3~-zP@4)+`DDOzQ(#3ySu$CtaDi*;%<_kox)sMd9s=2C8N&+)fn5 z&2j(UJ!6gwsbYEyh{O8u#mjfgH%HIS&RZK(AS;iHnnx!4-}Crk$@ILh-7*L_xtAS%MH-jU!gQLc9`Mn-yZ;XAgD3Kq3CNJhmFOKE%2*xZNw`i%I3+S zr=Xq?eobl|=aQzCtJ)z_D}4t=;jkmY zYG?d3)(^a`i0PWTNW>cf!K><=XDu;iWo!jdCAAv@m^{p_Acc(aMTl$%OD}@{6}K~z zt@rXrM@JDg&2%L{7-t+ng}GBG7>jgs=a zcylF1MJv2ns3nM!&>!lh_v-($l zrXK{yWTLQ~c6{-a#yTfFcA>v3~VWA_rb4Y z`oMPI^R!9RRZ__`kYV;sRTMKh6I6|w)-5wxBH%!1d6faA$r#&iw5YJCw_)zFstFz8 z5)P+?J~~yuY0ILg0O56>_`7O{cPu>Z+-X1b#?qUhcDJlnwJ{^h`6OYowLb*5L0^xO zOA9KFMuNCK(gNeQpD+S!pa&m-R&it~;clqq`lPxYFZ^!m{2=}!Cv)_-Y(JG?221{+ z-?64$P>CBcf9CLP@*)WlljM*n#?ieh%cEXKtMhaY1S|*0K1jf1N&V<9QlKL)+07Dm~5lG_X;cy$AC)W(8gpz+%gZ!JX4nYTOF%) zU-c&V3B;$2SRo@>8|)mM)mpIwd`x!Kz9=UhhV_gM=aCu{j^V~Yx%D?AXr!Y!to#^$ z_*BU_?7mJ_qnu9>KDytm(>7-SelVLN?J#~qAk8ifsk09mLo2lZ>fE@jV${is?!MUP7xEcS2^K*v9#5dYP2m&$(7p#9)W0 zf)FXztD2VrXLM)mazEi&Ce_>TWXI zR|Vo4IgmBeK_x%2Qy721#CZtxKxF62BoOBLYQ;Icm40Z zX>=Y#&-3}Cp?7LmX1Q2n$BD{AV@;30&w(hqyXSLmJ-=5b!Lfnot!mWeQ`v7O3Q5E;nJM*!DUdkhk1*RqzAa=z zLnMivOzZ5rAWj;oOIb?E6SUZ>DzsJHgnbwR|71&JXc>vZ>5FE4SrWDl$;9KUBTZn@ z3~SGh6M2k%4$g<+4H@V~iaQxDXh8R?7g z@VOmb3wU;&fRX(#_H}pmqP3uL`qOx+A+RU``p_V~FYU#@*x#xDGK@E>qW54@N$G49 zu31k(uH>F5obe8ZM1mu}3X>iDjcCQ(q|pKk`>3sDrYp?uDVogrB7n44MYaRC87rJS z-5PG>*w`FLcQDhb2<&Gf5M^VHFD?!yC?Wkht@+>g_}|rfpaRrOICSU9x?Y9GpizE} z_YWN&JYVZwvIfevZ@ zNeX*^F~%4mw)hP>op+KPRB_b@IYsZC`{t+f!&;<+8E6kyF;Tj%pfcRgP zrsOs(-$OP(hK=_)Zae_CO0p`4x!2(dn(l+^OsvqMMhwAn?APX2pZ>HML^@*LAm1lx z0pDGm`zTCb$Icho!h|Fv>(HskV^)Jd_pBS|e{}_z`5CFB7-R_QXor4I*j1cRkBPN3 zu+mMn-(T~u?G7oZZMsa=h8GW`ZpQ6=`62JEG}?}Yjh&6^XM=uKIKy$;@&%eINo<&o z8}G}$;_ab4l6dN@bJnA1(>c_2;O>3YdBt2)OjyZK2^)26w*6_qPSFAXy~4|`dYb~E zl@y+!7_h33-jqd?sIuC06ZXkj6y4=fzEpZ+oLN==L3`@>(5%|{copUv=A$1!(G

    ?!qh)% z{g-)`y~z1GV6VPcH+Yh}%I-dr&N!FB@2!c!OM$*E7CCMG@jr>$*xTaFsuB95L22sex6qmPg1$uO=Mk*?zbt4*xq0?3P-i`}IAB@Sr`f{I z*dZEE&2GNfcAf3@Gu1Rq>yP>94%g8UeSHE1L3tJKPh;2FRAmy=M(uShIdn$ml}oq> zwSg%tsolS&yQPLtf4NIH*B#Fm`YqkODv9q?c^Rbj(kNh5`HO?<=n_qa7-5$(?&$L@ z$Gw0i6Ys_isLjSBAgGtqB+ydNlybCO4Ez^U567fz?X5^};#&^czwz@%r=uG)_u%%V z_Cu+0O-RJ}M)Qex{fg6D6g)WdoS5F46cb8!lIAWHs z`XuQg7k<9GUyFU`!zQ{v+#C^ z%r>t`meB9=j3lvIN8QAy7~?uj!ke{KR*CLHJn|WDceLQKqSzr>!__wR*`qy6*T?BbuN*Qgm z)L6bR=H(jEfY#8=UD?6S5XgaEQRCOyuVh3>I~7^AYYvRvXi{4*_G<&9Pe%uC=e`IE zQhK#zvp4B}H|FJJ387}qWF{rlRbpozKR{5@yZD)N4ONtx|yseXq@DTvBcQAQscoT%8wdwrK>o=p&mK@z=w(s^U zlZycK{#RQ3CGh|yZU1#U-+Iv7i%G84oV%Y_cjTbPr^v3D_;bM@eG|;tndDhLxS^Yeqn7hCw1|>YGl~BTxQ>m;gj?Sg^Njx|FTjiu5*YO++IX>MlfXbcmbgd zRfbIeGVbSR=E6!UL{;)W5%m1HPwGox`zGMdsO=R-@u4bv1IwA3&9V%&{8Q(gxscQs zbH2MU=3d(k^6#?JmEwP3*T|FH37_`mu0a2lFFQiJJ75}ihz%5n>(+YGuw-th(C@XC z%Nn|3Z`@XETu}4xN5I!`)BNY}t1>fm14B_H2K9fqO==GaybnmRa+Mr#9Xu=k!5nNp z@V%vSpD6qMnKbkaXkcZ;#V2uf)>wglL{KHuQFjDA(aCOY6VK)FZDLYO2gnuF{DdNj z32)`|dHr486O;FQK>$H&Je)TH2*Y|fk!pkv05l5tc=7&Fi~A8k7|9oTOcsqgwdYcx zrGQJa^6h)fY`UDjp|N?6_&*DO{G&p`S&oiNdmOA zlTSRlea2mAxjv-dpgyVUF7puPrn%=*V&`>s9ZT;lJG=VMC9v+XWndF) zcl@UL8ieY71v@PLxc|%i~Y)QtVEpv67kn z5`K`z{f=h`hxvMZ0qkE z)_=On;&1sFYR*J9mTw+P|AN&R8NkUW(V4$H?q$&3?dUD(xAOFD?@oNNJvsiwN_js5)^`Y(^$v)` zwjKckleC?s3k>%okAMW2Sxe^a$OBXN(r1)a=ylkv^u+(JhFG9hqs(pABjCBT-|1(k z$V=V_p7#e^l2h1+R(BR?|JDgiZ<4KG9d}!z*}k3~t6POfz*#$1$NypF|H26VPy6%# zH~Ig;CNT-YLM=?Pc$cU%YeC>`jt~Q>AN}r((gfSXi|acd73y~c{Pj#?oCr3J>?hJT zry-%f`t;u?n8qC+0kL$>f~FZ&YE{OEl)<`G1fd&mlxfNQ1qmjdB#ZxpSZ)OMtMwM! zg(qx{#Of+6baRY;^h6dIH|YO?Wc#n~<$rpg$8OWT_&|WkZ3P;fFaFR(|G;NqCNrSKlj2he{j!b~I}eb7?bcjB23hz2n9y1wDP`nG;Ba zm!SiqRAzB=0Hc~xMD;4Ii8)cYWjG9lE-%I_=(ZBqr#G& zOxo{EcrOVT6WFH8I7-F)6N?_*Rrun^5tqLFR$9Y-<9^pp^cNBluHMjMOUyO1=c0Oy z4@EuCcSJFWal|5bd`YxiC|$=y#4|DYg)QRdm3SXkCw)ve4V{b2{OzHyQjJQvbL0R) zD5AeWtXTZOxeBh@@2!JS1CG&hiHjxCC{QS238mr~W+*9M?SRBmkAEZHTx_*2p8S0S zNvl}Wlh&$?kWA6yD|C<$lghdgKnfczdiB}t*Z1(HU@zq(OVt5ZC__CNYlIN-es8vy zrw+{U9qWL6rm;x+bek2ugSLlmuoiB~ZR%ujI_O>2y5OXU-_P2q+%YGDAv@UM+a64BR2PZ$zIWNDVvLl+5?0Ylb&FW%*Q-$MEc5XfW; z>^EC3a~TDdU6J??3sbTkviGS%6NvJgs?SC~XGGDP=x)Ou-V7do!1KK@Y8e|Qe^H@L%=BC*9EhaC6iN1!8B zTw%JX;q~^61bg;)6j9%-g2_(8e<}CN|DECo0!kHRHifMiJKl=e1~>FwdX)yT6#XE8$jo ze4Pp)F662CSz6C7L^mX)(Q|rGjzYuTfu%_Zk$AEYxRt2JbT|rCSrB`>SgM(eTcs4U z=>beJ8*HWnwtn^mmlJTFz~3m-3C3{_aoC}IAjY-m!}oj*ldl5))L2iXT7EF<*#xx| zM;R-Z(>pVT>pXBRBw1Y>@5J93#f+(VP3sra;)j=q0h>2)zOvL0@7UXme-6avg}`Na zqixtqp(^Wrp+lA+UjrVcaf(X{gI`QQ4OkmwaZp7shhy#A;QY~x;s*_`H zxpspbQP?0#9*R5+Yx=x?y|A^9H|_o|!flfKRSMc-OXc7we~rhm5@xQS(s4qI6+14o z?rkS7@Km+rNyEI2flpo4D~C@wYkoWhhQ`IIZX`3=D605F-{;HdNgYWiP30aP`l;^A z0hK-WWYK2OA)F0#aaA$(4$i!ol86MfwKUsZn*nosUlh-iG4Y&)#;RW{i(pp{y&J{N z`jjQ<{n_n3Bi$?Y6dP}_m+_p7#0uRX{M0||N{wav)GF|wkhSYr$?kUM(fsGko6q^5 zE%d4oxU!?uJ8l>{rgGTlkLAmXIM6UFAtS;(I?!Q%juJ*JmYDmhKY>lA-g@!*k+Xcg znxb-AONBBIZcwQTuDs+Ca&N)oT}yleUq7rhAhWrh;Iu0%rc@+U?cL~fNGqKz3g3|c zQz4aNuA|IZZ}d`m|==mFQ!Aa%1kl8pX7zdiPRfg9X2oK z2f07g(AQ;(YJbOPd9a{5wj)O&$Cuddut2z!J2j*| zF|xfG92%#_1?f27>WKhA)006R2g6>#mKa9jwv` z8jUp81U;>1ytDh8pb3N4U+^^TGUeMzZe!~y#H1v#^B=nWr-)v6s;WmNj?KcAY;QNp zl@jak8#w2`o($=>_IlgjUY$?6^1lKtyjQYB{iJzm2gbt_0nleTZ{+w%-5=f% zmKoHU*2V`zms3bJ;(oDuKiv_GV$%G4e;D~}`OsLbtAgm$ zj|#;40=DKr)A=;kaGl$mkPp6SQ5r!_z_dS{ZoUH`9Ve!*Fov3JTSR&f3_fCEAcBoiRBDvl_mjhPHf!Vp?~ zjuU?<-Amu>HP;}8wg~l{gb=P6eEv+B-*Ip<84T&6z0p~Oh}fD4-P7#YrK;BHQfaNx z?_SV?Nvq=zK&hazAANP1FTd4e0c#kKS3ExM2p0ww-@I8WWyr1mKq|w3G%(d($@5Ur zS0+UQJJpB3y4g1Pu%f)>QXG-q=DmO2K2XxgL``=rl*Aie>RP_1uH z!lfQv!zqhZ_rrfk9HRa(Lxu56ZPE6K;4(bn>KW!5bH5;}l%N5TCC+*MRP)lYDH_`0 zn;YLr6{6b8Ie70vq|;E1j&RA8!hjae;0mXY&ZL_V_0w~b30oXu@l%lUcxt5>Cg!Gf zEbMcF006sxhvlzn$n^hVsClL#osQ@TOBYlru}*1Fqd2^0}P#r=trzE z!q;~dPlb~Vg$osyvZJH{SNW0BLk)mTVfA>n3{&NG7HkJi#%zxL`ZJ4%q`}A$a+i4p zwU4!RJ~f^HbNJ+2nq%ctI8FQ!I!2Cugid@6?zbR15Rp~*q%42- zbYL0Yn~%e2E?onM@0A!-Jx3-zcVVxkorFzRotN7YB>^**%HcFK=Cz7kd+22D$*ZC` zjzb&P(f!j4(J!3y1vdl94cRzr8WS}U0qyxcPrz7WjN~`V>%yB!fkRX(DT9msTTkci zo?6DNgGn4Wdb;#!+KCw5*XqXT&PBa>Y@ z#RKLQn^GZs01L`k$l8_ju8MHU)Ul7y>3N!FdR*D6j=_%gHT+ru-cAOtuDxBQ?xk6=Aahcz1`LYq4G{WKmC;QzI zc=L(wFXS7>3qN_QVW^yq@b~AzQG*?wMK4zDF?OiqMg}1UDfQ7W7QHP7Z)schz_d;R zWP%5h_eyO|f8F)L;u$44{qVa)%U9d}oo`u-x0)*Ssq_xxr*d3IIHV(N4b&KS&pZp7 zET7-GoM^E?zRwwbUo01Y<)+}i;neX*BzB5jR;P_Jo8ZqQVE+rf^wfX8M{R_5|HU=< zU;WABW4ippa2+B5vDKhxHGUi$9U2?tncw2{@!u8p?%#`%$;6%Zus$&Aoh80bw%+I; zvf?H9NUY}WmcszaRX{q+yOBq#@K+o(hkvBAa}GI;rmCiHD)y^9*dDYnKG1Ah4#W__ z#=~Ycz^@Q_LjK^6SjQc>^FDrR3sJUW<{U#`sP3Z*?U2&=aY}G>tG*GiLV1|JRrKTz=vg~yD0K4rxz$+p>em4<*v{OZ z{E*uWgo(`YuAO`HiQ(FmxImNLPwd7?tvJ@5O^TPM#oCy{Bv^1ymMT*5BqAW%;{`Tv@3izUD`uBRz_H`D>d(j} z)026S7H5s-W_m&c2K|Sl=7?@9PSumm!Wao2IZAqZ8Y%~90Z7mdoVQcd$n=uw4TRrc z_S;bH9s=-cqgx@ZiIC>inltMdvXEuxM4dH)v$e9S@ zO83_L*~VrhiSx{UY#a}3VxiDmR(cM)&$Kr?oId$_&_tD&!?`AyaNVYufdYlWi=2e4 zL{R($uaJIhl^ZU4kF3m;Syg(Q@~YwBY{cl@dnc6U#UvZto0h3oWyRyuyXgWZg48S$ zzAg-HGp9`~>eI&E9a+=?4M>Il4ov@Q?7Ck6#Po-4{fK3dF=dURU!9@oX{(X}$y27B z-*2685%GQ2(iiUJ?PvIjjXSz_z8joc-Y;r4mC)v+BI&DN_-by(r=HqOXK6s-@~`VG z4M6(k=5-$_>g1%nKV7SQ;2WGV1U?}PB-ede@HUBj5IMdS=20vol${{F7rZsfcJQgs zuxq8#u%S=$Opf%jB>K&G+0Y_x&r8gYp^eYga)!+wsHR5oj&%_W@aYEb-Fb!&;1Qr| zV0*iwIUmjdj;_*hC|DMJ*UoFB+MiWq9zx|;oYv)``s3SFmkRBZ`8auv=RwLTLUI$E z5(dD}=(w;Fa)w)qAcK z8&VbrL0$jztt(%e>9N=LkwD_cv$-sSw2V2Hkm3eI(KwPhp5!=BV355w%v&Vp;j?du+eLcg%+PDB}yQIiU);6NItIo`$!^D z6eTlb`q9|tVe}(lV+Uu-(BCJ6cd>folAr6yVSEVxr@=2Vx@GdrpMVO~-Y46nNFtq+ z{Q|bWrLpSH(DHg8GqY>_Viiv1l-NvRmikGYD@6$PtFPs4cC9O!zirXzaZkmB&RUI$ zQY1AFZQRU9w7CGp<|-~Pkcx3Etm;2XohLNfFEDl}9+)gE?YH^n)$4y5Z^Dc5!ExxU z*~OXs6W`^XSq_y=nTGu|#m@IsH2PA}M~JI8Z?{f=7=FZMih)iWQyE&uEoyT;6>Rk*p$GkCs}(^(VYDQll1Hi?I1R=mRn@hU z?N4nReMFV0BD#X=u}Q@dBhS>r1e4Q(-hc6P#8wbmz2q)M&R~{<^qS~ACW53pt2yoM z{``ppgw=B-K!A({lkUy^YMYk=I`#s;Tpie|DVTw}TP{v1*}0ZmnQ5(-f_^3xtg`3? zF(vS?5qPf|jrj703=kUF_{%&UdUzz^KLU38cwZu{{8YN+2%3Q*{^-29g+V{NrTlIZ zpxbs895KeITf-#w^-jMOX3nG0Fu$9pUP2AF4}w4ERjS}Aqg!65)2R%^Rpbl%($7A) ztQG!=6`>GIx?CywmK=S}S~-uT;r;CThiAQdVRSvdw<*|bNZ*SIY{JL~u2)+0TiHdH zixS>_Ve21{5zUwY8FgKTa_EQ{dnAsuvByd%#=1V=B#KXl>+z)(6No~XsAayzGplS}p+tp2Yn_eS#J!W3NAz6Vkf)O7YyGVE7v-gokb_z=RL5U$ zU_4;yQ!_98i_0xe ze!WEUg(i=(b4ALc+oLd9R`BLu^IYj1y8HfXOvV}O!xKCHHfJ9?*POOZ|6=iA)~=?v zv3&Lk_Sf@z?=+>In%c|PEE%;(*yu{=iYSL#FDsQuqr79FnNlV>%1BawYPQZt8V zhKx?BMMQp=V*1AIsX*#zoYX2wk^LWDT4QaLM52Ni{~Lvf?DxRdJ4re{?vyFH1mWSv zE83}|TK0V1+ed)767@mLnJ?wSBjCFg2URS;zj(SuT{4vj-`N;#X3BgIZ~!9>yZ-p3 zhNjrSHc2#;nxpTIt%>60kMeZmq<3U=+({|@S`J8ei2{*}--`)bz)&j-lHkqd=YmRb zFX0e}vRxjgWyzni#tTkG>b`MI@;fy^H+7e=ma<7hl{>+fR~^sh5QPc(YD6iEI!~`* zrTAVml^6Fq`~6#w0JPm%83Va1tt}GAiY?wih8{cWHuf*#b@R>yA9tquK;PB)jL7W8F4}lBwgOJEEtjaoW0lTYilHgM?FrAl0^PKy+lf)cR^!qs{g6PE%Fv%E^_fsY#r^NVS z7L7Izn-uin z)sxVldC_+=s-HuIIm-z6!DoJQP_EnGdL4M`VMe>? z5os-Y_{7t3H&i=z? z^ytxiKZ)@~kh%2lL}T?yyZwEH{@Fj@A&8Es_?!&KGCC4DH0f|)hEjj`p;Wfb$=K94 zhVqyvs+_3|HPdx>M1B4C2q>MECjR@edM~JP`ezm#--}YE8Z2=4IvBEWkzW8Z#Aq>c z(XAExeQ*A@zB36VK&!p8%tg0>31URH=Ogh5wdhBF;O`^J1s*dNxQD?0CB`;#i>Ufa3G4E42M#GR`&SvN~%}Mh+VA6 zSgq0b^-!JQhY;IU^j{Xl_6nM;MR{mOjU0gL3MlsfAuu?f<2?d4-yt6XO)$HE<5h5{ z-0Qz!drTBR0^&(<|T^Fq>%J4oehmK6oEe~4@tCSlY0!0hdMelg_5FhJ?~^Ex5T zLQVKH+;a`OV#Gk~$X^f@NoP8;@Z=pT3!O{D-7`0348~K`5()r4P%i7%LzguD_%m-a zK-~*IM3uvI9n&UT)gyC*#`t!l&8`2}N80ond_5)2rpC<9nin1?sZ_vR#wAnU>brw` ztOfM3uV$su(Lo8IH2i20d2P|bQ?BJG3v>Y{)UYz+M_W-^OtWiA#bzTZzh9zb0d;fn ze{2iElc~&c+@yLIZRj zt+x79_JztXj)!O1%#Y#57s=)1P#QCyDz-f%o{<3FAi2ctzxZL&9E{Zt`hu^^>)IZy z-cRu7TIS9_$H7#X+rCVWKuo`SId(RuIMuL_07pQ$zioJUYVavkXlwGWwA9K1J=^?` z-=HZqmFlbg1TxI4%^ER{1|R(ZW3bn~rrqxc|4A_M^696pki34?my-NR!}`V9qu>36 z)TP_ui|ZJcYg&fa?KdH^xNV(F=7UOYWIpSQe6*~7Ik$)g!}lEWFZ5zFZfbaC&1Sz4 z@jb}VEL+FTL99X=enK{Rou>>x3Y1|fL)*4G{KedR7_i5mzaZIz-)X`LD)edwsykFvZgH%^k?Tp5>E2`nT6d9p_|-qPELs1h;(b3(&NXFrW>Ms=?yz^dG8KU6a_P$c4i-93mTDGNL>r0>qbcjTw?*+2X8&PL>Q!$u}dN{ ziP+CX68TElVuIYfH)F1c0-pHMA@c`sp+PFmD|cZj`;5PZNIzZUl98I~ducm#QB|vtmU2(m_Inb2}yPWz}j~BXDBK7i-8@YAnb-t@y8V4eBoUa0XS? zqa{!K1R#=Qo8hD0FOvSGwX{lc0PjVaE1vt1UPaxm8)uFbm-9_UZP4I^XHw497_RGi z``ytKV0sM&+RpcZWxEnQqZ@3I-Wnin@v@6};wQ@f;@RHJTl@RFuq^K1KlH0H7bX?J z1cpsR`$uA$<<>WR@l;I74tvE&EU|lS5hpq;&Uznu-(bEYESZY#aX)fQD_`zViz}2N zZ(*z7ip+NKFv|ApToEUzVTi!7ADz+4OZ<;S!{7=BXKh3Oc;CB>mc^3rBWh^R(vJbl zXBgz}rZqGn3mPBv+RwRXjBYq~3b$whlXgX?sFlvaYudSmZkknolc+C-Z?=9hnkxUW z510+a@IIt6v-YRUGp@A42+X~>IyA_u9w6iA(fvNhq)=-<^hC{(`sh@J$~#`T?CnOs zTfCfJpr);OaX;8vxIIvGt~sl7>GIOc$RS;6aaCB&iNn%DpJHWIE>^rnfJcp{HmhTFqq0W8 zHOAhUwUFdzqvIWtNY?D}GB~To@E)@r-$cFkMhiA>CFUPm8z1GoILL13rBt8z!oVX=Xu1B5vj4^(l z?s2zv`M+BG?x?1}W#33g=}lUQbRnQpq=nv_ph!tTKtd4$gda#pdhZZANJol*^xl*f zss@l6IsuU$q$(S?9j{{`;==oi*Q?*=zR9eD};}H*~@cVt;6M@QY(@ z{m-n?Zsb0sSt1_?+WBMF9ZW!}zF$NO6)X5D%%<=lYx#63gLwttt zlXqelBtD$cS^j-I4lK7daV*VjAaf>Rg+KNBfRjt^-0*BgLS1481D9AVHQTWm6M$-7 z{;fE->%Yk2>0x!0h{^ff5ETM(RNKkz&=gR=I0%ft0jz)U64`39Z7|m5k9x8(_02lw z$jlG56Izh_~S3@57TF_`7|ONY0*pL8gZ2yPYfgTnWt4JZ6@bWR~Hld zHg9<+kA4WWHxh?hQCOnX^jDw*AXOjDjb_%3%YU-7-9%x$4pc+kh=G#4}U zw+hpmxUl&lE%p)BM*!%^4S*&`V7CBMH6hORvaiu3^EJkm+yCb^CBb9aPidoBln^T}{(wDKc8@Q?@_EO3D z3ebXkD9yqV>WmEY7R+Pncq`7by^ZR@mU>+mmz+NZiuyZaxl0#}$nNfiJDq;WfL?Pt zR9bkBuDWm-EoJ@flP^b(ms$Dltm1gPQFV!fm2{N>&yXay1J}!KU)t?HCBik=1QfSQ z`=}kHp6bbrHw*}xU7ZlXPL+l<=SRVJ?f&e9V0JpWY?UQb8yyLvqS4!9zr%365LeJ= zmnVd=8&IQai`wc&MhAHbqOBW%FiaJJKOBAC8ZK`=TlOIYcGUVk>?(PpYKCDGC14w) zH*&mAyJ2g?-HH`WT8UJW8+nZEPloB?Tt^wU|HySO**3nN_SF0qM#Ygbw(%@)+#_ds zmSMm0V3_x>7iaU-qb=Xf*6^5z8y7Mct)*5VHe>elQipFX+-Nq&An_R;tx36V^D|?9 zmy$@Wjm*qr0~_lE)jYe0;*PStq@H?M$Sn1|9T-#h8r=CzH9UKS4rS6y~cg+2Jj^ZC+^+GU;Lv@=ppXU~jaj)kM>Drdm zm#AqAnrhZASTD(H1}KWW`Ln;0IYI5Mvp>3mODH+RbqgPpNm@ASTe}5CcuT4b#`F|!L5&x}s)ZJf#!ia_;%>jrg@F?qipgAiUB1m5 zQ4+FZKnc$?)8ni>KgK;JnsnPJ*1CeIQ8FurI8>p#P?>ezDWQ`6oRcF9d1SzT>Yp$w z=8^ZP&~kPSYmt{tw0#jl5=IQy;{N(}`o|BtNj- z{v6CqKGwBNQGk5gdgZyIc*-s>pCByaQ6!*7TMQlT$a~o4yfiA!pS+{@lN#QSiJsVq zjnx2@N2UM^fy$=}zx~}ArKu_Upa_u|#B^c2z`TlFRNquM^8iCMn`?a~-wF@5hAFTl zDORi^A+ZX{$^rKT8o!T7%9XA{9=RDyCV?*D$ zi)6*xC*AG_poLMYqP1mocqT~Elz|!OrUPFRosaxv5h*vVk>qF0LGb?B7{)7dX^LmL--48mY=*{Rt zH;H?|iJ`e0z{7G@@*RWfXFzZnF-nWiwGA>1zWe%XzA@aL;pB>KU`LNHCJWxQ^^V0E#m)R|yNfa0VLJj$C=2OE{U{yFW)P!IN5kMW`rG z&;0xP>EVIUfUiqdwjxu*;~j8g@5*+1e5b7>9jvgobyqy8Y~?5n*Xx zX;9f(x12#&Hr~WD0jFgeu=itZDXPtL-6U-ZCBC(2q)GU?ps_`}sWD!N-xZ!NjX|nU zs(zYir``StBxvdkq%~IaJ@OoZW$ysK47{pm*4-(=vya8~-)iA9`+8WQd>(Q!{xzAe zMzG|l%kd6n&Lc0YDN+NeNcAGsPEh1*~oXY^ZUl6a;Cwo*Cdxt4b zH(7?KPzM+qx?9kIu@kugybnyg%rRHELYP0hL|$8d+Oey~W;~Fs{&fs;z!{1P(L_Q@ z+*H8m+7mW(c};B~i9!^#Mj(<`2NV=aA`(J(jk!fsWU%TAY<=O}ciCqo3DWsj2cP6s zvk~Jyj$?&uS*+4ee=@o@P@jYr^m?xx1p*`67-kxzDaO4Y9ee-w_3G+D$k2&O-kOhK z5^hxT5#dR+RI1gwk~^}0G!OPF%>g53>Jc zEVhqC7woK=?S#GzC~lLQGo;SL>RdM;P4U5Jm_B<>T372Q4}av01R1ms)0+o7VXYqL z9U>lYV>!AcIA8JP=~&+Y_9t1-DWiYDcIqaSUUoKA`8X<*g;n+CFgwn%XSH8-fy7lPzs^8$SyD|_ z_S^c+ymWg%WQ!b*4an%~bwr@cao^dQt?)HMV@!F-X_ z7q&qAxX<2@$r?J@%g zQ#-M!1??XL>=9MD6=7~e(QK&!VPH_%l+tv~J?(3K6(Yxx!BaCPwKOdjnpy8uuxN$S zXuEGZn-l4eh>(uKtA)~6cVR*H^$kzYyCOsST@`4GRPM9~q|q)ZiKL%`G%>;(*Jc!k zVt2*lep;X%n>XtD9f~8K_KT`wlvTN#4IV{lt?RtGYGk?r{0bnQhc!=*vKnT~{21W% zBbQ2t7x6$@MZj4Uv3)VQ*Q_M9^Luu1Fx^uxS7WJYf~t=` zx$LQ1Z?D!moh_=#_Vkjp_NqqjGJkWYg`BP9Myh*eE(mLN-%O#Wg*qqoVF+dCCkKf6 z4}P~lSs2j`hEI^Qj~t@^GJB~WGD#6GeE=(?c>AsFBkU=gjp)P27G|!SXzN-?kotA8 zlDW>5zr7!8P)(5$()*4LOoN^nXehcf%FE#eSbV{Y1q7AotGRO7q7Gvu&M#y z{?RBPoF|v+)5~l)WUjc>rO8pIIAh5v%v)}44DJRA*(<-C{N(rW9}#Y2Wt|?^k>6Y* zWV&P4vby#f7{oha=`q~`Ym zx5Ok3$01Rum4)FOH|6WK;v_YGA0MZBMl$bf5(QAfHuui20XgW`}R5qGw=#|#H4 zE~y^g6?(MbVA{WPtY*m}OLK?~<_QoqS8{G%4Bl}k$Gs^AS&A7acG85S9(Q#4 zl;{~NX=569Adh5GqRHbeawIEKG9+&z6*yS#cg$vgY(vWAD6ymJy$CsMtxX_QGDJH* z@l0b&17_bCFiQ-TL-*eHj!kdm8hu-}GC{7*xq)u&xZhFB&*$9K(uOE^G4rNbiIn7+ zqKE~=`CwdoZN@^{1N^-Ex!1A;DbnBs(23 zsJJPa?H>9a<&C?k?@~)L9Hdd5;a{1I<3k6xq-iI5+eKy4 zY+sUbTNk`5+qxKw@JyEp6;E2IL45IF&Es{iIx3UmNv4y2n$=xTCr7sJ4#XTo=#~a& zIUlNIM(x`FZvA4PdvR^*{BIBEi3DFCs!QfD=IAJ*=YrzdDHg zudoDy*;><@lF`c&RlTnJ+|~BB_N$qrEQyY^38=6YROt4SJN18patrLY ze*JPj!fq7kC5HRG*f8g-I+erClZDl3&v2)EAYXtw7Kmiy8_v#Gz4v>@3w#q3hM^ne zwV;Dbp`jH{_TR&9fXjqMpZ~arcc9ZK>-EK6l^7SVrqE0sVIdqpZ*PfuWHpesTT>1R zacAW2L-K(^dKAgk@Ceq=oDbAksOq6mMkoI9vX zAHYiZ2|k?Zc3uzoF@&?|r@+V=SV1|1_3aF7^uH!apDLJHbuW+?;(dy>Zwm)~t-o9I z!*EA!#bba37i4{IU9l1%pX*DkF4?;|nBJDt1pHaMUWQ&Yj2KIS!YG`1>R)G%ir7Y7 z#dM(j^`8*uAN^uXD%^Oya{uswDgNAKD^1m{q5i#Uefc(r6rB|I=tGG1^+O>Q4mk{8 zg29--Y8Cd>M!7u;Z!Yk@DGINN9-Z)t2~H%l&eaDdpR69CoA%#b^scD_~3WQf0ei{sa84D+<%)9)SB9(*FIpylX#q zN2IatkUeH~FOi;v-AkRay?OiyV_<~WUD8C1Qa!WjFdmyyZ#H&VgYqW^e<;<;c1{gi zi;MiQ3g`eZ`slAU8!w9v%85=idTz_X{4iq%5HT(BhWVKLW$_A{GxC)#wMLf-p)fNR z1jYX7x(yy(s&_jKFi!Q>&ns_bW{Yvmlbs-h?d+#K<=S}^H4u@RE6hNPLXO(c*Vmzhimq~J4 z2Bo@h!tkbfSnul=gXOPRD^wP_GQlQ;HlYXmdl6?WY;7c$WLppXa*IKd%6WSp7x)vl zlRMe5PR2^E8>k^riMLTQ`3+#b>a)f-AhECl6XIGSWWZ}WpK@PXk9$rNQU1LC_|j+p zB)5kuSl12 zYt-sEr+sXc4tdl#QQrYBPM}l$SS;|pdyKlT5W}5>*Nx9D`O$?O}<^O1~wt%jF#Ub;z%*1J=AI$yKdgLk~` zj307TjI324ge>a)V{+5$b0|`?TvB@-kH-v-X?GJddJqC>8DmEnonTU{L?zQ~^dwAN{6`QX4{}Z^rLP z8JPo$D&;~fT?WM$iD^#`Rer%1<)+?hQwSo7m5$F42<=Fqi}_&|ybg;wX9Ui^9PqMG z1VwE4llY0PWxah@!I#5Lt`#qNAOE?RscPp~=ypSqYf|ZIeLB&pki=7_m7jY#hXKcVY4HNggj0klbc>FM~QI# zP=lP1mXj*>#BVy=*vrn$hSd#Ob2lE*0fmH5fDJ!w7w9LG&^NVn#GTUEhS;Q~WJ6sV@KhoFDZ9|F?jv_#il!`1z22@ zZTW;Yo+u~cpxl$Lh9ofgxBBlul3<57p&X3|u&}NgTY+k!M-K%kR>SwpA(W$!*ia0< zD3WhVK#Hs9;}o7!v(i*<@O9a+8VdXHvG*gL?2!D7ZR|$tEyUP+NjTuAUhu2-T~tg) zOEO9`@45Y7`xWZXK6NAC7+WqQ$Gwk)+8F}*NxOoz!d$w~jn zWN)4CzWepBtiY-65TSH9yL-$`(m*0@!`u)=aDbjvRn_^6@M4=B$wz_3gq+aLG+z|p zWVZnJp&d7w(UMf$JLOl{*Lb_W#_4MDlEW-90~z@tI8UbsIC$Oh#+_!ljaV?nG(Q8u z;K0n4;l_YeE(#g*^`#`0T8w`aA=9i(r9)h9&<{5fY1LwQgsYy`LziQCNl_c`5+E;v z1{So(Rk(+BpXaz>;~5CYB)PgPTgGI5?lBdn=G}|GPD}`*C`lsY@r?(-lmJQOC#+<` z3+ar}g~8P%SzM{=Be%hMd`~jtd+9qU&$0e3a^m#I<`)Oj{vaU1++La^e(2}`^8AT; z+8Jq@k10Qdz}HPLoBY9IjrQAfrygXJ{jx(o+`9w;OX%AsRHE?lb$gLeBx09M{hB=# zNi0na^g3PKmTti$$5CEGWvF{qlU(&Vl&XN8r>$3#hsK>Pvr^eiKzk}PKto#VGBnqj68j@37X5|Gd# z=db>39POk9$tBS?_6tl_ZSfcBmLI*DEc@Mo+yA}xp?_%7#| zDZGR>+O(;qg~uOFno``MyyyktkR#;?N>}K2S*vXf_})8fHoAc_?1EM)OCJc%?yJ2d zQ4;y>Igo>_{y}B7%~i9W@vSDOd@enf%?B@w&;n|IzaKH|_^QD|U4Pn@!p!ca#13G> zbcL<&f#4QWO7NYw!~>p_^(etX!>_@>Wcs2*L5bfa-(KTaRBb!O=(~-(Mp~`4R)@Co zuFbqX>lj-2?=Wp|nSA5anEy)rXD41hV4phrb{?z`Q=iEEwGY>Xdl>%+7H^Owk9a+uGFh-$rfGBwpDoo$JG zDbGsmy!Ox}mfy6QKmgv7!Sq0DzVe}OXOs=S8hb*_F%K5(<;lHeOF8vdBDxc~|2!n` zfVr;B>pr)!Y1c@yY3-!aeM7gXw+wIU=uBLvW?!}(k3DP3M4L55NbkL1+#lejoeK~f zu@V`bugCYV@VM~{pIeyu8^Z}w#KOiFjv4BhDB<>^(C>ogA%ckI&)m1N-qlW?_X(a` z3&u_dJSF2nHC|p(IyGC;%nGP^rm0xrVADLRUa=t@)H`~6a^h+a6EEO!bpnL5fzj_Io4lDLFH z^DJKE-lEw_et0w3e9OCZ=p|Rw(-$cwE!xASs;c!$c9I#9?(g09!M@2oWoT8yWjtRF zXX@|=35lU@M;5!Z@nZVhwZc4aOLC6Y?y!%Hwl2D{ahR*L6sJpTZg+FR93R-PNM4#e z?&st4NQu>2!qwB{{I!x{sn<@@S;-)@C1BPPE`8->KsTDe`7JStUTWPld)}5)1J+< zvhWO|nN$wP!YeZv)OjDjGIM0{B2D3b9f`Zv%atMRb`A4uu}gO%|MKa9sBaS&C17t3 zt`pF;v9?UC;p&?J^!#3+Ar^hi?8?G=1h?yv&>37CROdvst|5qOZ)@A4Di%2K_JpaE1+r3&sk75Knt(h`!0D}0DA8TqtRnV)LmEq%{95>P` zo=oN?T&niBw$F-Wi-glr6UG77Yb$S{$2yep2}{vOu15Wzm%3LQ<6Y0f=OUt~OQJ&$ zx;%HM3V};_kmGBv);De@@9fwuCX}!VlG#ne9L8(y369jjx%fGNBm_V>D$ivmkTQaf zPdt=do5wa?A zup(-o*CuiFPl~3nz85R1TRTnNzi?+CkI8 zaK^U*i!Jru!xBD%I#wHzrg`IURYm7=9s}F>Z4+~54OMw_{6`q|c&W>`)kAIogRZ2E z=kK7EF^#4_MiYajqGklRqVt<$Jk`Xqs5x@I6o4eAHSthOvXOO#(;rj;FVtc@>n%5X zzQDZaq0#-hvxh@|IYW16x8_bJjPJ@mt27(ch(>Ez#Fy7SVSh@t9{;TdX`I_iP>kxs zE=BDCfS%iGUy@DQ&;OEeH1-qFxo2Bnmr7ALtTzx42zjt(VY}I4-c72Md9=repyn-0 zYKeRSlfsH@QqUTP^mL#QpQCc4dD4y8ZSPM~g$643+rNABgDKWp0CB)z=_gV53YaEL zdg%^ZQ=)mWZVQ$aAmB>cJUiuo>8G&K=EroP+qf_wIgWNijND880)<<@XKR88A-U^s zt>Zu$s1W4?73Llmgo!Mo&w8r~C{?3u(<y78NSD86U>>#{N zgEn?>u7XQ5P2cyawMaicjX+}l(k;NIhLL*{l05ZS`~OuQFnJ13*CZt_>LwjWx1KXU z_$7MSjPsX?IXrYS!QT756JUPpycxWo6mY8WAm|sC@oY%JH$Owse?R7z4X8_hw7@ve zgh|L^83(j8P|(buLtnU4{_~~$*?@mN^>W!J2IL3to+mwge!NZHRcGlGdR}qqPP#l- z)2#IC>s32(_aDMPVUvY)C$LHXd*FlM{QrWA@ZXi`pPv;D6pr23xOStSRk;By@SnwA zxKsT8Z;MC8*%KBnrDE6UFq{)3i;#veS=Y)}^`~681OGKM={I?t6UqCtHZP4*hjM6q zX?F|OtH+47CyXlOOiv4x*dM9li@5I38yRT=Zf%or#xf78Apk)R(luk^Dx{Dk6ULaObQ$rO}W%U{L%lPbEp6l_xop8$!ki{k$s#Lxfn z1QY-k2nYb9jmCM2v~xL zUjY1CgV&Y)qkmKT#gP&4A1^++WV=q8}fus(!pdc{-$OK3z1W1pA0NtN;q9Og& zfWH|MG72ghItT+33;WLm=o0`L2?Yfi6$K3q74^?(@Skx2l>m+KDW5Dlk+ubh!Gjna zo>YjzDA(9WqBDEW#Bb>tfr&**MovM=%)-jX&LJQuBrGB-CjVSPQAt_lg|41H#K6$V z*vi_**3RC+(aYP%*Uvv7@Xg!EsCVz9W0F%+)6z3Cv$BhdOG?YiD=Mp+np>c-*0%PJ z{(-@v;gQj?@wxeh#iiwyRruES&ez?&{e#1!i|?0L*EhF6?(YA>3kg6$`n&zNya@jA zLPkYJK?VJV7ZS4HUnUTsqCMq9CzRC&S$GgJfWt9}<&p{;`!E^#bI4DSeHV=gWkOpq=*^0uR%y6bbFP1)f`NGbe0$gz~ z54TnHh3<~{TX!u3zIntXOH-_>6d&DxTsb4<<}hN&Gi2Gben5o0ej+(q>JBT{RPd_a zM%XS0I7v5dU<%sfoD&jZ6#CJ85eA`pPl?^WQkOd2b1Jv5rMGD%AV%BGx=CG;r;eZ^ zr>B0>KnP#xLk#3lO1k62sVQxHZH8l#LbWaOmF^yqs8j%RIl)TMqSwCxKz zOll?g)$JIn#`Qy^6~B>)h=>-5tsEZII7rC4cElQcduR$i^s_qo_oqio8YUBajl2xf zuQs`9ho<{BwYS=5r4I0F4JN4Zq0){BIHP^@QWUMz`f;gAOPDYiYT5n3l>B~4vU1P5 zr`MyCe7f5n;U7a)PiSUuxwOmUQfQR7#xqqrgG`=#eF9IQ7dohO{_$=Mshq3n<(dE~ zq@Uh;tsMfwjX=^_9VM@V&@$%A0!dait-Yk=Ct)>@G`P6a$=2uI0-c)2R(S|9UjlYJ#xP_^7o=mD5}9d(ClF0tod9=Dt+cw4*iUzzf)^0AewIlQ3T2 z<5m?XZq+n=4KHvzOt7L(abge!(x^#nTzY?aQIaHBxI(LlM;0P{(mUXX4m@1^)2^E@D>Q|ID!bIkpKeL2Y%EH>OI$*$t> zYhxj18~YNq6M;{0td=tD>+uM=vXl9bEe}BDpF)dQ|vyao6=)f{IDc z$Gg>S7eOXId7Rk3ukJ|9F|hzhjTV|yitq9p!vBu87WE2m-NYYe<~wefYi7a?oh0m3x(zwzWMiUT8QFmd;0o){ zd$VtT>LkmkXNrxTYi85EHSnP5C8rn?mC$tJT7t|DxZk!W1{b>Mv3n;xO!~QKe-^uh z*RQ_n{;Df(xQ6J`&>G@3n+n5|#gPR`da2ZMfsjApx#{+j-ix%(Db|wocbc9$6BD{U zAcXCxt?1&slMg!bT0htHg&kDg?^=T zbAX_L>nMtuc*PBqX0Eqku7V#_T^#4tl5$Pg8Cyc1jr+zXYSw{eZUhE8YrZ$XDWkF^Qjq8wL|;#y>Bc7Io(Bwxy~1B#bIJ(3>XGSoLa}kfNQz-&YP5A}|N8Ot z9L=QtLOm|w{nqR=LVK1hq$oe_U1bgT!tkv&i6{IqF^|9y?B1m!e@C+$Yq@_+?)?~# z21@WF(4iU9v+&M0MmQfY;LLkU2d>||V8L5^G(0%sMVa`b6@|%)en;Tz`EX(Rk=WOJ z?~4|(#!KaZm#k4{ZR1UE5(9T)gO*xvVut>u|?l4+h!DcNW4f$GQ6w-sS4` z2$njy9>Ii9U{bVA%oAzf@@~-HWGT8uw|tYVr`X&x%+cW-X2PCjyWt*vdoWv|1j)4a*_SGs_$fw_7jjG()z-c4CZ}Bc^(8fM>vZ~2y zPtQ_D@?4pME>cy27|{M3(#DRYNK%ZO+DwMym+pA7gQz+kuqBvw9GEJu`d-S`!D1jN zQSIkx*BjMa4t0?Jy=B$#;tnIj6h<%_vw;N&)h<~Y%O~Lt4`a%Z`wLiu;W5C)={&-R z8!2j5fY-jc^yw!HC0l3u>ghUjln*TBH6ce$+^t@tDbCG)_D8**WW=9mckYNSa&j_( zI?o!3qM`dTQT(^}ePC3nI+@yH?YFCA$>&Dzudeh}=#w%h^ri4=d&Q2`c)^Prv6Lr2*Y)GMsPL9 zW)uWSls$?9yxg>Lb2^3OSdeCG!Q+ZH8q}^5;&&Yc9ht&O=`A zXCK%sLUt7L9{~-lT@<97#FXH)dQ#Cf1lF{LP31XTY>d!J(iVv3VUm|724dZ5wf!bz?EGRBq-?V#p2a2B@(1Y00H zb=c24AFnfH6IVG5N0d4u?1k@NMMJqEeYLyqbo3lHvsST`-vHHUqNu*~kmZ}was)k$ zkY7c@)-XnKvZk0qJPa-tU*4@R#XR>Dmc~PC2+`y&ivsx%*paVQ8NBHe?LCum^}O^a z{f$i{#L4bbk}YZVpmS1ct6o8^fj?Mq|d=s+`5Kl+{HRioqta6nKGFe zlqv3v-E0QMs9GobIFBuOOaD+gW&WTuUk+7-Mi;gbvix9yczsW^l%;wni7)6jAk@+G zvCOot0kU`d*^=o4%4e-Y{l;8mx!8T`rG-|=xv}8n{BZhFXEwx~7+)vQvaos4`{a3A zV-KwTsXPHr)eqg7^FZCxH$g%k!XX3;+5OA9bHzep#r+Mh;GOIysRw>8%zojc&JU36 zgZucL9Wz~nDAxAYh1wmp!BM7GZ}Lr1pz`?o#LRe#XoAUsfr4@P8VB6|)!KJTzhlXJ z0`o0dU|b0i$r@w24}|kL;?D~k)E;g@_I`iX*+tO*E1B-(iJt^IwOm+oG3ZS$n+T{| zx=%TZ4^$Cj*x!uOkml|sOWOg`64T!)VMm7dVEU%B41j;tG*>!1AA z*E?xCAfWdW?A1pbPnTV{TRez9*tHtuJvUI~I*nTpa`zfm(ta7^#;tG!7aWw^%?Ru_ zb>k2ZU#7iUfnu}Q*}|f}WAe~H0%nBD*h;_8KP&C1wkEy`<fw$iTCpLh{8$(qT-kRhfUe(s_Db(Mm7j-keR`J|wOvoo2Av zqQ`til5csbGvHY*V_OWUJ<>Llh}fpr4yA5(;Wr8HaC4clIP-9!6E-{61k-p4(F}F= z6G?TXxfr$rGvAVs7-y9c49$(M#F!q7#vAVs&Y&hmkz${a~2}u12Z;1wDTK-IhzJ2H* z5K>tDlfSE}I|hKl`H{2kAE_hGLtA9!#zgK=bOG*_kSk2ix z?#ZZtg-sZEKC;oRll;--ohmh2#F3a?T&-JaghMSf$J8{_`71Ie@u}Q?E;XNNt~a%= zgq4$r&yF}gkEHBV%HT;iFBiu-G+PwMeJeco(EG&$J)Nc*o-?oMni@guGql4V%FdPt z;#$iu_PEYxloeF^e#n4V;>wyb=iCSIZ-(>ugtB9}*+uHqO;Bm_ob0Xkf=aGCCS2Z^ z72b`Wp0ggY$~?0pA#725nEkNgsJ86u3!CIRL!5Q+KO21nPIxxDhh!@c3@G#KD;zsi z(x*+DvYr!-5taC1HhNJJ0@h3fNx8I6?M3muEh3pZw|eK-WeGku%(=JK0vS%s%_`L9 zjm+3MILWKjS0uV>=`QlU=^YSg*@g;}0pIH9CS#R{mBnE?s*pqN+?#sYqCW{?t0j-l zcouqaRp#YYqJUFx<@>XX0tnCu+7SiKST+kxpX8zRmTUYT4$3ogrEq0TU*9!J{Om>V zv-z`JB7bGOTPVg%#?qSpGkA;f3kN4j0(g-_`kB+3#- z7!Bvei6+Y;x0OxE4AZ2|8Yxw;h9BaV`FnkPg2-W6D705|#7dN>{w;aPU577U+O|;8 znq@xFRT{QRK1Lz=2z;y)t!}6B8uAGA$<^HM_W7d_lbEm6F2&LO-$zopQw7{LuK5U@ zFkmZpvDU&fivZL0nxqrz>ly!tm9vIKg#1gRvZ zIPPNJb(-=KOUu3YK2v$QR$A?EzFi1#R6kt{aVClnSM>~y%H-A7^R@BZTm#U9Jz)R59fH#ww?QBGtEuZlb zbQ2u%&sS~x=2AFUkQSdq`4Zf##RgYgG*{lN2tg0T%7BDJgH<&ay^Us{6*mW*to>R| zY@;$-6L|z@+j31HEmGKtPRse|q8Cf*^Q`}yZItbbAFNBj2k(J=w z&O{LHOAU3vC5KA5hpcP~y+enlqYGfB9q&{=L z0c+a8C82jDrLe4R@_dn0Y(!L=Z@hkw&FB?}BD=tkr*B@pQ|gEifPPSqtEJ~aCSB{- zjgNdc_Jioi!543D`!JiYE5{`*yq&9Q;(ba0)6beUI|*u{Lx_obV^E{_jqiy!Uv#YF ztN4#X{H79c=9bIjK!07Dlvl>JU1I}s`)FxY4LY8{rYl2jpP%o2)#?`n<1swARxodWTq`6Y0TBp-TQ18TNj=Y$?fToq?lP=bkwMOr$ ziXx95VQNSCvz7~Ngh87GZDz09jkmte*IEa}vMJFN>^UIWdsAHdrm!b{Mu{mtiJ>bKPcF<5DGa|34NOHP9;Db3 zwS-Y1x{gJ!FM8a&lfB!*`Ox-L7rZed;eIq5T(+Xt8#eB)@2(*wPtn&mDyTGc{s;`- z-|e)-+lna@N=f-=O!XznP}pjZQqYLaA|}P}X!;Lt9GJe>mLTnuXT7xo1H35Io_xpJ z@Iy+Ul;Il~X@i8lm0~=zPL;-s2oQ>7HTIyU;LRKKoHA8`OS6G)mdFg>MIdV839n&U zaCG&J@!P;JZy~38bUiQ&0hc$>-lwU*Fc?yN4bbkg``PqH$KOi~bjSgBZNr-NC?t7h zLeZWlLLX@=laaN$JkU5l%7^z|Q&aAEBYkBq;fE_wlNkdX^ez)DGr|II><3$PW0LUO>_3%S+REMTn(y-$wOK+h57mbR z6azaIRsH+&30ejZYd|T-JFUFdUpOI4Ce^3Q>-;&sV@l-}G_&!uW7 zM9NYr5J#*<%W_{v%MO<&vE3g2D(WiSs~&Q4FDw?bov`rIY<)}k6-aY-FtLP+ZqhNb zXNwAL(5@bqufjI)y=Cb>#hI!@>6GT1U=1B8l?c9-X>o97!WAxvSnSQwjEIJj<^xe3 z<-=GMB81>I7dH(9FUnDk5qZlL3(DF>-~IUZ!pm0an9op{A{aT@y?*!fU%73@H-L2i z9Mej$k73;!nJ%Z1t4oxW8OhEvXp{*p85*KJgtX(c5}z|Xc60NucTa7ZMy4KC>U5T8 z=A;)b?|D+$rMR^Xc)>aJJ6@=-do?Nu<>A(b*T7UqLW@1MnCT^5s9+Qu@voBzRtEdW2cTzUQBD~*JZ@-n#hN> z=vUi=>zL8KBq1r3kHh$i#(YOF0oqKyF6HbR%I1|i{wqRH!Blqzh zf_RyCWQx7|MWKa|($41fjAFcq!q`@No&hh4Z(Iy1UQvhNYnsdR+}m)X^-hmgq|Dl& z%1G;*ARX5x<%d`t@Gh&_Ul9f?<$mbSKGgI#{E>n{(iuUQMBS0bUKk*RV;WE+SOu+Q zGLY9>DeqM7qi1Ath@ELh6y-HcPQ_=UggOcsRpmD7ZH<4Evr;@sVDiT~Y2rZd>>&Pcj{Ea)&4$dh|bEAgL%xazRJSqc9KnKY#JKAMPx1jxz1Nl|6) zcM7*;Iq3-Wd%#2z+?-+%IRPIvZ<7(f3?_2dnM;AG=Xse!%(s0V59f#^Doe6I zTq6kH72a;7bf><$Z`E!Q4MWmHRrQvutVgv@99KHIWH0b4wLKnnc+OKQ(<83?+QVD( ztt$B=;@s9BMeuJQwu_RfbPR?zvz@&lFED-Qn*GSOD9@CNCN7{sRjF{2po+{(sq?r87gx1z3qEl<^-tW?kICiGxi=^m$ z*unkvg=dW4*LbZ`Tf&Z7c8eW#LG5+MbqS6{5L@Tsdv=7tns0e?{#AzJU%!4U>`YR| zu2mdZo<}oj#7s-RF1;gA$HfN=f3-U(szSlPXDcqWFlw|#nbLAE6u)}^-YsahgEnFk z5%$M2tJ#*Mp&d<$!Ctehngdiz=8_m1?m&E zW8N>p7)E?BY*F`JtbGawhg}i4(mdKm8G~15;g9EHY);s#qCj9Pxrr@c5AE(SpZQj5xbvuFfKnp$qFC??biXGp?p<1&s$Sa%tfzMN~Ls##@sOo zCoZ81#8LEpLSL*-2&qXE(!L~e5Jm5P?Q7_I3SlK2DSuS|D6@CfV(R!N>$X;XPjuc! zQwIf6(un5UZ>Yw^$6WE-+UUuI5D$h4hg5JQc>Wiae^qmEdSD3 zv%_ZkW(OrT*Pea*h5pXNP%)+ue=&FdMD`y4i=sxTE|tr5dfJ$vX6csxIM<1nVbjbT z^MUE1jP^0h-%r0RuSaZeOET|CNG{u*@yf?&i;PWWc7j&-pp_1^e zKjzou*;X-2&|AU5R6Q?J6wn>K`48&7wI#Xo4Zb#b>t2Xr8VFBJVu}{Y;IFze>O+D2 zn!~==%@ax_BT@=bUs`4E%59CW&sL1R$ScgK&6t=?1>8S?i_l}mM&D3LKY{42REe)Q zhc}JeC~l3TGiUCp14}V83cT*g6Jq&0@d3e@V#f7PHRP?N{w>xBG<=U4igriBaq5JM z<)tsH0Rdca$O`KF26%GuazYeXI4Ukqtc@z2ED*LnOMFy-E#@>#<^ZP5R8Bl2M%BI? zl025+jDh@B`F#M>zjw9mM(Fd+TO>XMzt_bnKhDGOU@^;T<2HQpWAAGCiLe~g&ey0d zfT|zC`)?KWAoOxMJ=ka;*K5v!V++SCqt~n*A{CRs?=+;#_B3$(j)eKhBE8wueI0S? z7DYgy0#It6D1gP<{ou}l9NuxLTv-vh{`HRrf6Ngcg*=HjS$h; zEc~cGxa#+`+$nkW%@U|`1<8sn5l+sCeUnND)+TM3Rzh$3Ass}u&wPZV@L#|{7cLU}Oi=pf4}*B{ zzaxlUEEj?V_G}TYhKDT)&1hfQ9Z8{>f!wMC<2|+A;znFWPuyD^z^RAfj;+Rl@?%{{ zc`W^e4q{YO_lL$*>Xz!GI*2aJM8HhQ?^;fcw-r=@`o`-3f$*(4w>HEUlNm7o_NvHD zZu3wrsIn@rqiPQN<2d$Yfeh49#BlP!Z~#zgB#c5CNqVDJfa`;-0#ca$mxVD(Z27Eg zEQxV(1`p+MJ)7oqWrKx!cB7#w1A&=-n>APv*MAx%8Wd{2tLIp%BR%k1QF7LOQ>JhgpcN7 zqPkOGaFHXXyu6JC*uWDxmcAn7q|jJ4SrM6k_&`5Oc(i85yQ+wJ>Y|@#E2AG;h%~>6_2}| z&I1GzE}j1`{OsKaQrRoblJK!?f??9sce~r#jHLpal>yap4+jp=M2H!C6qyb$*_cCh zvk8|Zx;#GK;U5S0ZTH0Z5*BvB-C=VnKa zQy`EW_v^f9rE4~~jbCjg#2(_lkJMG}?IOA2Ci}ocXYYz1h{2fn4=(Ao$AhX2GWtxU z@LuBwiOdC(yW45AIaHI>d0~k30)MVfw5BK;qfsYAZQ_1391Hmv#gXvL&^DybYOT;$ z0Zq4U*}=K(twZcTK{Hd?jL(3rCdESdX0-_%K`WwlHG`Hyn_=zqg$7asojq7jK%MacUw7g>@}&e|QHtV$PzzJPsUVyp8OceHY8>n7SfT*ki8cg>r`&9A8? z#iua4Yt;S9Ny7qYnK81N{^wnWY@ISHl#`68>N$V;V-I8DayZ+KL05rQZdCHv#=%iw zDO=;0n|ETFem9q~F<~K?=YLt%b#YadPlB}DHUcTscJ2Txmzd^$G7p@}QuOgO!Cb-D z7TMSH3b40Ueu4RM@xQ~KMSojd_yRMci%#RMb}HJv{zIT~IRR#&K1b6%&hPE6w3ZlI zd(sz~v$;Lnl`7vZ#tSf(R@TiPAnl=zG~3&8BImP2C1?du0c# zrY^m+;<{EkkE`|-fiJBr()7b#v(NJ!?~5%>fSae8DY8bc_{?s2dB%WV2#Pp-AAs_`<3iI@+^Xfz_(4pmZT7M>DfnAnD=jY%OPNwq09 zwZyv;@_~QzQ?0={$vywQF8PUIZYx{a=T1onqW{6AQSr5QW7@Yb&L>3o!=&k_J(YHu z1f*>jhlpj6u_xcN8~eoOm#%(Ku$IwXs;!r|wY4`Oz=oF6%HkMkEo%@*{PfaMRWaQh zoMelV!M)+=LGGGgoGSz&zFhx(2`~8%mZB`hiSNH94Kk5Mm$E9uY7I?Y49g3GQ~3+A zrZ45^*;Ir#e4q-t%vFonEB+V3vwn;9s@oZ>r4N<@4OrKt&n|P)_RyS1sGEnb6!xRS z5`JXTX}h;>%+qzsABcL30iA29oCib!fQI<>PS^Nhc(2L-y>@q>#5Fn3GU+s@qu^yDsAyKqnlWZ;K-~X1b#+&r^OR$Y_;T{k@+P*`X7IHYZfJlvSFyea zfcNz)HI!{~N=KfhtmVDxu~R#Dp;1bOBT6#lAtX76#+*ey@RqJ#TBV-Ml zG%-+ih!~1qCC>6pzfLk@c}rh|{~&ju;xdM|Qk+=Jx`Y_P1p{O95Z$YkUl!a_!lP?{ z@V5j!7sQKbN7=`WE{1M)8p~&ja12Nb{24&eMuMEcHBLdnA$gd2B5ZoIGE=kTUsUEV z{yd$LQf)*96@xi3I8cJi@7c-{Z|yJs|7MlF0ZtZX!~g)gr2ikQWc>-VY_#+=^*>X&+xuGw94tIU%-rPs z1RW(kMV+EY4Ok`bW>0$)-D?8fMSN;>T@rT`T|A*N0 zCwhI?tp*^&a6UH%d<3Y}U#FcqsPOC$%C=}cRXW_jGj?~W%?B9*7cRGCg<@{uGSM1Y z35m5SdcC&K9a>`~}YB zdZhB=HdW~oTTm}j<=~NwCVHLSy?~?J!G{45N`&p!0`b9{R7<9{s*{h-Tr+*Qn=aIV z?T5i=#Iwe`U@M(uDq}Z#NnZLUoOCw>=&&8B?3&Dj1*c=3+GV-Lg76*7G&;ir)(NQ5 z$AS(Q8kY>(vF{E?WeYnADt`@voj30=CNoK8B#nPK4qLx!;7V$OB(4?8ST;|UzQGJ* z(41UoA!(s_E4{}j*qaydt5!2piq04vE4rKWff;18E?S*Wx(K={PoM98`0AMq zQ!rwE4y8PdhNM*ueBVOjNV6y~Y?{JbQkqfGMM!#)e^dW4JP5KIZ>I!SU(s0v@S~cQ zvt;M<6hqCa`?d&z#2ymV*%YU_ohUR{%$aub{EM|SvmSE7QCA1cah@vw3WEoIYFNchNN$ z&=TCs{ub3DaK;`Gz2gGiS@wP>oe>pF z{VAJ22(d!+C(vgXa+v*6 zIol@`)(1og<}fhO-33#1!l05$XTl~)_1X?34zsxs{CzY6Lx6pZAA9gw$u_p)<8ixe(%h7P@QLGsq?>m{5WgZ~!D8d#(dTCsLJ>pT_ zWL$v{UC(2;q%YnH8VvUj^Qa`wnCw=`j8 z=UJ-;kbBhnb@myxiT8v0?&wTTu_4x>o18J^uCJ1hl3TRVF{yXeH7&589d__5D+(GD z-~7!8O2%RGy$a@&S3T#XbC(N(ga3$&*dgSji8dgWe~dao1K8boXIS+G^zzYRya{S^ z7f90$+Q#7{`bz~clw4fEP2~tNgNZ}a(>3CLXXih!&jxeXpV5}b%9SugKqGQab4>Jo_v69{M@n>7h zs$jAKGmn?WssgE3cN7;fU(q@A+$RQNk6&B~|9v5qlti@A{qWH&@DVL+B9=wy;SEpI z9^T(j;(+K>VmNADLMypOvw~{luLEWC06W&e^CKwGgHfJDAvn;f|Fh!i*O|>%i^qC@ zG*oRg+YoK}RuJbQmg1~=Nal_bV>$XDQ*}!|_!Wr3smp*FVQD*ReT_&AFO&hqk~XBd zcUQ6KDW1cNBy}AJjJ^ODcQE-%%5Ne%#75aP$o!&C|5N^v06v~rG9wh6h^v5SNA1P< zX%e5tofyT0$*x!DuMi^%>#A^@lATtqzH&BALNMZvjCd3xRfn!ZH5q zwYy}^Voups+QGc@@w>zg4O@?N<_E&#QLzLF`bm=KUjIb zOf5EJ7V=BoT^{WkVn+GsjyLIvL$a0NK3`|5F9Udzdsl+G`^dAcYml!ZjNLOxA5LGO z3a6J6@lWRgsPZn($lkD5X#qS<6Fj6vBlm-oRxFOxnamG|R#vNZ@(-;yqEbiTLO!4* z3UvZjxueDjoD}5`POZQu?6YJp$u4qXIK3J5L4!{Jjg^_10WWBW&NEz@^mX$8jmfey zSzae#rXapvks9|=(ss_$UwvFaQqxquAmSC3io=nggN~Eib0O{VDxenqU9;g+gL&6Z zG`kafSsF-1imJ1Av2FiYvg;x zg>6{W*^-M;!pwZfRO@bbu#027-B%{XMXo4ueEWCpb#d-j_O?>HVGIUeeI)n%j1r1uJt!-@fDs6Mmgj-!r1Adh#v=TyCPIO>&Mo4e8 z5qwweSEOdbQ7;6HpvX8sF%Elre<@}b{j2s4z3z!yPUP*0O!JtE&XDxSoJ9q{`@i80 z{<4;;w&#mBHdEbdYQ)M-?-8`fVVUVVfeB#mFv{*RN__>V4!FgN(c3qY@Wn9L1)cfn zlCw>8zolD??u7Z){`fA2v zh1fPds4VxMTNk-Fovm5p=}X+Ck8VEhM1#x$0d?LXyOLp2+vWSG3T*@1Vq5FP@&_g5 z6e^xMN?k0cO3o6aJ=qIFM{@#uBV>;(oi_*)w|H@LTK{(+QEN5Pnuv{@zv`mwd3iI# zws}SGYIWfyhgd)^L4)e6Kc6e(SlPaK?`Cr2M8k% z5UjBSk&8Wk4IM*~rB@M)OMkn)LS3;JPj@i;9$~)BJaM5=4@1E0KZ9*bDZi35(CgUm z{tdk(zW7hkyyf$3p_{duUkI1$E)`X3)-gVyxihQSyyzayL}Cvw_SqKCV4a0`x>1qi zQ0#5@GvG@{0Q(W$$*bG>p3|6KvVPBj!XK-4kKvh=T41CKG>M3@d$T7<5POs~_}>Z7 z+D(f`s=AfiaA{4cN415JL;MxDE5h>FPpUG7=3OU;k8@v3FJgvM!`H(h=I6Sp;m$7- zZSu*;CTSgxBE(%PM!plrptJBOQpQ`IfmHnJ9+m2%54s&`8Z+UE)vNqQbDlQ#)H=&` zSs~3BS#d?>XmKoms9lJ#X?pu+w? zV6v?h@%(cx(|+1fbmk+9;ca96OA=n< z4TN=RtEv8c;Mn&e4f=65&qXTIfQToivA;=c)9w_)!;scE+-y7Y2Rw9DqD+dzq7Jbe z=Lh|PUpYOXmZ!r*Y&GuvPZz@|+B*o#Mo=d6cIECa@w%j;OL{$QsGc6(l~$>X5_u)LGa;{^wVTfY!^AqM_VB^C|nJSXj8ynU<0$4 zENOM~4o`O7&F~+I$E;ZM-UK?T)u$}5YbG_{LA|!|DTvJBgR3bB*}&fy zJcjv?<7r-5p7CVF9u^CBudro~+%e3pa~ih%Z}P z>}KW4nW&!=2UQ4>u_gbl`$on%jG(cGQZToY%g*F(`=RPauT1d)Kc)0oRMqJ5^D-`O7oY;pjsff#-WH%?$ccp`83N1V|-Md`&ZuD@4h!pyX&lPZN*5&{8-21!y&xaK$Ow+; z*~iMm-@@DygWZ*~W|bK%b=(Td?FQsBGN$*u3vdzF08bIEr~d&7@B!iK1lUwL3#J{3exF*J`C zNK)0vw=h;dq|r<3iEYQ}b}x=ysdp_`pc3Y)dV1>LGOP&{>dG3O0W|3_NPcDSE_Fm* zL_}S$hy$4S36UwVPL6vbiSSmk=zPR;kLbZ>`JZ2`(npZ-$so~|gz;qee3%KYme=+% z4s>!dHf(Agi;;YH$&S=08FJ8K>5iC=a!-lms+$&%dX5VOMRNSe)bKg(Wzg`kz0|2q zc9=z~#oU9wUuqlAz@_@*0d{nro#zEYEO8X@LKp}uYTG^&jSB?<7EqRb2%+}4g@1I# zZVjz!U~kAN;}^;7T4b*psZctmDZZHvR8@E)E1~`4qFqZx6SrbrgR@N{Cw%syF5lLw zuYLSHE{mrSM6&9`X2-0JYX-QT>I@%(P+At6W8lsQgiETcg)l0Li&?uG9-yd3_}LbX z#N$?+jm2^Y8mL4A4XDHmy{aErH&+h47!i$$^?8H?o~HYXNVyl?l%LXbB@hYq=(rNxpy0v1So*5yz%xp8*hR+ zdkHrF7;!y;kH$JvlIgD4LnC5klRcUO_Nf9}MI~8A;964DW_xi{SAm)(QxT4^|e zO-~T5_FQYxGko2?I?Wggza#956VE)jX=M&i1YWwt})T#EilXTx8N5_S~pqFidlF-CUI$h z%N`O_37vI^0c30oeeV^)`0Gj6b_HGSpoTt=W}YG~U}`=yz>Y_;CL(W74}luiUYM-Q zEg~+JRDSmFmTmf>IM>@W`RgRTiZ^Rw_vk7(D?^=_ z*2U_XSn>ubNpRZ8WhS{%gC0a!N<4S*-02hTn#6*Lz?qa7$b(OB@x|ehk(<^e>G~J9 zGOqRZ&J49-rpaEaQMcJ>OQGDJ`y`me-%#B#g{`8vgN;lsXfr-qJddg5<52^ji^O#r zE%UE1Yf0_{*rZc;L&Pi62ae#}OCKEQBl}oCX0Z_W!aSzIXpjUa?QlDNR#onS-?{Mk zPKx=sfp2SW{fJoMiyc$P|y^IkAK>h%H{0_lbMZV!^}BcVZxbQ>d?%0 zpxjFVV(g}@ZAjGsIn%WIg`a8h@%&Z8@BPahp@jfmhyl|Ldfns?!ptdp9*KR3^NJH4 z6neDlg=yak04pOS3yR5PIV3h9h?f)s)uB<*r9RIsfqUatUO-q(d`CJ1z|xOYH40Zj z-F#TNJxm6%(d}CKVX;4WuZ*f9yLvD$2;So8W!YlbCI9Y$Cqx7$`si!@0a11-AlO0Z zabChh4K@4b;N=Fe)iYB++sN>3wuXAUla=@CR6^h?EWjg!!KSD-_a;*zmxKus*f z!DSJ;0DnUs|MH9g_fkz$LcN1@NWVT45hdllZ>d+H{a3nb>K%sA`D&cTU^!hBEx`0r zr4CRGXv%x9a%Yn@k#D@|CAL{6O2ba;6$h0m88_Zr>Dv+q9oPp#Mg3YrTbAWDkqK?^ zkg59e^Nto1t$xmv0MAAw?a;NPw`q;f(KNh?DFC_yJ-Eo$CMZN0F zmV8BYqZ!K$md=LaDa7i7os5B~YfPrQ;xW2^d^&T@n3Ij{#5-@JGrJwP=%;T5lKCK4 z8?7kf#B7HEbU*+22<1i~Qf|pI(`B?mL;CXiv>%gmB0}7^N6PNX2`@%hOgt5UJo0 zd2iP=hqX}*WiOFg>UDKlo$;P-4rd0=m&`f6Z|y4qEc8#3c+SE@d130w=_>mkNSYUa z&XQ0$kw%$1IN==wUsK!39Ub=vjUImLE6w6|ZNdRiosOK?9C#qlmk&E@CgnX353t^D zBg5n~vFV?+bBcD3rz^@EJXUwY#Wo_nO-}@#!R&kp^6Q!%`JuAl`lxPIdtP{ zD-+|v=Wk?iyu*qM;y7ojeIl`@gn3h~k(Ejh4yb1hZH->G>3d?H*R5r$QgRt(h6 z)o6>;(ZTb&8iT;_HJsjr-g_>BaOZkI-q~=+iI265Iu2qSjS?mP_HI2!_ z5*UE=e4wKk-inPY8h%Jx4Za=P;EJ=2D^cwka{Jgke z{$pkT#XV$P6Jefls5bO3K}Kdiu6#>F#Hu$5CpWzvV>rmFcAHme$0BBJ9H2a+_GnPX z)eCUuK9zJhkBw!fXK$lDxF^lcQ*G^$HEW-1rF_(S*aWmi%#UM~BQFZ7=c=<_yXhNp zdp5^BST~0KWu*jn>m2vfWV7 zi{1h)gPiWW?>}8PVSF-Tmq+N0q4ACOeFSC!y$Jd=XIeMHS%gQY0bS9fMi)v29ULiO zvMZnP{jX~)V84u;4@EL)X8pJuCY+ew)&hhKZ1(2RTlB9-cLCS6J{4v_*-ieu{P zS(S3WE}l!McK&wA!crmwXC*$vOT-4Ym8+t=c^iCV!EVQL$mX-(z2DL3kkQL?R(h#r z<4I@FmT(=O2S`WA2WRj&*K*Oau$5()>#&L}*U#7}5+o`LN$yzY_F6n}-D}xmgoXBU z+Y>3pyH|6p!3mXKYCw`zFtrfVz=d@~y-SC2aI9nLRgliDBl9*V^$OcFT}51-UFfvz z>KeIz!Bq~vGYa<*Q!{47k+5k^2@cKmnOr266AGYY#6qlsN@%%ah06=qhVTfjW84T@x^WKMqwggW9X7?AiKNbpK1Di zSPe2X&JzqX!o(FsjcSI$RR*K-BfKbNh|D>V1bpOa)zW51CgC2Y*L=3qidIphmk#j= zEz9EV80J+ivo@kL%zGWP{mN#Gb92&Ihf~9v^p%{ls;5@|QMS97PyUuT18t0b4X%X959@B&{NV^xmJJQ3~4XYHH3B^ zTPrM2XX(*Up3IT0rRLjckj-I~O;+)1-v*l?L!keiY~#1Bxu~T?pSB3P)oFab!92(p z(~Wl>)_$hzc3IN3fHdWrc#*Ccc1(3OE`d-=7^xSXo4v8u*ncRL=koTKsJ5u19}8ID ztt;>ntKTg#0^^dxA>-Fj$oHjoj}<+*DQ_t6SXf~@Oc~|Zey*;JP_pRKrQqPdhH!R2Q zt3}+bPDW|@Y!sKy7|%5vom@n9!hwurxDmzqPk8hPJ2C_E$4YkfLB_)Y-+e|46kkpxUmYxI4zB@X`5QElIEAu zT?PhOU^5Qi2FBc+1yD=kzU`yg$2HDV5C8egKp0L=wgn=6>-yAJaSSSfHQh*< z-G>SyH-p?yr}O%VE@YV7@fQ&q%L`X<3!4u!G3E(zBc*aR-q6!18D?x!AIH%vHeJp# z{A$jO#{gL|uZ^D;I3@aV=jB}4FY}xMo98-)n$&K^`4-8w@Sz1OrloNC*FwI2b@Umu z8@+z#lja88a<=_KS%UD=w?Abd%R{;gqdMwcmNZxoI%D^|nnh?Jx zld{oY=i7FVU^OnvlwFddW*Iyhs;Bl2796Y+d>cg?_|6(6`Gj7mUtvxp$*d{=yxI_W zNAsyC;8l_SVA1wKlxS8~A!`Yb{Wq%NZ7uLeAPPGFyMr9@qSj02G?YXnx<6%G`A(v) zpIw8^oc!pf#=N-6uF&88yTh>4@h@6KW2hRtuv|#!xvWzW`2bm>%vn!rbwhIjP# zYzoX@ZKn&(Cj%YD6Auv8eos$EIkqDxobpU;M4Z#g0>?$s(j(+9Qc84zUrNns`BUj~ zH+eV_8mZ5@Y+SECED5V2s9_}@+#kcLdhI}XrX#)*9y9mj1N|^KByFff^!#TB>n9$E zUPh9R|NXO4V(_CTR4*!enOvm(Bd26=%WD0%1@lkdfcsk!`Y1y`gxyJ}a$<7kb1Ii| z+$$W(DgBuB0J8St=^@h>2)W2mzPePCwV`sb$ozOZ^1nOrFpLU{g@_I#*=g}f)<;7X zO>9nmLVDKu#48R!np5W)M_b1}WY(23wcx>0B>~!Tv;AEWlrW`b3#tMtJd>IfE}p%Q zq2{;QEU3;uhies8*WeUL^@so-iaaTfoRP)BKaV7mWO{kILWxDI%f2rb3{lDO{x%1v zBKB4i8KtS^d-qTynoyjKuq_mEWK)F-ZpG~o_#ELXW!od3Wt1K~`3J!Pk;%0s3?Hcw{G1|K;)yeL;IGET%omKPi zh5nZx0mikkC^^R}$n>(gk9^0KIhl^5m1KJceW z@$>!)KhiP(7DlE-!!Y09z{Qklb;U&8Dbf`~)FZ}X^#uYHRg%>OG(=QX08d2jON>Uy%b38VeDS_$0k=`qbt{VVogwWP23G5*q; zPEJSP>UMMWJ`KYEdfUnh{;V1D_|}(pu&u!Tu4fw8t)k)pC z?b#WIrFA94J|58Zyve;K^UL$=Ll6{X6eU$eHH8EK$_dJ82uXlcK!8Y9KtKck4j=Rv zq$naKDX5{SDer+pK|qpG1C5{rPytC10Zsi-Aqh=G{TC{Qd3tOJ-S+(#xPHiM4*jL6 zD7gZ`iW_*pbr~R8&mcZ>OrHRqy9y51c>6M|4G{X>08uP zljIW>78B5rB!u0x>KsEHKV9GBPkYGT`@ltf!~1d%U-|d$hN| z55NBb82Jbh84(G6lgp2f=kgSk6ciMgzQYR)3=R_YljoC=l@^nc6PB61^M{7Z10dNn zYp5u*pdbNIK|*0cP7Vm^EzwjtX!sWeLV%XP z3wsQ+bF*D5lX};g%g-@oO8&Mn;+1Ft?iUsCL`H}K#RG3+qd*$>3Mv#$a3ke^_q}7# zm7uUoUk`}@Cq5CnC| zHMjP_)~b#8s0*QEhJ?qo%A;~TspGMlewjNWnIuLH1rOEmJD3q{(3_i$1}YH#q8TN- zr`MsE0rcQ>yX#4V+WXHc4Fxkkn7BF5Ea|5#m$kKVYQ^XA&Zgd={6HQ)H8;xa+)EUF zHqm?U?tOx7k5hX&ZMle58uzuHx$Mtoi>S?H!Qb}Ihu8nARr8L^i6y z!nJXzE7jTY1t1A^{z}i&Mz@~A^1mUv>UYffoW@(hy#W_Wslxtx1VKar#Er})@Lb7h z8zT*jD`N6gM#H?TumU-}{b$;$gvISF9{WyF*W&vqL{Ua0F2ga+8m8XH8H%cjL(#|i zhKpsSOws7T53tUwk=G!Jy<0Pt@0T_iLoW5Z1A#*6RNiJ%O^ltvNWYIYiX;njK^K%-38VZL6o`P|0eN1#09+glbbe|26(mgMos;)+HYEr9_icIf3!{tO;D^ zSs~Gegbk@|I6zJPV+h5JL-sXXuhL^u5KQMnQ~d_Y2p=G7GS`fUl9Z;yJbz2)LD9{9 zJ$8BOEy6j^AMXnwtj15Px7k5%?~~^$>Y$Id4Ep1^j~5+$%%VGr#s;)NS`pIM|l?=`%bmjS9TgavxiSyDZaI zyF+h*nZ$DJ}4x?E?CGLTk{pZr6fG1b5Ix`P|Y9=ExJAPeQ#|8C=!L5A00C{8@Vw zH||C`WzpzMV`7yJ2aWaBpMC$d#-47vy|Y9=JzoJTvYlp@5Iw#YV+ovIln_SM9laeV zp0*o|fz3v+DDoE};hZcR%~^wp7WMO3g8+6p9#P6U(DX=nSbesN7LsbFI<2Cb0S`3< z|E{?^dE7{3YNmB44xe^(g@cGmt0==Ez2wKVXrX!GAi-MMa)Ax8DSekzNB$ItyfgJB ziZLJH$nsO}D3#grNja9bF|@l##pd5Z-uK$;?%f`Kw8lo_bT}hXMZ@bXXW2mQXYGLR z?I?G0xXQ3hS~wG`wx8k^_8Cs08&sYt(Ydz*$;15{PH~DRw*O7bCi!XStK6F{#K(qWX&H}t#VD*R4AU@_uvMrzWNd33KdnsWD zPv6a5HY+h>MliYbV79Mh`zBnKesd$Bxc9)D7gJ>w%feKt^V4JL-e& zKJPVS9x{cAS9oc}>X`!$$2&O0+1q_B!xhiatacpa@u2vNVd8j8Tp+FWBRRx=4qik7 zf1etIa3Xnf>k!>j_DG#((zvx}B~r$&sxhZ-5_xML^%Zj2t6g81Z1-Yn_Hw`lTS;^G zD!@p~Mi*N*BQ=FQvG^9S$KU?|H9*S0La;=gJNrv;J^+e3w0o}XVH)!#iKNQ$5SPZT zPJV)R!s-!Jl^a~6^LNdr?@AZyS({qe$G$NZQhp^}&_`jcneh8KN&-%Q`(CWPU(pG4 zB;u$UuyLx0t|gOXslmzjY%`hX675^j2z)QseGrK>tK^{;@n}9WC%)gfiw=!T=-zR)MLJ8di5dotw&GnTQHvN zPK{l+gy>*W7soy}cdz~V9_+%!uAB^F(PD5Wk>G?UqqfTnd+w9d2BkoI=Ui%(!%#iK zQhuul*HPUxg>Muaoz3i4t4k^kJ0s8q$xQ7tBa)D=H7L@Z?u#}p1Fs$cq%F{r_FM5o z!?#-8#$D{*?*tSQ@zc48QX&=?foAE*RmwibkpUSg3J$CalMgH1Lv%~W(u3)SFF_xZE=%DQO}p2KB2d~g0m%5@QTUM#PBGJ z_~7qkLd$l@CydJ~F6}BBx?hi!<`&|xrF*H+N^l0{BQbhVXR-3Kd9d2WR}Eb{SzC6R znXC@faL`$yYWqG*nW=_}_hOqiiV}O7XB3d3XQIay9xWd`0_N>wXT-~#$XsigHCgz; z@tiDltq4{337X{{X0lqn@rBE?0e!DH6Q9mK&MyU(=Ff~%%|e`>LfEs(4~xRvvh3SI zT+~xC%TRqg!BJ*78H}uwClf?roSdqZII03>Ea(MbwgKNI-&(i9{zx4Z_dIU4PkkN$ zE0dRQcUXFs1NR!C!l9TEwJ1f#-*4mOAff%~@(cgSS9_+8WamS_7uo%15{uzsebxEi zj^UmKh@T@VxXZo6t|w$(kpYfUHr5{NPEytDn_6Fvx}}Q>uk3!p@Qjz+E#BA_NPtH< zvZ11q4wD)lAI;Sfi&3bmSw;Q|Q3W!dUTJd%@OUh!zX~5SkD^8hLyc0|Vj`3H6VQfn z_6YA)%fjxSk!{PI_jEv}QkqW6^K7Y8)+@f@R#ShB#KS#4yHQ6N?R0b0!!s+N8Bh34 zj5k@8#9|qy3CEdcDN=cxk%+Q~D0;%^L0*5q)Hzv~>7(sQkaBHG$nCjBApTSL;au8gF@HHyUOp8>Alh57EhX6el}8 z+GXoODdh9CCc`FEkK=Lr-IO#{5qs`c58K{*-yaPe;b*=>%bKM2N1Oa}NeMWTpFe;S z<1z0IJ<^V6Q)MK*(10hN!`AE`ZUgB}$tgyK>2X`6)Kd5flQ&B{%ZqJD{)@E}!f-r# za%1&(iqIj~pgmYya&oI(#@yDEJ+RZ$G?iFJf^*J0!kx%g6DkUgX761e<)k4OrgXP! zqXO>d2Sh54Z{*VD>;JTwY>c}1uuJgOsnw6Sc{uZE)90Ukeb-y?N6HJq6mx1$**P;C z?sJ)F_M@M{p|jgVPF|{-GIi`ZfCAE6JKDL=z1_d4p77Cxbyh=)Uh1{Npji3Bb)P3t zn6mQ>#4?mNWhJ>)3GxAjNd=~f9;i+i)r1m9xdzNO`S>r{y&4h;XEt%Hd5x(+j_RpL zxoX?CgD?ZeN72?Sllurxnd8<(LzrB;>uMz3JA?{u?l9lHFyzW;OC^=_+4bX+grHU} zI^~+F(RMJr_B}kM#y=6dbW8eJYP?g|7p)U#uu@AySwlIl$pR;BPWw|4G~sigz3xTy zO4^y~(5!%vuF>G~jwB%1_|j!Oq(>V* zYopzk!0kT-Ii4Cg(0Qg`!)MPh^yl)IIF?PEVBg-1seNul;bhp$e zT_VaaT=WO?ncup-v9Zd2NWq*p!oa@o)jX6UZ!-Q|dZrd!XcAYGCQ#8Irs|mNC}Fv7 zx8&Yo#rm_T>HV;?)=vqo=f68}J0wK6k)t}Rr^?qM)q%>peOBdmKN|dZ{l+`EgPkvS z{J@$m>_SSqf~-O%Nt-noYFj-j>nagr^a2DXwZd6tO%8ZMYia)CXxyzN#Z2KXp z6z%|+36G*>S(*GWnnqe`XVQz z4o8=@QxLqzSU~-&_LC}gRfSRVuaLs7G~dIbP=UBRjc&boQll)KVi^7zI;*r+@1QuC zbHH0hhDa;f62tWmGux=T6V%wQmS+hnIIV}1SQbVC*qP2nrJsSJ^tQnvdD#0`pMiPC zP7oPR((!<|`jj&5Fuw`5ErVZ2AX3@>Kf0_x#@#cdVc)#uFzZ!292|duxIrwYE5cc7 zN2#@A!H&r;;PJ=-rM9M*|S$cQrI>=G7lKQ3 zDD%Lmg)RQI{p9?(7WaBoe(x#uF{<08AqYi2Y}1vr5rri(D(0g z&B^AiS?^@un**-)&`O=X*>rH8w(YakABez5!mYkDZ`onF8nPfLaYDhJ2HNSf6x0XUmCO|7hM^}Gv!|}HFzAFKw6pg|SH6Kn ze@ej#zm(_0`$VjIG)~>%19nB`!#(atC%Hs$f5Ro>UOSAK*Uz?sAG+tM9sD)Cy zS1)$OOKP3bTtBhHl%J`yy$#@hP51!d3Mx51EQ%PCjtaV6>LE+Phq{rP#HrPYr{8?q zbF|FfOI%DNnQmLkT+U&g^3URX;@mdx*k8L$}*7v_?z&BkSWepEZ8ay(mk|D_W< zI(5=>EQvIuW&2XK!!sjQlRJjQzbNvhI>oT#6^t(6XWRG$Ph)Pk>@(JEj({G@9X7i_ z!4hB$MhwQtCK&zCUYKiis%~{UeEWW0xo{hGdeW99yLs%hXq;>c3^YvQ+!>UNdDWMuiJmM-m0W|0!%C#4Huh_2exmRSfo+WFGbFKW$5POhO=C+`c zodZ60LP0OX{RQ#r`4m~X#^ks^whPc~FGl(#700}RZeu{gD22nOq;g4Y%!hHGn-$4T zYs_T?3&8!&%PA9(J_6JJtk~%GB;~d#sL1VbR(@EKEg5bs+DHMaG$l6>K7p09OB+H# zm^%eg;Z?u0za1_ObNk~GV9H0Gs6)g@Bl}54aet9Ur`yvoBx|AhO1~fe@lv=B>}=fn zLDMA9Z$_S$w5yt*B@6CeETCcH3BOm zab>b)6iUYPN$;oX=I-jr+40ZukfrafnBF6%n!*R|?HWcb>Y0VN%kkI`CP|>MAhlpa8eV5mkbB)PBEX|nCM4NWSTFQ9OoR2KRPN-PDvmO@ut*2JQ?suG3-UokgP`4 z&T=>pi!cZ@Bo(FT_x9kX7=l;{%j6KvTI-!3xZxT-wKZ;={MXXGAoWSJfPhi5NQR4o!ZU;pV0{ zzg;FDXJ}?6;G}W6z(yz2CWjnTUVXQ32cgC5Z2p1zv>Mfon48BC0ndi9H-0=VjS93|&6)mWyH4uyRppj=BO0h>@#U=5BiA+V@?&*U z<2;vX-UJRtCA#D2XWfbF$<1i1t~;?GMSbwqq+ROEk7*pmg(9iox-GRFek{MWV6Yt8 z8NviCT~81@rmV^CjLX5}+mOZmB9-H~v-tU*YB|69W?5L5{{)ZJYlF6so4CLC)|A`GbErp}#xNfd1e>YSKML z)Hp`9@MUon7D{XC+wv5dX8b{-VmGwqcRepus86gG_G&3voA?Og$zt(Rx>Cd#y$*}& zVS9em9Rk|BW51ZQnvJWM3hfiYq$6iXA1-gYRlYv}QV@!HNQvSv#-H@Ey2Wa$)Y$UW za^7f)kyz(xd`o+Z5&dD+?GGrd81ahb&*Je>Xwpr^&&S;fW4-UPDL6kAWzOXF13>@% zBtw7Ep}Zq`$Dgg_)%U0N2$6r3eSDs`L@n0W`;>^FWV-EM@ldB;aBiLyYI35gHrN0% z9b@g4cAwkjppCVY#*ht>OJ7u$_+}QgU_B!6TuJ=LiEX7nUnX^G>Sh;Iz`Pr)eFg(a z?z4LU5BFvuu0M0WKf|}EM$yrR2sGDy{hNr%B_@h0Eu>n)nO#BN^5Air>Ie~RnwvdVX0@u`k5^2I!6AlWR_ z>csNUXiB&!yr|Yp%!SW*c9b8SL;1ocz0WElIA(pHd?H@oNyE_e6JYXq1PQ0=x>4mgVN^2HnqoTtpJ3=DK{}8&;ZgRnM9PL7559eovSB zR;9TavQQXlfN$S@!W$2*KF5rcqiwG@ii!90q!8rxmAWid&-A$t>798K$_@vrhYll~ z69k**<4mb=`K&aV+d~H-x!;sizrKeaC^S|@^p*3VUF+Z%4&ncLZu~5oC89p2s;Ns& zQ-O!$i4YfQm#KArrA$CDldlCix2#SmMeV2g^%kii z+d?=^nL`~lA>ymXgg@i~K$ySJ$EVx7p&maf59@JcY%`we%J8P3#-UI`F%=zdBP~g; z?Y$RedJp@0O+$(6H^9oTNsoK^%xux;o5*085yHbty<4fRd;sXNom2DnDa5`}H>Tb! zs>cW1bV3GyIWi_5!^M2&v|3NMy50K8k&Dl7&mY;UL~Ia1fxKv}cUHG_P^zWH-e)1< zfAs*+LbeGYTQ>Ot+_-TYWp;cHmGos z>XXkMjE5CvYRgU9gg=#GGkxSm+_*|fe8w#sM=*YV~-0KFa z1Jg6IV#-BNGW#KQ@_a%VD^gv$AM}jZpqhJfR8+x_=mCIUeIWjBflt8pP|@mGYGbj> z*(r~UA1-kD%dPU#j8q}=dXLu62!EAc<`h)M<1Z}}ppwma%0J_z8)fbMO2Y$_` z1A2k4aTq6Gjy3TiT}Q#0VOw%$pFa^i07!bnyBM~6U-9g7?}5Y3Y=DR0)*|KREo=D-fx?3FO?t03py-$?ei zioGUO7}P_fSRFWxA;B3(#cRB)kKv=JxB;oSdvQjRM?txl&$uNKzn&yk%EZI-`hE45 zDZ9se2!?7k%Ey|@ub!tH#pD%LA>@iosoj@vzu5cL;XM;M$_WqeJ$$vH6Rl(QR`2R( zl6B9P&`LdsJ=JaDg-jHi@e5;$jf)7i@#ivwswwJ&5mQ;Kj@4_%n3`O%V@kHE_M^R^ z!RlA*tf}J)=F_8iF&}kuq}>`TtPMJ3ODt?)*R)`86)18$>r!D5$(?|!>M*y!%-JpL zBQu0AM&o@D!X%cm?YhGOB!GU{?$Q|dWF;i8g$w7q5?PTH^znu#k2T1uLR=9;L&lCx z;v=xTqZg;mf+`DQPznzJN(&jur0Q#56wh7C)m(i2AuUiK|8gbd`FA!uPyGoWaS9`7 zcUK_h)?;PYO!lZK||1$kXW%UMA? z+w@@9I`n=0MPI;ozU(X6Wb`o-2jm`QW_$K|5}YMb#*yM;fp1-BRKzTENPVzgQ|qt} zTeY_zk{NTj+Cg|)YNg1M^j6X+^bZ<6IG^p6$6jXy1iVpXQ5Z}AfHkySi|}(oAGuU zs9t7BI6aH&HWoCsO(y=0AJ_G6HYZ}k`K>RxLu{ln2MU??}V=0_avWf8qw_&pcHle5ATj+0i@cW0tztg zP;RwObr{D)`G~UP<`H#gMP?*m)BJ=)^rWivs`myo{0PnXb4pK%=hfd1G(l;xh9Wc z7pf$Jc%D4~Ec~WTeq)Bo(Vb3_pEXH*+B)1$%uM8_d=l#&of0FqBmdnE%j4>OB3wkh z7_QKyS2$S(#kelc`zZvTyNTfQ=(v~Kmq;E6GL}TlzqE9B!+1KRh^InDkZqNhjy<}k0Qo&?umnhZidLn2;Cc9{CU>=G~nOP=b6`Q7VSUQ_f&jT-$}NckuaO532r?Axo;q} zio)?4CLJchgltt~jaVwWiWOjcR>0xudH@9b7Zy-9oWb8>BTzQ zkGxg!VL>uu+TFf!e45Uen9NQu@EtF}kdKy?z6j#8+eWX%Mcj3w07C;yq2-~;J5s=R zxHjuvy%ASVGgZqHi|rU-QF#DxMM^;pU{^PZXp(3^wDmAPRrQG2vc%nlQ#&ftv1-Dv zv}i%wyX;WOWW|Q3b@LxIh7R3Vs*TwT2lJl{i_bNQj^Rk5oFa6JgozEh2%1wr687X; zQBf#4E=jw=_CL`jSG5(RV()v=f}!n4+On=m8lR0yE&a8mqrrN;>!Dj-_*5VgD$R-* zJ{BgHWV*J^P_0&kpR2r-#Yl0t-#{19yG)+OdpXYZ*>6RElYUg|_?bI{)6IpzLaFm( z^_5MCW$$nLP0!@Xfvj8aRrxs~)@kk-O0EDbW0f1p>PXwi*j4oPWer4x@d0pPEFh3< zcW)t}>$~c1BuT`xQEP;g0kbI`)MFXv&{ar-sZcGU4g^PQp=kfoOl{6ACFK-QU43m7 ztzT0PDhCl+qTdjLv&2FE_R@BVnq2`$WDp%KtP~xxQ&nlLF%H8=ooT8G`j>uPAUJe{ zG}ds0EvHArDXlmt4B5ueSe5-hrj_s6wyyiG%3p?4@fs)1iO^lbY%RZOB~QRS_Iy_% z?}j7dJ8b$KoOXvzdi0LWhG+$+?HD`R!RfOtFbkVo1Wvb zn0s&4;xS~Lz}?6bDtVzqwCAy3i&F>e9L}%`iW&stX(h;>c;bnwaW#)5pmhggE-{Q3 zZG^xNyZyU&nw@tKY`~=n$7S~Bgx7$kTX^z%+9Wb3qBE!_SPT*T?E58ybKm(iz9VB# zNFwgvYPiZMIVR12-7e9e-)KGOjTi`U*GVKt0{_Ew<=zp0M)I^>__{u@(IVQnt&f+s z*UG}JH)7SdV%BtJJ*Jv_ri8e;u7cjoBEh4cS;cPF1Jm?~&}k1;RAskx0JD`EQ%2q?19kp;6=d>RTIQGUd7-Nk6I@ z<1`jp_2!G|MoV4AeldFhjQ(MDwR_BIMS7;1$*)y6PkbH#v%w+11G~;&uextJO2938 z__AmGoHon9?C$?8X|#V9^Qn^0?R|InN32wm;$zs7YlUBWQO^|UJ=;!ByMv2MlDTi5 zhj}3Rw%~aU%$FWB*=K9!HTpekfTPfvEmA@nB08*khSA56gu*&K3hM4X4j1wipd8H+ z{0TcCycagKQgmnG$zYDW7*)ubC1_u{HlrM?XCm&WF-DQ#57|aL9KqO9^W|j?ZX(byIUW9| zD^3xl23KHgNX-h}Qn8oQjwzb5-6hqGdk2Orz1?R1%t(l8Qj)(+gw%$?ydQ@pu4{U+^hGLd9O8u1%rjcLQ0?uT7sj<6LkNPvn9cM;WML0aB4Vu$;%FIANhwUK(HJM{o zLfla%JFE0|G5Q({-(AqRtasu66x%7SjRPD}2d%mClF&>(9!y=%gBIlO=ac}{S4tU|Jemj zyE>|-+|Kvg(B5v}Ac2EKuQm2-3Env<($GVDCF*l5$n_2}vnIZ;oi{X67OMD=l9^s( z$N^XDVv+_WoTP`RBzTMqpyU<|;+l;M&UpALj#o;(2w$4scO?*wL9u>eTBEaZA)WX< z|Hd~S-%8dP=5?h^Aua47-M8Dh0_ZX zi!90A+&{ke8f9Nrvls-}gDY8eRv2$}D=ey@B0!HXG|DT&7}yA7-;t zLrl-aTRE`??9RP0_f5vwH&w23pi|llTJzo zMzCe%zfBh^d`ZfyL4@#GJ5j53JfFT!$l0|>0~KdB#oJRH3pQi6!*Qshtv!2^q#lc& zS^2iNOC7vE6y|MJM)}lJP&|G6SIP}+$*pCYXTwq-EPsESdjQZ(dl6q>kWTutlbzY` zeOD)3C~XeL^H{OF4Mu^Y%x0jS$@A%@3Wp&xp4;=h1iF7ZiU8 z2Aae7M;-u2GFf+~tG^33`=);N6tmx0Nk3Zjap;qSyG{)0KAJR`??~-p(3`A63LF7E zV;2sFZq@c%IPD8kGhfpV4ubY264(Lh_ePV0_0c(!O(!>U z=QBG-)}S68#Ud-6LAgu!>@&HcK5~7coA(0`0K#KJ>jwbdKug~PK=v{M7aS`xE(F?z9oaay=8~qOx3e#SWfOHdK>mv5~cs#8ILsilD*NIa3|%_vE1QAy{T# zcNH&QcNA-w#`b^hz~=j{V>2mydx(DM{c;`0dRgJ%QjDfdxP8HTby8z`$1C>35KBxK zJbGp6kS*JE0R~z+a4Ihzmv}pQ1U5$f@n9hG8}jFXvP68@^e*J(pkm4k?|8q#pXR@V z_XMb<4rHbddpfJj6_K8NXFMN;WerqZ7EVP5%*@Lfhkv%DIr_%vH5zK1X3F&bBr<@x zHIrrV`|yrO*QP$r!-ej#n3-D$jIL;^aDG(J%u>Mwh-bOy+pOzYVzofcq}^WPFJp|1 zMH7LzFqoPg6rHp@8T^?|LJm25C&n*+t^LBSzYn>wsil0vWIiNEQ!hhVJ?_l+08sDi z%zO1b0lk%4H}X0Pq%+yaTPl*9<=CC1(r~SIBI-ihOhr&y;?yZ$S5h|LE*xbu_5ctF zeE?tqi_gs)#&sBkPc=c*xwy0KVc^s`Opd9yQe7C|7e6d{%V5UT7iRo|XM#(jnS4HL zF_!8}i53$O!NUBE)mFh6*YtWHAc2|dosOJmNU#|+Rzqrfj^gzcDy;Y3d?h}(yft;q zpt-pH>CP%NAZyxMd75e|Y1rTaa7OX>U8?;Z!)HFfLRAiopxmad%N-Z-Bg5F{O!h2= zbBy$>>DGI!2f%k_dV+6ar@l=RHD6TEUjBg^xriD`dBD-7Vi*%cA`RyDMgHf!h#EnY zyn*2IDU{+#EX-`*?nv%>qAab|q{^+2T2uZ5pD--LP#OCThAu$w6m1rW@vloxz@&Sa z0mTCVTxi5lteOb3eJqy(_8p8L01+yLQT%`ZTT>f#o-p4Zkw59_O@A?~#-h<4(869= zAm)2*(hb767jrUotmb=yT)VWgCdTnmXF;MlfPL9nGT0=kCJi)6nJ_^Hw_%Nr zWFhRO$sgYGCHMnC?eA$mJ*GkLAYBsNJq+Q;no!U9wNhFUBDxvedjBVnu$e^Nn1fr{ zHvTsgAu*P>)_b>WMkbnriygvE0xW*Ra$`*)rH^7AoRhX~a?(A`kvax!Wz1|IsTtNg!qV4{_`ENEGO)Mb6CB_^`-hsy3o{}! z>zPlYrDoY0f>>>{Vl7DQaUJX7Uj;IFG$Ea83l6l@PJ4L+=$qN-Led4zYd?oX8Pb8a zMb<6Gnjb$w7r2TQ^z0#wYI;-R5wCfWyc6T?G{=a7{&0Ep^alEJc~tDR07n9VnQA4P zXT#Fi^a5doDP4_ zU?p|234Hbj;Xmq6z6J%5%1SZld_}N8v&4i9xwKe5r}3W{HVI?B0~dP>n)of9xy@(1 zx3($<3Zu~|lm;L!o#&Dxond@rK=_VYiWi;u5t$8NEtp?@lDB`_Xi&eDDge!ZIpe1NFu5Wkhd$5gz1KGmA+R2CSKTxYI9c za3y=!a2xg?4QqAraS9|DF8kd7Q6U99t^)7z1E3}UX!VNlV^{P|#vjK&1X$*1^0iaH z$wD5zIO17&#O3>)Tq2s&mt}UecA71N>iDySdP=Vfn1s|&XlfL+Um*#wMrS6wNkit2 zMnigyFR~ggxb1fcGuy4yKBSp_RM!Z@T>|x+5=5h0{TY&w)grE#Y9_Ui z1msoP5HW%31dWt!m@XMH}^L+&|-|^RGADzF*zUXbG~_1SQMlQahETnRBrw zo$REU<-9Kn0AR-55d2>u<0B;k9aU5|5Aa515F!lF6}Y4SeKtV6+T3dR>EekGmEL#VQ!p>KLT=M!%C#-p}YQS#tPc3Ss$FD z4e|k0Zf1Xyspi$svij8yNp=$TaM6?>e21%r{#?iN=F8X69JXr%wfgRq`JbKB3P{mMT`r4VeN`&y4UzjWc3 z&ZR9q623rJV~uM;ar$Pn<=9*wliX1 zWd(m`e1|9Hv_Gv{gAyb9`L7yHpNm@ zZqxr0f!>62a($2 zEL<^hVI(`E?3Ij;)eiv5lMtz0;PI&V%M2h_ht@|d2BTixDoV8Rtm z-qNv^Ts|R2&iwtZg#FqaxATvB{;s0*L+7+o;opRl?Nl6R%gL=)q*j7VP`=MU?u0%D8>A!)PFmoAP)18yJ>}^H#Eo@~ z1EM1&;=Cs%_?*_bN5Zc;EZMrw$Mh0f$CA&XDw5NK@rg?|pw!8c5>Z^5H}}nf@BWnt z->90D*HXmcN7nM4MSCPQDqfle+`h)L4yH*)GAvUyvf4k?GrW&DwPR%J39-%~mX;f7 zY^wt)SD#tG_`-%vSElB~O{@Nd?le&E)-%9&h~qZ9xM*W7RM3-rKI$?+V^RwCP*0nX zELO%<=P8LJ#)I-ne*o-CU6x3oG`&TlD9c(GL z*c8eh<`8L61}J2Q9yXwFQUllqZAMJr+%qIomV>Hh?If`a#+B#_`%c5swD zyUq42rTcNog{0(hf9aweJ^*$RhF9;bo>H(3)##f(0LTKs70nj$qz{1d-B)XrHw`=s z+CQ~_(mepo;J~R^u%PdGPM|S#Glo|chwTTK0);r&C~M2evM$7^LlC|O8i@EM)!I*# zu~TOkls^I`Lki5lXNdUVbS-t$WITr!xr%s9p5FdHF`G@%_u;M z71cRhHI2+-O=(=_W|iMboI7q~*ap~PWK4;yc`fqQ<_H>CM^?q?izJw2PGE{!zxSXG zvQCvw)`QOigLnKnV7(IQqw_{t0bbvmP(^pmwqgr_+jHTn1HiW~OIsC|!h} zh;P1i7L8$zt1%qy9oSmIJyOvTfb>dHneUgRZgwfC7e}>u!nDPXnX7)g6j$Qn=&I^e zbsZIbLF3rznP5vuQsDB~1veQ7{6PI2W2mDoeDCS->y2AhLS7xJbjBkah9AKh-fsl3 z{kqEWuu?##nKUFHyN4}Xw#W0Tfl9(>>Ph1k>Y$pmz(CT8Y=0hOjv3rxC27T{n;{na zqVy7}EgAi-+CIinhm#_J2-~COk*ZB~K?MrMzMDjoXqjn94?{8ppUC4a=*j14Sx zS|5cEsb$%+Bnk?uQC|y&bmCO)@#!bCB%o97uMFlG`&Cs}^m*tT*;l=gLml(M$GLlx zvbitRkhr4PySfBhd;q|EtN1B5SF^*l(z403vO?)c2UwI`c9|WG;$XVte1==A5DB-B z!uj+R#Y7`xYLd)a|Kt4`O-O-eCb$wxc{E>u@41+%IJ`gLU}B8U z&oW1c;Y~zx_QIP>*yGAsgu~KmeGFk7C0?dmDn1tX;iZR^YX~)=v?6>FYP&<;~JGSJwq-~4&)%jb*iN=9i0)TfFpC|zfIgYNsn z|5@GScYVL2cH7yq6=NW+%W9nAMD0>XGs7X-Jr_>|vXn1am&@NtobjqeDpxbZ1FFq` z3aQ|~5GRi_z4pXE*a=5r;8?qX(5-w~C{G@<=N;lP_e3R{@r?F-g?joe+WM_^0)IrKU&kvlpwa4wb2frSgUA?q4pd6UKG=K z&YJkA?)JtJ1^OZ9Gkd}W(Gz0Z@z)Y=@ZjI8b>Wt%?e%w-Iet&TPRD>kKTy(gZa3| z`8YC-ig4jDL+sBe4Z1~ca7ezRB>(3Z_8-$pHkjqFbx6DFr;%xrLBhC*A(K*vUon|z zRv9nWn3DuWl`Z3$tJS+OL$uY`lLy?;TVYGLP(_}qhNZMF&pPCA-E^ByE*{$8#g(J9 zc(-lW&qOt?^*6s&ginqz2fnXn%ZC)8e{AvI9%iMbD$&Xas=GznUQq1#%4Gv}V$RH$ z?wYSv@_U>O{rXKmyzxjKOcT1)lS-3NUeDj($2@K~Q;#3k^ybsl#_A$o;nJd}GW6cB zQ)N25*q3|>k$|-Ps>bd<>_3i~(=aL8vR_T5lPy5;q)YB3epyYBO0r9tCz2lT)_OQX zm$ZUW{}uMz%@8Kc-%&l{dOE~pZ_hQ5UM=_>M6=5>yN{4;spg4pgfTCr8nNa)Cmeg5 zY3#25G<7M&5?v=@c+?Fts{gdTh;!L-ZVa{H6QL?k*j*<8bQXSSMb7lp0%H8uX`VkEpOY5L>qJnDdq)jF`3R*z`+5dawi)SJ$ly-2E^1 z-ZChzXj>QU1P$)NwQ+Zs#vOt-9^4_gTN4P{K;sZd2SRXZTtf(MN#l@)kYK^3g9pgV z-uIq!cGcT;&%O88`|Y9JX?)a|U{@2lDxO%Lpp*v7@2Xg}h%nM`VxoDD4DM>vgpC{mtmOuo{x?=kW@_6Vv*zaV@4Rt~x`iS(-{X6y5zCc1X z0>dGMaw@&1)H}DwRTxNs4B_L{_)qK>?hOjf^G&Ni8(7lRkC5m{Z;)_^?>>-lpiPV)k?Mc;(s;Tg`v>s!dAJ9!)(wM7)9_r-J$lV7uTp3sV1<^YDHa15jEo}$ZtlTL2N5XanS$X$7D3GV@I zkRlg+Kpe@zZ0HQuD1%}d@zTdA7}%h{epE@jSs6 z#H0H*H|JCOSPj%hjKKPo?y5I$F?xqqtjBYb$I?2dFJ3%SpQ9$Y!UCVlq{sv1XZ&F{ zh_M?_aru~o=I)^t=E$RwIpE+mT`;v!)K?zCQqW4TKexo+DLlZ&+OFv*W4n^nw-fkV6ZpWF(Nl3LvvycYB<1eZY*-+*aSD{p8pTzlHc+?`B&YG6XnNKCgk|Ly)8LM-e6 z=`E5a^c)#;DjlAL_(t}{@K-GV3X8{t%jfLSxbet_i_iu&S88ni-U~RS)%aD4UHAY? z^a0SBLRfx!?ghmm-TUwDI`STuWZSOkejPtL4*3y%M@HPTp7xA%HtmAr40zCWn@fA- zF5|!rpL7^vc9eYdgj>%s!_QV+Scl%LpJV?IKs2&}XejzPPB*{MX&=?wWPd-cEqUNb zYj1C)QM6$$+&yCK^R=(doc#(wM%gEZ)z8-NN}APhI+{MV)a=*p6p>8utTlJhsR&&)m$gZk#SQrNM+E!A^lqX3BS`R1kvYfB zn%vrmo{l=aHWt?-7XJ)h8sNsAsbg|+S@tOk^!n2cV=yt3gwG{Mmw*mC(bAEI9-HNxOYNjf5)R!5N-KbfOGiT}ZxlTV^B0^}4V6HmY;K zUG>M7=(Df^*Cf^iEvnjFmhp4U$Uw?#MWIQxq`DhR>zhq4TgdF^hF=j1axbe$F};~H zMb7xo)*bh0J-VFVaLlW!X)h$M2Skm`$)%3^j(@#C@}^C%kFCBQP%|ed__grV(!0Xl zQ#wVN`9}xQz6iF6?_9KO5YqX@gOc0&w3DEW-54I@X+(tKR2j9C@A=V+Cgg?djr1$F z;Csg)r1$r6z7?y2hZSQZDQ6MinVua``+9Z<{QVyQN-&xj_E|zmfTJYB%wx=z;U>Y> z%0KlL^`c=y<}b(g)mV8kG7im+H=N2Mm!+?Tw^Xm{67(9uh}#xkj89S#^76qpu{hos z3gTOA;)H9PQ0ZL@ao0m#zE9I%q0eWuDW!?X1%6ktbTH*4Fr|dKI9RKTiv)HcTq%|g zEJfd*{I(|>|F-tb-ko4~av>3Q(vEVI8omiI8d^_qxKrOz@EE`}&)b*~F_Tg*n*=%q zucRCv%qZ=LAl;g7QuFg!2vbrmA7o;D`E&$>saz7JXJEFttJ=Eo4BZN-UKeW2ux^eyR<7cWCzKY)hA0L`xYf7Y}Frsi2w6>Lg_(iLxvs=0woSD`5 zs_DBJrm}#Z(ohZ7_}da}$fK5``QG~Gq9<*rOYOvD>`Ctn zd>SOz?v6Iy2*;KSLgo3LH-uowg5Pr-huCjOu|-%&2?eje{}F=J*s`?`A$R0xa+vr-T2B?&ue~+O9v&gwyxW#peZY2XHKROEh^oizv$gc(A@zEdLq5Qhbce0TYClBJKk-OaQU#6EKUbQvr z?ic*~?aCqxzYLFX`VDR@oII2WF`MKtL?VOFkK(@ z_Qww4U)Xe!eM-J8J??(2Y24)NU3{W6$T#wK2+m8>ZCYRpImRv4F!VG|uj&d11 zYAT+@>bZ1OR^3$&7S7Era$3V_X|=R1k0+6VtLI3+Ed@>c`tXvl(u#4kPI{yL4piJ+ zY!=l#&ZCVGbhoJR}=9Mzy3$dO!^lxvPg92te~w+v_bs=cuKBxoHD3| z5MOZL&D_xvwPMFvy*cK(@A?D4*2A#;$MMhOE5)YYrhfpXaq0hq&H(eVggoei7MI&` z_gT`QcB`p_i@?mMRN6d+I^|eNnJ4G}^>;qbIwO74pUO+mwR6(H+_39$7kE21k6DO8 zMbPiMIWzoW2ZHy&o}Su?o^)6%bgt*itJ9h=K77+DH-Xc?X`O+3r@d3PHJ|2YyF!k^NZny9nBx4+by&rP^Zw%j73 zM_;<3_s(aGjAM%^@`i+14`cDpKcTvDoK5>FJKlf~r9YbwUBU~+lsf~4(W;AcS`3!W zP}IZj^r{6v?eVPoVOqws-BG@*?yXk;$4ahYE+G1Z zNnVz3LKH-@TmS)-8|`rDjwH=dy3c{Qrc)!G4x8pMN2d06YLJV---clRgM51aDw_DA zVT(#d0hGTBM1Rx^94 z1OG)Xhmv_wNz#7Z1PGHvlg%4T<=RI3#ayJL!3mF!W7?5ZT_Rs@1tKE5TW>O$e%=o! z2#*G|uJoWde75`t@TsqSntI6el5&0wEFaDF)_J>ML{@v?L;D{9W95rfwjb9$S4FGM z;5039D>L3LD{+0P#*utt-sET~Kcjudg& z5N5BHFyzsoZsX1=Q^z$mQsP{yl{j1<;RH=7$fv*hdP@8NT}wUn8G87z9?@+utGJ*r z_~UOY?8lV0VT9K<<#jq=&(AfpoN51>Im>EqRb6IRdN6cB*QT1Ez1XZ0hU*c~#+~ox z+0yEP{n1CZz9-7%L0IOo;M2F1#Uj9Vs`~akt+NdyUK&nJ?H@Q((#PP~)i5%Y{{h^L z345?2%yXK*)^J=45yxH-n``BpCF`KT3BP&h*hVTQe;i0hc#I(&7HT2Fa+gj!nlDM> zl<;bB*k+UtmX?%yZP`+xbh!k1z>zhr&1_n9wv8Ezs(_hJXbXJwE3)UXS3S=6{wc+Q z+j5KlLaIYSgs8ryn$%uVcm?(V#V8y4wqNqB;{e_=WY4>Ck5c2Cn-2GLnV;*IaL0T$ z*soMm{*re_i59Qu51?fV)1)Z1t(a0xS{SJzcDzfyRnNuHbkitX#zVlUGtcWkaSd5pd&ykiE9~}=<%MAYj4mP25bizzPxlZr%r~tS>?R~Xt zb`RUtsv?f}f`ppBaK=XU=H!(Y68J$LYHcb9CO+co3*&`q+qG z{$W3#5~;l}Ql45QU|h~_!pQKgB$1%STRlk`|C){<>1wYJyh<3Y`DmBjCqhL!-7ObO z-n7+2B!kcMP1-uN!j7?xO^bq(rRtZeCC4`kQ!*CJ9Og!rrS}kvyYQE1D6OwrwCAMe zZ7kk}d5qQu699s+l1tjh?T_26U*_|Eap2m?s)WJDA6`!#3~z0A2o}#b3dnu)kqzr8Ou?^0-eQe@AR?3TRq}+qUuAruUew=L%LzzJ23WaVw z;#aYJ)oJ`m5b*9@;K-Z$(erBji0r23>5bwqJr{8ygd=wP`Jmu05> zq&;{(`v!F{RNZrK(%y335af@$?VRXVGY-spmwfJD*yV@Hys`S5@?q<#n{{F^>^wR_ zFDJGZ@*`j{=Hm|Fs>q=|y>=#Ob(h_XGB}$_)ZqE@s3`Rzjbs>RygQlAD3$qcFzWrF zcRNzB=#0Hvv(><^&rcLdYshZ^Rdydfl4$BFs-*(i{M+XnydxQP?E zGXqc!CP7S>J~N+aL_9=_+?D^oPNV{pWxV@GL6jNH!%O2F;$O`>2cBrci=08clxdSdw>=Vv zN*^yVN|GCb^c~wz_I%Ge!xtv=wVP$Q3ogM!Wfl{SQ?D;g)p`4;;T=OaM7(@l8s@I zBVqK6Z!qANm9P!|ar@^mGs`mdya3FDMaN$Y+rMTt4lo>hX+4Va)*9fUN%9=;UkLRh9w~+~p>2bgb4MyhxGl(|BUM zSYEut;bo5mq@Rp4>u)CQV8-v<*Dx@iQ);&xXKtjQ)Ym_%Y2T>#ploy*$1F1dMtYWa z`ug0(dzp|)A{7}OpK<_QsOBB1?5}LkiqjlOdM6Ryow0rT4@G#B561XEIJ?r0>lTV9f-6@*12z`0jOKS1D zV9U%TooE7|e4m1<>!(zac`kn;YdJehnCs;wehm)KkqGXja*_n!EEZ}LKKmFKlVM;V z_Z;=V%lsNIOT3uB`A{}$@HZ~sR$Yf2q6XyXK9dXQptqzmgsv_f$LA4ZNf)H-++=*3 zW2REjS93p3=S{B;gL$OZd44f5p8d`U8S-m3^}u>33Z!y2yCTtGxxmw~F}5?E`FEsV zPkstNcg~%66d~Ulp5S-zXhjp%<1Ht=|LSJkK8Q*rpzOY|vn?XjfJT!Z+MU+SnKrJ< zl_RiHKHJ%MJ#l_EhVtq0hWq><(Sm7hDTro{Ia3|cz;Z^U$|TESL&jAp>Mn({Zz2zo?RnQ4^+`T#qver1Re6(ph&lQ zo+TxM-e7+|5xidc>M{Md0Fq@yzAI{-s)c4~Lt zY_`$2@oL$ZWz}^$XM#j~g(z;4k1`568rH<{{{Z$LR2=&8^K0rB_KhLgg9Hf?=U)5? zd8V$n(3$sV)vJUL0Uy3I#g8-#iY*B&zgk-vGw(h7^r}5;F`X5>0G*l&^%u|>^=_xd zYF_>=_5Kwn{r8DNnnTRXxzF_s1r~Uc9b__;%R*7@d!yH=UFx$tvHVDE0(}RO#^B=N zAgKbYdnF$`7CuKsg}acom_Rqm>J3{JbISCD=2Vw+e;r3rW|4WTV9tFfLW~d+^>9`n z4TiXL9HpZes@I{C4;}JwFLCv{D^r>rS&ZAyWTGvA(WpY`9{@RA&{3}8$YTu^^dk?S zVZ3(HlVnuPrtGz)lReK7+Y_0_~vM@*^bbrWrUXKtaVaBP5ce5 zbTpeRDgaip;u%x654#TX-# zmTA5X+*SV_PxV3?AF`U~rOIbLQY45{$88o4n8J1lh3-IR-$}CgQKZwEK&fE@EH6uj zw}5NgX@<#qohvuY$-(FWME! zmq0sAIIljBk-YyR++|Fa^&8qH-l z_HqhJ$LEj7UEFJ@PDj?Qu0OAZvS7gNu5;q z+Yh6(t^pxzoIaL%18**VZiBiG2#TIW{rKIxUZ$uJd-dx0S9H?dEyg#dp6Oe*U%SMi z(I=9-8DHR*M;o$CdzG?Nw--p!6XLaqu#zgDi6LvkntCUVlm2`O7sV!c?(D!R)L6d7@mJ0yl(jq`}E^tjVZOP!h733my&#e|vlsgrhy)Zv|Xm-Utrltre@d;xO%jYn_d+(vE*`QPxJEn_j9 z404Yf996v|;&6XQhWiFGI@Xl@<$yZSz--x#HxhN3zWIUOq-~tAH|r=^Xu+1FPcR%r z;LH-DGBh?27Vaj%il(RNk{D`G?%3F)&a?In7j-6y4HIKYjayps#`2N{1Cwa1N}7{j(&VNRYec(lYG zy%M*O{5~9|d7yV)`T%US7gM zZU$U7(0@c&Oz~sWra2%vu+dU~I>G1(RO#)t)HS0(J>r@qklalwFO)?;Koe2PuCK2Q z)gLeoQKWJKMB6-)J2i*sPyxZu6LevdEO<#Nk}fXt0E}u*5TR~@r$1OzTBzZGZp;)S z?6wF(IY{^ok52WZ--gG-i^6_DXgEvNQgCy6o4fF8{^y(XyHc=i&7Y8-sZ{w=b=+k7 z*UW1v8A*oWyRy(wb`d@!-h$$nZ#CKNp08T@sT9jyj6TAdqsoLHomY>_AK$^r^`UR55GDhwb_Muxz}NJjnZ+Bxd!s}_0BL_gu~ zK$Ntp>G?-F zuV+hsXJ$t4B8lSraLDxtgbO)>pu$Z8f9uqeSH|braOlFVIDx}L5?lm^2(dBFe$<6O zmi~D#3iJEPe7GC=nDf~=u#urqdD4C8#fXBdgN1qiqaHuApe>YF&v7sKFNh_6%d}0GGZ3|ie;pbXi^VWf=+tJ*?YL_& zrs9oc3(ssm<(X$YTdv#uT0Ao**;}`K3p0HAZsMI}2TV)5#k=eLe)?)vK;U1(+GEk3 zvlm@LwLAX(47RTz(MV>*dShCp z6>nlo$;AAm9?(CUEpt4iyb4$EohFRtGP@IWV@UXMU8#4yrC(~?6fItqy+p(3BZ&jz zjEwZ>*W#xdCu=p6%5_NSH|sM%M$-}oOMEaG>8)iK13U7B3AnV$_$_i(+c6l^#-j2e zO{Nx(S)uJiu<{Kt4P@ZI%=Z)TgsuZ8!l*Qu65Wirg~i|XGOPeg99v}BfzGJby!_Yx zdLMTCO~^tF^98qEbmfAZV)&oD2&vQ19f}>+3@^HPc;aP8+_3Ko%}svo(bC07`ZWjqLx3WV+ z7*XPCu+~+e^41M(i-?4lTB;oqs++TIo*p{=@bCxXlhujnB5{BFm7mZKk=HUR!NQN4 z)V_D!plNurUf)a>o{^&Zz;$@ct+QM{S*&sq$CD_3?X%lJf~{XPopKX`4A8-hVW)T& zZF^c$LYZRx(|eoFJk9*&_rKNF4>Da?(ZrgIlyxl7)w6_fJibz+Hb-SslI#CD?P9)_qMeI}p2?#$#2hUA0{!|kqU*cbi}ylu$={V!MU zc$xeYG-rtIwnxuW&16yUp+XhyYgLH1J2$(%kavs{@EiX#l~D`b>i z^ON;|pILBZcQy_MUq0|2t4jR=@LDk%JT@BF6Y65Wt}||)593)N8Z+af0B5ux3`g`2 zD@tvtL%xWH5B&i&drJP?_L%B4mU|motHWlt6MS2R&$LR5wHHR@UA02<{wms`Hq4=e8ozOa(|t*5hXc{YK1 zClu$PK&DKo`({{CXbXgt-d;)jrYLE}U^LkHFiIcj=lqNgWtpNLAp$XtbA0yI)O;<* z_zz%GDJ|NVzSLEnHjJjQ-sy1D8`}fv$SR+(Da*QQ)$2^ zdfFLIXwE{wJH@KQD{oF3#3V|YUchyL&OVi4lTCTUojz#fhW4Mvsxwo!w={_zr5haB z5I#${+9EP{;qSaSD64-eM4YK&^bm4dFx&QoYmV_Ni}y}2S>zmB{?-KIMTSFv_XG&< zJBmero2G1RVxd|3uFqmu{;p5Ou<3J?KHceWo%Uo_S&LpZW11@Cl zl&?#qIb12RS@@pL=Ainlg9^vD{BL!*KfPKZHZ}+QjRO03cK(ec%GMx%%Sk@Y6xJp= zl!JM`oo&3T=ueBg{0x4%I{M10`w2l+E|#OOcwC6*_=Jbd@o!NVJ#X}|u$4#DnV6v^ zX)ig2L4H{#5iYNvgak9}fn`FvG^bewU7yp7xBuNuoDn_68$B%?sz`}en=JZf5JSq} zTV7Gf;n~1@)i53;>3^RrEyU?iKNpjjQg`-+t8cTjU&u={q4Rp;hC|^Gpozj(D`g53 zrsQ1Q3H)CF*dS@MX6w7W@m=j zF$0_8h9uN~wzAj|+CX=sR|x&yAovzK_^n#H^u+d-4-a5%EminB`vb)L|9xK*c01k4 z88To(=!fK^Wh&FXE&x=Oc#SOz=PijK30x3~qlW_rNMP8X6XLK+4f^9@M9C7KGv?Tg z1F#iG0KRYo!lZa|C6h!gj+?C_PjZr39llwyX3cHohQnk12{^G5VA+kPl=09=oqA}N z+jbvos|WhhpP(oGiVh-%w>)ItwEVMVZJkaqnnO-QQb^0X5MW4jAj%jU^tV`jTy+kJ zxd~+Sv$^q-yp5J24rWq^G}6Uthg9_OPd+`;EXje5Ck1b8PeS;FKlNEH6i~?$e$m5v zKN$5OL;Sc382d<}(i=c&j(l{s2fs==`7jt$c_sG95QO=dxau|#03eKACI-Q4N1wA* zhg;2ABckUh?T(F>n0dpW1Q!UK6&T~ce_%#5f2Ar|y4`3AZ z!<5b85#U%c1a$HqLc`ng1v6E2Br}g6@5K*J_GO$koyZU6$qa$yUSgDCX^)+4s3P*% z-ak&>9sWwHOWEah=;*Gb@RF@z^DWZi%+|V{zEARc7m)IVnea6iOr*n_*s(7#&7YW`EpS2H(( zj{rxV>pta5UJB_raV9=W7%?`jf5m@i*uMJ5vq$amBT8c?WIYfJ!K(FLq}hg$@a9j1 zhmP@jkGmt($}9rZ^CC|e4t7iwqO1tGkYw-9o_pT197PL=jS6I>Gy*Y`$rI1OuRyPp ze4H^J?*Bmu$0RlRuqxc-T)+83il8!ELP3S{0KD6!1QS$O`Yp+-7@(Fe8Gmz$KUHPm zO3eWomX?*=wbWlr0}) zZkrzFh-mB1jCZ%Y;*3(l%Bc@D{Dq!Z#2j7h)lNT~RQ#hv?a-vrE`z-xMbi=2)NNk^)SQX1ol zitW60SyX5h(q=8ul%;s~VYmZuz7Fz@JA1?Q5d@U-^0p42QUPB!jp77-M7=I)v(>xN zkL&qQhPqf}WFzNqZwk@Uh}3ZRKY;T#oSx*IJbZsJvj&2kNy*54Q!l?^R4rAj-y_RW zu1iRIOjnqnAmD304u#~wjM&6&HzYI~Ba{BLDwPMFl*GGuu9q=A>g zmgkCJmoH_{;bSPX@~;Ai08Z*8IwHRPkY$#^hq;Ze{4+VBWM43v-m8$82G89QrJj|5 zJ5f(ZX<^;Os?N{{L9pk)__j;X zsOm}kw<3ZPFQ|I6t>v7GqbNZ^UMkNo@sFNPjkr56Wk>01T0R{OM;lW6ZBUwOueti? z`OQ0opYj*yaVEBsie8rg6iwLr(vn#v>DUB3YC0(6?#*Y*N-0ro=hBE4WuL+6FMYgI zUaK+ql6{SuY4Ny6;J4TB6F6e*hT<%=SGq=AbCE$qs+U2UwO;j;lw!EJvyp(5!JZm)GNZh@ zXt9LCB>IpCi8YntZ&5i??ji-f*2er^Kns-6N|S?+1epdDcS3`U50iKtIyko{i=8T) z+or~?rjJ>=qdc(?=Nv%q5#cM^(_GszNw3$0QN0{^@yIxN+8}&KWUagO>v_8fc!e!- zavaw(Tjtm1FqQJdvPhnxaTdn>G06>ffMn`t=Og1p*+9f~lE4>B_iuvL{O|3_US@@L zYakpu$}(25n{Cab+iKHo(*hj*S{CZV%?sYG)?Ka?ab1h#rby3pck<5@gF3~xZhjYJ z86zy5bchbbt9#0Dm09dpg+@h*T;Y6=A8alOD8hVsvG0O;22R*2%qqsyW%G!`_+=St zRq+0yA|L*vFJ3trzaYMw8l z^oaCz1c3GaI&GWirakL2;EKTUjd9|&|L;=JtgZ-UkQ9?PjwZ%u7laX<2eB+40taS9A%4?(?;XUjzM^_l(x zZ@kUyYUW{ zO!x1lMSBSaEA_3zk3K+Z>9z}Nz(P0L&&K7zNxlOsO|xQ+L%eEiTC{$06LeVzQoI??e&$T`*f&inS~Rj~TPB7P(~i&&g+ zGT=Oj2=PtFKaXtMGH?Uo%8*r^mL%R~%W0MV=(zA*+L)}T(_OE@!ZKqYh6ZH9x{tE8 z3-g6_x&47ILK?=wVx}78V&Yo}v>9L^+H9;QSXAWR4%qC~cQ^%)S!-E-J3jq1c{GXr zyk<3nzuUWG6vP;#$UeoP$b4XnFT7av`Qz`rpq{4j|G^aIO^|B=CymWnG>ZTjX3{;`d2rr*B%|yLW*r(NzF!bDBrh zn?x+0AwFAZ3E?rmE&i+lLEZQZnA|kArs1(8eX)1PdKEsOy3O2aZ{R|yEQwR)s3umm zv&oT3QDC$auWtQQraTZj`^*^!L=+)kJnY&Me4xV68!bs{bd-Yrd{&ZYm8d`Q&nU7V zyzb1DgHf2l|Ar|COzHjwY*}gKHai*7D(R$|Tf{=6wlQ1lC%6!PvMYvZYf#_?hia1u z2sev38U>Z4{Q&^ghTbbI+oYu!XDAvJ$0WwZkWcTd__c`$sh`?F=LWo8!#KV@QL^1{ z=DOMRz7^h3UyBMP55vjbM&zU2ZC^@o{Wv>yI@bNw>ffw+i7`syAZe?etMhp35vNZn zoYMNz2kI+!L=fz!Q&^!BQZh7?8dN%s7loG?QQ%)9+?x*nwwSkQk?^7 z#5Bsp=y>+>Xo^6k`M|i)SF3U z&_Pq!b}%~EeJ;`~Ym_g4Z;(5a3Y**2B#16jQ`U`a>V`^V*@XpOZM$uqV6A5*csp#? z-4@(5-eEh_)lc}~qfj0lS4nrYv;-=7;UyKNe5I0Y>Ltky zjxAYD!q(9F;r8b;$%awh53~XqD~r5ioalb;Uj!p!KN8*H^*Z!hG`c2(oSpgJAKVq_ zE|5_;s{dvLjKDnG*;#kBb5-5{DD9wZLMYdYF>^63w#-UY&(bwfLQ!(c0@aA+-To+Q zBTzID!OFMzdb|n+W zg6B$~*dMAq9-ZF$uKxX~d$-<)cz}+0o6n z@-lABU7OUNju!|`C|_|cpQs)|s&q!HjZ^Z>Qs@`5N6Q(B@x39?4dG7()lUrU3EKAa zU>dv(ue8`PdxRankd^9n{Q;c7zl3STs$`7}r;M6I@kWw|`?7uJ4H%wFv9>;oZ2!c~ zZsv*+b$d4r??=l$8{3TFehe;^CIe%95m#<_b-)ms@XImh9*!;U;E zj_&+s2%oPay=m3#d+&nU(>n?vhq)@1t?FTjY)By~3y&MFy_|@i>#dm&0n8Qas+j6Ix34v_L#A@Ps*NQE`)KlLvIj z-y6&Z5^V{aG&3%*nDOfewOGt*B*RRxLI`P$5$4YJyCCLsB%8|63lsifkGcTfB{IAj z@nT{EW#0ybGFnViA+{D7NJofaavIugJBm^nJpKAUU9j*A-Vtg|CVTSso>@B;=x5fD%lxW`R~?~o5v}gf+kbO3iQbjJV`3O&E@{l?89pJ>yB!g#@Q;eN zTTrbAHWy1k@?H7+c>KtHc)XWgcE%if(#NMr{SGKtMnMiNo>o# z_7(SGc)uI&cO+<_(qV&%+}!)*{UR-T%T@`#*-w;8!j zXt3({ZDO)$GoM!hot7J?=fXMi>8j2RwiaMHnC|eQ=Iq3Xmc?pbh~xY&&weOQ$^v}e zp_aSO9@6W{UMwQ^%=Gyw9}!w~5EVqw*DMnojiIz=NBLZG}yy=swi_(eYXXK-o1 zm+JO*h;M%L8-d?}=SW4%T#qmIKlJ%MZ0~;hhiMHMN54BlmqClL+^#Pf^G~WYwrxj@GMUo8Jklw2xcDPn>pG}7j6Ft=5x#(WPNI@Kjgpe z{TbyGNJNhf92VmsURc&FFAVE9iGSy~RLL|B_n<|ni2Y*8?8_r&4r7?7REmcnc&S&^ ze*iF#qqJn6v{JT&?l5|JI@*%)&=if~1CtI!b-ifF)a+R$gHj*YNn8gaDeeM@^<}Ct z`Q%@tEfc3)%@7-nQh08VPxN#B&*-$J;CYwhNBKttbj_FMXx z#^_qa!2!~Z_vjibGUED8KKO7N7{c$@;UVssYe{Y~?PQN}$UJp=P|nJqF10 z&7<;N8HR3Xr4r(dk94BJxQ(kdkFfQbgCC&DL8wse#eJz7H6%3J&bAxZD>R7In4L;w zy3Xka*Gs)+z`>#I+YH|?5QcQ3v~=n78lwL0K&miZQ@#pO{f!o7OX){ijGX4lLrDif zX9f!!5GDhbb3fUL#dQ51Z#G?T@K0WkDfipGlhn=Xj29axZVHa-n?Xf zkWsv4(<(DWV5<=!%hRxRD9Kql10Qs4DHT=-JFDJY;Ftn~O9Wgtv?+hOvtgM@SEguH zW*I-9r1u`(N7!Ip9o};HUxbHnKyqEiS#2p13-_(Ud}rmDY}r>dQ3NH@F+eu~pZ_?- z#tSn@-|WqQ6o8X;jF)f7+spsS#QFIi&>OKbGcQuoryeg&e3*|bymFi0EKQ&DLG|K& zU-;AvKEAk6S#MLXuyWN*!9xBv>V=H=oYK|d)hLl5p?r_9Mr@IeUD$OA_*k$ zkQ%Hg7}q>knitOYI*2Jg`t#=Lg^=;*t&wr zhXVwjl7r0MlLPoG&io2!rN{iCg$JiUxcp{o`QDHs5`0d#%jF)1C>Bhq4@L|R7ec{j z7krQ<+qLM;&vmTFN|~b+R&{0S7WhP*a|Ir)*#AlmX}%NLPn^^u9^v4>P>bJQO3j|j zT4#~p#a5OJphi_Td@O0F#X7u+3b&YS^#MZa1FH^PxYz>?0*{L)S7$)oOGgVZcT9*dFY6H9MH(By>J^^6!Gi27-ks~Jnr9+~M=Nb+o@Fa&`FN=>?#gm_vJ#tOZRDK3*Ps0JiU(PY-2s%UF;UhB^e}+W1<_0kNhtrN;zPa zWL2}jQihW@9g^ON3TqJq6lBA9|N1`a^kLDxK)-p=-K|d)vvhN{yDph_xc#WtA7@L! zuuluX0O4iSqkJ9ZS@7ZaiF0`od$rhStPpM&ZW1iv&W!;rMJw+vqL+-m%tL8-KYNBY z8L?Wkd8A#^=SBR|1YflHNZ87C?6uz#+=jL7k;|>Uj9;;8RH32I0*kgTGN3T z-Cd1(8tP0f0%I484$FAv#?C<2XSwgwjf*I~m*VIdPggdN?L|`wO73P1us{rgB}@1?O`N(bCkWi-Uu?IgrBt=1l6p zj;A6X>%zl}|4I7FpEl*-j}YseY_dtGewS{mmYvGIT#E&)#@Rzk{@Z(~A&tCwXAW35S$qx!JW(?0RqX*zIWxlXZPFt?f?6)es!Pj(^d6U^;1=!nM-8JMwst_xWTcX z=uO29AFa?8N{>iDo-fn zR#!##FJ$$;(mg-$N-2A9yldggKWAk+s$)Fdm^x#)UBK`O-z)Tq*mFE-?C%t>jwM$G zSgv(9rX4;|@0LcHm?!g;i~8#0F6j;RH$K;-6pE%>eNke_v05tpo;c{E;=J+uO3cKC zW(`3}e4H)kyWxDC1EKriYrx7mFAA?M89XLVp4R`W&A}tD60lxlR_`>^0 z8i&4o`;moiE9WqIY(pVh!-jN9pS#Dzo!e~hJ~)soR)@QbM@2m3(j=ty=Dro8qVHZr zDAO!Jr@{}MnIhPcyObl8`XLB*ayN|=rhi{2L0dRQidt!L>B~l(YA6O-+iL=DdoVu@ z`}8FsKRrW!HW>-NzIFwjqc-zeA+k}853<*tSBIZsJUF11kIX9^* z_8!Vpu9m_NbYNa{f*??6Fx|LSq6IEi2DW#m>7cUb|4iThwX}rvz7nyFv_ky)xu~@# zBKim8mp}fg?*8uq#T%Up2Jx+m{(XT>pKlI>%-s*KyNKu-g5txj&se?^G& z$MV)YFHv=z?vf@Atgh!yC9)+X)yQ8i>PH3wGoZ`=Rce5grQx;XETK571^=UGpCp)} zO#V%DaE`l^GR(hLRr#Z?R)+3#ki-HH~3VRA%(jF;UkL_h% z978h~7`}(=oqIieiT)aQzmECeN?7@IozX-!zhk41oPJBN!dU-qyZL|H_Wz0hPyGK7 zsXB^N`*KBFO5S`v?JfCrDNpe%F!`t>*?x1LOjK5k)1j_~bUPN1 z9wIU9MIzo;WM?&-Dx(5d!eeNQ?CusA7eyeyg?4^<4KXGo`5z2c<9U_&wMGbMJ(_=| zz-}wKv;d;SKF)d{+V}^fuPje_fC(s%f^l04gLHrB^tO_7JvU!SBn%@j1BXi<$BU1* zq%b?GLcP~#Cd$#-W!Wmso|31kZOb5+grD0S#X~D6VZRUHT56mI_aZ`n7lCn!{9_U0 zg(SkTr*P4-Slfl~%IN2*AI;xV4Er26YZ&g+ypn?ZXHS@nnRx~?Rj?&slJ5ds<#DyQ zNzb4MMh3AVJc%RZvp8vj6xAV>s`S=YKJ^uWY(RXeQ;RAKPe6s0r==z&^xa8yGLg9G z4F=vFL2K|5@R7IQSue@^xI#^r+)TPH&8!b^K;s%aS|$<{W<54YtT6N=PVTH+HdLTv z2C%D~lh1+`OA4-ECh-{AW09+KW(#ttvyp;?+J5-JCO8%CM}h+yZ`EuS{{8|FGsd)q z@yY@t?v^wz|702B?vSD3{)+#Ja@czZSnvZp7#`}l7&g(QkVes0p>1_SG(JSGwd=}8 zg8%qsjbf3cV|F;zs>O)2Snl5Yg$(5Y3;c4@qF6?)Geq&cRe*azh ztngXfzmy{g{0EibA3FPQylT<^aPR;0kvm##i8Z__%VAuh5upxPn(3}3%A@dLWA?*W zEw{Rj&|Pn8PZkT$C`%KIE6!LbzT^#{jt@-bW@ja8q8Q4ITN<+? zE-ULjodq$yvC&E@unQ6Fs)hW7$;CWBUAWbj#~NrlDy0iKIioc120>U(*=d}VVON}%xg>!`J(L)Ml)0~r#$^N$g}X6 zUUK4#R7$z?)}HBdw=SB|A7e0fhLMxPq|J5RbxeKLqP?EjQtdvajUVtXF|P;fZB6Ta z-JsDipYEDVo2=Zm(6A$8{$ip`@e+-ygLSC7l8$V7uH)wuMH$eiSX(Hc&;7!5k&$Ht zTGa;64Y8K)p=%@uTx2j_h&w(|f%6&CyZ%qHn9-0QTOZ)7(fMR7e6G7sLRadwQ2mRrj*E7hdLUP(nDX3G z!QyN09RXzUZ5o9%8+r2zkStv&zpT%~-L+7zi#xR)LSJIAJaI$}ypXYX#^Wj;(1ANP z({pNKbL-K|gHBd^v6^F ziuy#jHyxplhQqH2rlvDvj$PbFxpP`KG)z4Cx$?(TxT~ElGC>OD^U(!z-h)P3%8>Q3 zaywMllkP=JJ}&ArJs*!D4(cTr>oZ>W)Qf^$oj{=Kcv_;X1u_r#|F9QxKai|zazO_Ni&BV)6-ZM zRt}RW1#qAt=8Y9&z`@|U$2)G4QfDqnCl3t^p|(%_>-hC39=V>;sfaK+KMln0uvhO#7gKYO0S7BRU-Vk-TbPWS-wx7ymju)nCr(ry-w((Ev8cr$uc6-z0v;yv zYdFSJ8o0n;W))~Crr;Y0DbX{(s5SEa4AQz0YWke%_4_WCn3 zu6@!W=e-Q`TfUVrf6hqq@I8|Xncn${kYQ5Q_-vgPc5-hhtjJg6rAZ{lQ6N3i$HV=; zH?tEwK_qoH994hKoeSXwTcpFRsyw>)8S+z`xeZZ0%yH=~0^D9V2OT*R0JKccsf#62 z_uUD5)7ov~G(OA4eM`>ny^pP1-MIJuAB^AYiuoma^gCk{@Np;m6Nt%^Z(~ofE?#4x z5Z=ETIE6^k6=?2b7iE2Rs&%x;u-AgKn%#x0t))9S^32lZ`bT^bj3=0kSiNzI;gl(Z zg&BG@{#Gw~Of6`^b1f!|+QH}z))xx;L^oO`5X%Bahv@eZIna^nJPb@rZ=SRyyBo}#vQmo3?h7(GJZ z%LiVc9HE)WRSgz~tAJC2Cyp-}xzQ zw3}QhLBuNe(JM}zNRLD9m_LRF&QdDw)zCG;Kqei|mlpHAJNL1*p&wVFO^RTI?Um+& z0O!z!7xMFQ7umL3dgc8)0BUh>Q0U&<1#0`;*Sn&4uY+n#Xrxkhb+4s-h!ObF0$J{j zj$3so&Ds^2^w>IvY)c=-Y zz0JM_{PbpA>}<#~x+o3T5PbV+)O@_V!&yz3s3$p!qQ7-DU4MKG3oVXvn`Q1{Eq@PJ z*(s=dRAAP`T`jWMk)B{&KanP3I!zY3^)VSWP3z;T1^Qiwchs)}kHl9gj(__VEX}et zw*8Nu;z}ZWkE2$aL(`dEE-FI$)1J6lV#V_dB;mq4zg=u8y-fVj{<7_PW+>MOFcG1psX6&J`TYT~Lf{;ZYGnEb=Zuc3~ET%_6c@Z(2Dr zEu4NBqj=_3q+;bC3tsKStS-8kq|fzfetU`t3S`fDz+uK(=~q;6oDulRqGu9ZKP%qe zs>4IAY@J`Ku3?0)j2E;1pVAguB&ipPPj$iZ0N}(^AK@fd)4$;c9Eel+54=O~CFxb6 zDnPN4p(L2mu@AvG_=ab3+Is$J<5T%J&6t%B8FXOY94_N(?K#aMbIs2fN*Hc({}l8* zhwzu^uw|^cruL&&trl0QD-wF3Q+!OZ-6SKIND}NYY~}i`%6V>;S1GSTDstI!D$+(r zk{M%&sc(Yt%Z0b+BmZ}w8{D9GB#g2IXDjX%ZpAJcefsQ;+$yclUgwc4F9ag;rn`iD ziJ1S9eEIhQHyY3KZU97+{?8Kj9D`$=t;-;^qSI70gY=yKSB7>}g9#z{nIS>8Pq*UH z(}2I1-MK4nRgmM=kBpfMKEQyxU26RQi1nBh;N?)p@me&PLseN&8JU2;{7M=g{7=}i zaw2pvVM}O0p)r~{vx^}KJW%JS#!(k!!N*yL5ye2n&?6YsYF z4Ci-zR`*OxDO#yEYa!mu_`{RJPqUuPKB|I`x*FML8FY23|vB8s7dBtla(AfPe< zRN^Z1?8qFnph>uVw`=PdRRb3R!FIpAXef-Wgw#x^>S?dD^LW>{wLvZQeNJWi)7)&Nc9%&b`e*15HAduSCib{6BGV3QLq2C_sm(%m z;}NPyaK`?fdwa5%o4QYSHr`#Ghy^bQ5u7DN7_$k z+PH%)?CO^Dx?9f7bYQDts1-Dv?j_gE>&hx_?mB~(_iF4uvbp=Y13zAiYMOsPjkmg! z7YN`v%1~4#ED$_>KDsKqoJTF}Z1z-a+>3t_M_CRw`*xfC?wz6>dh=uKq(G4SEtmMD z+>i~i`QdKpiwb^DNY6g|C8p-D(zlx`rSErSpS#H4tbr_p>)W4HoZ9Tl#7x+MY1K#) zgTFKKxqL%-g(Mgas4SsbMVq8ls_1U(9EF$aWPwkBCt5BJfIt$?WE<`lILp46qG?o2 z&`u~*gSEe8OL0Oex8Gu@SKT=1!(z$MtK>O|{AWC5Qe&JvjUg-`G(ycB(qKDjD{Vgq z;)b*h2rSmUv9i!E+UFbh*?-Fwv4$7T@}g60;P$BA_lDnHPW+`@xzmdvk=B}y8dJJ=Y5_^nrx$>X+U z6UV5>r$sGc@`(8SY!nchI~;GXbb^sU_VK>=v@CC`X)n2yHZ6qh^%$Z{C}k>U(1Mzr zQ?%VhT8zT^80vs7zQgr?x0Bz`pvBPMnr@*a<1MazQQ)J0YSbqp?ISoeOD!07x~w7s zM6{)RbpNGVw98RpM8Rl0C1DZQZ#|X)Y2q3+5b~{{-~jV*qR|+p-b)6&0BheX zz^RTsAJ4FhyVIdK?W!dkUqvhRF0`8lQQNtWZ;|>Bj;F&Um}t{|SrAuDcc+)kSQnug zc3XMe7W^<^) zf!+$Ek0;dR<$@>H%D0KbZOqIzm{CY2(Es?#Jaze{-svx(M&J%JzE(mp7$0 zy}SNEXK!^Plh|HA%~|K?;;y;g$ZEN_`vb1%B%j@56K|y3zSC9Mrm_zVZH~=eeKR78 z$VoGe*(}>JSR-_~c*YhZurDGR47EZX_w?ROd>d0qLTJ}Wpe5ejR3Oz;Q{`F&t^ygo zOkBY<^zL{#GPj! zp>d`T&Gh}?73w>$^6tyd{+Hn$lee9x7SLg^ZMIqfO;*o4z>4kb?6+=d_ZhSRdH#D{ zgvI!zaKLZHTy=AY2L7j;An^h<>>r0~jBcs5vQxXYJ%XKAri|w2YW7w5?zhGeZQ1_y z8CLl((6^aooO?(&+9W<(8puQM(udC4Cl=N(yARKW27Lokk;wpT7lZnZVuP4J7_`&Q ze|5*x{u>%zz-hhRq^Nwz#mBorgj=jFsI|oQ`v%kWrQ#mMwTwe%A&p0I+_;c$wXV`K zJFc0cDPp|ktr^`-_NUX%H8O!v;yveam;oKyHw_lP418CvliZ$F8`HfZh8~|B55Ty) zk|Pic&E$>HU+c1|8jy5*Q77aep$#^4iqqiX0k~MGT-4Yrm*zyM>BSD_6prbZXb*8+ z@@Rhz8%J@0V1&AlfEyC59ZnzecKL_;b50}aOS z>$v^RHV-8`B_8N~=TFEiKw(DKXV;&WGY)alMo{?74OOrILeA-Lfr0vg^! zkvlfc)#=^|(g52-M1HE`IZ-h=Yc>ugjzr=d0RNp0p>i?HQKKgG%LP>^rpA;+o<8nU zkEh{i-rDI4XK*S zH7kZ!_;>COHP}A77Cj#7%nf;z>#R=1G4e`#K}4h|(=KHt@bH5YU*c4uJ^hyd3K}<# zcBj?(K28MO;!$ZqYvQ)fUzwCpZfz0zys_`iUQ)({%t2Fkh&eQkEc1(V!%`{Cef!vI zQp++~bsi7Tg|NEc1uV_!!gzJ~K_cv*7@O9kPW44kMgy~uZ_PW#eUWe9JlIB~9z3Id zziml_TD^8Zt^jg*QbHKd8KfmmZ?Ty#S(JDf9?pV510yKgQva*{xURLVKNx6(k??2< zH=L1e)3z_IB3&i6eqKry7eD1&$$lGdW=HQcwpFUFW`-z?WTRAlHW!}*xTvQJ?xsr)| zp@xaiM#nYAEYez##{ES!`VA+|Gv-Swd&_URZvqqOC@MY9aZ_8ze<*8Pf?+o)HK#qA<2$d6*lPJogn3*}6u{M~!n&kGr=jUP zf#dNnjSs_etHAwjnoZo+#2qUcHSC(nt-tLl#D0H=tKso5+B+9Az?fQoWssITDk494 zGDcR^(hmy9$d|BhTkCWIN1)Olp{Z;P53y#xOE(2 zvBU&AR^!hw4E1re#(n@ZBf=N0`C%MWM<+95X8bT7|CA^Xfen$^UF6j-Np z34j^uZ;pX^q;2~Gm5w|4<*HV6(oI3^CmlqfZyFI+ zlD$DHLdXVJ6IWfg5S4R|1@`;x@zcSNcetfveq=c>%8ipZtu+!#eLgsl$Mxbbo&hp_ zOAx5TPitiO>96qg17g!1(Yjt-2v&$|`j@Y@=Ogl(qt9YFu=o(4Vg4p>~=Dtrb{0$x>HP(_(tFubkjWi2nyo87R7LNfVuXoBRr`?{mjr)LUGuuy4 zrJ#cHTO#rv`;tOZ&zq)9WeA9O>==M)u^${7-YlXdDw{RP#k{;~Xi%jhC4!qW+CHn= zI?P?dvZcRTVz9FHZaq!h-#+fmVHsM4byzLR7G&dchAiM zb;I{40UN%pBznTi{PL!!E5+Xv(lqF}ios7Dos8$A(>i02K8*C~=L|*!g_Dm2b^64| zkKSX;x41fzD^7Be?s$H96VNnuHN#*_cN+9e9o*SP@AX5prOt}(6R=%V_PA}5wyxiAuZ8BqZ zpy<|C84GwlYhQliumwcgYsBb|RFrO2akgd@fg^R`(q;cVLWh2kd&a)9$jxgrLW)B! zMS`Bpb2DaNge})=${fsk zZ!$>nH&71>mz7c~dA4o}_A0)%GD%QvjT&tKI*tR*r;HW!2^F=wzSCwPOy|knvmL8* zZrt{A7MxhxaIR!B%6EzdXjtk|R?Sdhj#{U%9nir-_x{=}G1DGE1r_JSYL_)9AGK`w zJ7@lLru2|6(?irnzRHIBxQU$Oj^oG{ox{~~kA8o{wf1VFVcDPz4blFz#SgE{lU;7A zkv`Nv6}AREO@?nQRNb~aMUP#1x7;=+`CC84@kVAU_O!<1A3ud_WTBJ#fZEmEcLh4$ ziqciY=7lG|g!Eh(GpEK{q(Vqn7k*_{apBk@g_6{e>4=l``9%kU607ZRM*V428K^c& zhLMp1Oh+^9t*kqSp+O41a$yuOR?HKL=&FO-|A>4uzb1dk1$pupnn}5)7hzke4y7{$>q5{FV9IE zp0<6|a|f{5mW6odRM-K(xRSY#HvdOLK9@f6H9)*_YfEDMKtaZ|AOU7>R$#!c;Y8n= z8B6Bmp-oA>)kJ52r)x*}v}6#_DYc_jokF(wJ5MQ|f|0mamH%P4XaSm_rPE_xH+yry z-z9{9>1iERT&91IAs6|j7%u{{9~JisKxp^`&FF}#qO@vC&yd-gvPopK>FEt&KM$rZ z4;doq_lH3v5y>kDg0z$Fqu^}D6Cc7WZ!KUp#}F}As6&SK@*DPoxL}a%56(Q*K$e9I z21r2GoUX-^fcR>i&94f_e(?O>6XS~lTGx~>5S2;qW&dU6#Z7kITl3N7O4o-x0F z{>$<3f}k-gDB|PSl){FT_$Pev#Mu6)FwVyBaU%Yf{$))AyV*`{%g0t#juAm_HRIQ1 z+7l{gEM~6RIjJZ37>2lx<&7~l{k`e3QWaPA*PLzC^Z_cS2=1C(8ySQ1_1nJc{#dG= zp-|sXpSub}&2Azhcc6=fOS%j+!gU&d@dzJ9i3oo?h-PQgoDv|csRFVP@tIT-0-Nk#{G!#u1`h>cUau!U-xq zllG`lA#O}>)kB{++a)V>XY`UqNCg*m916~g?{YRf!c;^NZDN|~wVc*G8A^Wr0pyIi z3SF$qI114-Ec+RYMLaf(@~z*;Op$cox8=CBUxRV2xwgzJUxJMWtpcxBp7ia$QF#|b zUGyWFVc-QYjxa}0IwYBV=S-lEQt+k86C>6=&i6(D5s`)`mMgy)-D&&6u-Ra&T~ZWE z=j82)cF8z+-=TT>KjAD|d(=;(wu=RV2XeK>?XOc90iIPt1@W1z91opaHLy&|dF2^3 zn42-ZxR`GAqYniF3RKMBqppXfIRSq#p0AT`lJ=4b-ja1pXy`^nRx~M0+6zM9g?p9; z9#RzaZ+UiioDg|XWtaO@g~+3oo5PjCumzJ@=CHBH>(vaBAXteNZTa)KS31XsW!ro^ zAhVk6kXNA%P8+;9&v+>eoq1f;Xs}bFlA3i4TIPGHy@$GG; ztKR8QTp{L_(?WBe=Cj4-o>Zn`-B)K-5Pp%Pv3L|p3#K~wTCFnpgf&mOV^G#+*|~$+ zmbSSx!Ez$FPP1r~3dk4wLKh{ACt*U4>67&Fj_4)VlnqoP15z*Y8u=mvKb9>~ONV@B za=P4j0ZYfBc~gbpg5lhxy?OggAFwdL^un=T^$X0bb$Yr)<1Ihc-TDlV|48vz+$4*W zy@G;l>dkSNn*y0@D7#ghGAPntFkq7M!mcP#dAgg^SAXc8tH<=zl0lj|pGkg99b#Q( z;z_#f0bMsDIu(f3abK&^l22Q!V2--wUpe~9gC`c=QBR&sYN#XR6GoQjn{kIXo9#4a z1b5d*jLe-}NQYMI)Z zq&ExM25X!qMd$eR`4HHDeD>YPc7sYY(j;*+jEI@dkhVA`NmV8)8tWcNlDY>=u$6e z@Uvb5bIPb6UMs4fpST$n&b#6!CHFtW9RzK+NDFKdU-8^h#P*@4ON%s(cV1*Kf1)c_ z@muVGKsu(^r%|5%p_K?pcIdW(n`(PSr;v&`Od$d!XbHwGAQERItk&6d*@c7KH*j|Y zLh%?z+F(qp43q=5Da_$iR&sBTXBuXgK2K#-rHPYe3XxlGMS1R8Dtvm$h-QjpxE_cZ zZx1;ZaXE}?As2Wdm^uKXG0>iz>+T$O_!Rg0U&(OfXhVUa5G2+9)arHfW*4baTdphK zXso(NNZd$76+jW=3ho!t_1Jsw@bi-nU+7mJm}M+I^H7Nrnk!NYG!-pPg}h?bhAXDQ zMnM%_oQYv5c^ROPI$T>-)ZVTKt2YthKaSlsth}+U?1T3f>BcX%VQ9#l)u2+h*5Nv{ zE};6gLIn{kF{5Ng#xo)PEa&8XKIS(4<+Rg=COI^!qQR2Sf>xY6+^zPj%DMnu7IX@0 zLTXd_?4MZQ)Dw1y|g2xMN_ZDcT^o;@X#DzT5; zXm2;n!=h4bgbhR?7;P0NvDtuU?n5#nt#WU=kZ}E)bQP~s!lIR?SHlvg-H=G2 zoTNZkH!7o#8JBpltrl%ohrPpHTsQ1W3t5od-}8p8gB=*Fyt#J(JG9=t)N=TUVZL{f z6ZU)dw4zVH7yq``qY@BH!8dG-9NLU3#*1B2@N&=1=3q_-FK4u5Ry}T!@Aj>FgM|M* zQIjRIHDp*ZsD9kZzs01QF>)9i zh453Id)hvTE#nSysp2BBasCFXE3dJ<9q-M*eWkpJni0U zoiFlgwFWx}ZO`Z!J>y0=%^!g!Xr&dR8tMtZ|H>rxuTXvToqP-hv&;RSOKsUssKd}~ z&lKhj^(n+Xxq0{{x&VGrpZFl~WPt|97>DV72(hMO?|U7(2cH+c=Uw`^5hXm13A#d> z56gqLgLbEy9few%oDR+{a;)4IHTOHddM>}d!e z!rQ;Ab{^^fQ)BX&gUY6u_v(P0%87;kovTG=0v=e7NSWxq12S#?;)1W8TA&vp^cLko8a!uxnO$(GTaMqsy?Z z$JKI?rl({7GS)~%O$|3MbHamQw0#)f5w?F<>bWN5rStVkO3CZneaDzDD7#^wkOPs% zSFYK@0XgTBy6*2YI@--LG{7=;JDCm~UHGN~Kxnm3*@+Zx=}2*Fjd#GCN{NA+%w{55 zY!SB+qaORnf!R0SKX*~v=mXj>H{37mO**dH=M~MHL6B5(!PrRwaYGsVlSY}aGwCbu zSv%a^KN!qSemiMXhc`LKYCJ5@*y3AogITId?JfycQ6*=7agt5LURId`3IeMq;k5&m zDMZW;bdkzT+qvgFL*VtyJ<`t<|A~ta7Lyd z%LGk)7q@omTvbJV1TyYpa;HRR;DK`92l)_xakaQFDPrj*6S{$h%S79`IW?@L@p*8a zTq`aLfBBLCJFk92@r;_01s}kOdKFF`Q_ARSKci{^g-Kk~q*XWzLY&3M<==(=ppX~K zO#J2BjIF|AI7V??wQgl4OzZib6{YqRyAj_PF5x0P$>xR}w*F&NkaU31)DQDq3mZ== z{}`^asYEmLyHw?G1_w|8k?3~Ekm*J=_?NTR;@t_I-{sw)^w|Ob{pRSoGpZ-F1+W); zHTB|>gNKrg#4N4>q3Jn{b!uuLbl6#KpK{o7xbbT?%@_95Deu zhchP1WxuE_(pXsqin_fq;|5We-X07FUK@Llck*`EraW%Gb1FDtzR-^`vplGfwjULg zFuEA?1*njl;M*4%Tn6Z_N3=Ip^G!y9f8!jDwUeN-9)O&bV*T|y0GIuq*lusv z!AQX0M9L&s^Vw5-7g43VF}W`@a6Mq#S@{-q+&NX2oQ%T(OgxD3G2meut3ATCL*8#y zXU8>0M6(tN;AD3Z?2#wil8CTGhaJ$S4f8?Mi&z9FoQf!EsCvGSYY=M3s?7Vm?hn3+ z(#LI>as~i7W+qQQTF-lba;%26`Tn@Qr2cx-ImTDB0cjZbTJ2yOG9IFViK!n9I~HYW zBA6F~u5kDQ{$RBAW}7$ZxVAaU)_#%-t;lGIqs!6Z%9DDBtHTAjU6W8qd6}JhNg^pI z-3FTtkSCq9PUPLGAJR>Vr=}3VoD8UPltxtP_ntknMM<>WRR0Yj0ssQ`_5$=zZE86P z4s=U&_1$2W_}f3^2%|ZE+{dp70_nWgy0T`RJy#(2t_-J!u|t%4EJ%RWRs)>$`N-)( zFvi~NVK;qnont?vAY2PrtWNzpm49)hbp+`ZsZ7)!&E|bevh2{Cut=<21s+Fc0Nl_f zS_-)`b0+h%?o>&2qw<{e-PxMmADGG{G;#8exhC*yTAX~( zH_hq1mQM$-T~dK*u8uu&&zp5Dnr8Vakn{z%Z?}?;nJ=y8LVgz9RDmTEKD&7COxr(! zb~z%k&uAk*Uu^}_%5nVXzI{Pu5`_Oz3dVnbK8l!#Fu5id{3TltsA%#`^3#$G1&6%* zcs%}y!*1+BGmb0T<&#=iX^zrMN$b`P6(?rEKy46$Qda7La)Br<9U2t$CHCW>>+I!niZ655MWQX_ZUkMzqqCHAzrHfo6qM;{4 z?4Jcg84HL!$mmXl{B5eH@0+h}G+6H?ECk3>E;>-re=utAL&bvclf)&{FJ|@6DmYo~ zQneX0ifhm6U%thE0|(+;WfD(X|3yM9YTIAes**t#g#PT(0Wp> zE0(BVM!ywpp-&Gk%PEW+G7?Remj?zXIM1hwybnk2+~~T}&`g7;0*wCsAx`^A@|@Na zPy+{kqjIV=qIW4porm7!R3jiSS+C8fM+}=Q8`wWesdDR`D#mtwHu_%kP)(Spw_1a; z9rXe<(rfFm7f3EOq5qU7Vph^(DLw;yc3|!ap-XSz*ZJL;#4v9PNz6&JSj>u#U z76_+$~M+p86sy4@&wN1MgJo}&?=y}>})JM4MYl45StpWtHo zEqKc^5(l;49I#_c&!XA3la+M|ahv*9y`z%OVn^HbF|N*9=Gd9vH1H2bV4HNX9~Oa` z=w@^kB(_gvcjXSBcFnE+qgAFSZwrpwI8wFWWhFRRj7J@bLIP(#$KOOCrG#daN=Dwe zw#+F9aFBlyLstnKzklsFm{n3NSBy=2v7!)xS{?*7n2ZdEIFz_;2jie_&69cd{Wgj+76@L6$M%4Llk?}(@`18tF=^G3kE4-_N_KcmK*Ne`%G}hAcqy*Zo$jigB z{XZD5hN5_GUT#T7Q|>}newLr3A0ZJPgNip18zseoEYOmnNsyOwD8npRRqd;Fxj0ri z2=8fVAhV%9zO~>CCoO|c_JDnQ00n2bScOV5V-`{Fro*yw?yT^T$@r+r>DrZJN$+Zt zhx;~=i}+qjbtK@189HC)$(~~~Q=3RbPMyt$e%?a3m^vPQ{%POQk$+I<=7con0oU1j zBx_GOA?X|X+P3<^;kv~J8OhAE{Re{tlNI#+i_>UbmRScF$W>?JZtN2Ejgg;^ZO{Ty z2G=W^Hu|z%${zVE$SI^e_z*tLG4iP*nttq#V0U^sb~LYzJM3nnc~mg3qL>OVH{WX_ z>ca_DqSJCzNg>YZ?I3WmO{Zns&J}sUZ!|zz;>4V%#4tF2oho zoPJvG83^y9G`4>lZE_4= zN?gf@8Lc+E7&obxkkc{f=4LrI5V$0k^qlB)jpp= z7G**A*FP*zbxble8|sW=U7CpJU>pfP#MWkDDW4?tfg<#Eb0{BI8Z)Q?psk6n3@y*i zqA;T&FjzMOVqM=CF}~#VrJsbTRnV1al9P}-V8B#Py%8C(OycX%tHO%Yn=>q z7S_41HLcRBBq>@0zR881mc69jlc{fTysT;xgcsKM3B`wSg6A>UXgJ9j$NMf-7Qmlk zV&JwL<3`XWPs@{0lUgs9&~>MD8g@&7BfbfM0cUSUeNN4ZW%1ksEG|C|Avb&t*DX5B zDEezJ94<==Nl$KBGZ))PY^~+8teZLA*uWukNZnB<-ulm7QaHjJRVs_=*Q6bnP^*1u zxjZlktp^`6YCVq%|F5{?Kb4?kmNjIKMFa>g6pW+H<|X-mS^oz<{-hLyO)N1 zie`PoJEtH~(fw6Uhfco=*YWX4GuKQFZV)I@#c&Cr*nK8z zyOFPM3k|NhNA24XcV|8>&3d#vivnZGqzLczvzO6^cG$8Cv>?S_a~84v zIZeAQJ>o8V&LP{?i#RX@c^A)G$>D`pXb{5Z{e*);Z#4Uub^n~ALX__Mz~Z*qV?Fz+ zrv&9zIPY#|if01u(40|4*d;H#8*Rt9YHS2dHKJU}bsyTgzF(W=_=vPcYz};iWztHs zuXpRnKR%~Xx(eM+hp2;3ldDd(V3r{{>~`0TCrU5N1O~5&?~EcmhD^)`@T6qV`qNqZ zz7n+h+cOT5ZU#_}N9>$K7jk{2fwt}u9fRD-SOQ_)}}E$Y_#{Xy3tla zIlAAKSrM4{K5Oztp+{TFYxQ>5tY8PC{+E((TWNfnIuYmay7MQ}rsK^NrghY?a%sjc zf$Lg{OUfs&%A>korWMHCslY zkH(%eae98?yll$)hew`QDA&(As6>G^W;GHSRd1Y#!J2`Lwr0HZoma8TL!IP#ys*FQ zD>#XK?lCPf%AH|TC!jmWgXMZ!-rkbHxrZOcxrbScwviV8{xLR7vy*}Ey$;<6aTWdv z@^|&4Fd)JI%;RNh(!?gZ8(K|vt;*kgHTP~_wKZ6`qu{tdTpDK+tgQFfGfW?s@qQB$iCsqBRz9|&Yk$v$q8Q@3 z-l8~&G70H2J}lE*7hx-fnmpn)DOXa`r5t6jdV)_?rBkWAUU^zY*O?AN9npGY`8kRM ze#x$UsFG*uo?L8Tj^i>}%w|5xh4{0wgg^6(sElIjMPoL_aJ8s&AECz3?`^4b`&!q8d>Ny7_B;Cj4YEYg{&Q)OAj){uVJtT|6q;&?v8nP#m-eOw!~ z|862-OH^v+I}DV`KHE4$8e@)%cxW1N?k6u?uYcZ>Qjwu03UAHUN1mz>VvibxH~%1;H`x(aimh zE3@=YlsE1W>eW&eME7cyYxtv}52hkfUi$suB8%SqAB@hJ6Rzv;fx|0x9KRSO>6`9` z1Y3hSL&}{N+9Tgi-!cbMS!XiMOlS4xdYTtj-ZzRoS*pwhZRv_xoK<;g-scM$7?&vf ztOF2xkDj2WCU-W-aUC?D_gg!G&ZHv*-HNJwldj^SYnvtO<(K!pk32#es_V8nICyR9 zEw@XwAIy*nT?TQHh&^9}Ucy=Ij;!hX%*mzcZ=la%1j`oX8dYK z;Fn+Asj$hs0f|S9i-W*xm(_{(H|k$oBl-=wqyAttK1f~4U*d=*VV z%g+(+>;YS{SWQ4JYIp@gC z8kz50^Ld}&Bq1ediytNLoQ8H}OA?Zyar8%@n$N7rTfFyWyL$wBoI`6ZPkC3lHw!$i z*B~C+L&9t=LDk9iO(#x2&a8(9>Q*JU9(IZ*od%6rR;pH;x4;VWTE3344T_?;lU^wX z6|bDJ1~3DbA2mMX3>(zma&4gXm6BQPI2`x`um-gBiVhs+E*d_uP13>9OU|g@5_K?I zT+HOj8+4=+mimP(WtwBY7czC;XdyV;0w`+SbZg#7#Qs}ht-cO6`P-&}RNe~%w(5x6 zyof0X0058xcmnnScRBwVHA!ZQ4hQ@{W4QfWk;=bce98DnCww(E*O%kPa@1R8W4B$5 zz3yeQFu$6~U0I+PL5E8q+{m&`@k1-zH2(j+Dep z^{tF&omHCVtT+GCmVqJ4X}C=4?3W;cxoyf7h3ccV8cg(h+jYR2!smWp$bP8q+bNLg z#T!9;sRX}jLFd2SFI`oiZ{e|+^byLqN~6-yGx4*nKn@R0=GUIyoodA6ZxTx&8*jW& zx}A(z@{evnQ+_K+?U*guT;FePYhIUY-X#iJK>dN!(E|p9%AkM6r6Kf+uoOPreHMtQ z<6l&VwSF^a>cV(OW6t++f9EF4t54~v4rI9X*{gF@a}3wbm2IvhHmpVd1a`#~FQydb z{++Gpt)tnS{Qq9#t34w1w4BkZg*Mz2Oy92??(LhU;@IVOnWc$VV56flJ-qzc=QgX<-ikfC#IQ- zhiuh+)!5fGlJ(^ivuvMxly`vzL7XEAf1CADq1rB^+g)$(2b1oluWwh6e~goRwO;!( zY}T!2j`PTg*UyoybW>jKBJu!>2V$?XG|~I_s5KTbhCBgMJQ5mpL!S5v~-c=x3Hk_SrvG7CUx>ESB*S1gP{~f zSs3M`qBvnLCCfI!W+vae8J&B&M|R?|;2ET&VOo2mzf=j)x~SC&`&9bgl~9YT9fWPj z?XqNVFR>!X3D~QYD@$NV%4~jpD4y_D3OVO!ky&gCNHu!}Hd7gO?vieMhO)ITY z3RxJ#bp6=lsZ4qn<%cGx+YPISVg2e~r2QBSe$X+OlpW1djcR%?jXCiRhA5`$S8`?* zH&I3?H)^<=;Fv1J_^i6B3B-73tM-LDf6(e7Pbr648TH%OwiRpfyYw9HA2fJy=pY>$ z^Di-Ad5I~fGv}4*Sj^Y(u&S39-F{S^v&R2ggN0(dOjawYea+cyfh>ohcg9`7J zU@02bleXo?ApwJO%zpsKQLCa4*-SWnqzqnOH=#7de}x8?c#jd7^$|ILv{@=C)B3Lg|ryC(eOr10Az{K2f@PkSH5M<2@p4-~Lkd)1CzW$*Z? ze@TUR+D;Tb#~-}^%zV6X=1S2SH%LzrQ2sGUQp7W?%+3dp)=^6+C|R2LS2KRS2U@ zxXpXMTE8>J9A*D|_sK7h>t?+FoCKCFVhW&E{=TgCaG6C?jO zav$0!B4?F%;ex(3E}fzdMMy(j#c4(P0pxP0U9zt^UomX^x*K=wj1i|!NlZw51HRfx z?OdCHbUWs`t_9FDZXXX$=m_zW zgPz({p3<(5I2NN+7h{-dDv}bFmZFl)3o$4f>2^_BP5gR+61(@!*9^1GAqXUr;k&M> zCO-DuxE?38mf;?5eU$zOVAggpi|A70CmCWN<8wSTs-<)@^dMQz_=Fz1BxPEiLv z7tU&|XNrkrJSW&~y4Hq-J#zn&bMF9e0lTsab4_43L^P?J1@N(BTVFnB?DnV39&bL# z9oT;3@sy>-z@{IPIPBfgKl*4{<=QHTuZc_C@Y^$#!c^eS-$Y$@0z$KK`O9;@&LQl@ zMzpE2Gd(ev-2zBwt3WS&u6m@|iS=FEYEkGDhVLKDcT= zX52})S21E|3w2?t5u;5K8Fo4_tIk5?d~91hw9IQ-2(o+hf%ZUDgC@ulH$1&hw5f{4G9nkabcAm^P_zY91KHR>1Gs2t4Cwh?Z0u@@|d`;O314*m&CD@xkx+b-*xG5 z91-d}nC6MUvtILoj86ez+#9lq?1r}Q;oV|{R~be;ekYdK9FB$b0n7D%5y{2%6yLH2 zs3g|9Pt&osF+O9V53dC!GSYLAWlVEb=ivFF5jj18p!~qw!9FGxIcZB3h^*JaED>I& z=#tjeSh5k+6QcS7sd?a6+a){D6z6~d`-n7Z<}wim$Wrd900es;E{;Q^X(bjshd)d;H&=L*BN1rE0rOw8f8 z;IOy;6ot3WhM$$FT=laDPPR5tNiI?N6RLqlKt~Q}aeLH8@F{ju5pB2#`u0&1UN5EE zfJVkq$B^PcF|&()PyoQI^$B|6lo7`T<`TsFy?wDF-YjCUl5?n@7!6DE+-_aUZAP40_t0zNS>rlzZM9z=?9#HDNF5G6OJ^nE zL72M)t15%n9}y%FN_)?QkMuz2d($49nwM4bTfO?K?KzErQ(4$+AXHvL9FIoJzh8M3 z{TQnGnr2lmO6xwIYz!T*9UY&1$~Tu4GhXu;F-=Uh|pyhQhq zYkczs_J<@K`wa=owFIV4cuC#OBi`$yAUbK!%|jEkp5nY=%dT)^i=`Kdv!kku>FYch zfi<%Q=WBoR!L1ChLEqA=YUAS%>PKoX#_*d4r5&%G&DIgBM!VNNHt(pWl;TgF@{B$R zBY*I%(Ts`s)@@jr#fo!8;;q25+IY@5D9Xeo<=4#$mzRyk1j!@@;T#WN(d!K9t4D_xeSB zQnkZ3L}H_PLG3iV$tsac;HtFt1g!-}lGi7M{vQCz-6)C4nYsHno^A%GvF306gJ}rW z3{f_-4Fy#LjC0e<+y}A#KQ+M#hm6qG`W) zrN0|2Wh0@yy}~p4g`E+Fx30PiDw%R&|GjW@_z#ieAFTHO8QVU;D;*_7AiNGGL%7hoVBtg?+5{28zk?CFh3d&hA*b{ zxDtU^**=$z5;dY@l(EM`^$gP**l|E@D2;u>7D5OkLJ~^6Sr(BeKq{=|nP9Y%bN+jO zBH^jXj_wzgDdiLv{S-lk4*c<$$o{}B`%Jzd;dVEIwINlH8WFxBqz3b|k$gjCo!rEt z3t7^lecMMx*BXKe5Cf-nDn-kL#iN#3#VF2k)v)K)%z}R2C3Zz}w&<;r^vUhr800hi z<*rwLyBO%B46*ZTvvw|Dd+O`Z;2%W}(iE67pmmby}B|o}=Pr^e9*u0xlYMn|ik3|}}i{Q#ObKk?Si3kk_4CF|zSLfQ8nTEt$tY z&zP;~!@ApkSQW_VPg=sHbJz)m76Vt_|AcXX<W`P%Nxt7z65-RHC4{2`)J2+2%_dt5b&1%9HF zx5q1DBbH#+sc2zl+pRA@w6G;RamdV#vK$aQwTZ%?C~SbN87smDR@s0&1`tB z6FM1xIYZ-_#3JA*nm|<~|JS z2Sv^O>qd;?35Hh4UOT71(Mt{ zx=TAn1jmBsv!`i8Zix_rhbCnq;{XY2ZKA6 zR0_ZZ%kKQxpHyelpYvBpf!;-Cwd04S7>z23tX*)Z(Ghv_{nuUv{*<5l)SfNH&cT12(P!`{bHCgrE4(_>6SoL7}B7uc>cB^$VL}1#|xbFweoApKD6Mr&QCYG z6@vlr-vX!=ntS*)Eq=ZwaPc*%Hv)1MVk5&%f9p5edFB6CSLR7%e`1(nK8+dAA5<$I zOYlOPP?fnG6B-PhRrbCLGK!@R%K+a%*{@cFG5yH$Qo! z;vBp_T<5mICa157b8v-!Gi#Q9{Z?z<^71R~(+r!@RH4elx0@6`EV@(Y_|L!{1cU`t z(VFgL7~S1(^F$RSQM`^qT6p6$jOfRh-?FZJ&(A%jhtM#D6`657Z2X1h7h)~L1650* zb=-TyPnEQ5VeIwn3m}GP?7j&)F7)ZSCj@xRg!8~b^NLE%F)a=r3Q~o)V-#P|V_rk+ zcVbV1Y->y%;l_1>o7Y_-h7vB5`4UoA>aOBuE(>}%YKx@nh+g4l_yaHxkoCG2qb8q$1{)ftQ9;cU1tb^K zoHl}!Mv5jeKQ$pmB$J4)F@9yVqq?i{N;R!7a_&hiSkMV){CH68x~n2 zLw{ZEJz<_uN&C>ALDh{%^JDOFXh~XySKDwUTeKlRm?5bHlHU$3i^&UzebIA8#bx7Wq!r68z=;AHBTW zB+dL-rbthMcHEp{l@EYCrjrX9^W&9Pt?kG(`2+Yd1L7~_g+5`ej%6cjdQa;t3OL|c z>Ex|MJ508&S)>)@DTS;kYB9NOv>a+!hU5uPFqAd%k^f!?tiFXTj)GQHpE>-bBVd4N z!ZoWfB{GY3gUK??s<3#Ol>M5-4;Ft{LPi|k>mdBWeH7ftSa=_Ym*rSTGb z7(W}sbZ4W+6x2+Emf9H7*JNZB1*sAD+3jZcbrLq_>(F`r>S^DV>_a@p4lsmE;mfsJ zQVSn-=%IbL1{FOJQ_a!nb2Mb|7Ob~ogXM)u#)J+<r`631Uy_aUuzxy^*&m_Z z*z2DaL8;vVlo-6nheN=J-7ro-G{f{YhWXO zadP0;zwaWFfyJ;kta$f8zYCscT1OKxuQA|`$2>u*WOEd#;|&;*UO0;zMeI6# z4CJNeVPdK9TJhAIyvg}Nhl91$xO(yUDQbJ;2hJuit0_c)Pvg<-`4sc*GrXVYJp!z? zz*-v-ENZvp2G@5l{X_(DxAFq$8SllO7CIxg?|96 z`{DZ{JD-NUK`}38ua0*w+&GAM`9{#&rre`6_11BivWQM5i&&|#*6%BIlSWXf{2WfR ztcWM_vprv^7^Et9_d4_O#O0c(vf?v+B|X@eviDgd@-wuA&$by{)%@Cb zZ*VzJdl};MJ?fJaFfRx_)Sn303wOQ4SvkxN*}dvzY$jGoMUTO>^B@jV-&v^)*I3wu z(swv^f_=U%gqMJ{63;@s?pjrALQJD*zBlx|0GwI}C?^gn_}^3y6xNRYl6*`)#%ugW zf5#DClTOEplp*sdS<>1&PpJ6FU|^Rq>_R};DLEkk=Mt_E*D+=M0?&b8#<-1xzJtYgu*(5-c~2ID=ZR!6wnG8iv8Gq)yPlMG+aPt(qDc63`0cLs~uVlRJ}0TlQey8KBL# zxz8)CTV@@*)9l!u)~yC7GLK@?UmhB^iv!=`R1MXAzD+j}*r3IS15bwgxA>;-DfZ|- zIUQ_s*PM*dYv-!@a%Z*0zbfidLk!(Z`)^gLFCHy`7zwwiXc1vT>I+;Y76f3YKrEDQ zWTpC2>s=0Z({CdjUQ#{P2?>P8huAmSjK(>G@Altwq>Pv*Rx`Hh)&yV@up~n|hxRT9 zyAnxhUsBDUZuP7r%Wh}BVxzzCJ54GFJ$oZ*Mga4SN<*lds@t=1x_Iqovl>!@xE!AD zg0O;cEZxF9YjftRO)@y)HlB~*!zwXdb$E~I%(!uP!(xi%6ntzaZ( z30)GxW-G68MuqF1@F_-H@&N5lTZ@yHm*QE+GPz6BzwH#t1f)wp(d`yv3j6~&0_^VO z+=+ZazZ7P38JiH#0!r($e0-CvIc@f>sri#lbpzHyGLbHyeB?NAGH!ToxHjPE^PDr> zhyLcoj~2{-O$_z;cRrI&a+pcZ6N?J=m-S9;!;_RUXEVVOp|gjk+?tbef}LKy0&)r$ zG7q0DOHhWupD>QruP?cMUubJNo;1;uH5{RMZS<~wB{xum?U|BS#~#0LkHuzNheVxK z@1yvu@{3Z^5d3JV=)}msq>{b>C6#w(ye7 zDcRk}s*4=gRjH$%IZ0Kbg^U3r6iaVT;IA}i_TiZld-9}VhvhsUEwN+>mk(RlfC@wO ztNlHxCT@l>IXLt;T*mTR8`kP1ydsn}>)m#Q{`lh$fDtF~1OrMwOWGc7RlfNHFdgkr zDxbe@rl8>%7ECi3!mTj83JJxf!3e9TVY1v(s}@_n22w9d)NY{z+UV zbAGX^8!4(bDA(BA63r*JU&luoK%LkXv7I&|Yj%0b5jSlRh`%P|3s&1~jjXuSd+u;#iJR4^V3+?_sHj-hg zVjqE8l){UdXE|zxhU30Tb*O*Q91HWkk9&WFN80QJEn!VD$X2(lAMm~DFQ&uSrgNko z<=%WyFRyJrLRIiU@U`-ndRJXWN;a=7SR~31?D2QHL6E!t97~OjVtobqR)t@hePshXIejBk$gdUUX>& zhV0LWEE@eo>#OjZ^X{k-HRtk%1+uC90sQRA$C`ab`h@oG2^-mfNFS$%X6K22X0qLa z!<-c;KLKy+%9cq>LPW@XI6*I9n9GRMv4!r_%S1f&Lk;Ffn=xTLXOvgoMM|t2CEoS(s)mwz4r_M+z3M>J^SCde8*jXETo~Z&BmHO_jWWnxagwt_JpK(hWZQ_f& z#u%eRs+Klji_R7mmWQ|p>jHA#0Bus z4PVTWvZ_);oGr48uN8t%Ow*#)>Xr!$m@j=016MstIF`#gOlIUq$0K%IDbd=dl%1pF zkA+5POuo&$RoUnjUKBX9kxXexZAq!*VEmFbW69I*o0( zp$Kt!%0D-36-YHbrj?E&E9RttKjn>z#i7kk50L9+nKE4~@k8s#B^MOuNQ->O z6n0fiZygiF8@z{`ig0f z-|zebKr3{8mEBq>IuvFi0-6`{+ zbTi;QlDg?@OAf0)K>_{%qS3s8p+*RpgBzJ!4LiGPmvhS2^Xk+c6JE@TT^m!kKW#nj ziFWC4c7{*B3ln>X`flS5)Ws^dV)iK?MTQ)!A{I|pWK+?zuC+{jLp!zL{2{m$rw0F| zFK2;=)tDo1w1%^Z!?es@)w78AG<`~`LjunUFO<{m%8s6?Fgscxl#OFm6&xn4F`4~I z+fyoeCu0`4pR=}LszzkO4KZum$#0UfFY&hj0QBXb3q`r>XhUAK>Vt#Lc7hXn}&G=a6gN-%Tj1olBt6)xHZ6R=>?LEEE z-=8s3qv-R1x=6}C@L$nSgMR=Xy-h#xJ`p}iR@&6ha|&r3+Zw9jXYbaaY^Nn*96j5A zO)d88P?M12x518dAq~2PnWEVZl<@Rv1V^Al*oksjr?1x^z-DoMo%{R$O5QFrVnppT zUzxEE?B|fXTmx^UuX&I3MD7-lTU|E6J~@QAd+JK0Ycq*ghOzTUHwsK(v(dpQeBQYx zrxOXjB1b7ali?#zKCu-=U!ilI{VsIWcYZE$k1H7x9KW>4erI54KCApU->BN{^x4z< zi2Li(VY9s>yQ|LqH(e`k%XpYTl%>fBxc*N3XB+Riw+{<$-g}>Uc0;DT1^$~XjO1Su z6%A2m|j`hz^F9;a$xr{%AS}w5p1!wsVnxW+v&_RaCn7!DlB?i}819B>^KY zLeQ?yCmBhk3GSDiuVoP*b}V8@&lrc|l_)ovOk76g%Te`=AvOWx*)1tnLgSW$i_Qsj zwfIbjPJGMO*RbCPKiNUG_vv=NG~QI@iNovf`!VQwXzm09Qg=RwJ{ ze$s7Wye9AMH?BEOO(v~<8L$NVE5WsDMVx{$ zO4xREM>0WJ<3Kf`gI#a+a7lP{1ngmRqkok5OkPvg}&Oqp@vCTiAw*kBpxlj14KBIw2Pxx0pYpB;q~9hag#9oqQcU96P#E>V(6ole^jPo zw8MV@Ew^u&H+!mN{{RZ>-U0vs`UiV>3jYCN`#-DhF{w`voY6{+@=e!nbK1=SiFlg? zW_$(rvTT&zt*Jsop1Dxxpg$aX9ypgqWhUdOJ91hxGVt;7&{MvAH1*m_Frg*69bW6s zQ}56jcGD>264TYSNydHCwNSD4t?2mQU_c}`-MUeH)OF+Om2`l9QP?u6HJ~6PScTK!cW^8F@(L)3wnu^ZE3Uw3q&VqXQK(@0qv>i-vr&Px{V)@@~C7d(%(eH5-Z+gFcdEoeFi7-SfB`t0< z1IHx8MErdQSAfHETpLSr>gkULZv{Ckw5Nj}e2H|~%G=cZjBEnf*qNd7`WLRM{UN-Q z6+>4lrxKTLXpZ-+1d&ced;2QC2smlz+wzzn_ue8SkvQc zszaO7Iio*i5V~i%_di>O98nO{1cN0n==Vs59U7gg!dPtvvXCwk&Ph%7(_|BG(s^V} zR-G`&mG$2VZRc{j&=(ypK5ffHG=v?57E>y8bWTyJk0GXzfA%O(ue0v5I zuwz{CnJrn6Ef%Q8fy8gJiPvX;{ms6M5Fz&lB@j~*#q~;z^1OCye_f zdS>Q~fjF~VQ%ILHIgO28Yq^cdu|oHr4)ar_$7Jh|k^lzXUF z2kj+-jg@kc8;I!MPFdn{7lRY4Wl)e~uAp z2)8JAt*%-Qc(FL!Z==#G888QuIwOm&@vjrOl1}+%jL>75IWBF-U;5-VHkHUn==gv6 z*|?6!Cl6H=RW&>xv$azKFY!=}|M!zTD8535c4 ztiWI79beRki04|_n6ot@3f^<@LIJdjdEm5WfN#e4=}t53lP~ZV4c6=z%iC<`DJ;nW zl!0=r7_THM?+cRTb!3T@2{3(vi!vH#bH=ic)7n|RNQM?X2g;d%iDsrmkY$-ZDvp6N0NiMIZ z>jsnfBeu^dt4?Hm=LanxS}=9ZjBxUvnq^c%pPDd!fJ1^5e_@H7V!&1a3L?_HzAJG< zA>q|>hsIY?B0eL)70Y!>sN5gG^9egOzl6f9*9S$%F9MP=C$a0T8Otlb<*})fxHMp8 zo2v}Tl@_4^>~+u(6s#eJ6JBj-04rpT$!AGy)5%!jcT06ReVcL`CL5wxDMK(xgC0pL z6gROCz&qKb(rzLbOokip3pBxqonCmDAc-XgYe4bb#Z4-j2^v4>q_)8u#9!{Vd{&<5 z87i4=O6{VTCg#-(@R_b{nMv1L+1y``U4m{ZzaINDN_)Q-o$Cr%3XJ9~NRL6NR&%8& zc8~Du&_z3&(Pwi!=7SE)>r(=fGC{|J=+bT%rp)h)ceI=%W2PT6LJ_n~!q(1;VU;+` z+-v&+{Z4!h1e26KEhmd1oZmTVQ{Wm~@nK$EkJ^-vIAA?TBOm2*Q!b{ARz6xvYnK_y zoaJsx!-9>XLkEQ!X$~)kZXd<}diRznX`A~xYevYF zrH+|6*CB=;=Ut2ZMI_@@-izE-4GLdHa0!W$Xfq$nOX8#N`~H-_WoZ#})3ADHeElE_ z&z5a6*7zr%zHwdX2C2|OR#>sT?s1`(Db|JTaYLA5x8)3PcHi+Pvmv6Dkh&fQNzh?RbP^1HY@A15`?)t9e9CEjvl{W?vYH=ObxJD^?gO4 z!>&B6nB5sAEt8a6-VfqR`D8aaDc*r18u1H^Ozg@3{K-(zP%^2bRJF?a2X0&k@+Cz6 z5#Qc2`~PrsSI)EAlL0{GRhOUqXL#($+6P6ZySMSr!Qp+WpxpafiwTqa{2iBmxf5&k z&9Clnb4fosgPhd^FOE5ImLOMq&rFgak(9TZsEsB^Ps5DQ3~C7f9FGYV1ZOt~zn%7% z=2y)hXrN*2>;9&ZEKj@{a!%4~%t3}+*<@C-TD))I?(o}t`a>}a zW@InRspW5_=kT2_-wR;0W>@z3SHn?mqOhQB3*#DuAj&+2?OmvMYE{Gn=wj@@y)#z+ zo5nEX-B&HPVY%gkTfq|J2x>}RIjD$DvpoQ9FFFAn?s?vT2O+FA;ul^a}c8wbm@d>EH+ z;ZJQ^DOiDa*FAlnrqZwhSUI`Y)4$n?{SO!=JT~+AQ{oRnJ}aasmcXOi&hvi~LWX7} zFo9ksj)5#zeI@E*F-+&2@t?!#GsG!h+ZKQ`OqTKT`F%6#a;4?02V?9&EJBU9@=8vZ zL-h~fr!{Cw-2wziCJ25~4k9OGBYfRuE zBQZnt8nX!D?W~nWz#bIE)1?<>1lcEYWaMes#Z-5^AA0<^Q&P1%F)}_rqFJaUyU#*} zEa~kH7UFcXZM*e01Tys?4e4;3Puhb7ID(~KEmxc)l>j)bM6p%xE1uH-K91~u zP;_Ep4lX5mj0f&kQxqe`RN8D?R9PfyS$+~TQvR9MS=!jX6e{*X0 zQ{dFFq=v)G(f;p*GK_eje+H^tYQ18%hC^i``!ltixqfOk%}QxaqkW`i-<|CNbdN#U zV0kgz$RQ_#P7>U8aPVs`yCQh4<^_v6-w=D07A0tpK-l^IRAWl32tM#ihuka=7yjCH ziT&H$Tz`aD+9gn;gs-1CbolG{ee1uUaJ@U^5b#7eQK4{S=M0l9M_>_;;^&x`n z$Kx9E7MR)8***Gy5go_@t6R5-KKF;mO}#1F2wI1V0#AVk&?@Ui-s1sY*yNXi2Sq;= z65HgommZyp%&E1L5;4@aFG16ZsrOIu)rnef{io!MK7WF^>DA2x{r>4S4}(?9W1ccoaqMySs&?NPeL+ql?dYW67|IC_ zMxzr`L}ZvpYltJ{@L+ZglppF7qe`sEvJc0Ajf**M<~Sl+az`AEl9VQ^e|P`EL^uWi zw{pFCm*K|QyZ3U~zD0!s7a#gF6x5@s{{YT&e%s7)(^~YxxS5G?o|>-ajg%*(lT=UU zHPkbhU|i6)mp?N0*ZQG(m zWMo*(AWJcl77wzPSr&^trT=9n7(WQ|cd+kjbwuo$FO8WQ^I(TgO-K8%KR4lum+0Sk zm^&((VpgB$A!?lGAY|Yqd^X9TUG`BzBRdF;e;Uo+aQ^*#kE1(t5{($Kgx}Q4(7pga zlVMEbK6ycjJ*4sEKsvmdQz`|C6{b`Mm6A)~e;Up>#zi*hCmuj6z>Z=%Akv)A$46as z4~c&<Xd*uy#Q`Q8G9P0ly<3orJVX&pC&GOzEd4AVOx=L$EE#U}KEsuNABXY(GUacmEXoOpH@R1P%npB!1xc>g($Ik>I77HJ%v)@`hNglep z1?D$`m31+9rFRd`*Xm+xLq5CF5o%|P!_~${;31W8R^d3emVpQAhjAJYB)=i)4?7DY z%mOBSYd2f@`%>&u24_0KM%d!_UDKvWIq}0$Pm!=HA7d1aIa9eaCT`kN>NKD(h%%O* zBkPKrQ^FF&&M(!}E^x%c-?s=U`G(#xT|pJGm7{@9+>0ec>xc|J>Fi2QaylG^RzY)O zIG$f2@2%uh7HBZhgPkSJViKzcuktWLpXru=kdBwq^h;cgdd=8ae9ysD1k(B17)rMF zVbpkHr_s3nQAyp^`h~VZhc?YgYTK3{LrSX+hmU-ix6T6xskK`ZEpbn=X^rF%WvIGG zje9kD7gCMYsoBCQCPm)(=sRls;bgzBq_45Z*0E!ToAujf+{^>B-^dkvleSnR>D{}kw5E|2C# z0DR9~n($b+CXLYGr!f&2thpW_o4+Wzf@0!;%U(>qi9Su3Z=zJDc5H`_Zq_;S(!Q@} zR_A!DJO%Xn`p6V*Ad+#uPrM$LnH0p4&1YT_l~qpF@I5)-VM8N`PN;tB+;sKw58%|5 zPap`kFWtGAn^6+;v&n%U(ihuKV^TLs{!?$0fPeY>T*lL@J^G&q^O>TE{^9W{CCfSx zHgYcBfd6~VuQXwilJ@Mg^HSIKzzI;E8*t6ffp8DisaQgNhWZlZ8 z080`aU+kY9t~2csPlDC?6bqM>Hk}Y-vI!*ZLK%3r&xrCuH0Q1<#}S)*Z+HgzsQKrk zH7uwUQ-=H7D6Pr`WZ&u)A0W@CX%F<$J0);ymLBrYOaHGbWGC!Bt*vDxJ7om_$UcdH7~oHvpY zG36&&=n5zGswmbS4qBd(WnmdPj(?-JjI#56V_D7}cx({#ZoG zaGz(r?>(6hCS?;iQ@vY?|RNo>jl!7D%q+`bFzz!6aux5?qauE!%PPfk|MM6rdO=UJ-PQ3>@bYO@^ z3_rp~ru7XbgG2(SI;oV0+6rlhwzbKI8k^6CGwAH(5b#}U%Y7N2mjSYOVpQ$6Y-8xG zR{N1bOPQcNuz;K!T;hk4r)dyPQ&>}5=-3Hw;M<`^!YIS zrswxqjUMoHs_~2V5isVf9@52r;Arf-48NmLCfs`8=@9Y_f)Pjp&F)yJ--+nJ`MX!kme#=zQu8B#M5DMqnX+ z78`1xO{KgN%mjQi<>Nt~fLi`#ypCMNR$7HIzqLaW3^U0_{G8JEFqK2aJ&~|re$8kt zv4Q^1*9Uo??8>t?=rOis;JlNYm%cKF?Loo4GR_a!Doy*;b}vDe$=JYJSsN?!swu9T2Gria1N--;|fpRqZ{OIIwUv-ok~pRi;51_0kC zrKK+T6gh3e6|gE^J$gxl)x@*H)Jx(|YL1?2!fvprrTD3>q(c!~2Uo>VnPQWlCRsm3 z{ggVW)oRC<@6ZlZol;^EPUBf-m}?W*)*C@yE1a(>j4!VEpY_`ZH;mb%EYIZJCz<{L zhV3P7uUt7OtKqWBk&(@DjY;WiVcO54!Cvim<)DK;f($`Aq!ahR+W@8g^6;3gDPLaW zNBT-MiWHRi5=+l2Fy0$?Vx(c@3BSsIHAQ~SN3~#dzb|?|3vKsjl=o)@!O?xr9{MKn zd=e7B$lvpJ~!J6wwa>RV3+5m&D$F*YU{19{Jh@G3fpZWN$cRQ34}fY{y9ud8@lcbj~z4vD;^Y`T zQH?c6u4M4y-sWSk#>&ZhB#SbhyM#8#wn?y3ofb#4-aRawac>MXDs z@bf1nAes5PV#R@YQd!rB5sm)Wcz*y)k!6wd^;jQ0n%$>FF2^}RitoJ8No5#+49M0S zEo@{|ZzwYb!f`V+cd-1~C`e7XU$HmZ-PeIA3G0mPd7CH-U;Hu!R-AQHZEQR!NRd zD>r2Rej_etrjuOgulS!Lp3**eVX`+z?NcDC|BJo1jEbwvx<-rO?hxGFg1Z#KHMqOG zy9EteKtVxp2oQo(IKe`YLPOyYENBQ$;gaOb(|!Bx?sxPZ-+k}+{@weh#u=mbk-hgi zd#`!cnsf0{U^dxS<2Y`yt{BgRRh)HY*<7A=UBk6zM%F^uJ<-9QNXwvtG<3#ZZ~ep! zQai?CChubmN4o3;$s!a({c}`>3UU5iNLE>xSM8GeoT1D!CV9ZD)}~{iOJbmK z!Wa+0_zlPqp&_q&A5+4!9Uu^bmE)KjCrn8WLP;k0w3Mxp+~R#&L$0`6_VJ`+uG2#3 zMQb&eQa!g#jyMKtw#eFRnes@ch-b4~-k02%!juRWgDn$FW*edm^ydR~?8_caaG{Hl zr;rbx%mSxK%jxp6yfIwQAIPjjZ`>4xL#PTfMw1Vw`W~AzfRbrfgj0z_(*~THYM8Dg zYdZ}WOiK0h2n=O{&?1yG)9zdGp|o`%bx$^}is*`2l+NW}HFdPJE=*Ubhr{FZI!w<< zstJ+_o=Sa~-8Q#2FxQaA6AqOTK`4Cx7Ml7$M(HN$Q{2mi8uGD(JN3p=$k{iHZ4!z) zx0Y6@=yZ*>;>bA~JQzDOaw?z?Xxw!G~8ZNiR%-NvMj3}mJ+-a zwTL#Swc;|@1dWe;HZ`G~w{>WmlS<*n(|Bv{^B^h(>(cCrYPP_wN~aQm523o$xw2O+soW1csS8m`uQ0U*j`W zxs+b}@YW)JdVa*~>8BqQwQO6NInU~KHT1Ea<|NoQn&;NTK1TYLKy~itWFbn*i-E@1%3vlXh z(Tjhy+7Mfq3$jH>pZPXuoWqa>B$?O~UUF-tR*?EX?_(!sNdP zH%ukP9Xgp0J)qJc4SwInEyAsMR`=4?UR6YgSxR)Plf}>=%~0`*DN0_I!Qubioc%+I zW)=wcWQ&r}y!_b42+J8us{M-By zjbWy?#&OrOg&%*ZOjyqoJ;3@6z>DqM(EjyAx7L53kKB><8_xsVe{wk~A0P#}0|NU8b|C3w%voWd;}~$KHy9IxZxcHDVVQU{N>23`jlO#6f6TWC zwU-OzMtTs1BS8`lfpl4NZT~YQ5gpd|GNoL2`BeR62ezQTSQVLB$2-d|`Eb_5Gv`$f zx077<{dr}QKCJ*UAWPUk!s2b=0eH!8E53h3|K3AGwV;X=(nEE5KA5CT$TO~V^1KD;tjbH zU}y#ve@!wb4&U-6&}S@Yr*re*?f_4{Z#50}0geh$069R$zdDwq%LUTpZE#+yl4#l* zXBN4Q=u2jZVpNWQ;5iT{5TYHFP{+|dex+734ianH6$MmZ$z}mb#3>OQEviAp1}Axc z5c@i6Zn|YJx&<=xYf)*ywFK&^x$8M*c_T}yF`BVPSiDUAWwR$bTvS#Lu1R&7W|d?q zN6RyluoIE^;E%nFFn}%}8GYY{&!tsD>{ber@f46ck4lS8z+#qq-OSd|ZE?EXd4RN5 zY;umNtM_s~Sq);O;d+nVQeeg90a173^=di38T8KtIaORX)rjVzv%(-^1c z_n$*mdMNq~H{UmTkOppU&B?WjQ(jvBy$iR0y0E4@`1dYI$_R|iyGfs}15ty@KmRFEX~E}3Wp?aN2)wmZ>Ly@3w{s=5Zrs@+oL&gBQXstELtsAroo5Nsod^>@|8Q|y{4K56Pj2|Epg?_+=xZIM^j zqhbh*3SVi_o%!hg)1qe(KViov2#Zl|$c{@+;gdpw*m!Nzwuy;B#Va+i!~yMoPl%`3 z&p!hcR(c6Om7~u*l#xJ%c9`xlx3Gk83XvudYuWsF(hPbi{$urn`u!D2a5`UY7NX}2G>pvLDO7{_x?2Z+Y~_6xJ@2#H@WA;S z@ZWULIR4T-!{IBm;a}SGE~fT1irAxY9K~R#J$|*Epc-W&RLvAwNg-mhG&cwQaPjrZ z`rQw8{5xhPc}=Z(0)$5b!l&U&QH1DbWIkHM|4<#ti}gIICwBCEzMJ4e6%E#}scna? zyEroDe9U#3mNw<>gER!u<_nL60X!?3y^z#Utt&;1@~uYw7Ru3h)T*5RF{(G{ai7WA zhthLB&9!30&dF^D*KA-Vn80Om|e>qVr=tT&GjAQ7}HmmMa$}O zff&A8#I@dpg63B6Sk`E>_eXZv-P}alpg?8^c5nAA8{v!s2K-Y=ruJOv(Zu=E?(};- znv^Fc#DJxk^qR2K`+A&d#`B(HA0JrBy!&s!3K=l6H`H4+SnGqGq18@IOQ2;H+Wv8=x=ks!7VAUGLXz^TlC}vOeNfye?v=I7+X0us;MDrUX1j6< zwyBpMd`NU*tBE!-N$rhPf9-}4!HQmhAQ{&ASL)G&6;j}++CippimOfmwth6 zjZd{zORtDMWtH|^1^Z-;c#4KqLsN}DEF^F8OE4#bRhaap=px1}?dBBp?)u-b(gz=( z+b!0Qx~iiY8gNbC5}Kt>KF^CXj`ghX`177s{W0P;JJ@^mx7oRD_{pWTf1J8|+a1P}A$IV+FCrRdYC{)b+H%P%$_Dnf)gDwZ4*?0; zHxcWURrtjFUk;HROBC^iC+)*06 z`g(?fQby=E;DJ{eN6LGCQZq&9%tU7Sab;XU_Gs}Xch6eOWj2RYhos0iWN|C%d`Q8} zc9XEXZG*a!>fu|P;8-Qr(=U*G6~aAg8;c3Nf){(RBn%%JChof@8uwyGe#2rr29FQp z88>Ay2JKCvF828^s``5LiQ9k0dPaY^&aHD zqidr1k#75K+m`v!CB_T5Xw$ck{GbbUS#bb~?^-Ixj*4#X@08ZQ8E($9eadMKW-g;u zM&V#_W@uCsue&Hx!`N=IJ4^!X4*5%C-jOzawk{iXLZm5W`$Kcw=J_kIGKUrkzBG4u zh}?Hal$v>#;+L0^=53OYH&eL3*_xRO>5Yb&{h1m~r+p1iZRT%7B?-}HGSUH0kniTe z+Y?B_uI0;d8gQWxeQ+1~8AzoO-JOlDAa|$;HIfhZ1U9P|5=-pH&>euc8*v0>{+T}-~0w-Z*>0^ zS*xA?=Kj@-yOB)rqu=vA6%Rfag{iN>`DnJ|PrWitI~_3Kh&HTF$GtT;mBs~nOGP`S zF-$Bs2^NF0H&~*C5R%CnTHMg~1RszLeG_;kBN5`gMqgW$KV)FQ1zWC_7L8M046RrejQQ#>P>RU|N?34Q}VAolE$AC}Zi!c~4>L|{7WjTTDH!)DtZ71iM)+?bq;vJppqI zW2`-58&fKs5$!t=wV(1P;0U{uFmq^*Vpt>C^@+hu6s67Hct4X#|K@P~In54k`zK7ND4&Gmh1s%PUO5~yVtZtczvH8K=j zGhLZO8XOq4O9{qD%h4yQ%OIDfL*+|f`X-BZX;F?h=MqhtkQQ}95|JoM*w+zt0+0x( z)wZPbMTW8qrpbNjYR(B9aj5k8?-7e>w%>s3sGqsoQY{ndO%8cqRWZ86Pz!TBqx-Vn zE%mpgugsjE@gZ``^_MP=W@ewahjf3LA`&l%ROnpUy!(p(?(d4C|IWR=Oy@^fk)@B; z*>dgC2yWSh#f10flepBDew&TUBY|qaRU|@q8GfTGPM*7?CMg{VJiJG~=O^ldW`RGi z{B!}loiFoFEcfK-q7MaY?WUysH%-=OxBo1dU0RROrXRUG#k%ohJd+5aWC3572d z%&A!kYWOI?VB&vREGO>l}-f>@@G`sna_`zy5LNmW_m(tY$!AE{lTCRm0(UWw8vZ0y3&njWjc%rM-6W2I}I!0@C3=Yin9g?qKUR zObg~+`3>-K6w74E^6UR{h%9Q^s}-By6?!8;_Mt{%LfcMI6pvnX;mTH-Vcrv66WLoE zHIb4OBu`_Y|mF)sUUB(Dsm+|^ENGCQ6>g@d|PG)FZ5S49xq2lp~=FTGgTp;$hy!DK_=K3l#>1+(_26SSJplI71MsV(nOzEiV^?7LtDY>pvsl@@9v z6@4S(C>A!MrB@bK<|a*kcs=|a`5rH}_irE@NOH~j1>SRBQE&0MurkjN(qa)WlQrn< z#)W+`a0vZ@D$4Jd-ZsF$mWt=>G*zl3>JAsquaRKe6etQc(?A3#`a-{%E^lxOC5>w{Tei6*O1bCu&;y+wwi&v_vKtC)H;#bt1( zZvcO~nCKa1nlquvnCXDVPzQ}gJAL!yC2(p>T!*b@xaRy+rrBw<65hURppq;LIc|X)5Fo9m7Dug zMh&q?GAuE_0ZUIt_%WxqUpOJ5N*?X|ZbMMS>Q+C^m16sU%PP|@z9;R8n5@A$ve|eq zfGzgtnSTTHY*n31(2u|``L2DcNLJH%rWY-u>&`N`MFdFsHu8Ie#ue4NU!D*eP|?u5 z0h#ddxiisfKD`S>uF^yepyOzBql**Axq#W#71m7Tq1EJ7RJuV8Me;I_JkKw)&vi!M zA2pw1np&}q37ad)D2(N2ADc9i_Ix_=%;;p6W!1yFHD~nQY5G2A*Pb}GCGa-YEA3N; z{a&(Ef)_hEi{A35mggtNM?x)}gV(Rz?WhY9SNHbb6%XITToX7q%y>u)>UO+Fd9>h+ znmi^uD!cooO4F7XjydG}-> zp&ZR|-oQh|bHXCcT3}V>EZQ~$??JLo;>N;tC@Ojv3}IM1=za+b4SHB(Tqz&eq?Qek8oW1l>_ z4;uwi->ydl!p%0Gj;K;bK?OTv3*+?ND2d(OMer0HH6X}1r7aNWCoRjX0g9?{t^YCHByc9cx< zrtd}`6Ql?ow1^m$A4a6^ec`6YU##d_dStZB_Umr8N2pe0_|GU!f(=6=9r&xpPcBKf z`}$&mKs+NH_9>dw*7mZNqNX;4vvZB4qPZt?P5?o8YydU7$j+S4gd)McNFX&H`ByV; z!Rr#j(stQr_%Ma=BiK%6N@tqPF{4 zWESUB^PJvlB$e40@5DlU0~qj*BQ0O^_Qp17Ah3}#gu9u0s-GfEoc6sbyz=`;I1 zoxr?mvMEdZYX|(xn>=Hx>0yK+*p?qRM7@|o8?iQj@WH+^?Wqio=oHO$Fi83wEk%%e z?G@|L5EfLsG0~VL2(&I&6C8$g(8qd!)+GWC75iL!lcOFM>8JujN$uNC zn1jdFxdw2t@t}F!+^{2sxQ<21&}+E9^=Sx--j-8aUOr-deAg$3K1bq+BB80%Cg4Pw z3RAg7OF0J?c&|J$B%b`m^I*0p2jQRxbB_&_b!sx7)w4wxS*f@n0vf? z=KF%z%|yCgdLz#EDBg8S94vZ)*33i|sd@pc4mR-O?qi^-mE_G)O1X3ak5&%_r+~Vc z59Nomny2GWue+PBXE4kzFd-&}GFNd^3|@`>pZwuQ zyrEZ+=IaYurF)4aTCP<`eS^Gr#d|r){zl2d(do|0Y|r8vWp|rj>)$r7P!f;HZ}_UP zvpPz&?6H_0F$-6WJVMec_!EtairFc$A_@`@fiq;!sRDg}A$h9usb+w!hQ1{{pqQ|L zB#8&H8(j=UPil@0LLUxDVN=o<+w;)8u5y_1uu0Pm7bT)+3aOSlY>e4AJ*#I^|4$?G zlnI3m8~J*Tic@X}o}ClBx;FY}M)fvhAd+X}NIc#Kn@1d*9~|I{DHHe7;g&LI+ky@r zyWx@hDu(&&!3Ew}C-^SbAlB8NK;7=5hwuos=JUGI?xInH#$9w-CGJ3(&ngk!-uWRs znD`PGBQgO=_{i6RcV6!}5&R=#y9356Q@F6Om~)su}-up0sK` z8=7mc_%JD_9_Jn}+3J|Wz)_zuy;n00%pt~*TXLYr0J7V#c&}dGWnQ@xDi`~)sQ8AQ zeX14?6I8T`sAC+O@R)&#?*#t_=tgT3$asbo-N3cOcexxcLpbv&+!C9EJ5Ar!@!+Iz zE`YScGfRS00}lp0qUmS`14{o{)<D_xKc z{=jO6?EzIDv+{7Hs~@GE7f+T-g?W+`m<-?%wdIzPkInBm7ZW zhvb1LjZC_sLx8ZlT zBmDB5Wg2w2tdor9uIN)NU*d!Vr=wl{ONz|Kz-&fRy$s^ZH`WL=on@T3>y?iOX}#0O zG7C}P|DwK=_hy!*C$VKR-5y(lCmd zloKW@N}P3>P?WpK$-Iee*eQdXKy)$a2_k@SRQln6?E6%+!cZx6Ah=kGG1fb?%c=H+GCMb&l08BFW4~9VERmlCVDsi#uc0jw|%v0rt~t#XJ^Rgm)5!v?EzDx za7dYn+edZmbg;^(0~3O94oGi+l7aSp{-*@8P5Y|<)hZD8<4EW@L z3{&uo(31x4!?M7t(h|o2BoSE}Wf~<)k}_kCB_Q>S#svd9ypNbGK`5b~B5R?)0k?2v zU9?8S=af!OGmPche6+jqa;Tdz?|i-VhUFg6qOoXYY0OjeFdK|}UCNzp-DpY~la?hJ zxpjtQY-_t^Stap4Vhhx$Fh5g%AG_X)Hh2K1!Y`L|mq{Nh#XxcY+klI}<#K*d`Rb?= zuPY=8wGB`&ikm>F8yhBPn$Qt6=;D;Vt93TXYpsPD5kt=ycf1njm`8z6wWZ%lQ|nX9 zXgK%sg?LYx-(>ZGyTGc{SNBEhZ%^hLHIZ%fLjkf+A2AGDc*eN%igFYbNJq84lJKfG zjMHVkLF%v-(P^Ry!c>b9p^x-`cGgIfBF)GM@hyJw3LVpI~`ueY7KpaSMR(X7qq=B6tNH0fF{!6{6^1rP4 zKau3!Tj?;-SLU7^Jmd_3M zLYDB`TGQctUnzk~7s*HD?qR#dN? zHl%8Agf>@vzM+GU#xr62$CgQfd5Eclwlc@fDdF&vb; z3$`kQNqPFd_Z@qkxNI4}0mq9iChBZ#;N%hBv$Ss)6NW?QMqzsDI7`P;goGqDwjC{g zx*~eN0RTOU;yzjD4DFn;eU34;FHu~(r1iq1{1@BMVkJ!gh#djU+r;?bY1AMTH}?Z+Zj2*d9ve(&gpGGQsn`A+QvsaZGcxtgiiUB6el z&XY$HTsd#j@uE+)pi6&{RhAA^<~S9SFMry56fr|K#O*O4iUZu0)9Yx6g^f*<=L2oI zEDzhdHB*D_L{fcFqIV@bOyd`gRUEddJ(Xn&g>Y@dv!taD6Lt+0v2PpUF=Amw2UFr~ zgrldh6ilYN5O$rR5?vwuK6O!1h<0inm$H13X-*Z`Aag%!ZNi3D2y3)@*e&Kc;xIyp zqK7t$$s~#-8`Exj``C$dXl{bdsfjTl39^z~7pPB`$Ow}3k){HcT|Bk>hE1z;L%I`+ z+@QUd->{r`8;LQoeZScq{1o@PHu5YDiSG`u8BsT+a96*J!#*hsNZU2Up$H08SjI1K zl*L8m?o-WaESS=occ>NZ_`Fc9y9RBwRqt?LA|^y0FAGr-cMo}C(U*pn0z>51k7ZRw z*xm+r%eQ73ttqpIUKkr;41X0IiDXfy)4W|i;Llp^;ENC5Qa|Qd8XC?B4lxJ2Sc(zU zj-6=Bpde5y_A81%e23R2N;R9_xY@Ys#$dV^h71~5K~OPwcw`lqeH$QE%X||*jem(G zHX*1-BHQH_hgq};U*%slx^=2cX_YbRP*^eycx*P(mT)<9wA^R#yv&Nxav^$^vnWmb z!)sA}EG!M_SV1oGW&W?0nO~Z%_$vtWD--o0Mg8p$dmP)7QFXUO*wBTa&JlNfp6Vq= zNxS9qH0Z(oOkY;UXNiXmeDWyxl!?kBpKQw^sZh4q+h=4RG3SzeQ`fE3`@T0mA+l`! zbVpHm1BM+qcvD|bm2L~*w1wT){4{}dS-}0UQGwQ$cHM4$}1xxhXb=v2?P?s%<1nG;4%5 zW1FysJO7+UR$&rU@)ie`e-4H|`udF?e-XZ+l*G@-e7pun#L{noW7Ga&kH2pa|Mf`% zQYA<Or|fpJNlrtfT@x}%BS@N z$3(S?@I;uW>e7+B==E}_GnYW5#V$eps<3tS3IE&Vt}qTh?=imMWr3Fzx@6Mej`3Yl zy?JNKg3-%zzE&NBCmvs)9h&F;oeX7ob7<%ZKS!{bcCI5mt%l*kyW-&sVHY|>m7W(> zu2*0)zM)4y$~rj)6hD`b{g#puhMT2Ke0k>PhFS-WxU(Kkc_rXPy(xtL}yyAZ+8H7LhOg9Sn0dQBgWc0 zld*PTov`Aa#FRh2U@_G#I#FR{9$`cLE?kC5FZ@bkge^97Xpq)rzZ&C_FN6P4g8JlZUwSh^t|olg!~#rW1nh(#^TrpUyY+d60-l{09$Xk-UiBxBn7l=jqJ zL0&tR*5Pkl*G?P^jT7==p7V_{2q;QtzXMqWS_h#T-{TbP(1EzV=6vY8y|6_#>!o&E z>wnhcsV*pSy_^Zl_%Y<15=A#=&(p5fAgADA$Ma~I5161XD^32~smwcu_(B3w{;(PO z5$76TWJ)ouF>Au8ZsBCBZofRaIv{vh2m5(m1+%PhlZ;1h5>@!dM}K32ol@U(ok?7 zo#nT!AqQWrciaau6ix0urBmciStTxkr5uSM6K&?>x=JARdd`6sB*K7nPj{-jZcsjU z_lBZv*SJs8^H;?c{HNNJ+;0bo@0I=D$FysULs2J$-ZxUTrMk!6E68h83fmDa`ENd| zf`@2(W%@RafMzLQLeNC1{F6^?hbGjf!pI^H7tc1D=yP}j$#ciXtggd2HY;2%xJ+J; z?z&H8Rc821Rw4MVn4K}DRHZM-_qdRZRPNro#fRmpiw4Hu4V}#!=?~Y*}A!5j^PYj{xy+Ba}E`cNV{g3(B`vz;!|jLEV7@JV&!XU%JfkUr~ncGwAl4$osCZx z+R*f0nWczuErAiW_gbMdV;S$jFs%vP4HhWuBf*pS%~I4FoJ()GN$9k4{5n{hFk|3y zbc{Ug;mf@HFcba-2HNZ1?Pcs0{2`Ay6HlLbT6tqX)6-e`W_AV(JFt=i4hG6uX}pxt z^RC7r=^h)xpYs?v-IcIY?iQ5qE2y*D2C4ikNo*0QalxtX7NGS2D-WS|>(!_nm-}1u zNW(Lk-+=B?2*;v2c+L1zn~={ScRv}3@r1HuKhNs+iq!Zw;LlcB{1~Q!V)*hUR%w=h zJ!5qaUD1k;rKN@;eQgJALE07mbi&A&Ear@~I-?t3h@;^PJTo>HhJ>~0S3z)X+e$Z@ zhAW##B23%OyN1%&gSS`MtDmfzb zy}a``fPZxk7~q7N+~%ro$i>~FX;D2r;oEFvtD3B^8QVCy>Wl92Wur>2GK%10l%Wkv z52wQpM5SZ|Hu8^yCaI53Zr1V!2i!+e;z4Pp)rzoY)KN5D#mVLou(g$w^KWy$kljqs zI=ZM``(R`~s^2dz(!+~NG1rP(?%B&C$2H-!$2cJYg;jA`39sRwc+p>Fq|@tn40-|` z$UXqIB=DM%S~HcOr|e@l-Digj5n5f~)AYkO^v@viT>K#{tSWXanXFR%ri4ijr(RIz zhpf`3w)84bwONxywFQ>5rML;bUs#Z)olbgLT4>Bk2ww?0aq5FrY? zlkH?Gj(}wD-XAO=+b*?Yh=8B8|?*`Y&5a ziUqf7-;Aq=Ctv&qyjSxE8aU`1XHNVExH0z-cr_~&a0Xm&mYVe;6RcM9QcQDuoP4*lvDe$+H8GZS(N_V^6)>oMyn9gk6a37+Jud=9KwCKRJxbsa#e$xA@ZB;JU#z%5-Xz;z!GQZByfa$HE zWEQpA%{!dEM39Vf4DxW0B;H4~=HT!^UG|-Ba=+%E%QPlCU~#eR@6?$Pe<_RH0GYV- zm!)Y<&mChzPYiHGYAUfYf~1a=sJWFJOV4D_4jB8l@2KMkeD@S{V2A3WYzB6gTE{Fi z#$0bp_T@ia+&MGB?hu286Z;;4l`UDuZh$11Dq12|B^!j2ec`=>N@-S?2>`OYvr12s<**6IMJ78BsLD_!0ncaF4+jn|`6f6;8;~-~ zl5i&1$Z>Uo+-gfRy#2 zBdOlC5*#)99MPWzF4G<8xIBf3G`Bl38y;6U5rtEvVDV8V!2wtYf1;@SXm8seON2Y~ zv{Ebw?(zOa?}T>!T}GsE8BwyDybQ59PbQLY_{@Q)2(-tMhf-aw1qsOD-umA5=(Ejb4WArHO3Saz}Qblh;UN+i^%6_YqQ+-ug<;_+pJ!r`r-yi+5@h`i}#NE4cGN z6l0%7>h0=>d%=9gj}FiDsF0WQ7y+XLXiu;Bb;i{{)unY6*1ETyvi|#5fRL1&U_fE76U3 zXE`=Ezx^R^r~As+(WS^v5!kP5^5*=2uxsCiE=TX;A!ESh{i~ajjYUxK!aRiEfZHLP z_tR*kMRrWj!)rX%eM>ruLe)Z8Ssi9GfZe?%YNE?Z0E{kW3X|NeX=4h zb@HE?z#TyGr%!u!_g_9s?U(yB9H~X7ocdb%BL9w1wVB#Fg3<EeLy_(V?FN`~c5Y z+*ZQ9o;bNh>qh3Y5HDq|Hs>;sQb>Ny%1NV0np)s(kYm8|Gb9=ztnHp{7ihNSh{)u< zBzXO`eobZqTHF*#Jv~^5+CuLzPg}2pY0i6QM?kpQ_^=DBGR@708GfmoHlm0l&gHIu zeTWw;y-RBVuKW#X8AjDD`SZ%k*NjOX(4iGT4kI3 z=|tE5C3lL)SBalx#G`c%5G+mv?!-JUy6j_-Al`)9s(r*}llv>JTTWJsb7&ewG8A3PH81f$+_AY6= zo6{?^JwI{v1aXtP)z^yPDV?gBc5tawIUg(P?D3;G<+e~MV`QTQT1=0twZ}}0?h)A5 z^XMt9ucU=|iq#};F+^utyzPc9UB^0Dtb9Di`--)?;m+>Jd&@QDglk2mO@C86Qt^^{ z)`Uo%!AZ$s3#*vDZXI6}Iizkcx$j|E6}!+UnW9=q?Xw9RmYwnLcRHde&Sz5})5~{C z5wZe}XJ50g+()ciNU?)R4QgPX!FCWPJQMo>>1(-d8L5vntweS`eUPU@A-h^v;pTSQ zqA?~Nlrf!Iaf;{sHkT@5eg?Y|4Lc3dg(Vq^YRCGv)s8>Am;`%-4KP8Z*1a$RDOXXu z<_|0dc1@BruX9H)F2Wk*wXcHQb}CntuNNO_dOu!UU8{EeTt~Iw<0!Ubah;`sk~!vs zWIV?V!U7EP?TK!&i6jM)$62hh_UtaOrRXvg^R#}t=Gc`pV!B#DbZns%vRp&Rt*>9) zzY(?=SaT*Tm~>Wz6vrC0t=76?iFhS0tyZR}Qhkm??1$XW1nJWgUwV|9q3$6}nmIOW zrMzTbGAI?nletD0*h=DFI=LWY&@;Et>*`-`+LY???72f+jcZ-u$ru&=8P2Z59Hui} zmVwC47b$yDIrI*ml8p=2^1r4tcD|X_t*to2NSd1gK$F|8!A7gv(j(!}VQsq=u3ztV zU#X6IA!Hs;?n9l)dUvBaYiAl3JyiX7w&N4iG(NyOO};!b)(Cn*WwU@%v@hkOTt2D( zYF|k9KJAWdZ}eB4XjJ?S&|0NigKOuFFAmxA?s=fQ&eMY@Cx|XHD%31u*dL~v4unWT zwE4l@9%Bquw(at1$y_|*J4%^b9S%&m&(qeaI(rr(JqGbgo#|@#g!Vx%dBRAY5_W^{ zk2I>+RNw0d-|}~ljE@P3ve+G6#Ry?7U($Jn8skZX?6{?X%9p>*YT6rtC(Ba=IF*vf zm7Sb06d3@-eG-lyIURqbS-hp`AJkdHpa_L@o`uHXJW@%E- zGZFN}F%yke8jmyS^hDPE24wA&7XJq1mMf-qfRgtT^2JZ4(h^WyOfksgYS{v|348oh zVy%bYo<3_@dmRP4oPh8X1#9w3KyITkf?t`Po_w}Oii8p#NB|-wFx^6M44eOw7MN@@ z$}BBlBt^9mavR%0>CEi>sXHDY65f4^0cX%2rw6qLxf_T4Scj>;{m}awTs zP~e6^8l3*JO9F5E(iE+2tZuGL^AL#J=q07Tp2Nigru{lH>-ptCFPb6x8ri2b46`_e zbIFd>T@RX`=k_&bywv&x#}C9qr2-Pu=ru^(^f`wcl)MlT?EETpq}BSp%eA7TGEG5% z(tB!MWm?A7(7Am*0}X2}h{hl5&e7at-0W29om7S6FKP|P9UdX;%59=4v7LwIv3n-3 z!tib%xbgneYy$1@XjPT3v(LhIN900qT;?Foh@v4=M&{^o`w^ueQimq`%dyH9GZs=) zGV4iQl@;gZG>TDZXAE#PV`OwP?Puv~(jIIHsF{k8su1BwAvEp+cY&X{IFM1|xiG3H zTqxPQ>!0%$GW#~mJSA@K86b81TMl25y9j5y+P+q=@%E@aid*1pda(}1&U3%tfFas^ z^#2&L!Y}!v(+KGnem@CJt(Fqz-F2IM*Qz%~?I>hSntJ?vf)bpWIo4k&XB8Y5U_`;S zSngZsr-jH9V1BIqD--TRR)JLQXn0NYg##9O@@ur1@qdU!$}RqlyY!Ek@?_+EPY}y) zu^<^*A*-nng0UjGGI%{Nc7s2pbdXIoQ4yg% z;C2+>K?*_0Fdt!dUacHi4p7cdBYrej2>zsUa81V~dH&fY8^cmW5=HJsx^(~k+lf3J zHJDa{?S}l&IgY=#lGbm}op z{){C%*$n%9QRkJUl}<=T5Y^s&uRopM`7zhGCuPj|%r4c`GSh;Nh7%Mn3faDo3~T?S z*xNttpyzf84-Gw*@md!8yJs6y_CMdvsCLR+RB0#f_m1&gdyzDo$^ZVDH|_-Dr1TBX_70PXNm@rT^@!;C zDnF_oEIlX=3ca%CmicyyudNB%+IJgr*(-k37Ub)T$(E8Y=M<3{%CU*$#_(EHzvS|# z_qc#7^f6uxARD%kYQ%>rZBLul>BvvQ^Y@tJwNBp)9$Mvm3t09j4Qx!COMy8KOfl!s zx8{(ooyvig+P_@(j{|hixM*H4hYOJ&ZRI#%&^XVli8c*}83~RrbRNW0^dOyG;OJeL; z?-=GKy^J8TKh`kNSLcRUmdeFOVq{9hBR7tVGM}nQd*Ra*Gep#ZI(ot+ zaQ8Z4F@cH#_n?f-@MHQlvBC^ztJWDCsnWM0-mxZ+&4!p;me@8KRRJNsHY!$RL)hW0 zKA6`We&JQiY~O))b)U}SS@0|u z8T6<3P;SRwAB)D7Q5G+7&cMn=3(~C-7`IF&A;#0{dM=g_pY>St(cOHTV1pGI1CK zfqW98$->$==kToR7Z+iH;Xt^Ii`BNI#TMj>LtzA&sV}`YYJn2Ie*0jS!PSwQj!k6! zm$f!k#CmS6L>)NEE%l4u%K5gkiQ#iTnpfxuFUQ8yIGaWHw;26r_ncN<>$g^|c_aDp zzha^Wufq|&7CXzgSUWhCptMHUp^AY=OLNm*nlAML57Fm#K4sx54f<8!pXU*oP74q%>`BR--MEPKA!rrXd`z!o%u}`c@T%_AHbbLZ^K~6BrS$AmF;?Y zP!EsyOMJXVZqH4Zpj`F!z^FoS-R0IO%?uwB=yl_gAHuz*YClmK>ctd|DCWm>(roR* zw#pR5uQg}!FMOt`AxmJ4Dk&Cc?@^Rylcw5+jXzc;Ebj)6tmqH5N|LjUp+HHHzZ>^U zEUCJeii4`8A^8o4dSe^HtF)sPAXSBg;zgPxMRGxJh1B!#@AfG*h;rqdZ>c}Ga4ttT z1^xjzG2oIZztmlNv9o);m+eQBjnW*la*Exd$2I=}-(B@pRUb#C`tW66$!uzpF;2+1 zJ7$!4pi?99jTJcOom>gixM73y9E|BFBeuZtc{ov;{4Lh4jM($gUro&v?WbL-6dO4SQHjrT8y6|ePYk6yx^8QCDvFc($*(%I@^;`W|!1<%(xU+ z7Y*ZnTbco%9dX?tCOtPC&64`V z5?GYszhQOPC+Kd8aJr?fg6~Y}>YfQj*Xv}nfiEjI_xiP8liF)x4?weP?~v@@3In4* zCg*$eZ@EpPAIvK++u8M^DVsK}>Xm>dNt3RD{b9 zsniXvwjTCkUb-~~k#@e3=7Mhqc%ht_62kCO?fw9WQ}<_DoKO6iNbbhInEdn=+#U_@ zKSOm2T0|b?9}PYTeg()SHu5P#TFW#CZNGe$?eroZFHDKBG=3@-b5^*+sFxJM-%8~a zE7@$aC}Sa%lp#t9H-2L23GFevpa?0KB{NRm5S|w1${JJl|Wf7K6nu7eK)T} zq@_As?sWj5uk?!*Q=bW8Y)7j;=S1eftAoS|(l*}frwr>f;kGnK&y|-6XfQt0zYnrn zYJPnv=@g-c<|73z{zxLIuswU&kJeRY9eyn65WJ#-DteC6qhGH3>9$J*KO?M(It=#` zvP#8kRDOR}hgzAG%UI!fsI;#Dmr;aHoV#qf?VdNxW?^ri$X=Z&Y60#O<&tUkXrlet z>mKq5$qBYwh1qo){4VVojvc_b7Cw53W+gjjJG9Pb&asL+Q@pC&(OuxPA06mr_KD5V zaGj(=Xm@WPOy{9wL3-`~jxNZ?oKB!9?pqzy?GIpUU6+>Z_c6-}Kb&b$jrIiN9-ckc zA0JO*!bn*B)q+xkc@F^;Jm~(?Xxbp+UtW@Z>m9fE{)+!7GCl-SXHL$CAL<>DY4NS0u2>Vz!P&9y7TZETW66p4qQ$<9KO6oh% zw}l@|%=5$lucAdW9lqB?GHf`cXuP%yo~vOBmuNka{n2T>_>HOXy_AWB!di|8rRs&d z_NIRx8@Khb;QlPUuVKPOefy$vNqHk;-(QbDHGFKJo)y8~ z^7*Mq%&VWT)Bz)W_S+)cV|@pA;U`vA$<`8|>ybTH^Pn}?%HFuJElc$BAcJ#$#M+N= z?Sq9fnu6~(1bH9QH;c6>%eOh9$1wy#E{#n^k#8zLQ@}tGFsDOxcswF8%Z0M>$9gJ5 zsIrZa24h0^xJ3|$!m;|gX)InL(ql@~;txP?$EQ-ISfr>pX$%3IuuC&Y1!r#GZfbs) z%Id2uj=b$V>3+oNn7HY>&(%}e2G;bk5OzBOGn9Tnt@x)-SgAf5)AJDrkSRo(#M6!z zA@Mvrqf4w)t{Ic23y9ouj4h5ComrVu|qzC;mi^+>v8j`z4sevbT31V^sB0Cn$n8ckUZ;)*mB82U>o3Lw9L&u zzX?a|@N!mVg*wi~`I7%mvKu4%4!=1Ac&+4Yy>ij;z!CqHfdQ5rwDmWnXl9Tg~Ea=2<)b+ye-E1Iqr&Oo)WWPhI^At zD($0ukKm^V*%IXBe#`C@ZKTeV!6W&@GU_=_-k8*v^=#>;l~nqZYj>ecz%A`U&Gr=k zO_;_`-n7d^z7%2EL&F{CZ6oG?%TOS__N~o@(QjLV0rrpJrk zc((XMA>Z~5Qh2~U`lz!m3)La3e{ZG{3srdEhJ#Hn1D)ANb^o}LADz0~Qr7EL6l~ZG zH84wYX#mBm_#OL&+Rx2fgDZ}+|j~>1{nzBi}oN6AIE1dfI7!TGOFF^Z{ zv&c$I>_PHx&al3=K`8Ts4ImPoLY7V<#cp0dqYuZJw`MvRcYL!4k~u-99SGDKh& zfd}QH7bh!=`6<}>#O=Srg-k90oXwN7r(FQUpMF>rpxyu;5HUP>~84OJOfU>&}W z98Tm<(5}6SBZRVy_&iDa$lGp(xonwLIemdq>_nerD0RIzv_<_g2&*y6E&&3Y?i;^-VN%ZQ;`g| z3^E+ckTpS=OHQm&+Rmjwje!SG*^c_1gS0$<%NIl3Nd^v2hy47xf{Zh&B?aDN>l?k|F+RtwvEJcIl zI;LolkndqOeDi*dr^j(1C3l|#(>rjFknpL&1@gBJ%|EEutCwoT*)fgeHc-ADV`1H5r7dJb zxZQfZFp)|cQS;`AA67+=s{1ieVcjkulV%HfTdy$5Lir-Sx4TUHd`dHqXB_%-bSyhg zYr;^kMsMhYO`K(X=K7^KT7x{@PwkH>LK8h?hwYdTB7C~LP3nHGif`mid^qRIXDxg! zckBD;e3@M4uI55K&?MLLVPvfu4E5rpYxoSW4zuUijG95>V3pc|BS?iiYF6PjF!BPT zi)q7(?Q{A;B>eodk)bWu%pbsl&4>(|TPI&ZAvHRP??sA~K%T{lqGk`=OsDB&hllhx z8Cxv$-8)bJINu5x#<$mdcJymL9pArKTA-U|SOY>Xy{E~&8gk{|8W%HO(rm648dlBV z7O4W~b;UPN>uj{g;=iLXDbBPS-h6+}4MUqZqfkmqdEvv?Be1xVD7MH&S-Dsp($rnLnKkvxs+^r=oq}IHWJY$tUz;0dS^a* zHP5ykcj8|f^8y=s;=j`D#aQaHI%WS`gyYin!Z1r-Wp$){UbnXM$MfH;X1bK9d~tKq zPHj$S)0CaSiWCn0G8%Q>l#cXaezF?tvm|UI^U2GojuB}`Q;xk>nd7S}2JNnInwG1|_3vgLhU8Sgw7+0%KB41pLA^LR z%2)TV4pf~5x)UkJC-C1mraq(fX77vdXe{U>KFt|2nP2Tui`>a?KXux(QM`!c|)ZYUk_At3!1@eli>hT6_ zfL7PfZ?2Mg>G^Ikb%A?nf`%`HZLPW-sBA9X!-H{*hkro%$CeYle;&MqBd?W#zG=9B z0JtAYhVnn8O(3Yhu6a=rqg4YWjAon~DHGtG@$1noo5;Dm^N%kZV9S+!GE1rS30cpO z6B9-&aS5`*58nH_p|_Q%lHu0f3M$?bY3#UlN_0MjYbHn~SfMHlV6c&UXa)h|2aTKI{$M_P->mx z9fvG$Kb>&z>Qlq+#-laj8Ny$H0QwO92k?|2==C#vVzlW*jqYzWrfV1; zp0dHUtgsdjKUElfms$`y)GDV8sUy~KNwohZP^y!1YZUPKk!wc;^5N>C3+XyT0w=qM zzY%kfh{l3)to~{YW%9%FRH)EL{ud?c*?nf)*S3+06i(P{*Hd;tpYK+mF zO`fcNH@Q)ak(D*3+O#mvTiA_xP4{3(?r5#V6ZV6=yvg^*P0@MBgc3v36)yOWYi2l!TwSU%h`){@KJT>q19T;Ab z1IdLlP{zLyj}~`%p)UsAst0-WZEVF3rI_iDj)$Qsy$DM`Rqt>*;CT2h6&v6|^m@xg z3?KXa9Lf%toius{p%~Bte!87;=A4#3y0B$|Te$fQo8UPK+r0*5nuwlP+JBcuAAT!j zLFzfhrZ@0lQasq9N2HD$`HRsD6#Od5MD4b|*0|SM(Otq@^m)N~C7F?iU%X(kV+^+N ziaw#Ro%*S=3D{Q%LLGib;O~u1Lq(dBI#5r^++gn-%*zy`)%bgukYqr-o)`6f%hx*s z`jRTy2VQDBElEfB!V#ZC1}xok{}l3kx`o}bDF6uHUYC9o*WmIr>KK7waEkhXuYH$IUm(0}jEQ}pEbcY1nL7uLT zutwMevWKJ40Gha31! zvyLfCf4Qmh4W(5Y1ysSxYx`#^;CN#8kws>W8#8Q><11H~9|sG~=0X$$KK#qCZv+)R z8ig{TE#B|Cxs`85gxX~_l?|>qR)M0DaA%Wt0&_TYKbg{~MxYTyRQpOBk!xXGUF6!Hzj?;44KMR>=5Zh9dFb>lFUTow8UCsxB`@ zxqm>hu)~=hP)xJj%?^=LAKI!|?!(N&p`)`xn=8JX##J|hK& z|FnJCAscs?pnl?WJezEGrV@Rg%Sg7WPc-#OA-H)x>gP6GQK4BhRP!}=Al7yTbrPt< zg#!$2Mr}`{4!RV}c@%gqAJQ+^n8r@F_0ASVQ%1~MjdR8Tj2LOZ_{Y#RU!d5h(RN7< zD#-7lVvqw5oK4pPTXUQy^pgkrB=G#cMeB0h$w6c+bhgs<+^#(TYp=YFB#v`Z?ljuu3bKN%hAz`&143!L9d+A~9pl zczB>X06OxCGj`xDCvP`Q}cixxAH;qw;036|+6dcsSd#C}Ifp1V$ zkIEeXJRU^ViI-eHH#{X3pmVB?3+6gHn6ed1rj<3h_G;An5EgG2HPN$b~gGXcrm3B)VI*TQDIRazFGNMXtNZXvB5F=S?NkniU;b~ zkZ2R`EgfhUyMB3UVSN-ZG#qP6DG8?ejy+zbbCNJXXiD{loN)UOfb>DKXEU(-x-sYE z=4`#Kh4aS0yE{jKx__%%3PZmBE!2K6$=b^y3eSPpPO4Jkn~3utz|hgcR=%}k0Ok0u z{rRZl;K}iOdFO3V`r*3UZP1C zDzxs`>YgF4& zTDVm50Rdi90+U_F75Ood9()WXku>VCPiupm7jBJx6;`(Kef z>QC=CSdSC7Dds$wjMZ9E(14MkywYiPDE|$(F3|$1>yqKckJF$i^xWut=UX%4*lS(- zDYB#GY2Ky5<)>)$Dea;5ZQ+do&=&vMKT}2hBN_b%p}>DlQU6T2gmctwpq_*9C<=yJ zH#S0*X4&|v6->spSSBuY=Wc(^qCuMx&SZk(C2Y~7rv7msNOXCYvr>iUD|oM7XXuBz zQ~IirpWJ;9J$W>^RkC$kYR{x<;h4i`^ypwv1x3Z>`V92GfOa2|48gx5gb`b{dVBmL zh9>f{73!7gUmCQI8+0T4LK_M6LFuWHXCc}{m zHTVWWwzr`6^rT>^;p|84KLEJvN1==k-P+wyHY>gt#Mm)Hzye##0PA(CD*i%zIqF}D~twY_1YQPC2W8ik3Kx{-(ycS#@B zEfSUt+;-U(^!SafX0f>;_t^BZm(yTHz<1wjTUehA7^sxCdW13>$*^1{ZV08mZ&@sIJ^udrYnjhAyJXwB zj=2h|Bs%d`ox8;7$3u)&nqn@!7U{_@r01?Emedz~>ouE~JkoRC^eT{MB@Hh+6+p$zQ zcj%d@vp48#aLz*my~P#Hn*dxAMR&Z2b~wp1rDUBn)&wE%jk}iJJW!(Ydg&nw0n0e9 z{-s&PT6`;{sJOd>f-w0??1OVZ>indpy+BiG}g3Idx5Q~ z{_efHJDr_8RY}!+MAO9zc-?Y(hJ(aS!5T-Q5uZa9NkfYyq*pGTQDy8L#{Eb=J-;J#_pr`*LF=R29RoZ|ld;1jPgH!~u1RtUWNX*1X!2^xbaKqx~ zTG^&>H8c6f#DauGbE;uzK#2m*S|KtRAkUH}uQ&R&Pw8oMCzH;Q6vP`v4x;qka~jS4 z;nW5_zg5)22*#UCL~I<_!4@g8oz-5(zw*U8EVUD+%n}~(&m`Ghy>iYDuzGImYo+8i zTQvB#B_#o*<=?N8K(nD*p;R=n_KIC{1 z^>6=JO@79zx5RfYG4f^`6=*vrf-=x@Br-|UUy4XKReRPZ#nur!x&6a1d3jK)L}k2Q ze(4zzxS3pUX^Al)jme@gFr>sJl%gv;k9HdiEMxn&{!CMGPrr{T5ta-#e;gX0Tz1aQ zr=gdzptfvyUlX#6Y%ET7oQ+^K%d(1WAJg5H7uRuRuc94mz3Xsa`IW!-YP*m&&G&;4 zQ*m5%Rf?^gTre~ZgB#RYT#kY>uORG(%qC^*?v=GQIgAAWWfI$s#J z$)5B5Kpmn1i)xa7*2s73cZ!?kGRhZbjG$-KuqwAqJfWd*U-txC;g7Pjb4tw!)S zoJpJHtDJ8Kl*TPmLfc3ACE26(UbDUE90cOcPRc4T)o@1VcwunTuD#kZ;>?oUXJspe z1m(VD7`0DOi$_O`!FbqChwz;*)r3Brny2`itQ&u)BO>MffU~qom&z%5X6$Un?Exe_ zcA?V5Tj>XRl&selAGufRjMc5zLEB1v7S4)ZW^A$!eoTh~IC`8-O*rH|7?2j1%9tEO zSUIdQDx2G#9ftny$$=yi8C6t5?b|-vL#ChL2nUBTYBN?RtFK&#aLp^C86JG!lZZ=VUrz00$)Otv~q1XQEBlGI+Oa&fkp1{%*VAX z+=^UdpvZPynSPyNL3JkX^wqs`N`e{GoE?o`-##VN;KWdnCXO-RqshH%|Y?#1;{ETYw|GPtNbRJsgv85ujU)WD<30RFi5vE$h zf0vk3y!Ww8dYp8qJ)*QWj-hd@K&Puph`QaS9XWnirQS7~R>nv&W^#dVyo_reOG4+O z6Nm_WtN2zxe)WH~z%sv8J~mcfB6Mo!epcO_#Gb08R{c;Pr>N9TBQY?e4RpeeB1J9^ zKV{=L>gGZxSxWBN8+HY3Y69&luFsGeOjT&%vz@F_3~A~=X{%yIxP%S^jjzyDq2J55 z+1?6gJL%T!SPX6b8q?jW@hrq}pjlz#T(&Jpg+S|1h0x-nFx*YtPNZyw|JJ33F!A?W z$CfT8KX-+R1#zDrV*)5DKgZBSL_P@yr(gNr>-_;Nx^hTr(Awj*Z+$mg2rmk>NmNgK%N8Ur0s zGm}4QeCGEhhn>u(3;14LTwHU5Ai#Blqq5LZ12`0r7 zf%o%ScN(Y==ClW^+!>CpoS)Z*bX)N2y5j)5wnRUnxZJDQ=1!IaSg4X2c69Zs#1 z`TKa1*lsgRO`L7W7gdq-4qhK*?p;F=aS+n*SGrvAFL!lQ?=j;wLv?VFJjE6hrTt{L zx$E8;PU(m7_f9R_Qy|segSmdAzA6MC)KSNtNOnx0g3gln6O54!L?#R1U&ZGu!ui0WXbvj-htsX;nE8UK|JKlEdQ8^e_#nBlMCdr>ffTa7`TU+rzvgQ|o@NtA_#KltH{U!B1$;a1ef3B>udB>||{{$8n*10P^YJy8qsl@BWMY%e64 zgtY4(?bZV>@ZSyfI?qw@@ngcrXZlFvVg&f4Upo`1^OMYMve}ADx()gJ+K{7}G)SH0Q=eelg zfq^q3xKJ~K(y!C$1(mJ?5(}0dm#J(3H2A`*1YP)YOwNC^%GR~V#zb?qV}v}`D@wTs zHkqa$=Gk|)9L-+R0&=gII86#YG{7X&HXO?vjY-1*pQ7hA$QCjwu8G$D0B(obBx!m43!bo{I^bmC;3?Gx{mn|FWdQj$&l z_+?emZ~gdDEaUVQbYl3B?M_0}&yvGmGYitce(H`VjWPZhVb}3vnnW3)F0-L0(#t(K z0|csJ>ehNXEESs5$X>8ZP`oCpiyN0~aFlF0d@+N(m|}AoG;hnQNpAA;l~)dnZo+{O z4Q=26>cI?f+Kilzt^k6u8R=@=L3z9{lc&y2{+92xhV*JLvrtUn)>_()F>FK`p$@AS zs|3~e`(QpA5tZ|iOv}`dWEDU$YMgl9!PUjDhh8oVE!BSj_~`y?*a^wp%!;dv>LuoZ?rmVfRn*wl?B(6FWRk5mR`IWt3u}r|1-}egPgD&yIGyFqI4VJ%I{xs>2_!+P z3}(LZwzzu}qPgl-)R*hoc*zysl%MCPJ5;+0RzCNW17!f@ZP214aEFI?JvvfVdnOOa znpKq{X4UVNOO97xlvHcGW9Dr-DhQH!*G+_{TUPw8>Tv#`s&q)^B}SH92Wyra9qdI+ zWppK0EK!SkXfTQ5#wGg%xf3OPDg%OTQQq)vVY^HckG_LsES%e-!AHV(3fnF8s z&%avcv=o{$9{vi=O=9q;ug9GL*^Ez`prfawKTKn>oCQnwMueOJ_F{GRnV>^N{sLGJ_UOn6%s(++&IE=5?iY(~K~F*7UR_wRx~!1&x8srO$)*3@Ro4i55v z|DV(?NervV%4Z-M?%^J`+oo!BaAGN+eI65$dw!(2n&0BmL*L5H8!Hi83$}$Y_K}y$ zwDv4@d=1xYSXUNveCLGChq+D?kBC7KMUpT z{{0|?Aba%;M^fZP&MhO!VlvZqx?x__>5+*;9l2csvWpr^MXgH@o~CT4ylcER^pb)F zp=CrXdeMzr4|v>xA3sEiC9m$jtX_*IU3Ej9wo;GwNF2Dj@b> z3XD|}+voiyKQtbklB}p@RSe;qS(;$h`GNz*|#LO*lQCjepK^#&2 zsHoORqMB1e<0a0fC&W~FH5(=_3<_QBMm$rV()-!Dg_+j-RSn!%kHfpo2{Cw^QRs7< zJaKQYL#UT0e{eSCx!Lxi?W4DsLBTPG5+vn$1D2)kF1(XmNc@MKxG@UQYgLI6lsrza zLS&R#F}HSEUN0|RL>`=z$uY)G*j)}HCRA7-T)$by&8B>3&om-g52T{!~92tyn=H7eWvYm(h0l&P#}1J8xbiD@IP=@T!FOg~~J%X1_|I zk~C5;vX5!f!!^Lk>l;~*7tT{!uT$k_=CwS^nd|?d&Iw5{cT50k!;=KccCTk{L6LY~ zc>Dpgol51SO%ZGvnI@5;y}?kVC(8U4VN)) zAO%pSN5_LkyE4U}J*hXKQ(-?MgC0Y;;7fT^emzM>ckJtr07#1M(~bBli0~*f$(|_V zjZaPUD-Ve{(wmvDz82zvnvG&?L0k7d2y{jvEnu2uALj5uH*1z?6RYV+oPEGjq1dC- zAHYWbnT;!)+09~Gk&b}8lHvt^f5*2+e8la|-TBc$et1pF%}(`g2$S)kZCq4#YXJm( z-Pc>}`6A*dAsx9-F=XxLt5lRuYcIw|f|lOw%{ut{Q~#`UC56iw-9CNs_L`L6kyc4! z@L&^PS-21$Vj*z$o717i$JB3kB@5DdaksfIgyL$f#dzS>DpBr(GIUVlM6nzt6ICi2 z@HfAG%AV~Tdpv&I-h+IS(N4ER4L5h5mvaWh1D}V6 ze;hMtpRcLEjzG3hx#YW0r4DT$WeeZ)E(aNJ+A)~@3)#PzA73qf#J7ER@sAU3l$GK_ zbal^+{FMFt!j11`63JI@;-+bLY;bS?ftCL%*M-4c)MVb`)n0D|vvMPC7U6WS^$*tp z#~qIJNOyKS(``SQZ_cs!rPa?B)}cl+8!+lJIHL?GPI*)6^Jr)h$mG|;w@WSUV{~j( zUybp3gT&%B>-4lQ{ysy{;q%~xKLD>%f0Z|j`j5x@o)fBZr}4^EeLwPTwvZKkd=VTA z(3yfMeZ}q8m{-=haihQQz2lg7SkSfEP(*+k@#fv?d4j?3;@$r?D1xEA<4ejWFLy}m zL#VA~-vv!McGwd4`G$j77@OiE&3mY?>0XHiWkf@0Fw9#`I_RuTH-G&B0G|oF@W(J& zRjSz+v-4cdeq%ByN?A*VemP+o25t8yN8(WqZ|*r46h)sH>C zm-s1JT}IQD+k<3LS+8tEQV52x6&?B5oEB#OmbQ~Ayf$o`_eL?El}r5Yh=gVzk_2Eo z@|x;bk6I5`5T192xplGM+~+v5=ufZ@B>lp+uzc?m_2XWjGCA>txos*7uXX8VU!jC9 zju(3Lm`$ZeWSOd;KuI@e3Yeufr`$vjPD5*j(%*$R;zqvB^Ik!laKz-0a=pPLluJ`5 z`=fqDXQDWkzeTGyC(?0gyWc5|OY*3QfUQ9c;m%@V)>;Llmx~ws9?xIzP&jyI*}rgj z1BJD#yfi_P&m;pKHPFtxKboq2zF6Nx`JDTnD269Cto7(s@R%{M*$#(W5UaaVHtzd6 zKDy_xSG_;l(%xat(L3^1Y0u1Hl2rH3AZih1cAx)Adza_O&}%Ny z39|(TnEvSmd*qjB&X9?3e*gx(pPh@ooOGX-IQ2c&dsryHnP-4hmpVT5Tb>4Jd0*h4 zO;J*Rm7)UVUWV3?2**)=U&-k%XT7wRlAdC6kid?|B?aqdm6s!Wz_4?oX{(P51#b}# zBQt?H1jcCd;tA-6#~vkJc#vY=a=CGo9o}UomMKaCIm{z}0di5i?T^dK(BFcT9Mu+Vqp z+DAAiOaG8($a|~X;|*<{@(n^p`;N6mUu>i|L^RtfyY)p{=MWiMg@%LW-mFlk((=%` zGza(XUD4Y2{GQ^?7ogU!L$_tDvycnN(&=na>eVDtI39H&d9glkoX#YJ@-edjp!;~P^&+TJ3ZX}1Kx$jjUKZ(*hs6N<@Yq`3=cSt6>wwv`nk z^(T({63Il;QG=&KM`#hA#;p%BT*-@xMd?5p*T{U9Zd@!_d!AfCf? zyAb#0K6TBO9`rF!=X`{Qx$U_qj+W%HIX9_Ftio10vEKd^$9BdTnX_sxiB7Cu17twe zX_+;gm)k04t)edeaaQEkhbRTA9s9N*%t=gD5q) z*^5()sPCyJ(TgFA9~#NDKl?ZS3b?Q;OnqtxJYuE$gQ>m%H8ZtXEJ4g2Y;LTeBvofa|zB&f5f88&> zt2;u*^=rb0H0-JUKyA^sAmK6JxJ@nvw%4N%xtMobgH+WN`FRIeOfeVC2FjwYY(PP~G5}P;U z;Z%yropq~%nQJH0DaKmSh}BA3MSy`1=0vx@I(I8b<#9;)2kYc3F#P%SL}`?$df6A=T0IP+PLHO-d}cR=){GiSa<3AqFj6N9#=cFw5J( zk~{15t%DgEqO*sDo+Kvysx2;Mg~3lwYQ|sEU~+|_ZUcQXqwTG$Gc~VgWGtS9%*T+t zJdX92pTzQ#o}E0HR^xa)0a0&0TQ*ki6uEzPS-Iv#TmO=EF6Zk(E5sT#1wH!%X!zXB zGKdsr<%FBNFDAHnsS+z4xAE#jPC;ZWwdY|b62fTII!G~$5RR>M&TT$H3!hYHy`g>z z3q**@?99lRnIBn(+e62lEzS7b9*JYM@_?^bkk~Y6YNk-Ql4VphncnR}D+L=Bts1;K z_;0_YH^!u*Y%)N&T$VIqsvO-=9`j|-@@&bMFWXk%S%SbA-71z`jdiEmS3Yv1{H8!l zl}P`CRuoyz_^3peS=C5NzWm)<9zObY=oV7f-=ts+owB0b*{U_}Q;W?dEdNp*%84+2 zVizC_859q1<|d*Moh7v7^?}BnUT#`(>g1vq2C|PC%<{g5yZQ)y4OxET&PnB#7z!4t zvUF=9LPP4~l2Ow6k`7PH`U+XKe(La?dS~UPS82n0ZFZ7%4rx(e^tSX=RUju;tZ%ib zGIeH2sJ_2g4EK`4N8*w~x_&`Pv<8}K@>=XDnTZADi~ok&3D;bDEHrl|dsh_mA)Um6 zH*plZLhj2u&y21yzQHcGw))Y-s&9h#m`kmX7NSo1dA&?cP};zg&^U=**@0;aTnZD3 zIkJB&nc1_u2Wgi|QKJ09fxz#`#Twe4sNiMwHh=Af?s>+fQA;$5P@jx4i4e+-{t`gU zpttpu@lL1p$#`50ueeGwGd(G<+4@s_4^x@S)Nq+Zii`WDrQrx2$B5luLZ{Z)< ztlENNaLp@K!K$RSitLqTeQbDaVm7H)KwcOCV|0p2fhYv_lz9VcQt;`N!D zV(VwBK7gm;3?pbwi`be>wu{(psNa6I&~7u369 z7>%I5>YMEEh+x7CS`F#nLR(Kpeu%#0US{wTd=lWB3&Qhc4mT(~VI)|!vHcuwr&vn$ zTr6?XmcJJEQdUAfhU#PBUFpNG9U8HF0spzrim__R-)~8VPoR!vRSD(e19iD$$N3x| ziG-x^$PpqhEcmteG^uGl0rqch>QVOf8bK*qGRzn-(=gSvrF)HV;#w8?$;n)b zl96jz+b6x9oiE+R@9znkOmFwY1u#OG?lt?ie@n6*+iE?iK6+xGLfhb!b&#&%uepRj zQWN%+hL<8SXJmf&yy&;$%jGm3cJuMb;kr$^?P&G;p%)v;Mrkh#@@B)O*sUThDcz|9 zEy#PUao=mygs{;N3$^)JA>H9ba1BNS)vIEk!YtL|wtMPrx2uQ3_@?6-r|NM^V>b>)6U+KOLB_SZY?3yk1$ z0+#-z()mMWrt$*|d)O-<>x{~#)xt!+q1bO2vO);x*+G6I1g{|co~U(&(C?A%@+CUM zIMixPe?XDPF;3s2PMiuj&z3ny70@h}ftZ=uIuyXWj}&`aZ|!=L_&&dthkvyLUvRo} z$!DlT8w@#1cLbeH zsVOY4l%O}oD?vOA$l0dg?BP_O_SgAZew38n?6XX=4Go4%3q76!Y;mcnb(OI5s42tqae1U;`d~Z^(s`I{UQ;I zl|)~SBNtV$)r%axHvKu)i!15y`r?xD$^sOB>VQ}n^#yS0o;rxjl` zCMp!uDC|D}1E>TJo2@=aaFj4H@?d@qM#yNVBC*O4F|;PkEwJnuPV~&6yf~C!bfTFbVA@yEpk3c_9Q8X&CIMq};vG%3r zV5LG{Wn?h6CWqS=iQoYHu#5#3RiX#MK0YR&GPPzSj7MpT+#6bpgRu<@08Hs^HYDvZ zLA9{u8RL{2_yq7*!7?#*tja0np9b248n}ViV(4j~rXVGW(4qqM2U*{8(>UuI##ejk zm(B$#^L}QM`Fm&@TDw9{}y@l;1Ux zi=svgNSV=v+m)V|y+C)V=&m56XSBNndSS~l#dsSXOdXnp&Eg2r%rpo4EpQlYGq{>aN-QQQ#x0NHQKES;k+g*}%%7&@oyR@xC#>bY;?e9V zEfip~q|UMo&&F3p0Yai!N822Wtf1AHh@IN)(rLmP>iEtiV}s_co^OwsG9bh1hO3wI zBxihA*SD=~i_Pl_donvzO~15iyc*tD*)wKg(v`6>gljhd6n@?T(cW%fe9VVrY!j@|$$zwNaD59M>0k_ijp{wC_h(39x#JYP9NGLgYH~66<|aJ$Gh(K-VoF zOh127l?OYZQ+N8yuZX0N+7x(9{NQX#!Z7OYx6gi$7bYD+#|AC@9lbT{Yv&AT6l#_e zxeqrUp{1V(40M3s#DayUtV;X-2YYWB73cS?3pT-nyK6&`1`;H=H7)^yI|O$K?h*(D zZQKKa;Ly0c(|DQ?v>S(n;52T@{QhUoz30wabJsaD>wK6G^L@Xy_Pckjs;6pKJq6#Y z)NPLKJ+kl2&9y7wn_*))9bd>&Vcz2sROAp!)964u>~^dr;CzhNTKPy)9~zQ$R$a3u z>55lgH=Hl_o5TM{BDb3r#XyK?Dp&WHp>!taRHleVQ6^MYr2JH%o@GsDlJVyasC- z(#Gtdi)^nAG;RCYBZ^r1tj-U=^21^2y@{})A1@Oj9AhV7w)9~E@(H203KBY^tE$N~ zauYNXk$!IZU>kqzppRnCx8rpWs{FU8-}KEwX#!fD?W=z77F&l$cpz+!WbH#`ds}sWYl2##-Tqw()c`C5~=MF)HwC0Ty)fE^JjHL zmcGRsTi|cgd3Dh`2-_)DKX2LI@QDNWP z^6Ndr^x6aA1TbpG_$yL)GmDuoRA0h%4Qj ziLXFu;PQ8oCCHF6c93+aR2*w?|6jB$~=goY*>reD@d>yqDWN~;?3EwXIF35#F+ZOC>HsK^{G)K3SZligkN(yuenniSJc zax=9!#dUxwOJ&(nIyAmE_Y-zHOfPb+{hDiS636{*yF`g+z%9a~aJn&DYX5V{dUr?{ z*D$1TPx7PD{mtQ)!-Ta)0Nc&$y;TX~{KVKt4#=~3^r!|2u}ilJ1}#WhLEmU~d)fKH zo$4F?P0APBX}U>Y-APcHo5t(r5t#bd`_BMjK%T!&$}Dfun{N#$a;82Gu z*sgDWJs03lejOZg7e#W2yz96Zj@_MQ=bS8z^}Q^ep5D8u1j7+A@tTdla=@sMM-Pq`H)%(4>@F8FbcuR=1V7a2E^v ztpgsaAE(6$E5Ny9ioE1`PikT~o}RyE(sAPlKQDv?4bHq{o}RlweD%DOy+jM5;1j`L zVM)$g0KFZx;ZJY&WG5X$DgG(vp0V>caGVb9TkS8}fx8MRzD!$c*Bx{J{8>yDSRdU@ z$*n>=B`G*^5rR_rl%`@ue3qxXPxte{9~8dZxSl=gg{z{rxLy;x*!{jB&f+V_TEMun zq6DO$fh0YqSTO&jCnk$N&C@RER!6x597=v)k9gvm>|F zY)>S}xHiddW-@hVnnImwGp#;Ar%h93`#K6?SvYv^oCi>@6-NAR+!;m z4d(wnrR`WPBvM9<(+0-=d6>R&?Ley+$S(B8jo2%=`af%cY&6(ed*ZxbiSdZIa5@=ip`2Ym+LjduJX z3G_aeAJFV-8h?5aP$hE)_b-ZZZgo|)aMHF7YNB!JJRFisCb7B;P?`D*V8B=<1m@A; zLA^jZ`5%i_*iGLdO+DnB(c7Y?D7G3gQr`4zXR3*xC~YPsYd6BdNnZ;1V$`aMHojK3UGehr6qdR`&I^7qB<@XJgqts0+( ziy$q;2K5w1*wjUe5H@5Q2{y%nDo4@nK0DH*edJ%qe4eYV&i}kx#9j)3zU{-vGbcfA zXz;#z4~!A*c3aRFHF8{}8AC)NH`2yEKpGffn3-G9@yv)dn|Bn=TCQ&DPKay<)8gJd z12e5lrH0G;S;_g!ehZlq2F*yLvUtb;K~o(o58|SW#MuYKgJNTgwdE==-wHE5wJ`2W z@)fI-KC543yQB*h$80iMHO4WZa~`FLVo_y$LC|QCLsQM^zU(2-@_b;xj^9@W34 zzJuDH5e;Piq{>xe^=HhF{bN&51U8-1?8as zIxWP1#w5V?Q(7^%%;xn`6S20Lv_S9vPS)%6UiLT#x%!EW^S=O13elrL5%VV@g58k3 zHHRsVAhw`fGdu2s0gsig1&R+CS3C|WT=(JLU;_HnG}GCvXtAAnc4_HR>xQqR82o+n z*iH(yK$U95dqk8gRfPbvYJ4hn1hYo+k!N8KaR^^tPY(j?`X!^s(!h{bln zJp-(mP_kKYH`6r`BL~qi$Vf$orPLc}Maq-jY`WVl!tRdX^<{c7;w$keM8DfaW71Y< zQ$K~J>Y^UqYU1=x-`1rQt8OP&GEDOuXa3={pwqT{+^W6Dh~0y4yyLrNE-$_5jy|#k z3_jD;{`k3*Mr?`hOU=kJEIc2KouHLj@j{ArRYMsV3?ivn)j!T?w02yfXH+%hMo=xm{xLmu$)&aj4$zUk^n>DT#dL|8es%};1}5^E9$^=D-AZmVt0t3rs| zF)C#d0{HX8jjjaiR0dNMW4t1}l3N&qh!4dxgLfCD%YtdtaO*P(Gca0M4Gd0?F|;0t zz5bwgPIod~Kk!jtWlDScmlp*uEBJO+pyx*(yA^XQ0X3U_`unX&HBq;HW%C<^>``ZB zHpjY+k*y)mt8*3o;PrI{bpjj-6teQf?ULXcF7vrDH+`JHql?NQQP|nMS+ch*OKxGk zNr@_V8~gAZ->2}2!=hRIEN>tM&#{ZAb~i^-?Qgju_M~!mf$F2$MJ1Lq!N}#I7<|)x6lVXs1J0W? zWshlePVoX#T$4+kk>5zgUft5W#Q4K?jwdP%04Wdw9du#w=W1~oR@txJ@(iq)Qg?!& z&!pcfTqx4_MDd?q#HqWXNIISqnPbLis*?n^QmG60El~u4lP&1k9e>s@S(nA#{lTty z)Z9w1O3kMEIAK(GdEBN8tC*d&iS=8YEMgw-$x%zc(VXF!9TK3)3Ds%q(|c+8FBJIhq;B-919sf)C0x*kAhy{{qRnwBZx^g!U>nD%{~Y-Plw#z%rUY98 zFKvm|kI0Z-zYPPzKJ^}R1Va#RNJJqb%p9Y}p!)sJ^Ovs8%1s|e`X1vie@}V$MS^lZ zo39k*?TPZt=yxt=Ieu4)Ysb!T9mtfZyo3k5UycetCsXR*#`d@>C_VMD0AA&L?N@kM zYGA*9pW~cW+HMf-d|k$4*GSG^nrId|S|DpPo;3R*j$1Fgdo4!fv?xAIjYxFt0eB*9 zcZVpx*NjLjQ)MVrvGI3D%grDSeq$ju!8GD!92T`C`#e*bp%^^4s&}WXN*AUn9%?gw z63!Q4(rWmLT07YF8{;H4W$2y2<-Td^#*Gid>i}BEUygGXu>zx9Z_V|ucPV;h-GToa zX@y0GXR)(ZFV`Z%&hy_)l0%5Wh{0-YM~J$#3bL!SIf$&!b{%pdPGMrd(zV|pMP=9#K8o|nd z@y_ik{Py0Fw0)Ux170pUKd$(*>r* z@RxTR+2FYtAosNPn@VUL3wnwnb5qn|Be%%YU{Mm6u40l7&Vp6qFb+-;o5MTpARo&N zA0}BiFyXvMQ@S?(Tn`FtvL%J;Z$+C>`f-s#ozb~L=ZA;qS8xesCb?+eTBR0!5EuKq z50pX}1+$YygcY(K=SKij75-K^OUZi9NT~{mtaWYJuLJ+P7Se@L>jQ;Uy$Z~LlCWLR zQCilT^R01A0M^cYcnO%ZMh}3&3Gn8mR~k}c%f7rHN%M!3&Q}S+wS-6}q^xI54D}t7 za@87@fWGXSFproI;-d7v;824e2I$9Hw)0XFB^q|sKBygV%@DCr(k#kjw zfYi;zLG)@)E)woHjed#2O`~N-p8rtocQ|lU z$Ao_k75`%sj`l;3SSJHaeUo00;VaeqB$Hcox-xas*?%7nhcnJv_RjnT%>Rk`VA@h9 z%=s4p{ZjgCzWtwoN$U?SR`2Kj;QYUUiYEfJqrC^@#*@sxBay?)^`HO527dwavcY0u zHzI!lTKBY=b>B0tWfnDsbBQ#U??b~h(53&U=!k2trxTAqUoM5Po3l^7!!Q2=ii@QF z%c9Z$=We;;$~Z^o8ByN%IroJtGJ4@>aFPG=$Bh5|`}zMx{(oAej=s)^AD!0C%WDX? zZ-*OI2sgcuscVonzw+ztPD%Ae6t~~6c5fCQS(qOknTWmK=clj&(MOqZ#ij739L#So zFJ7|2Y-~pZPSi}!v}05rr0x!}jE{J1iVSQHqaMhlA*SCCVYt9Q z0azmUfQJ3r%3dV*+y!@c^H_8hl~$}MP5 zvrs4FRNk#RJnWm4+a?l(DcW$|MyC=ur}lQ>EwrKst2~3EPPxx>ZTt@Ae4ZPIYj;=- zr&PV3BHvCgi2o|w5W$e$g)3|7E|JoG+_&l0UkNu{LLmv_7u`xxyxfhsrJZbKqvj=a zkLMb!JYMyhF~V+t7)!v5L=#T-t{X9>x?gwJMazPTC(N=_F+K--^LRb0p7aN`jks!= ze*pCvC$&Q+_=J|5*)5JpTi&iFQpJ0?3CN2NP0j;j^l|&Ar6FB7=Y>v?H&RYbI%-*r zQ#Om}_}@)kNXEWLXW@J`Ft#8U$kf|uUtn`pk>JR=Md{XfASF}RPH2CVlTC3EGnDh< zJASWl>N6Ir++3rxnFpU}O*n(MYj^e5Ty6hXda=;f1y z%?c}1R*TrQzgBnsZ8elLl9@?4Xz;Vb*Ro~_{QKg~v-v8!@{ETGwt9RL!)CTIM|7H! zBdGnm3544)^Cg_udzRm~&gOac7rL|(`%B%Wm|#*8^rhztZ%ZLmNs&gGzZ>ADh*|6E z?IjRzv=AE!wSA&c@9YEj5YT8?C`QQ_hn#dIsfFfN@~6|;9q7h_q1J$o68YM|=%}9hs{r9Ngrbu*C5V`C z2mC^PR??EenAf+HfUc$&Jj?Ci3nv=S5o7kqY zV(nf3Kx%GQWoidM>mcq(A6%_m7cLEcuTnn;>CI6;+#MSo+*DrIM4(TqLR2#U;TZzF zm;7?TFuvvc3}>w~Csf(aWjVlr3o_T!1hp6a2ccXfc8B;d-chBL)4IM*rP&@gb#C(8 z$#McvIDGcoi8Ej6l*K{>c@&{6U!C9n*6-kvY&0XKJs-xnc%#7Kqz2zQ!sP>lMmSRq7=u1kWd2_>IBP}-DH|woIKKEeUThC|?Ve36s^7lBl+jy@eyIh5E zUKZYVYr5nMzywt31xs69VJm^LM$r(@dWR09_X3^-XB)Cd>#A{|UgWG48XZlr4nY=v z5!29!RpVhw(8u2s2A|F^fhlFC8ffswGEE8Ry$XeR@#n@)4dlsx(>Jk>9n)3eQ^ftg zbd(wibVuiRK-e4!HRUK)-pLEOuwiyU=Okkj*j&SESePG$p4~lD=CfG?@=#Ba$i`6b z<|&g7;zwP1)^tk#MA*?1R^L$y|1MwP0krX`8jT7Gz+QTBuB{3{NWQ)&%bx8wyaB^i zZN~XCQBH||nJ2Fjo8&D5GclkBf;_3fQgD1hXTv32ISnPQ_gl+aC=HpS*@|hTm&-VO zzC(&y@t1_@$R)?2dl%_WOAaMNYPD5kCobmCh>5w)5OE~y5%9t>Sp4Y`ihxH6*e~;}42~-K#wC9)d72wq0M1k5p z)si*AWxW!HW!6K0Z}?iQRhR5~DMY7^T%HzA@e|f;-FiLggPIae2K-uN0&k*A97j@P zQt3-DZ7~>HC^C8`hhV4mxD4wHA+|Y_XIl4hw(Ji_>@gBDl3pCjvc2L#CvvCbAwciQRIPGA`TxAyY;XIi|2< zN~bhRcShooMDj~uhI*0n_$H{A84qob2!5lY5WLKVXNnx9K`ZGwHYR+x7P0Iec=}I=BpI+9Zkk?PE9_N3liLiisLyo`7rkq(3Igi2iP@|63g-% zayGT|c088b{_cAU_Xlf+z?e?=#lQUp>_b122ku;_fZdr8 zQ2sBuyWoPhTLQFBI4$14FzbWxAN0z)tv_Wlc`{Mpe_SZY`)QP^U1oEl$mQQWsKtL2 z5C0F~{J%^bu9^t2=ivI>nl>TNkkOd*$ZKOK`JIbl6-I?!;Uhp;5N2uq%-~UwE1ZtP z^bX8hdEVwZ6QCqN{(TBh(Q2qEWY7h&sUu$1ea#zF+UQ!vuvPhC7=x*mo74D=V9IAB99&c~ z65wawBQ2rx<8qORX{+UG+f(wX>)4F%2%$vxh2tJ^+`b3*PCn;JlF;6mU8mu`;$QrY z#4yfNm)*jQP7aV<0UHJufun$|bAP{m<^9HB6(fmS^l zleTCB{{m3hvKbb5Y1;Ne-3;R2%u8ZQ8MoE?HZ|zsv!EFen>tA%1ZnC{{kVn|xifZP z?BxEFcakwAF3EsB#$;QxCNjRvepSi(=y)PxUl!e}6Q}fiIxXOGdDZ`c(zg3`-#xa* zPT>W@Q5^`X;6#p@n|fY-nkzD-*t$71g{-eQ^A=pK zh{+#CcM_D_A<;aEE1ATLSt^sXr)Gnzi4%eiF>+{HIeoC?b02~&NsAd!#;JzWi!7lD zIy7tkm~;+jkR>zQxzU4S(1}*nVP6zzHwV9s17=B)oU_vF58EDWaZwu?Qii4})4|xn zt7E&3-zm&A&&)k}bSF2p9n$FaxXMXtLeO-Z6+sc;J55*}f|O+3 zswXR$LV(z`f>DXP?Ldu@hL!=^qX{Wefxa=1z+v-7KAB@G$q!t#@vA2!bN4Nst=^td zFDoP!>okqC#u$Cq+((ptG4$9W%p=fLr@rCac7=Yx5}#l31$u2&&sfGvTpo&g+&XgF z57_d*sFN$JoT;=QmmfWx5htIvH2!h+@dhn!#47*beAhJgE`w2;clG?ag$$XZ!}72R zTiRq-%xg6g=A#xjvXjr5DUY>{jCs$`w>qOE6Tigf*6CzTv8ukVlS+^XE7fGb!EV!5 zaj@U0+?KXraa|X!*?G0~&T;b?C(PFHIEp?2=xOL5np1V<70w0s4u`R~61ww?S4~k* zl775?@MH@OdR)^DeMTjzE8_BsXCjqU&-83f!LPAvl!z1r1+flZWrx|}K7Q_VL(lB7 zH%e!$w=&Xg_nSW|^)d~8%JAJc>_0q5fK|8N+bLN?b@>Y+Kyv=`6`>;?o~IE&Lu303 z+fQDV!j=_3=`afo(Q@{(^2)X>=$e;0JlUy5!XjM4EX-=VO_Z->0_(%9dimOt!y0?kKFYWeXArk8u3zhSql zxQ`WM7c^wPjsDEgJ9?jvm6_PQx1T$y%Vg{F&je)HWK1ix+uxdwKPro4xbQ2c;cAWs z6sZ(Ixrc1n#ueUA(R`6KMrsJIy^8z4V*BfFnPxj=!_Ns=>y) zc>NwZ{=1Vd#D_G{AzBw@s%LTZU73LV^B9Z0G9?>-jy(n=+tA#_+X0A~>1`JgPr#zi z-kXSScgpV6krx7i)^S%mmBz73f+u8QUsU1p9wSZO77bNi6r*eX>Ku0X3bRex z#BTI%Q=e!EMDH`#!aPbn@nW&GSQ5Gk?hnIMeoAZDZxQ#{DYr4!q9+i`{PnjFcv@mn4`r?ub5q=WK=1 z+XM)jTbAdyu+;Azxby$rUKcre3em7R=Y?`VJop^*9cYp04XG9O2Kq^b(d~;~$WVr} z!Uj!1N*Qx+@HA`2^H4SN&MZINkdeyI!{d>rTSe-E+hX}QYw652VCY;U2EKzfhTdMh z@(0#IhlUO@D9fQ}*l*}F@ zlq~)-8T-HrTazk+4|F3h6w_O|&r<^d0bP&OK_o@_V2T<%3+Uo=$(rXvF{0V|?Iiu= z+6OTADDaUtnYn!?K1NX>(5tjUW3o|as_W5@&5^YB%h+n(M_=S*r+9r(X|ak@j36=F zX(Pr%#xlv}zSzu9O)(&ZldaMH8+%@@-MQmspW)mdwQzX1!TNh@osMVT*2S z&I|O7bB@T}H&Pry{9;vJ>4L*LMvh-YzONX>=yFMXByKu|wKr38Y-88+u{d>H!u6~L zOIT97pB=GAB|Bkw#ZkE@Z}3%D?%m)~BhTsES0d0n`XZ1_8Wo;b z_ELp+E5b`cv9s!^*`Ns+>G=ZJ?Xk~*^v2U^q=vTie)s;&j?~B?M@rbP%SOEFyS*{7 z^18toSV5o()nC9THVH=>HX`$9H*T$Vu~1SYCp(o$1vF-{m4XC{x0T(^zPGL-)@WEl zI6v#Blxbdf08iDK7?H9PRQB(RWo2Prn!{U{mvDc%qb%nixy2GIi7I>G=N}{dtT-WB zkTu=#QUYum=nRjrKuG3#*lHIlMIi}v+_y%8W^-8N^NN||oGv1WX_X;BLXR^Dlt+LcLW`D`;9^$GVq6p*mH~Ky*ZF$sM>gujuyZfthgD zwN!B~;UCg8I#2Gca0BdM<}?~pE8b1uc!7EU0bZEDFP#O61(adJJ6C>W2N%e%`pDt_t#P+Yov}PL%`Q`)xP1Rp?J|8f`6p8V+?>Cft=6DGZKMGt7xY^r0|p$%_N#Z+k`Re3z(fiCK}6NS<2!)U~9 zk>d*#J)=di2%CxA0aKfN^O6_wZv{GX{=&@P7 zYg41fFhe`RKXC_(!7ad1 zFB1!PZ%;6s+5%p897$DY9T-EXAQJ4=FMnXpbza+YPxWi9!3_}S$;{2kW5X#mLf>u) z)I5#!APd#T82CKubQ6+tT*;i1lX$+GrLJNWO&8C}%!Xh@t*(ix_AS|5TyO1T#4=0i zjj9^}UYuIf*o@uBUj=WE^zSJgjq9WHTAgzd*@R;FQa@@XDXol2(9c#1?ZVL7^`#4h z;r>bIe&e6DXRXl<7P0Rm6t_5xUIFN$>7gb?;IQM6EroI-E}VHnvf9Jgg1_cG4JCzMfX`OKz+j*u~Qdr537WNeKJ8~YQulXubW6) z(PO7T3Yf3svb)5Zae>E8J&DyaMs&#*MOdFEUrl6X6W}jU?umND)s8Y7Br3I5=sOtf z4|hz=*F}kjI2|s+!2UR1q9%T*{y%Zrg*X{eQKR03Hm??1yP0g`ex5kM0snqO)V z9@(*QvjB+D!uTFXO@b>Qs}Hob@rX5%W{1@Or%|zk0)9PhC|miTd{Ua7M3X|R=(I)l zY%bxT%L<`4rWzJ%A|@FB`bX9+CfB;D;r(q@^LOWB^O@>8R>0Agj{G@GlR0JluoGiY zi?$#XMThB^omd9AhgI;lDD>akw!B)b-sX>NY>b4|#=f)tIAhIM(Dr`#Dw-y{Lkm{p zSo0D)@}pQXs~YvUA(yy+AYJJWEuqDVzdQ2H6qCj$#=`vLB`>+f9tY&&rV)a%85516$dDby80DphuF5lmyL0WFVVb=G1zkRPZ*G$2rvqQ`y@5!BZdWf) z*&>HZQ+b-DEY|lQPK-%4AZtQ2bcMVH%}Jw!DP_EouU`LF=7dNXIBmQQ{yv7%!hzWI z*x6xrRp|7JQ8c5D6ms9-``}BTy`By>itC6tSM;NK!GnwLzRC~$CxnZ~v*72ovhOh} zynZIRZQ`oH%1_>cpigbb!Q-)`JoGmaY}+%A;BDLdm1NcAn@{@vM^Nil_KV-f1=Nf6 z)?QcEl13j|f&mE~TGiqN&!pWV8vQv^GPc+z)uq%tw`;2so+ML^Qp=Xd_pNs(7~-Ga zi(V}gU`s2;Pa#lRo|J?vLNq)s3zLfY_QQG*BifN9*Kc%6&vI?}aVEHlDnrqQs(#u` zZ2y)P@MMtusdjnODZfl{%)S&o_-i^#I92To$#C=gM^v9-g1T6qu!mK?L_&OP&Qqn4 z9m%p^Vo8pJt(-AMhRnH?IF>ku*Oeg1o5cWMBW|80b7U=k#0@8o`NILvPr2_PtXKnk zZt@f1oqqF3j8VI?3vn9ssQAyRcD%2<;qtWIy04*%cvCLDvsPTk{F+OXei$L2Tl7!- zVcd3)*;IV;OcY1HLH=oAD^it3C)*mt8dKoIvB9ly2iB|X z|8w%^xcy&%O@FiGx|(a2Iyy!>lu>s&iOp>Jz8Pmlukp5^#ia3EX65G7ZMumE1B@4| zi`bYOCBx6SCj+%dxGT?ti~sZX#h=zKi;Yw@;3uD}JqYjYhG4P&;X?%&wXyQYi@L{u z?95}UldHK;BrZ+DfTPrfSDoSzr&NXa4Y35mce@?;}dLR z`=zbCvl%oJKhfG9%wwCzB~b}Q&*{@``_o16>nK9?cHQkapWS-`b!zKJk9BV`Lcxb& zrrx`6Q>#C9cQ@wCqkdEUJKT!3k#&?-OnQpjs4psfLgi65u#6P_)!6H@@yj z3;gvJdA}W_F;$XQ@{HNoTy63>$U;nR)c8dTcJs(`r;KRvHoa_g1jp@~kN&qL`MoOV zFBuC_OrbrgjTxlkL?G?5s4DvT;OH#954(Z1_S>Rp7t9A};zSkuQL=TQzW^%TBb$GW zmm@Wqf}Nv$Rj!_da>p)3-1Cv3BejBlZ`qFV(c1)VE@mt0R0q&~7F&u9A(1Lo@wOk5 zSn0{{-^!xpt&>0kVD?yGo?87H6vf&I(PR%S2JX4@DD7wMuv3wVYnC`&gLd8z?X?z~ z8UqJywhvfG+PG^S$>uGjsyd}vEX{13*Ps~UHnph5_mL(x*8{e6 zuUHj)WT+n#Lkqo8yFr7zwe6=4HP}of>Rs8m`I8m}N5z1nWSKiCW3!#uH-3nxF;2TA zj8BYEWy@R>R%z97yZ?d>t#co{3a+#I7x1I8xh_n_8Ron}ZuZd=sKGr>Rq2Dd7Qkr_ zoTKtaC1EZ`a&hZrjR>1^NR-{7%`+BaslV!B{iF>% zpJD8~eI+TEaP^|PPYgSaE9qhc&T;m7FU<1TtX8EyvCgA)nx}XyZQTixAt!Bq4>&Yh zkxC;bd;RTImhv;SyQQa=_OQVqHY#rNJU-te<(8B;1P1pFm#QU5_mX?UeD6;3JR2(Ta5VJH(>3Mv~k7kAlTAV7& zT2DLYyeE&G2wi1(^}A&rZ?rV6pCw@;&>r>H>39YG!n@PUK> zy{(%1KdPucm>K@zt5}Bp1*pKSBoREz8?4hNQ9}ILHJinanssoIt}HHShFnukHzb$? zXWZsn@rD}(r42_y@(k%(;F{O_JudC6p7l{HUU6lzv&3V!&+_~`9QDKAj5}Z_d6v(Q znwgyfO&S(IU09M`gO$zX8f4oNof8|OJqy+K(`JugCNSQuOse^~9lsNw|G7x_r{EP@ zdQfGpOE+K}LnTcKElptyNGf`DKo}X$)4fZwio$KYi{nf*5NNH=T;xV6*!wk^m!Bwo z7ifr6rtrPo_lJ9@PyRgn^;)&5$q3RD(7D87Eh^D!-RrEjSSr=AlkkyW&Q51vuHeqS z<=rM z#4T0J@NzG>W68tQPAsaUAlLyW-ckYD|6OjQnQ%Zrt{rp1vZf zN#?WHA9y@3(u6dSOcubO%=o&GN$gvY0Zj;)PdcHc$rs!>$Lh~#l!lXLF$%&~TG z_h>#;BHXZBN?XJJFye>#StU|$c-ht;mkArGQ!6=HaA7k_e%NYz_@jYoAi*Ma$~~g- zPc)9aS>ZgfN>NBKp(YI|NnIe;Y6)izYn^OX9Ve=4Fbh=Z%$}Gb;AvT2uCe~rMoN9y zFP1r=ZF`koIgdVSyRE3oQvA3{^I%OrsSjTO90T6ThsO@On3T(YSFZrWv7RZ6)Wo*z-xM z_d4|*#GL- zmxW90b@nVuh*;7Y40EA4cPe68g*-f*x$sP~y`a<&$^zAWJ69aP;Ve`cY=urr;(@qd z)_0*hyt)mX)frV5Q>nDfrV+|QOdwTwBy28YpAYp^deP66W~u>j4y68?oK~&Q5(EX_ zeVQKC&H?z}sopYR`IC6OOc>G*XiC$-{4DjrWudaUg`fH0fu~^bIy6N^@4|kgJpMu^ ztyLt2=Zt9tBI_({G)`NZTm*yAz z{1HR;dRy(h-QhAXOLo38e7n}23~@KEZMA#p%sHRNtpOZ?HWtdFtVv=4r-wzAG!mI1 z?qh}=c^!XFE?ZfQbmDoKHv+!u2`V(!9}Fbr8OoF@eGs=$cWTV6!H2cN>YU%W=7v^f zLwbBo9CrkiYBg|kcvw1uLi!gOF7;OI+vbt|3Ew773Nei0FV%Il?b1|p8Rb{`GuH^8 z8oE!yU&PMcNg?KLm%<9tHIXR2IG(R1IZvapU#)AHZ8;J@xs63hx!V5fXXJB*&R$;3 zjhdXRZ4W8kHe02aTC@76M!b-z4omHe9Hz*gJdTeHwx4g)VpnrA1{&sx7w#&4i>!`e zDBFF@w;L29L?bEf@}f{8eM-9%UxepfMX%2nyN#L<4<2h#7R(1Hws|i~k#_^=KicBE zW@dJm7g1u?C^}N*k7J|hHS`VhlDn+KlHQroVhTe|5o8Gjh@ba8Dr+!jXcjv(9cc6s zr189gFH+-{@~uBwM?w1)0({Xq7W@~WIoqN$Pd%49agt0QHUk4EbFo3v0v$) z>v1X7mU$MbIQig0;YEF)@%}Rl>w=3pA?usGGQ0KWSEnT1JHpYGf&$CEp3{mt>c2ndx4lYFxXet?#^x{ z>%G=wNio6KTCbTs^73z`(#m!*9At!=?S9W~bCIjNP3O@fA0HI&3=@1kzRbr_S%h0r z4VO2vr>ZKn6x0!y%1I&FrY=tUITr7_LdBos8F!`sXjJ-RVtR#T<-Bt`)*=!{o;J^x z_9j6ucK79iVYY0q5d+1yI19+S?x?G(zb(19P&KBb+?!VSrFj1P1{(){`SEKAERI`r z|7A!rxAnJCwMFl<=g;zuA)dz>-#F6~AbX{mfarj2bOpme>7b@Q8yfdV-(#ts zP;vfrQlslm%6k0XLitou{?tI<1DV@Pf@y82Hk*2<-rJh-ED5xB18Y^8jD5kg<4N-; zsnMjrfc{Xukhp%wjaDrt)Rgo;mUVcKp^^~HK0?NjS&GU~a$NTGvy^+5MA3ehyea|- zOfxkz3r%Qz$RX1l}{d& zaE7e2qzRG?x$T-a4=js9)+k%NNG;i#m9B-k-M}5r`>b|vCEcGBvBrl3QCh&Hidx9% zQoYd<@shEFp$jEYu5y+t*Q%4*?Q3@TubZYYV`Vxu^_*#Sq-b1iZP53jI~I&|qiWPm zp1xy=Tn(Fwww(@54xu<65#>{{)$X|Vc~=hfvrtk(2h`7GUXe%m#i+OOUx1NA)|AIe z_@c@eeg@5Z)}6lq-*`)|eAvEq-7bMhJWshA8lXzYxa5>o<@*$U;#w1Qt;H>h?@2RC zWb-ee71ZgH#kI@d_8F1=(gEFz{KLCubvj4cMp)0<>@O;|@Q8Jm(dB zVR;&_-p_VUHAdHUlbvySy-o>+g^suW#GmLpU(S7f`DioY97ri`mc(fXNoke}npYpd z!?TblDdgkXsP@wxXd8iayDEJ^{s%mKH8(aw`F2!uGX)pJ5uIG|A)4w-g;dM~VP6+o zuxs^1GuK^a%m~9D;Eg|Af2Su%JeNyA(5x|N9w<+y$)Zi}KDhQ4OwWws>~2PRWcb2O zGIjel8Sa@Th0ydRE*X?yH$ueUt6g*>yQi-$$n}NUNj`aDjV>!Rj?wf<>Jd#8)z56P zd^3EFV38DBR>kZ9QTt_D?xxbLi?PYKv#$#q&=qzcH<;v9!SpN0XB)5>}Xt9xabupp|nH+^%hZ8$UpmV{g=rs)8#s& zQ@v^nISwv(y?JJMHrQe51O*oo(eNXTM9S7 zWT5y*vM=2~TF01zvz!E*D@wAdJB!v=`go-epa3p;p27VQnqN5YG!N(DPr#c?bQs<7 zjJ&5r-Om5P-dhI68ExC55L}Yr?u~13cW4}fH5N#4hu{tYf@?QUfZ%S8J3$+l;4~I! zToO8j;JMkmuI%&Pu6ORKdbi%6_y4Q;tyMMGTw~0&))*nNH%VAYG%f>c@|JV_XdZu1 zXt7N3&m=vw!gM^W!@h4D(z9h<^C0LHKSMwLq-V<>7oeKdA?RBQDIT*Bv&njA>~o5| zd+;{hx~YituZUZL;A2X2{Jy!5Yq!s|ki5K5-Op*;IO6-yj||lUlen%9$^x;^^&6ul zNe^_HJps>i%qa-Iq=f%ndk~Af|ofJ)(<85(`5-Y1oVMHqCsNbHX z=~H&N_LNAtCh~H>j4Y8jwImKBRngR79*bMT z=vyWlV+Fn!uS=|=0zdJ&1XWo=)I{$#+G=a=b8)%fo{hHhF{H4tf|ja<`8Fr^JOsG8 z@W}-*6@|*?$<)N|<0LIV?eAY6H)`yCZVnVvdqso?S$Dw*ng`k#&>kc8N*7i`VpKM% zUHj9$@#lX`8vj9Ip0KU5s~yqc<7js#vZ|jCDlwJV9N^IYfyxNnn>-EG&c$E0zE(+$ z9R60`_I))0??bRw;MG^wg7?hP!?mQ>DnZY63Bj=-^vKiVYPY9x7meK&5B~{dX`j6_ zy)}>H*E+O>zbVW{8qq#stG#Amu>UiEt!*RqZc8Rg$_ICmL#a`}ib&oRotjgHDoU9? z6}4FGe+dBT&;HEWFZxszlhU;4G43|1Y)_~~kyEC-s!vjs1M22S810~LSH5VzU5<0x zv$l_(PD~VAY`M-Qbv-H@r|uwp?E6vDaFP{ju0pi&L2y^x##AiP#fOTJ$y^PO_5&n+ zkj?)|bqL1A@BOY?>`Wo)8r3Iu67Pm{%>-~3w`2C4Kt{Z4Aa6RNx?kfsGs-3SU)QVk>Uhv4;6S*w6N zz3AFagSZM4NvbsJ)tn8teKQWGQ~ot+{l>I%at*v~9N#0)Cx~xwAfc0}#gXyW8bRAd z5E_D+FjzqON`rGn_|UQ3>|^-d@we2$pV2r3K3VP4Z$BVPX=BR69eQdwSDj5(Mu+(m z@SAm&8?|ye+9?!^;;d7;B>rxu{#Vrcz&v9oP zS4V~rHw>$A-$+oQN`&Ond*gVNAu?xOf^R;WggU2~Eh%=ApbSJuO1iz6u;((>v9Uc7SUiv!2A#mmB6@<^4uw_(1ajp!v*=d@g zNwyAIy}OIdcxYziRmX4%e#7i(rS>_|y*(!m39JM(2TXKeg$7o{u4)9|?i>b7#LLA}`IPA#X-?2p+=X zwP7ntmL6Nq*24EP6Xqk(RO`!2X7Z_8$ZDHY?aZFfruCzhN0!$VlEDMln2#qw1VrJ! z)SMiPu*$6qoL98H7r?t2xow!vog(S6t>$+2FsSXRyZF41>>!X1Hl*CfvY*K{4{|6=<7-QjGOgh z9VgOPFgJ&IwdlQ-F!>G(OMx|K6TB+{?{78IEaCH~GYh2&6433#c%mK??5l?^oZvJbXVOHn zYLJF6-LyJ%fH|6kbt(H4X^+E*D%sOlwe8wMA{rbiEnb0dSRBJ9aEhTuJNp(yuFv1Tm4ZtHF@sDhuZbOKFniYUpX91FjVLS$- z3*&3VYv-ype&F*$<1+ktX4_AmqDNQ=ycD6adePDIw?UY-hPjk%jW`yB+($N6Dnrr# zXp<=w=s+fRp#f3`cvR~X*PKJ#vxE?IqR}S=_N3AVI4-sd@Q&JUgFVQP4?Hzjm3+-8 zK*nPlJ;lG3*~6J`0{*-)M3Gk``i#_2$D$W?Ln3lg&}$$ehBhhQS%iHZ>bzyf@4H{Z z{95YGUWCQB0A}|*c6#1>AGn;xAti^UM#tG3FYCd*T)%>Wc*~o}@^1iR1n6vpvvU&$ zmlND+Wt;g1o`-4*RyW=X+iy!miZ8#<6B0uiQh*{B*j$&cuWPtJ^%oMg3$Bsx= z<7fQVGLCa-;+93GX+HM5ek4$3OjcPYsj%%woOKvYxE^NxJBU9s@PtaW+&e(GLy3~* zojC>51@@7&5TQO&sx{9wuX(Y;h>WSg)XTVIz8QNpc0Ft{J&O6Yaibl(4Epy*gT0>e zX&T{)Up0!JOL*z0au~;K@$zX@;jepj`Y}m+j^&!c{ zb=<0L=FH6(R|8jw9k-%e+cHN72oH&2SoznBntp{sm=PEMiM<`wKRe>&osTi=4G&lN z|MJ54Uk}I#rv0Pw1ce~m@p=n`t+m)LIw+YWR!5Lp-tfU@C{175RX%#Vlry2r1akD0 zdzt840f%k8a)H=K)ID!on@7DLQmW`gFYfb)Cg}tdpcty9&Qg_`PS<2h8I9r*G(x-b zTs7`XCb3s{m|wO8$u%ew>k=y{)eV`98Ip2JnS?Aj@x<-iBA4PM@Y{&LeC2Q}yE}d% zGb;O|w1jlh7uLqoiOReyh#Td`2~PezAuaM;TZ2-A1*k4cFm7QX710cMmPkuUi`yk2 z5Dn7926zIxB8ol=nIR;njENQ6P^nW6E(n`Mx@- z>%8p_6Dr2-%hk7}RL7GEf=b7gLAicdu;Zr*_LI^@hV<%GNxZPX+%UN2)nRrsy;GrW zAsU1BJD-T63@DyA9$+z{pr2tz!uw?7yV{gvvp;E(K)TeJ-RL?o*?>S0P(gweAUBQ6 zuUE@8j2!!rc_`JSjeu@kAe-ASo?p{H$B^D87>&PJEDZC_wCjEoG$}kdYajXtg_4PT z3_@mSqdVMg-hNsbM8DUO7uF(d^?tFWfa(l64nS{Z(hy|@XLs5s>9B4bNmfLT>YL(O zFeN0`JLzF;b|@%t=yytWDfOCp6+%Wi({DLD*^J0JN})qcV@G0Iu#V(vg$@>yvoB}B zJ-H_T(dS&CnsddKDs@epS7TGB=PZOZ!vk>#6mpTi8&9`$iuyx842uhdlO46d&!&YF zh-W#}>t@g|CN3Uy;~4$mo;t%v^b@;Pwj9D-@zZ!ho@mrP+6~0D;4Ud!a}#s4XD=c+ zUWs)|!^Gl#`xf@f&ip|Uj_<8sxVzdrFFBH+?YhfHC%h?mAyqie&38d&!d+_TsEH#r zW(~2aH*2atIq$~UKCnKS?%>lI2zD#3RzYu4NZ%hFv2Ye)jpNiB%HyDc2ylXNUqpsP zZ{^|zF1~9}=HLK-OO}}v7( zZ#K$v`9@n}3Ed#|<~;e5G@#!hfqNUQh{5x#mszi6P}Lrc|I^ndw-FEj>(Fc~bKHQh zuU@F(lls|98xI5Iv;NMP6Qz@O-J{>BnJaN4C~@=So4H;p;9!-9Q^_!XEb*i^{OaR0 z%>|08UG--Y{65=`Cmt6Hh1=e$$T!Xr-_%p=S(j#z8P`}Jj4Vf(Fz+~PLTi)`eVIiq zQQc}~sBmjlVi4aVS&?SJAw7w$I%3?jflA3$=CFx&9shSx=Yilz=+Ck)WGnu`&nWCa@XQl0Rkw&JhK8QO8&mrtGoLaTZ9&X$Y*Us*ej7g?#bbyFgc<+tGdl zJd*ez!dCS+b4VM=ht`q^OEN{0hud~@Da)e`b3@Gsn}8=fqJmxD+Yx`^k`C;WWJI|R z%h3@OX!yZi>RoD)k7U|d+TSsDhgwv~=TH6RLCxy;A^xZHA77ieP-kY```->ji>gan z`BBAc###45#@rYPmMn@uS9lodheVV3-{iUOCXluB`HLwkN!r`=$>AEI!m+Iv_+W`~ zy9x7vl1yWS8R2j$H+U?uj`AExaLGW}A!~f`;%gPD#JB}3cwTg^JX5Vy5~9PwV()c& zDS`X>kq;H#`qC}T)xC40=E4Qruq;*cJBfleq3nB4kR0yknzjg4DV^s;Gq|&Y#<{&Y z1wq792kLH3asjGma-c*yK+#Qdh1^s&_nU}0|2T5)Az#?cUizY}aOmFS$P*^96wL2?SOrcYu3?9RU6>Wq_yr{m#e++U41wGbKSw-2*%SsY)oMRi-qEaR zOB!}%x{~F;dH(Eo@Ol#dX4mrV6DuEi+>|}1ptDrpwbVPpr$VZ5C&WH~I);b6CeytI5}q11Unm%L z0yXo9#%dGJnFyQ5_CI_Z){e1TeY%``ZTXNJBrxmwYe;({S2vVy>8#d@>srAmbZU~M zXEigj>m@CWRkt1EIqO?#MUo|=6`!(Rj)>aVip&>CZXJGVU|st-G40HdyuST(HOq!t zJ!B1La|~~i6s}c!Cv6`t$Itmw>*EZK#P>%f^OR6`~(;D1dEtlCWU`BG9GB4(_XyL>5;fwBv4e#gU`>U$R znnXVS#${zjrU6043r*J0`D`{9y4CGd*B`%*3qJ`XNG{DgN{KW)2i5=Ldy-~JY&qU3 zMm0*^0Ct}CDzwG$!iwSBbjZz!X76=4k5*hH^Dicoc=ARWIf%5^+kA@(llxA+}DjP$alvaidrbbJqpFEB3wZL_}la-S-;ugM+2EY(ML;WoM zGOh2`oi}Ctb_;H%=gfRKeTrg&OKJOI@-XjfnTg9H7YAncE5w&t)xfHK8g=Y?Db z=d)ZFyOo*5eD+{H8{ztsOHm0Qqi3WQ9OOa^AKY6;kWXb8dFl=4> zYS5sl^7)tC!xYY!1FqY`ncce3>tmzTAkic})||wzYil4D&$B5}tk~PwjXKvqDD+jb zNqxA`>r@_}2CX@?Rep8?3AD?&43jYSdD1!ma)k^{IT!+9cC(nly#{?Vk!iX-YX?eV z{#Xjp?42HRT}RK2hLG33nxcRmpX)5m|QTaU*~nW#YuS2aEKs#RP8$%+l6EN_*6Xh$ zQrS^K%XXP9;EB2Z&hty|##uDM5jdkCb1-aw+v=I7QLHq+EfsJlePNiFVI00URbBnN z?EoI~wx;uO6DzYvx}q$-=3?-PB{qhDzP%p}ca?UtGkBwScIo)|bfwVb&?D26)Ka~T zs5SSRu^GP!XsfmRUcCu3F?F)zXvqETc%kWRG9`3NUT4GO;r)c-kL~8o>Wp6T;CtWO zV40N3!UI@h%VbE%EPaquei71rXx%sTZQaV}_Fp&dmvH&B0+BasGKcOSkVuwaGL;_` zB*V-acwx&AeYuzoyJtF?FdOF?sIbhL7w|F%J#~hpQIAqg%ppDcL}bI`v;%$T(pJ?$ zk>xLc;U2wbBidbl`pmxv3!5ygFWX5|jxR|1^j@lO+(B-;54L#wU%+#FtgwG2uE8tFMfssGt{=p zIV9fX>Vng?#EMr;W5zxQEHwC=f7`Z4+vfBYwso*$m3f)X+C`99!?1qzM(<;Gt$RP9 z{lyCXWZ$C@X_G(5lv_(e?5y^+8YbJ1AYvVZDOv^2(y;`gHrh{P*@`db;x*3 z&zP3C&J0j~Y^Sv1%4V#5roVCEaGjsz%UG$>GqEZ3v@>g>rHTike5IVJ(t7_RSMc(iohevKPXGQPxK5L!VD9wV{Z3j)nfqP z$cV~Z(R@Uj|3VD!&Z=vBdBhM-OsjfQrMroS*G7TkekOY&Hae`BlRW*QW+Bu(#G54J zftr00QIR@XJC|rOyyVY?Z6n|D7?cSy3=mP?@WAW1I&F)Xh$a@t_|!>FiTl&m4Yx6e zs0L=vW$0@a0g&t${jTvdN5ZY2W3L(G`rnB;&Zs;#z*qmE(Eie8!@PU(fgwe=Epi&; zALnLa{Qp{dfxjI`55(D$XhRJ15J4`# z*|9SDr*fTrQYswjrO%xjce-IZazQn+o>^DLPX!--gF^TDj+Gy!Q7>vAC*FQdxC_Ln zhqvA(RZfJx>3;Z;6l2l9uv~cT=7MF(3b{L9qVc9n=3G?*HR(xazeCNfP#h zfLSys!|&}PxJPx$w2aqosAL)v>r3bi%cNa!hP`7Gq;AwD7+Z~x213VKH(9v5DJ@Zu zn`C|bwsBQTjROHE5g--xXz}@Z6PzDYVA`x?mO}R~I8no8oBqbBysxPE-@ItYJ4_RzS|b#kD3kHV;j>6 z<1<;4Rufk3zI^RRA^bQ0MKHwj+b3jb`J$pDSvXU*ohDP1yBZOKUh@1O1(Y*D(`VIr zT5s5wv7Nl5hTDabIcERS>eZ3ap?U0`H{Pz-%|lBwF8XQ>QHe^Z00i_2Y-<~DV21%N zVH|+Feb$bcl-HNdyqOO2H2BP7!9_6EsG0oDU;UdpfOy`dv;NEH*f}Xrp%tc%J=PTq zvPLk$rWFu-irP(@GI}rM?w^;b<%fR`Sm1E$FpZ#d+GH9r>gxW(kh2gaF#lP{Mz0hY zeC(N9jXmXOfQG&~{6dni{}e?})b`d-(!Jvy>L$8x9jMCG3}kEUESJQ*AdXuZD{5yI zf`axBvmN}2YLi%8Ohmy4)IwBzG>#3r!W0D|(q+M$)rL@dnu0?nI+o0I3=4-$EB{H( z?{^)8Rc>1C6!LeAh2={;eIlaiiqk&O(VTR4hj7x)iX(9M6R)(vg5m5 zRylcFgs6q$w~jgB8kI9x(@U*&oXK%7Hu|;%i2IL;;w6pV|C-alztoJ{eRo2c3VtZH zN|fE107mv=XmgEo*f?)AR=$f*Y`};P;2I-S{ex1g=R7GgBAZBUUDyP*>vhmvW;QN1 zkCaSBK`10w9J9Hi=VBl!asBT+-*mD$^_Y3OCJ-4%85+Je$;pl~e61#pWsc?JYSeDZ zC0uIaJXN#{*8Z0M3*CWbjtb)(;c>N&-fqWv?j(<4o3VrsX=G;d1f}{cmZT{#h8Au!1E#kZsp+UxM z{4P#IjVrafT3U@wo;C8z(bNP5+1pyw6VcNZ`HS$N94eBJtozwDcto`Xl;-+*4Zo}{ zl-#D<<%Edi2s#sA@fHfQKFYa%VGgxmlfU?<(lG5O;ZwPVRj_50L{G9p<;MA9K30-b z(|U4=dht{xas&tPNrlkR7i}?0fL*pri0J4!y06PhjfI(rtt!`Gxmr0mqL?XZEhj|| z<(CA8$8ELv3s=L06+|3HeFWw0Fe_&F_q!$RZIeLvjvLzWb4*_%MfLw-g+#g~yJsv* zSAO;57g4Fe*n-xu8&Vz7ER`H;C;2%!Jk~>O)icwxaYYqL4oIfiDy$NR7v4=@)gKtyk9R~bsm3jOp zq=Ic}R|8ag{M%m#ibP1<;tBou{at@d*_tQ^-?=XSXDck3_W{SRThvuFQ9)EPbGN6R zQ4W_%mTVF~@3wQd(dDb=hvf9g6W=Ha#P!U!z;DW#z4H5`SADvEk8D|c(WYdOk#?O& zua@VZz~iPUOU3Vk3fHI$!LNVp_YWz*+4q|2(*qkeOBpeZFIBOq+275nRx)#F0?=?? z==j7+^+}?XMn9-u+bsuf2`v5;3Ke3haNG!PD{DFxR^e+zT3q}Sgk|NMkYlcxl~_5bo~yPtGl=~PkMeS zTtYN=nv{o*E8Le4OBVF=!IWO_T4{dVl6L0J>6JU9-FO*>*fy6&}NC!w`oK?kD5v8>-yh^ro9k zZHoJcD&el3wN{w3i#xW_NBjp`_u(-z7_T9ix)};{DTXLw=D6bliq*U>R!mHW2 z>%Cq9pbRa#Q(>qUrUi~vbe+FDsNHG*-ZfLlS^SWYzXfTiOE*Cro}{Y^hdjE@z~svC z9`k&ScRa~>K{14Ay)kbKxZ-V4QFnWozx~?TMGxYg=;_L6_$h+3XT4#!v1cOiN{1d8 z3kFSyhvj}ewTK=$l%{W83`Q2Jzq*=TA|-~jD2s1^$$!55gThjP4F!2-i3HFtKydR8lm*x zv(iuTpcLmDb}bg0w1|`Hhua|a_m1mKXXBGaUzJ{41b}=t!rq+J5S-^W?4#7iaI<84_>J633x7)5XBa;YPRQ#mOaV-ED2fd)U!e;;4YDQ6*@hxiI$ zZ=EUf&=xzbp+ARMY*j=RQe{m>u>?>mPODQ&9S9~Tv#(dLrp$!a&#Bu$&cwLKv^9FQ z;3fOBDS9aNN8{MFLCD0tH)g4KQ&cS7&ls*u<0|ElQr6|9~w>E!2`HDXrkJZb+@(<3gmV0 z*!qbv8(Tx&pJCMC)57M<;4NW++k#O$vm2)+kBc$gj5}E4-`zOdKWfye}eBsLxzq%q4+ftCtLmcXhE&cXxeoT&o21 zQs`mw6*ZrZVqw@YANOt0kGZkg^r14-VZcPRha45?( z?8KML zKx@41MA2~XCcUa7{Lh~t(jy8q5Q|8!#p@yB7`bRZ1_zdL?!2r3EGww~+n5SZYZ%gj z;_)-0cKb3>`439)TE)0hGlH)L>`F3Cl$ivG(={}Ny+Cp6AKmy~IQRcR2QZEJ?qB~1 z2HG}u;zy38zx{*aW7<|~cdK}j-;pPV8ojRu-z!|07J4=KQ}dLBzbb&)lhn|_%_Qy! zg$mb&JkxN-JcobjAdQ~Lr|)PkT#O;xl=7oz(w=t)eF`~fgT9pS|L)&}8Ns>2X$lN% zhDiWg+~ynK)4n9vGbpGIBrMGOhj6Cw4?pX9>t5S0TJ%r9segV{U`DFXrB=Cd;525`OT{nGRJAdR@L}Id>?fSN zn$xjr%md;>RN!D6+BS|(#eOpQlFo3j_dfushA~ek_itua)vtntp4PgQUgP?6f?l^N zFv}|kNiaIN#U_=8ltm3hoz(SeHS!i1PGdn-FQay-k~vZ%g?{ZK4gng66P6zq8Y18* z(rPlL`54h3=9EE=4b%(}HE}iOyfRM&B~3qpPH_WIdN7t2de=Wi{e5XWHTo+$p#8tU zSEu9|kNiQo8=xl27F;F$&`n`jJ!Z@X80OzQg{>$%^zc@kQ+5A^k{g~B_Y;G%R{WPj z%Gf*`7oKP#Pv$LDA^*nN^VO3>a1C+5Pr_UFNDMag2Zk~+HWLvvr{-z=$3ssU<9vDM zE05#Cxtqjy-%2`X;C)I7p7>GzPH?@WlEis=5)_H3Riwq+EZ3Ho|Dmt{!c=uB!z7{^ zLa2rUMe}N3Sdd@-56IRkvkv~bjl*3HKOuQ=ClmLlz^kNM8&~pd0O3fyin{dm)qdfK zVUgYEh^5(m{v7AqFpln5;|j}2=sjmvt(vX)fKfNM28{=doMIQt3(7!ToPIfF7sNwH zP9I8Br-{FoII5?b>5?v>tdL0ewbx51T2j4vmM;Jh5=Z?(gxY~S%+{a#7k7WWaoer6 zbS=hYPIF*Tno@&w{AdQqWUWMvA#to5{}sKNK&mdYjF?ibXVrLyVk@0xGP`@euPczbYjJAKtkkGXpuUM z-KP#`p2>L8u#IQpD{S@@NU3aQCbgxju5P{5oIe^dT9MCwqVz$#3al zORC|Che;Ans%H_eN^BXB$1wSzyfGWg=H!wTg4*Bv-T{aBlQbSmU-_}4@SvO|FBDxT zec)CUJ@04MFCRoCxR|#i>Jl>&h|NCR<#KeCDk!nf( z8P#^2_&eo{GeM_jIoE!__`$`9LrJ)DbT6uZ+!pK3g18;?6iG6!&hx>~$2U0Ulll3n z92%gTerbW{A*WCg61NfPz#~L5@4_Zjsu>-`R6yL+?gvr0{PU@XRFhYWhZa)#_#582-b8f)x>fhdt^}bW zfX{9;GiQC>ftU#}Pf@_UjEb$w0RdZxTA^7oIvy z1CvouCi4=D$JJx3Zx};_4U}~N26|Itn}({0 zz{nLPmgMnU#;z6z9n|FM#E2VYeh6=h-^8iXD0VENk7BoibS`$F5@@+ngaKD4JnLfOHC?3V(8`~;?tyR<;BP(p% zlWzLhIU_jIY~oJK19>I&sZf=(mT_(BgV zEavIMSBIXbECijMsW!vpgmz|StBG)I9Fg?hd(ZJjA@R4&gg>T^(*`0zlVvBx;vx`J z(RbBNd?LV<&|1>;41D?R6?vaeV>T-+Dx^tgrN04CskGUt>XEl?wbhjdKkf2;CC@Mq z8_FYJrgUeg4L2s?PhG$2;9RTGk?ssHFtN6R{(fD*_lxKmGR8c1lX?e~#)!BbZgmUv z06p*~3e~En;YbhHIDYD?Hu#uWjAHbDBSjImqU0wFJ_MS4)HQtImC7@QsqkH3`)91b z`|@M^QxxIlUB4*b?h%h*4t}Btbdi6TwBP}PRq(~mcrRYy%#fhS-nuCz+qKiJ+eMKp zW@a|(Qq#QV+l2-u8z8lnOA|RhQI)hM1a3oAfN_ljQ44>QLnbUeOpI%+!S->SYYmbt zV@{LOo%lM`)KaDPKsltUL_fnYCfobPohC~0GaE-l5RWv@vT$x!6LTCh2PY(X#xUHo z;z07eU+WrG=cW(XnimxqMYnl2S7CUTQ znoXVciITyY9?^i`GoVFv#a#Q)ign@G*T+Kh ziFY0*rmvWB5ad+&PLnigJp?M~kY?lfPL{HLa~Ost%%gLIb|4D*mb3HBvPQ3$TF{`^ zYOE(MWmykOf=wj5B$oXC>|}b8k3Ri~*M3a+56a6l0L3fe+JMG*>H|e)nlA{ElkU4C zK@zF&+c)_SAAN2YV;73F@o*$`0B}NJ^DL#sE{w6Mwz}H5a(k(x(ji!31Xkl&SIM0C zwaF@es4iUt`?7R%EOS19)L_hdZ|s9nh4u$d=AZB%D;*YjI?gYR0QP*?o<&r7d7PDO zV0l-+3=Q|Dq-RU#`%rRE|I>nXhg}z?OL-J9;5lS$B29hjJ98Z)SnXs(dvf9QIp+QU zhV+MY&~?b3sMq(;`8-d&$LnO)y}rDJXQ-+W@eC%cSY`(5f{OZxJ<7y}UmUJ?ggp}E^gTeq52_m_+wF!Csr@*p5_#taZUZMi@gn&jjMW@^2d z-|5}N8Sj3538w1i;vEh_KS~n*S08ohvHSc!#m;tK>f|?m@Q}Wwe`xCd2le{hYjV;6 z*RqLmiLDO?Z8Yv1;TowiNHng{r^o~g*_akc?a~lsnZ`>7dlSj|;$aAPykgBqxt{dM zwg}Uk+7PcdBiPS%%^5sRazJ|cp9P83tO_B4`B;rs&^aEZXbk1zGEUU~lf?!i@+Vp$ zg8f$%wN-CJh}EC9*n-pmMoCXis?eqw#Y@nJgIE~lmp(O5U~W*W&HFEndY298;1aC1 znK)!k1_DdYn`Y_K<+<6oFK!XH5>gH4kWqEr^}d{ak|gCbU^15a2zN^qSk{%M7vQu~ z&h1e`lgI^a8XIo00VCf_p&WJRx4i7-Y;ff1dAF7<8pR@0EUqrtaKWDx79?+EJ@{ZZ z>`c;PFxaT_da!{B_(K6ZUYyXFJ6u#MAhLZ(?jbwTrT1yy$K6W^#I_xlYb@rQ_hfih zzTH_!PMl=1LUkf3!rV^YFe%k@4|zGUx$^jkmBS5`WCgRVcIU^T&xzToB+HeF1B#6F z4A-<_mCS*(7`EH^gBmF%3cZ|{OU3Af3QFOil8oqF{$Fb5?c+T_n0 zb&MIap2(nMJgHD>uox_L)B6&QGoa>BNNLkjn&37yHAP@cVAS3mPz~eYt?WXlS+dvJ z{7co!?HtXSlQI@N!JRIF-wP91c4fpNQHF+T6WkGuwvkRCv?| zC-4ekE`IJM`=p{=a_XAV(~*quU+A3mTOd1~96PoZa z8VZ8%w?Y{G^h5CYVf|&0nIKD5js_rS&p;`|T)nBQRvlGOS_o4X_G9%ML75@r8Ra^Y zC^NO5pS>hRO+f7@zf6U^%DxPa8DCNYHArHqhDXi8%R8e$;wQU8)u57*dDdMgs-B$e zbIi_DS&}vD8bM|(ghhUFWSoT*a z){b^W-*)Wo49CgWda#KJ-I6m=%haiBDr_r2PbohIZ6M`6(P!R!2dcU~V~OI=?Uhif zmqHmPc$mPZk;9W0XUx8cfp+w>5V<+6w81?AD?(qoGq?E@mQ(mjwC?3FsENFPv_+s9H@p zVW_XvUw5f7L#|?xN%G+A>LPm1thgzQsPv;!S+INkc^=gG`U}y`e**06YmNX08nFIc% z$v{CDlTLp8dqGUN+@g$VM0A>Ne7d7 z#1=!C{Bh9w17-wy12M$pqaLZfg%Tt{fP?whoN78p83wFYor7DUYv4hbz=B5BD@E&B z^UVd3Z%$bS^(WH3DshH~9|}|RfDq|6U-l4#w6^fXP>C{ZeBq1;L2^5YO2%69kZ%Cx z#ubW>1hx@c6fwdjh+T8d$6&luE@Ti!?+7w~Y9xHEbD;$n<;|9eSghCA$TD0K2&fiX+3gBo6oo~yQ% zcnPUx2fgaNweq*HmK5Tjq8-^d2RW74>tmTXjJqt{#BT50f4%tVc=hj|Uk?V%08l-R z;G=Zcnj0l73DB=90*bV;rtT{Q;wf&mrS6Nt{b}-*mlHR!>|IuupQDTfh?aUgYP!!v zLs6dprvArKb$Ivxl+{4vjbjq>WcPk=m=V1bITs;Bk!W=0JOFKzta@IA?aTRN73w+M_D0#z#4?Ub!N1s#+Va+0`TT!vwERY1 zp<0lilg8Z2ci9sZ#_Vf-%UquX)`KAGn*2{~bnCT-v$IgCPk&J2Huy_s6#~k10BYaH ztj_lY+Dck();M~^;vLwG;)fww8JaZ|R%4{?h@Mau7WbBBn*_QP5W)f@AxPE$u~`&1RHVJt{>!E4P+Qflv2lGVRN zM$h_T+3~%!@9slFRT5=UIe0b=9U zEWJAPL2xyqafSD(-)&hWfj??gRkz=7*W)Zy9ruMh$$%J!hIth|m-X=Y_ju$OC zsm5>&(i%zke9|EO1TTlI8~s#f*x}72tWhW9Jeh^dY;hp=^FqllBjzcWzC`T&X>&4< zLS&S|SH{ODOQy|R-S1WB4C>Zj=n<5w>JM2?!wK}pY89qeY)d&oM8N-t1W5VU!f_Q!lavDzs^-o=eMje{i?g^s(`b$wC`G^<(r|Qh!qad|?T4qaIkB!Fwt+s7#2!m+)c>jHTxJ&CN-)%GkO^5T>lj|Z6`d_%w6Ff*#V z2MGsW_FGrH0E**UGA50eLI(Bf@r}k1D3f7gG%xNCEAeV1N)wXS8`Epz)XJsRugndu zVsbIFWUXSnlhn~HDylU*%ycom^3IzO(KAaA98XwZZzTzZZLEwxcQ;QVZJJlvuty%46Ba$ay-l>Y1q?x`gljxaCP9rlvz$vX9!6OKc=*nw1u zzyZ=D6rS?&XJmNHu>lu;_z(1!e^7?M7ZQ&#W$}xMv}%Z87#X|0NwOwT%FSoT#(re z|5yEHrxD5Y%vR&?*cGvUED>(z%~ZgzMEhAOE@wOEUB9TXesmroA#Y;Vjmzvl#*t?8 zaAH1Z*5J%=*fQ`Km0vRcwGo(vVaGPP{w6VS!97>w4=nDMVni7Ke(^T+D}7$Y z3%UA-E(fl2doK?}z4TEnu$8erb;v-8pe)=FUlTIM8oDFB_`ZqTJn(G8@AbmUB-@T! zW?yu=^V^Lz6WoHY)n1(g+(aPuqG*0`6bax$JE1F6sB7dapgj$g@}Qsv&L2f=U+vT zdz){n@a6bQK2&2yEc`+7tT^wa0*(AZ3Apk57Hs{S?y&hn%zfj`_52Tt*<>dy1s0l% zhfinMW=+#x1LIb;%_WQX`ET64byQrzmo7?hcL?t8?izvz3DP(OcL)RzkN|<;(2Z-F z;7;RC2+}kX8kcS$Ktl)`Ah_gZY)ZpEFD?I$m>4=1JNz2~FAkT%py>4cRtLJ!GI9e+e40S3LeMr^0t z0D3(vq)FZ@fXrZr3kM32naFSwliX=-V;z*+n>Z2<4dFT-_aFMCu zaCNJd&}DT2ZW#s_1<@Zz(&2}1dq~N=s%*Tn}NJglB7zY#jqJnn>vI~5hk$H0Ef<-seb8(D(D;=?~)En`)+6M zOsIP(5VtF}6SV0n3xmA*3ut-0?mj!eB4BHB#Z8pjD)`OR1JY*O`Zq#o9AGH6F!Xiy zxrH{N2`{(5i>c6>mZ_;JvPGN}93e-DEq&RQ-c;=E|6mTuJz>0@*DZIDR}C*jE-@cKV%(mvX-+xsMywQ2q74$e%Am{K(D|4 z>(~Vc8 zg%O0uhY&T5m2Y~Xn$5jc3X)|OEB>hRkVb!cpmczA^wc{6(KNhCpzmXJu*A&pI~Q#sfshohJI@l`Qv&UL{p_Wp78M3Z;>HHx0k zHaP9nI%E_!j4_Dw_J_?Mw3J8i?E@WF<8?xtf3WV^pvGZa<(RRl8WPkO3Rr7XRhDL+u8m7YkcLpJ*R8Zg<<{xu1brPEy2 zOL_et%P2uq&g%hj zXN8MRe`m+Oad#@U@r0^dN}wPMKpXZZ&5QlBry$PN9#Px zkhnGTqhW1&>`kr_i?Bo0>!K^Tk@lT*R5tDaDafsaQYCxdZ@F2SL^O-+FBCS^UR}Gi ztFws0+!GMIPHsWD6p0zB>rd^k@b2SoJGj)anZ9JDk4GR%*uAeFrPd^fLz$k4n|_Wq z@Hy2OS)~tj?4V$b$B8*=5qiLt!)M4joF&M_q5uLnWtJh{oVlefVr8t*u%~{l{;=tb zl;M++AcQy8kr!uomnZeXMqs&*?;D3Cjg;GOv%}A{!fK?^MuNDr??{PPaX@vug;|IC zE}`=8Cx%(^4@We~=1@jY&yM<|I8XNggba#5*s=Fd8RO2VY6WdR?cKNt&TUEHI);0H zpXBy`OKv#Q+b#;}9)?^A1!LUrzerm#b21zU^9SyRy>A(aN!&>?mZ*zckox@PNpmf= z!ss6~<^t8cGX-pGq~&sBfJ3|A76PmB=(1X_MHE=5^I^D03!OJxX+TQWcqaJ|oG zJBS5~fX5K;_4{JZF}NZ%{#1BhZJTeesqc8ZkTFkVZ#Dj4uRl{&9gv$9vM){V6F@~X zu!53sGV`neq%k|vG~+sIJLz(<&6#KV%ue;vXUn5&%eyg;Ur!nvwY6r`BA8mYEgwpR zer0g@G6%ce6}BTjP5k~1*WA1i=T)-3H11@&h+lmo2Bm+U*y~qRno@>azR*s%)32-o z54IaFPvXk9;}mG!>XXvpQ)hqTQY@Vol}@Z7dE63vv2*X;Z-XAPv2x^*?U-#97noRH zV}19sKEY@uxi_18|7={|&I&9K(zqq){Po#@NyhraD9Rt;kA8wRnQ_4`uaT5~V)Dx0)}AbT)wW0Pw#%}NS$8wESRY}l zwNI=XmHMu2sOk#Gn1FV}X4hIMey|+!q+~@@a%}T2%KOywV+C(4yoZZ!_X{#HT_8T2 zuj)dU61Ey`_@6~XG7?PmHG@t91)y^(23r#XE7(#<)$|@+HixYqs3h0>!}?Qgtml|y zod-)*Xl$_SFl*3oty}4IgqR>Du&zm*Q?i0Bo6W4VfF&J0ObNOPJ}23%PL$cL_v@Mg zoy&-7RC9#VGwqsRvltdS5qxO`GX`&{y1%7f^p_AGc{L=+&f>hq=#=;hqhzB>{&V`5 z--s;`xd*(7W_f|LrmBEP{#g@^*QqgMh!e2slTNE4Vzte>bbL0GV4{*q){%n)Cox9xQ zF)xO@s!4q~q2QpAhSGe=gQ5uB0CNPwEhmz+#Z8+lG{^zG`DZQk%_l_QrTx*zO8rWe z@^|EiDEop9oq0Ya1X!<`m{Mm+ekBXLC>B}daJGw5DnpZ?ezUcmBW%az^y=ckyoR0L zk8R@X&i`wt>-6DqJmuF3hQ8zoFVnO@OM1mIKL79I9Q5qP2Pg3Ajs4$nOM`6@-IL%V zXz$oOtbH)jtn%o3RQbB2mHzQ3-1>jP=91tg=s{!;M43D6IwlZ;q^UNX)R8UB@97A$ z-%Y(SIq8!Ei%PG@eQ_Zx7w5cfIxg&WU*}rPIVLcYA@VJj^)VH=!Po=75a0j@AI&7uiwvb0erjVw^L{12WteY`< zEZWL1H09p-naA5#v^ia#>oUaFk2h;?qz9S!P+{K}cq3H1{;hh7eALA+RMlKu)u}1Q|IPgC zd?ha?Yrq*podW~l6RKS3j%QmUIjw`4D8wmb?DZ2qfI0xvcc~&~`K?v(BkuDg6f`!p>eWjJ!c&ZjpbfWcs=Ul_|{v0}nR=ZXqd&6_7P4)I31{mu3w zdXL_HN^&^mWAM22KEe1|psAlzcl>q#pjGjGkbFvN6vI;b40Mpy%2d6oJW(oo_^aUL zCt1BqN2Dmf7*Y4plKqm()(*rs`QB9U>+-i5$cgFv&aez~Sa1le$G;;xA4rGDXb`Wi`snLIM9QOlFht(bQeQA*#+{CqIY`7uC4I(0wvdu(+c62aWagC%83y!Tof?l|u6E zoMoz7ivBP2AHXL!Zxflp?7J-FN-5~oyS8#|$(N1l09J{tMT_ON!BUG^Pw?b=QU)Ehn2Kxo)dqNwiKh1Ys`z~$Q- za$3hYcUtX(9-NqVv!yq`Q(B3aCT2ShQROauiAxx*MrGg}T)EunI1pTb-F>j>Y<2z2qAZ1fj41-Zx~dO`9i3flSS&KZ8>Ikt8-nW>*t;qq#d zfW5MXI@4nL*DxM8S8^W*C$l53fjU#yt*Oqfpr1=%T3_}r_FoIzHQLa|&Z;4N>bITk zyMNF`nfcD>KdE-Y#f3DPpT6yJk+>Xhbj)}%XcsAfxW(QIf(wOz#1wO+_NN+s-r;3( zEd1sZ@d>f~$wbHb>BaWaoXQ-sDto))oDGpLoy|jlcEq4gt!a9}N?3(=?W0tL#U2{* zbP`?-Si|$MO_X(f7xX!lI?yF{Gaj9h{-Z&z|GrtI;QYPrrjb#|Wack2w!Guc_al0ImX=zC05@go0ut;yIn?+SNhQ{EPLP;bl0*{f| zd1G!5{&L~GPJObzCbL-Hqz!-@q!7&3>%jv0C1zQJZut}VW_yIHKz#V&X-sWGtnX*W~6t9z| z`Ra!?toLVj%rci_$tmw%fr4zO{X+0`G08FpmIS`|U2LdSm`(g@6J0n~1AaDIoW^Wf zG2e0{n>Wvt+38H6fAed@nKO7p1!b{M{=?-fuWvAsxeql0<@O_#ETri=25;j^BPNOV zHp?GSgLJC5EO!&=>tf*hgI1NT70q~ws8jRl(?+ObM%sL&tqn;6ysGu-g%4u->y+$@ z4})0ogAf_A>dfSFZX8T%hBw^b4_rz`;?I-%6=#>xwAc@iPCuMqAc=dtg5k;GrUd_a>YE5(QG{X=q zO2c6fblBg|tOdJ+1PliN(;WnpSD9?BF(JdrvVJ6;%SU$wdry4@p(YSP>)~{GF;z-M z`ZyhyxH4|~_*ca;VE<>b9uhqaJygF!E9)3Tmc7n!9F0J*am;vmj7DW-T`zs$1wG>f zan!h3wOuvQsxj1~`~$hF12qYKX&_;8PaMuqI!xYBgH$KL%d~OR)|ufsX&3VixA{|H z_|b?}iPHPqJ-&NK*uy2AmA_SVDEYkMIVeO1s}Q=1bx>{V1xm|oG`msdZ%Lp3N0cGx zD;ZZQ?6Ui;-lBb@L*Y~d!JPK=RRH7cxWma)N}r{6M?@$81VeA|@0~C0h$FD8>VK>; z<@X6yA}-3~TWR^~c1c{+MeqH^e!(P74cz!^g;!fBOox<1!j65sE0x5jalFWp{b)os zgEsX^w%g%T8rp>8^zc1|0f-%kCg#!CGxHeAwLNb8Yj?1YYEsSb8j z3Tl10kyRJ&O2@*N-V2K@4=)a8-I=jB-*G60<}7!GLQ@n;go>lABAFbxLn zTy_y@HdsqpC}E>>WWOoja@Mb6P6w}NP{M``1BJu$&vMoJ-!IdN>CY6piLljRqD&T2 z((IUvE#gihO5zD68XlKIBO6oez(rkwS57CbFW6i+($R{3lkB{{;V_q`FZk zAo&RG752dGi^bi7_**z8f7YcqYc4DU*gPl(FuTwE`!TWTns4&bR!@I)B2y~f3 z=A6O>{=7VJk^7(zcd=}Om||R7lonRV2M=m-_}Flm&xVz%JvDmZFOOw@GIft(3D#;3 zo1ZKxs6ms!L$%BO&N31&;1B{)WkW?WnHqsx77r*HU2whV~`zee^ zn>|2m+m29cbJ+JUDy$h%torLc0d)A`@6vAC1oT{`4)h9I{OVoTxkNNy;lBNw%R{^< zw}2y^-=&u?m`Qt1y%c-jrIiz=r|J@M=5d=i@-e@0&~8V;o(h4y44!mdyNNGP<4nyA z>C#VFuIu-8S281o*k$gWN>@|`3N1bqHGTU=c?wKGivrJttczVpjG6bdrLOC2BS83v z)08Su2ELj@NH(WEAvFFb0d6*XI@#*0&V3kE<yp4k?zQMz7$LtXZ9B`T`ZA18Vm+@m4ps)Qg_jesFz{3C={2!rllYIl)Uk z)|9X9(_h8E936C2M7L0F<@fB z*-EM7kAFW@^O@+_ftx~O&n%gEqer*7q6D`=y`h*S2n)wV@>HM>d}=6Erv0IB3^Tm! z7$c4Dw6KqWvd-2m^y^A+kt49|0NC5^@FdyKe=Dh_n7y&$7E9SJWO5AZda}J)>%t$R zOIcT*6X15|E?&!4=6|IYoGV7&AJb_2el!>d739({Ix`PyFlsY*0u9fqb7(w`+{6Xy zFbBNL*|qKOlfXi9=O89W=cX__$NWXDK3pYIHj@6NiSjH$N{>{^-~PS@)1SX%gt@pa z-E)04hN%jZIo}Y~nj2#^;YWw!ItkPKKIZeCQ;8iQ8&3jM8ztu3H*7%d#Kq;N(4dJ! z&FQ!+%zo-J%6=hdib^lX1Qn+7vc?_ly(DH#r;LhRN?cx#%1qR%in6M5KPb%lF^?lu z^$JhzIK%um{YcQiM`VSW)b@@tjU@#}dhmanJ&p=`a7c?AIv{QC+Lm^eHL74dafYnm zc5s)Oq=;?y+ciFBUH?HFs=CIiaHJPpgl2Az)^{F`F~6%x9NO87^j`J`e?EJ`orCf* zkHZ6po6MSoknM`(X44vJ$7r){Y|Qs@pMC@>Q8590nY3 z)8%8kQ@-B%!(INmkL0+tr;Vk=>Wk+z;)i`J^UjDGe_roCSw2SXd z+C`_5$|xneVQ|*N0Shi7b1o6WYX6|3eYy&y*fFs;Gcq4`*zkKr&2uY#M zeOrc)OfUTf*f-7)VTdlm2oCqZh{|O7N_VNo93-MGkK=?Fb|SLvht>-RPK&+X6> zP%3$wGJX;-m#GiVyMVV*h_=W8DjLLrsj<4pu%Xs zJuMvHYd4!4@Wq|i~%x>9JxP*{`xZ{TO%y-y3NIGY0~xNP2OZ)}fj5>-Cc+f3fY zTBHC@Sm7eqsy<(k#t9G7Cn79@l~P9FqPE3)Ox+0m2EQGI>jHYs)`)A|qwq5P{)&AE z;oZGQJz-jay>QlS@QjsOXMWS?o9A=K4*JxLppE3xrTwDO?Z|EdU(D3uNalDeGF(?l zU|Bpri_wPEAOkWStOeQsT_(+hE>olVIBp9G6)qBTF50kF(#c`?a}qdoth6Kh&C55#1S zhrb2eu|^il#U@=jlg`)D>p1{6oS!q~{zl%C#6>@y+RpNj$;fynTMEo~BE>VDS61>G33+`GONl_M>}_3!~f~<7xMTCqp5> zkM7D7-)z8S4QX3kBLR=8VHK5UZdS-Wj*%4*uKeaAB4xU0F7NQ#lmM1@5|UE$)kyW0NChn|D!CnJSDf_X2bh~Bw# z08ml+qifk|7eF3cO_yaa+&$9AS$>$9o%R8$ZcvD6-hBDA*7*-o;cDCb- znp-bWlQl*ZAMT32EUBd&WZOX;9y$r09Zdw?4!zdsudh0K?wsOeO2Xl!OFxVl-jz~t z!bfV`EcDTM4ZT){>;0b%kAJ=VpE7rz)(*M=8yzIG@k)=TDBh2cO|HQ$_=f6hg$rB!XHmY>qFmu;ACXe8ZlXD(Gm;Qz$`Tw5Z{Y#_&Lx1=mTtoO@T_g4P-+TXwJQbmIp-Yt` zD#$=o22p&REVe!T8^=TTP>o@LV@4t7LVvo4sklF%NI7*{$3tlT97mcoJ;n=$*=uEg z+i$uk@$;Y^aRD~~Mbo0n8D{Drc`%;uB0mW~1jrE&;EqI$lN@K9yODeqweyd;E4yFC z_?2vi1V8>%mU@5BPIbkj+-)!gw%ui?xJ~DNF=TC z110l3^a1paBT^5;?t?@B4$hVKO)JhOO=Fkp!)&DYlWPtBW5ag=p9)kW$rA4}nb){? z;mrR(Xh@Opf4`0YH#9U_N@3S#PkF{R^@@*Y8I3#gJ&}p-e@;T_!tc`Jn?3cVGiOZI zXn)Ao8PxiUwH7m0DoA7ROu8ZZj#ja{Hm60qN{c3nK*2|AIUF%+5y14{<*gK3*GAD= zOWqITNz3}qB-$}1sz_aps_K2FC#hb`ZwY*~3YWmPQWT_<5(Of%{F%=Bh3MyW3B$`I zK=Yt0Mmm{}1nZ2!eqVL@DDWrxU4RgLR6VW!I!=ETL4M_I?!X*3&To-EK{r+zn)mFr zT|vYx5q8n8Q;jQ7rnw|I?X?z*kH&UI4E>wQbBd5Pgz`rzrNi8kOemio!=&1iULT#B zvYJWogY&^mUjQ}We8qyt*|QZd6=p2TlY`W-Co^YHo{*@b(n+au*mJiH}T;^Y33(C!Bc50XYM?z$}U{ZZ`yfADE&_@JVz8xd4T!K8HuBK%cAlT z+}=1{$&W6(bhI9F_DAJ;TP?^ITghXSAbmWJnQ=xA{;}{xo!d+~62C~hq}s$N9(b00 zcE8-B5?93fyHPHl^5qE_Vh5EC)Suh%7VW_}vsu03G!C zpB`6?&q6{3vdKA8JSBL>oL=(yPdV=JpB4259f12sol0R_d`|l%WNVF#x#V_Po#RpS zO2~F)X`2qX6C_f7C#X84Jk6Kz%0J|%mvsZzk&4v^;^rJtagqj2D&vd(sQ#E~_OnRy z7q00g+2!h0{=Qc0Lqu{Oun_V1Zx8zSIS?7lk6wF5i4O4wwe{u2-$3FfaEbv{?K_M4U1lkwqyc;#`w)ls5VMTkU2hwa<;T3tc&t5k^jPQ#Q8kOOt*x78c^SU}+onBI_;{n{rK)eg8Y%i6U3~7iiSK3)9219*(Ic?L^n5mKg z9?;At%nHirav1Zf1_A$->(MB(zvj5I3h5@;+x@#$!Hz$OH`blsG~2XE3tb7{K+J0A z=fRSyp6A4&QxjhH;HYiSj;C=s4-l<|v@>frvZRyM$MgPk>1(+Z4ELQpycYo_BXLu- zKN@t%k(); zfF_T}_l)-gP%^RuW(|9V>K~l>p3vu5M-?730dilL89iuZP$Lw`YeFsK5 zY`EMmPaJH8kH3()$$?agyjcVI=GbpE2NYH zuONx&8rEE8X19%I5g8|kfAY{Sz9Srshv`efCf(WGw471+%y!3PM>}71fE@X8lE(Y* z*S2BP!OBF*$!}nBEj}R-kseKiRmdi*ncIxo`>%LTY8}b zOpTLh!{F*-1{^>vtP&q!jZXQzcbD+eZCf>-Q(>4oo*qeR6CZZ+>6r=DJZ0hGHBsZCI2>ek_|R&(|m&l!dG609&V;Tf{4%P6@rZcZYz%QBGvJGbFd7^Jb%e>O zI`f3OAz*@iMCHzqGvU;|LHq){&40$wh@!zKd~MUR>eq-B962Z}ivKYq(AVjl5~=QqN>8uC#t+70`c!)<=B6d~`T9Gjtqtz z(wcAA>gi(xCm^XqP>xvG{-h<={yU+lNf)JlX?kNutDN?7!oW>bs5EXS+i@hfJy`eY zw)wrsj24rbwU^OS8AqfwYi7yONs|ES--zBJAC>`rHvQhdqW-9~c)_hWddn-w=}CE2 z)K_+KezC0MfyqLvM&qC0<{T(wRxs<;omGBcLXhwF!qMgBEzZ7K1O~0O&5Lq89t5F% zMv}h<&)#VhNR}+8rduw~ND&v#DxEYU5x8>pG~&V)xH*jVm25BG{=A-v<<^AoV=!?E?mH<9{ z4d$8nQgkIx)=>=yC?{=k)UBYs zOHS_tbWKgo>&3;N({|t>{g3@`BO!1=<$HT9ZI3C=0#Qlla=Sj>phg=8IVgn}iH17o zrwnN-lolP{-yuYkQfC)hHsIhUuq-T+;m-Fvo>yzrR-PEl0=L?zSUk7{O)fBqIOlg6 zeoy;RTaB~lEQcTXtIq4?;^n2cS&L0wM{lAEXU2vWS2J@UZ!3t$H%pTohe?jOg%0a1DBB8R6lx5oM{aXkYA4^)M&M;R;``d0vsf1$b%O%9b?qys?FbweS!BK{M-= z>E`z%rUcH19g{Boy0?~&E#Wu@!W_aDnDh+?CHrk|*loJ}eYTHa@rJ`fU-lF`wmM;= z72t%*=TPmW)TddcL>M)xf^6vH22ajYOXuC5o+@w|rSujZCa2D>i_{3T;Gyu)sn+t0 zc$WO3JL-t*;WNi3bG_}{>fX44bOk3=EdW&JJND~nY_NlO&m!_w{XT}sqbQs=_7~EJ zZA8}7zz%Y9z}3F@_ZZ|3P#7#3tTE^Lbz%}I0> zzd6qM0A`$aO!0e<+JFj*Z!{0m{$a7lC1l~8*;|i}gVs`9{s+wx(X}5bhs*VA(yPO% zWuqB5<eVzHKz zW+BVfNe7s@`>iLfAV<$60^@(LYyMwa)k3%M75L)dmA`bDTcM?%r;=zvEki(cqBB+p z8O1MJ8^hQNAaDvV`suO-9ZRowcZyaH+WlhUo<>G55?ewpe`-FM>0@;ziy?X6^2Cwz z+Dj_Q@Y8KH_p}RTyjS*kMd?^o%tYIRfk&~kz`e`EfB9HNG!i? z)j<8V>-ZX!n%CM@TsCd)Vx4YOkxUb}K4ES=16R4DMjuG%tGfA@GMHYauQd99v3UDN zzr2<=6?^yeY!?mbk0ipX7Zy0Z>v)LuR6h*njtWjSO{u7v%oqkW$FFTW`RLRcJd417 zKN{+qwj-2i;vMWIVc@`u$fDMA4AjWx4m1HN>6e1Yi60~w5NBH839AtSa>>Mb^^2UC zOLK9pUc#sl-UqXhemPt}ThHjeB+yOaa9cGr@;gYjbQ3e)uDfVhjpH4=*BGw6n~>3w zS(hMZI=!JL!|cdXpmtK7_wVpg?uR2Rzq3iS@qV5ar8C*Zy3#gbZ|;z6r-X{_RWmn~ zQH|A`0X_8PcVeS!oxiypu}(sL3VFZUB2xgGPXI2e6j}~xorY51|4FXf8|AO*Qbkri z-bH}jCsjY)O-oZ3_dF1noF)0&Jrqt^)PbH>7*fA_W)XdxII}37d{&k|x?tinH+ohh z0BqRKU}X)azfHmD{KPWiod5M@)~aPJ^`zL}PHQ;Xx-rRSOEY91%Z0hIyc0bAJ+35J zPv$QR`WJ(2mL%uYWU2y6dlrh0# zhTS1VW4++PW{mjNIfJBti(<3I6NU3xt27rH+vjd7hL`kB&1@P3;ZvP2Z?L0>C{Ud* zdYjeLTGl}l+U>j?;UzhK3^P|$Z-L4bqtDk2zU;~8D90z%)n%JnmdEoh8_@?AFL|jH z7lr1{ImiXxe^eE)2oG4_Xp?bt(^|M?&Q-s-{P_#ctK{3U1#)E(UENe|7&ZoJa>1|6 zeC$L3e**`p)tMWg^Zrr`9~2NWR9RH&(3?)Bkfo`E0Yq8=-+RO?kHXQe&5I5EM5143A^`v~0Hkx^n4XY%-lynLG8IK;duL1q&{6A><@PE$*at}SH*9|iXg~hX}NqfQ9ZcIsI zkT+1vN$OIMY_{T8I-UM)m*fE~RHDVHb+Q<9-h*&i;%9|(0-`!}X0cv;hhf7%oP7-v z;4g2?@=d;0M`KYpM~o*N8TgT@PY~EDp~h2zIRYU#>_A2d64X5?7XPUr+GSZeA0VuW z*WGrqgzzMB~62C`__hU}jN<|Gj723`zFZ^p@jKNwvA!W`c{}h%4KBRn$QWig#Q<6^XQPysz z`Z?v#_d$EOPDjhVEQN!#RAgEF?|b0F1!qZQsLw-c0utpAa&?DOLDpJ_r3vdN2sZ-i zy;}Z8HnVu&XHPF0pPyQ!k8@ZyEBI3akU?LNWE}wJd(C4v%AD~gvUw}pOL2k)-I-35 zDL6AWVbJhhoy!xPTIL$!CIjiE=US94TF8b1;U zhQM|=p|*{T*{OU6wo?UCWj+Mt09;-2FuxTTM{$80dk4y-cByzK>$%~a)n{I{A?~Mw zLpiUB6%tRkGzA~&FnfJv1#_LdfSo0W`dMa7HDAn{p58)`iFi;yodH@yvH`e8^kZB1 z;`2BhVpd>DhWD);V_w(;9icOce4n^unY-ws#tIk^3^hV49(EEFp~dv8t7O~@YhGXF61bFN~p zL*g*7;fGtL5Jc+nlW4-_!xVce5{=65FKE|3S>q^(E1G|*bJ_f z>x7$h6?#66)@&nu14SPNmY!*Iy(POGI_m#}M$~FPdmWs+dPZOo76hT#60~=Y>+7t@ zrj5#XqlQw2Sj?ZMnkWr0l2!bVI(NNGDbwj*E7~CC5kJqAG*HGMwDShxxbSYC_)~^T zoa@M&6~dT~en6QwybZnQTTyQH1YxrZOG-Acdsbm0JY@bfpX1xdRcCKh z!H%++CG|7#!9@--Wf}!HyzcYLwAD)~A9&070lHoxfIs&o()|DzGeyL7*9iM3GYjI) z9)1dTDQjH*0)m>_)HMG?W^}qX;ZdhAk`7;CI^Iupb(!OlDLOFq!VJJv;^9b_f z1H%eG!KnKJM)crbowvDn zlvCwtNP7gu8m@V5bJp=GhY$8&%p8GPEN#UtrSs_VJN*w@Z5+PeAmJO$FSFTSfNA0E zBEh+*3Mz=X^qcs%$|(lCeXVwsdtNaM5emu4WQ0gJxs<;R!cOA#pzp5n3Va31!rbFVwFT%-X@V-UIAQ zJGb39p4Yzw7wa`$wsrwVaAdak+Lio{KVk1E zNWPqqt?o19JswQz)7za|a34U>E-oGvZc}h#E9*gG|SoexQHK}1q*(4{KKb}Hw;_O%kLMsI^7Vce!HJSdp zQL*K*Ui)7+g1G&&8!aOr)xe)mJyv*nbLe#=FQu_kdepuCIcV+2|4Y#72}nzq_eWyC z1h3ywm;7xs6Dr(_*WqG5dXgX+ zhOCU-kZ_b!)E{$7yZ)flW{4id6UtmrF&LZ(RTK`L8oDbmTDFNp;7P3*?9jW3Qz^S% z9yp#EmM^akXV<_!I+BqsRi-ux8dvPo2Wg>%2+&EW@AGl0uSa!HY0iSVKUjE`IvuLv zcVHO|6)*wW8S_$+)-5Du-ao+^6X8OY8G4%QdIF|D6LN7GOCt|r$&~hkeCC8j>Tpq% zM{_Fun!{%|I^HKf!(BMFI#o zKBB7~&Lpxi`{zl?pz%??RgNth9)h_YdB(3xP{`8WLX)sIWwzI9@dOQ37L~LAcnpvu z%O*;hV#)p|czXWV;g=US+I`8S+k*8ak=+B`f!YMWY`(_dflo8fyyu$`yGYE^k#oCb zlL26NwgvDLp^5|Vjmt}_&joxs` znqSixOHJ}eR|~~V4}|n(awv%n_JnFtJh?N*{4%8D>ZB&|kUQgg_qF!5l1|@lLLO%- z?Gqp^2{jS3COz3H9f9Ki9$z>C*)>2KxbXz?qRVJKwi6;vU_v~Amxj!lbC#k6uTD(k~} zlN5~KjkS_aO-IDmt#nT#1$BgMIR18H`M2F^Fg=hzYk%RY` zue9egB%3#n_C@2UR$}MIlIp0zrCsy@HUPWDgQt19J6D^E1K?I|;%?62%hr=29PuG} zCjpLe>6q{bZG~CvszKYLG5O2a7PZ4s)mN4Wj%7AyriNnGIq|*)-j{HIgR(=Xg7vQn zY@@q7osR15n0gV<h3xz}{WsS8=%?62-+iG}IVG zKWBe0^@BfYkFf)rQT;(ns=gHcgElLHhq})$qVFGk1qs?8I(BI^QaaFl;_z8>AMEe^ zDrtag`4lH%nJY;eFf4Dcnf;|(m_lI>u@4#LkRY&#jX6n~d%dW}yPPs0=C^5vTAxuKG~wv)bhNfC;aLO(ue+| zU=$xQ;yBV!3;Umzebk7?TMQJ)bQ%>MY8^yWorFr3(yx6g{lMFd!20xtxh0O#3-@!UagR{bX!FFVY zIlMl$BW5oGJeyZ?wFy&%9;0c=46vWkT2l;EHbi^Hy`|M)_|T%IJ+gR}!>(en$RzY7 z>U5(OK?3{xqg5j}TFMn0CbQ*vzOh7wPOxIUj_-MI(TDv*b#uVfM^$?xc7jY>!H~Jm zh&+iE>7!&UMq-!xzW5y~t{4ZA3Z6t^;l*OrkN;15-yIay*KLX9oO2FMZb6XTq$UT6LeoTn z1_a4S7LY8lp-B=XiAc^li-c~HG!m5te$aqq1j(R|-}l0NQ}4~2d2i;wng4d(x>dL8 zoPBofeb!xTiEDCm4tz%&u*XeAr@UcHxZg2_=2UkKbp@dxZ~Vv+vmR4D?<{BhDgYMy z;Q{63SlUpZ4?e07{bi6y767UQF<`u#&bfL@^m1HMCoXqXZI(v6wOysWs>u@ocEAs! zVHH;usuz)HF>ebNg3?8dl$P)8)?c;M=Qlx~c&r4?ETm`Ly0w1m0JMc2AL5&%dA!Qi z^K|c$r~ibIu`C5`iLLf;jIOQqSF1=|C;lvQ`i=8U)+i0;?WFdZrsO2smEWeaum?Vk zOt_9{@zA2m2_%nxlOt|_;heRK*u77TDr6aM74kjVArE9*~h2*PS5ofj;-)>v?a|~xhvFanWIPtj3ab>e*7N58C_vZ0Ga63$Lnmq7^3|IIX9~Pt zoSg5YcNpq!t-f2+Y~I&Km?V$hhj|N(L%PTOwBSM=Dk=|~JLZ>@h1b9(gCUemN*b%f z*815RX=FMDa7nG;?mx%BwqlOvZ}saRXvEsSr_2MQJ(b;SSe#mNyx=E5%GlZliYOe z`DIO&O=T`ly#*IcD|!1?QS|55x{uEB54nO`c$<5}$>KM(uobp6LD(y3ll-Gvv+AVa zt`yqE_y>$MJZjCkSPr@fvI%=xrEp!e$!3`EcIMcA1k=RHqa20l5OdsVb4`t0CVZ~+ zL1Aa5z&#~@PV0{bYUG6?xzP8+mg6JbwKF6&BTv3)*}3kCA}85|hf9{XVFE~4r^!U( z)chz+ls~9O*>6D~4@jy(!N3L)XroA&)0O4&wqiQu_Rdln@{F<`5G##%$=qT@ozU^p zR5;$wqzq7Lo_Eh+M()UrrjwOV$zs%NEG?NX=e@V0JOaiOs#-3th5F2&W2ZgqpID|u zU%_Cv#&J(D?L}y7jn%NyB!f-dg@={Mcp`i4c57iY#tyKlRzj4<&!f#T$6!R>@|*!F zn(9^yj>}-B`LtoloxO$FNYF+7>ITp>_;6fuuwmbJo?>3INm`G=_}d)TC_C?Rb~M;M zNBIq%W3)70Wk#w%nZ>8tKS=jK)tjFr8^ot_dvRVgud^g-UjTH@l1)}|$~r~4Wz(hi zbG23|yT+Muy3R5FDssauGOBzrwg3#pt07MU>CkJdChVq1cs%pnh29IDD1Fw8sUdQd zd_)sfS6X;?TEdP$Jqu94bd=H+aMJeBfYETuBB$H3xxLORUqjV2IH&gw$b)}7NM)2g zG`sJU`S_O;wt2UQ^^j+@+IS=&?={y1+j1_Gu9s}<`)`HP($~~5Mn6H7Y9}{@mBfK1nY-qQq(mrD2922YCrD>e3v@F3XHvB118&np2F|Kv5 z;%9q|knW2ebgFwlTBYCFA5#PsuC@Zf4!y>b0w2<4mY?sxeQ-6vHl;}_rotctk}CqG zR|E+iB(yj?OW*pjFihx71H1+O(~RIh?^$^h54VAsp2B<3HB!=8=HECTBEv1(7)d>* zK6y80h1#?oj75!WoMHiiQZlEFC{}-I!ago^0c%ERX%6I5bHab{azVS}eiY}cEf5jQ zOQxKrDT`s4p5p;BDM!y-Z#V}8*>XRrKGi(ZH#cVs?@G-o#C1<7`W)%gVc)a?X=YxKoI_$N04bHzR=R+wb;$LW zvmHjPq^5nf;CxL(*nYR0LDPk{w$aYod;%j~wwsdGCF9kJv3A)8I9MWc?Ez8Nsd-?sRWjLn+nAy z`)?&rHtbltVk@v<3EAd=H)bukW6bqg>l6;cd==dM34-2Rprc!^#77Q0TTNG!QVsAt zhqBxO(YZJVE0N6m@1im&4+^wz=Dsi_8ix}u59~sLT;FXIVu@%7j!*x%FQ(R6Jg3LAGT1{zU!UmGd2?&@}jxPkOtUl z*ruHck?kdhyLku6}K|t?L!1D`Mc2DWG-xfHE$^#i7kDA-5W9#;LqdMOksp|2_~>* zL%}uYS~p1etvGdLEihy$NTiCFZ51|+M*?H+EJrzt1f%kF7S&vW-W zlS4$QOGb@~rkw3^^Ft^wh+H-MR6Z*4XKbc1XbB#*nEs@Xj=fJr(@)rMH$BYDlRnxv zbpj!#bBsHW^GW@ZWkEI05T8sRxIDYSY6;>KLE4t1Pu5Ga=)UvyY{XjVI1r5N0Q zkbYw1{m}G81OE_3LDT(@t&Zx#Kl3T@X^qSIQC?&C-d^3^V23Og8mHx4EhRHqn*OgO z8i+h{Fw$4mu>cO%<>u&*X+ryW&M_K1mWtREN*_c8$}yFwby}I+TNmu?|v&x6~#Awv*`1)ET7Fet&?pmm*vG=uo?s%;T6sXBU&^GCNww z`yEg}sfA5+)Sl^&>Uy8VT;x^=OOh4`z}2d&Q^x>jI21(bMg$3bMI?++e&Z9pSjpzb z6-%f;cPddR9vB}zgPO@;$pHC#4x8#M0TKH2$t}Vh=Gj@lagbp45XBc5s|P4Rar>#~ zpAoQ0E;U9WItlY>P#1HsOqJbE;x%94^{%acg#Db~v}Htyf=zJvfmdwAQA|aXE%$M6 zW#hexZYcgngkqlzTDL@sxCK4V<}X<5(mg|G=+nN=#mnOj%5=g;ecvb|srJp?%dR{@fMKg#AkTB+ppQ6Z535qw>a| z!d2dqFE9W?K2s!#0~XPtXu6>s<{*-;gS6p7YebCjV}iF*W6G!uhA0Nn{!Xd3#*LJ> zS*BXwylr1?q611&>mb&`=H*})4L4Y1ll(lS80k$TWby_2^9dqBa0jg^V^wRh{_dl?blesVbR|79^zJVPwy+3zv0>EI zy^^S7Q#gI$fmY+Vye5zH#$P;{0ig41`VOO4wz%0Rouab~pX!KHk(wD~euE!B)(A`t z_(C+i$hDA;N>Yqg|2c$<{M#W+Hhb{bbPLNPv(>L#{wZV*`0>P>d3^a1~H*1k+d)KW;&-$yO4C$Nv+pZszaA3Sx2@KA&*#zhT#nUq`5e zDBf&lNj7LcxN=4f;f~-Z{5Wk6D(Hs)?5l}XlPtDPP@wd7ZiYTif5n$uG)w`>N?+1> zR+ms~)jZ!h(hX4LNb)_#8>({QLo<{XPp(w>y<>4>)VuzAwb?&mXpKuEI_Rk3g$feH@6x%K?Ja+C7VHS0+JXJjaxM;6Uw_|jfz*Yz<|kLT zrB^a;nx+Mfm1l-;fbcg$J&>w#Hs#B!M)4UoJyR0nn|~D$F(=Y8yK6ra+Hy8KKETzU z=-gs?hkx&sf_^dkO_qGhsyY`Uln&eI`-K!S#EUu^b4Kg0Xe$!o605yCig1|KxWD;J zuW1|RDyG*m)0a}mZ%O;AohlHT9eI4ux3IKj<}C;h?WLZ|P*$q^m_KIx9pf<5&r!8D zkONJR0sCidG9SKVpQTXv00&L(t4Zg{4Z)sgmb)fB(qS45Jn$B|E?Ur<>BV9TvRLF0 zv)ij7J~`xr4vu%(T4O3&*72UUdVyB^*7C^&GK|n-TRx^zN*DFn9rzIHDk2&}uD>xB z=*?fi^X$fS>kty%N^2F~o(j-}W@xPtb-FBjc5LlYZ~S1$ilHCfT_sA~@{d%hEAE6itVlmpEO_ zDt@;XKe%U*(dNs0AfIE<#Q<`Z$?dT?x=L9*mX+<{NPfU$94Gq7c3(>sZyQQVxOTO? zlTt*6@>0icntc+pllnN*+2YgCN~@>me<;#GVyz)8xdd1VJtA-o363YpdNY z)EKHsT*?9hPAU+EekSHakT}~C=!@Qb?R`V6v>Q+8E_r}apwK%R>tKv`|7z-lUx(d& zN0z+nnrI#xIl#yR}jdb)@Hp2yKrQanx8QNnI_;BIT;)`VVvew zc^POYBD-mrbQ7-ckI}}5e4czu|2o3;(@g)mGmi|rP1RCV)0JzAq1ToTqq;Pr!J92Z z*JH8iC7GN_Fcew}m-`E0*#!c+qK8ksY|ea$H)umB!wfjRDPRE6DKQvFN&~HeChY5q zm7{q=YH=W)K}%Y0z!F>ucWvxchG%@EX)W=Mw5adb4C}wtr^+L>m+R}C`4gBdGSp8` zc^`HdoY8m5Hw

    0GxKEH3X$AVB6&1(J5p@7>ns5AuC@&5x_pv5lHhUkHf6O`(pa`jKKzD={Y{uJ@A? zJ6Vem41y#CvQ%~9;|a@7L#(DoKV-7it+45R6A@EfGm!kM2@Z6GDUOh{j*I}=7q{DY zeFJncJ4f5AKn>Y61Mqvgma$xxKsyvt4(<4X7xZ9RY(}a zfj#d7K>bc0d{9d;VcN?^{Ym44^*9wMl#p@K0v^%3h&hyk+ovW61uZ09W?s73{gq94 z5N@NNn=%TA^tuT#Y?3|8#&gz*Pm&?)`-rxNu^VDrMP_;+I;KH7R7cqHQ4Q?t;|c%@ zGQb2GDX|kPr}1P&`7&#e2)Q&Y=&$v#9?TQY+|jR+3ln~KUE%{#_#=~$#|6``r6AUY^Yz8 zhEkJJ+frMT4j20gA6)I{YJb89#d=x2E>zrGJat7=@IT{B&2oxK*#nQ}m{x-~ig#YR z?srz=+fsY10}Mi8K}Z|Bpy3yl+JVqZyi_X@!hdc~i_bJ`(<_piC_`7@L&+&tUZzAn z3Z;j6+(vPAkg<=t+jYhEY4ZLs>lI}&PTpDk-_fYA4U#k9a0ylne>v{=lK1xvIgVe9 zn|n&*V*2-G#E$OI3=$B5Y;ia4UxNzkmP!;CmKA-e^?zjd7$1I zKU3U~($|a5nBA>bX-7rD)d1?$z1W?fOC8%1SS>qMZ?zpbaZixJ5pO@cO>WSV^j|$4wJf`y(om;D||#DW%69^Xgkz$Guxwr z)L7{fmr)Pjiu}|vZP#iZ3=wHX9L}6b70zs9sERf_Mczy0a)@c;1Vx_Vhu!vVeo92XS}$y92{ zLjbI8%Hno*$(h1;4pkMv2s+~eCxKZN{4EjeD~m7}uEj;K5Er?wVI0jd0xQgUA6i}_D_H#q{mn5(&ahBCwr*)1ReAi;5 z<(zUL)5-|O*R9yARt6yYBXvs^I6robgmZ<=%-N5S4HvLCQBP@Ca~8-jm?AeB?(i*! zp|U=7Dn$(zoLmdVvgJ7wQkbg2kI?Ox#>I4t8!x$uOrb2#hcV8aII&$yFjX3sJ9v)t zUB#$IOr|j-Gb!Dm_5V|aq&F+nCUa;E6cDOxwY zjjqOiH5H@bPK>qvw78ICG4nfNmZE2|6>U*kAe5aurwn68fj+mP(1mkbr(+pZ>|gX| z&HNC<866>0{JQY?Y?*o+`bQ~hzx`7yQ%oXhl^<)*uKm_H3K~&seUoJnEC2OqNj&?F8hoI z#%9&Z!{i?Z4fJ*})g_+nLTL(Gqv2|3Byddxdm^jl`WMi&}* zBUrCULBt)};>;6&A|cXk>jkHHiCR0;kUQJqR@jLoDd)r3WIp9BarH#KeL# zkMabUy39fy#TM(JEio`-KSDrfRiZv8T^k^tyV$~~#DVSN93BNK^ z%h6F>OD=aXzVBY;OPpl#}+Q6aYsn7k0!(GuV_(hnXM;2ZQ%&%jBs17Y|%qx^7HAs3NGUm4$LF-#QV|k*?Iz+W1qfCcbU2JTk8aoci&!uDL;n zeai!M61zbZCbO)mTwVujNk3Mz!f95=k=gpxj7ZsxM~^G zmhhIPuTJ@Q)#lM?KY6^^X-QZA0(wJcj5}u}a$wdm$Eq)DbC!fmLL;m?c&_VWMQ(A> z-h@`KL_s}7+K(zn(dp>^{LlUvvaPPxL=prdZ7(Q6U54jH=Qi?8Tbzy*#o&qQik`dD z^XEP7V-O#-a-4bM z9a}NyGj%Ggmu6wukxT#^*IIn`T`$UU?&37mF|*~=S$ho+Z^Jj>jyKvXVOY> zSxYGUTwfd;g}2Aq3debEH-Mz=Y$t#%&TYRMCHNw_I>JYjV2Env*nN&yJ2=btxcCe_ zm>++56N`Z-2GXe#cg1d^uDI=v>y#VV(qUE#C#u0kE=)`rru53dcOOeZpO8%XMk$l4 z{EdbJ?TC41SI9(wQg!X@5MVcQ#U(2>MlKEQyHcze#ze5fMI8~CWJS){T|(p4R!9y@ zp$i9Ptgx9Ldx*RY6$s#lJBQyTo2pVH+n&4WLj7^RbbNV#=BHc!*NTs?0GV_S%{Q=dOAAMw)Tu z+uk~AaP9}jafC_Q>Mum{0y)yyZfgnV&0v7^z<5chkF8vRH;5~$awu-?rC>L-6pba$ z6p`S2t?~d!k($YO2&Zyl$d{c3wCuqVu;gL~Zeulw;?+ zJ())D+Lm*lL@H6_!K=OJGyxK`i@m}Xy)V1-3Y3K)5`ognU!7l;*HKuajdFCxbD$(H z<3fR<44#54m@9hxh?lQIVr4nlsgYDI-jjC(xb2iwhS5o1s>B*#jhL?1K3X9$3d2u? z#cfn^+^FR)$7zyqWg54J->WtGSc*?AyeB~ixoOQ+B&&sPjb&eaoe8q(YPaZED#Xy= zj|szUgW_8EZMk`h+sxKGXeL0i1mpNFfGNjoccru`=N^U-+Yvc|Nu9X?6nkCm$x!p5 zSATHCSG4tnZDKr5Vo+;fz|E5j=cn$RhZqB{=xO!dxOMnjg?My<6!YUsG=H}jA6^KK z!@~TwaH<}n=v6KLr8jZ#f{#o?_{%2{<<-kILj2pbr1%tpw5IR_)=xTc)u}5z2k&0M zdVAFrdsnu#iRqH~n{?E6VHc9!YR8^U^B?-@@41)1Urf4nHIdlr@yg!QeBOJz_ZVw_Q-gH7W~BOnS0in(Cb-4q0I*Enixa;2^G)&>~0Tzf%pg;{)2 z)yjkkWCkk-i)!(S(kYiQT~IJAnxx_{*L+4-{`#;;F4aAaRaVWkyWMXzJ>lazU03D^ zPl*KRVWVxI>?`;iobZ7s%6WQ05H3;_7WSh)j~+qkgGynxu-L^TCW2a^9^o7_Sxm!m z&(~mAH8>jv`q44#E9%eddHIShUQhY3MRA!L9 z#v^-XQmORrxTv~)KPB^8J*|2&=7^TRow;$D@nm^X2yXdiw37{_hr4zfSgfuatN2;r zAL_3px+Rucx_4ma-sGtDD*O^%2~D{!-O9y!Y(|Bk!bgzmN!e#H&nQp|JPb-e#uVWLjHJj{xx&)zQ0 zy$?;1GM+KSYFp`C8wD3OH;vK}GLN!(E7JKbxTANG+>i?sU8N!)vKSJXOIAW>V)Q+d zMqP1R%&_J-rx7s<+mMWpzZc)(NeFb8h%|Amgb3cR+~0 zRW(Er{UX#I+#EZ>z%xn+v}?nJ5sT#{Wk=3LZ(|M%(NL|_>R&UrF~*VZXELW8v2zAW zTgI7ub37*%B6p3wfM!yBY*nfrA4OhXTo5V!`P{d0xo$z^zd{-mG2K}23;);df)zh? zDI!Cu&X~M`H=v3v)RdF6{bINXGnzFmR@Bf+uedw%N>M!sc`mfq>Gju#!ok6H26;cR zqw*b^kRIjI&6oCP@20_odRg_Mj1XVzk|rRb%VvIjlliR~4 zbK&9&4)E#?1fj31m8RK9E(i4#Dp&0{UiCzjJHk~HBB*2sFvJO6&5Rz(9pyU8OhO`{ zQ{&Flmebg43Vn?Ns0X|@tYzF)YC1P5YX*Hq8=RdarsP6{+RUw`fS`}C7nMgNr`3Ux^%NO8*|89w9`j5r*zfdPiErc?IBSjDk1plavOrydxckP3Oi&2wVFS~@0~s8 z=H%Lg_0|Dcc;3FP)ig25&8H`$NWhA4D~RvGNE*}1DJio;y_M9IK5j_=FId0_?M^1R z?9vA{8-OTB-O#qTDo$=fXc|RUHW7EWmT-cbNZcyWF~zZZb+b=pX{@w8gse3$F&K#D z8?LJm{I(aS2MzaZSEq}rF+|xmSWQBsHeiWLSIa2|kFQDDx-s9zw7X%}~H zfdl)NF#q>f<;$R1@o+x|dcUk2xFVS<$L1E!gn@X+glM`r_d9Jz!FDjT z#&&IkdJ;ahp@~*od1S}hB@XT*hx<=u6OveR`7)9{Yp~a zte9iS<0NO#INtl1S>zo{a|4K#l+5)%CD4O#jzXNCo-s$8 zvHNgyPpgPK+@PCBPcYeGF%06&xoaxW^z=mByWPUY2`)@0&6p%6OIzq3mBgx6WN8ti zk@NC}q9#M!mR6I2@mEJ>#nL@FE5y!?m-VGg9PuK)ZqeL)iRAmxjmevbF5A|We2>jhwY=CT zw!bLe(I%0`XJR&|y@?KG_V>$&1cJ^o%&M%HEp?EZ;I5^%ys<0B2(z%=>{7xJt$_>f zkv=(KZyd*vuok8|`~hR>cgek+r+Nu&lrZe6^vwD|ti(j@0P1XMnCqL8hWoY~#s=7%1ZDQEw>YUq z?Tw$(Bu>!>(>X>%h>ex^U`BuN*n~&IJ>KhB!l8Y+C87nC(uN8YflQEch-sHk{&WCX!>Fb;Xh$i7S#WbM~Q$?|jRv{8@m z=83MF;IKR~HaP!YOM-a*8c?}=Rn+cKV?I+hP*pp3?lQ@XJ5wgWp1-nGN+sQgq550h z<2|gR$KjnG7x19n-OVwMuDEjv8?6QkK;AE3FK80Cokx`@P(Y2Jb~T#1)o>ItCTYTz zxp8EAt0eh^(%n*iiAP5qp7zUxESR+QDX^GH< zIxskM4)oA8pZq6Aza;Cr_u9Lwdq@TLMIvXqtM+B>b@|q})_&z@+v8C(8#I%$u3r7= z#@hN%lR=f&{jwUq`qOE95WOT6q+vI9J7$w!?TjONo^y!zwMjMqv`&*NSyK*@*Qdkz zpQ=If^Cqk2_v&(zTrcWzHc4Ka_TX>nE0bwFi!(>gZoqh_TW6EUx94}0ccwcBd*8S4 zmxKNHssjJL_kERIn~t-#$=xl%aUPvuzwrA>81)l{(Z9jck_3xK6 zzmLCYb}BbZLS5h)Dr$=5J!UPoP& z_F(^u?-W`JVj=9*K@Az75OxyBzm^CmGH^+ew;CrDG1FTn!KQK&Gmqgtc5tuG7Ni2YYvM zrJwAgP|+*HUBFqPsHw<;JUpaLy*UM0gVDiX@K<;9WDCX(Ck97R(c8Y5%G=VUfEOgy z!TwjcrSmTjD_z|2OnvBe83x0mLq^)`K_1|vd zku6C|U;sDAc%pDhMGa@=JNl(toi*LE8Oj|!f%gf9_9;puJ{KPk6M%8*3t_f5;b9MP z9yf8L_wMqd{XUtLa4JM&9PGcJuO*jZYW-TKjBkL&+IvVR_hE1Z@Tew3SimxYuYibr zBOgMck&`1!p!?LlL-fyaNnTDe(=sJ<+c5!&vy?H@is>x2FYZ*n6O|&!2f` zda!qoUwF4(ORmDId<9<`&cCFgX3_D3VSwbbWcrOA;r^hkkJDswu>TDX{10W)%wZ_B z!zG_x8fvb)fU}n8!G1I};|k>)WWUI0t!VzN<=)HSU+_y%&y>Q7tr+2XT6{sV$ zK|Es+cvzWD_;XU!JTh5)IHX0Iv^9JHzP5j-d-ynRCqo&n(`^17{F^rx4&)d$;_d3? zu2i=>cKTXTa#k`k-e1FUbh3wdfPv)fdAz zMo({9l0h6Ezyj?5B{@$Tqaaz9m8N}T{ZWw@z`wzBGU25(hoo(4{Js&4CG`$Q=J##ZIWUS~Dt2Y)w_{RPxYDiKOcWo{);OdJWO^)y zlovBEPzG|G{O?HCFV|JS24yWPnw4U`$2?Wg{~)dxc(a!;5t;#f@ovZBhz>c}|A0S% zZ+!!%oQ>M7VVfYH(8<$i1&YV_S$opSf@8PI)}@EafK4(8EYM}%`H!H zYQ76nj|Le3jMJe%gMkJ!&0@kby_Q_drm~VUUvySJ2I(O?Hzhmw74Gi-`<3co zUR^ktcXBcZTggTEbD3N!>WuA!pLB}0->hbV)3{afYJ>U5dA4u{!NZ$Y=*ni5s9R@s z@#KJXd|oD#DG7iY+XsAJzbEltORk`{6E(@JeCDO~(AJLWt*EiW(~d5M_@%VuV>shz z|8SWez*36hOwr^SQz~jP7bgxy4|n31Q=BuRz* z+&`qnx6nUuJz<5j9USYomHp5rZ3=iTf%h@0N!&r+`{Y;eXyIwtJ0 zy$M^$3v*R0DvCZX%dpHy0>ucs0j4qx(ygsI1TYj-i!iOf-X~xB&(%}xNGf84D$*PR ze5_xS$>49doaU^_eL)qcPb#aj!YPo4g$7|u-bechoBid&Rys#|6Q&72`ofIWuTDYF z?k7i=35=V@F&^X6XH=cfSe(WnJGRDuuFL*_m2T_5Fo7>m`3tlQsg+igOBNL8)pUd` z%iNRKYS{yN9j^Zjm+PIWKkDMUlRascL@4A)fC;2oj@TtGSO?G0h{9jsNh1=Gt^+S7 zHNlbp@SBg=D+P1;h&}(iTc~6ISaN))ALij{;C68*xePDf;vm5ruizMt*^FM7L8EtR z?cS*u(?yf&4JMnSObjqZJ#5lvb5zvy84j?vryNvI=sB;=|8+7Mj96!cftonf>_IqR z31)zgDfHBX26{-#x`xK=eL*4A7a*I0ht|cr=+vQ6tFHGTpf$fRhRr}&gSu;w0J}pK~-L^dQO$ow0kb&#(ImZ9}x~eK<%f z{drZGZjj>HfW~6c(M?<$%BlF0aE4xSHRRdgi0*+YI5!i+Zi;eTP0lH$&;@+ zP8I2IQGoerk3S^oW>@EYT~(>o=;V|-JHK1831`u$lI+)54&BmhDSJJl1Go)_ld^w~hk6ga&?R$Zab=aQAqP8i1Q_7lNE;(Mh4S{k z1o3>t$gYeq><^5gQ4)EE52+c$cyav(_+NC&a#C_VR5%iO<6e_hg#AVVhHw}3z~>aD zgNIqrPjn^ZAt;c1CX+tdJ8?fw+-McQORji7k+qz-FtUQEe{-5AM$_WuiAtK|Bu5{vXhT`X*<@mlmE86MQ_WLQ;W&4MDr7X2N() z2*H%JWZ;YZ3xu{5H_TYitCA+Kj=?DqS2yBMSm0@A-bM)%m86hHh_X23SAznxx=Xdr zoAdikIh+or+hGI~f_=1#JruflcNXBU*C(6hxK=1rp~mRf>V_$xHbTq*(IdjN7z1c= zdnzzPl}HYU=HS=S&fr8vY0=s2P*nO(6Yv}7WbN20ef}C8;TfGM0moD&fJi-re>{e8 z5ba6~IP)oI9RW_jmjTMYuvoETpZ{+U!qB1R;|lYH&F|5XMQn%Qkv_;jeC*UZyyB7i zB(!^icgw!dg1$}pka758hKw8H1j{KD7ZHo-{UV!XYh+B6 z2Jf=M#|4Ip2&qeS-zbPcVYr2wlcVI0ko{?CUJUi}h}hc_XplsKota~)8NEn&08qh) z?`+}Pz0YDWru>1#SH?%b=s$P80XKZKmY_7m@TEKz<>CV;1&AAP#Dl6#MxppIZG@;* zmQegO{ePEcftd|G+X$UCq$@&@mcJQ#_U`rUV&fy}^jGt{wSP!aBAaAD=oMUqI zs)ax}9N{H6w%UcobK9~f1uI#nPUqRMCpf73X)?u&2M;87&w9S|N2Nd^D6e4Z5XYu- zg$^0*OvAV_iKYr#q|OU(J9kTG4_X*W>Lh%r2SX8{p2$ihdesZMQzg+iSpQum%iz;e zI)2{tFqR{Sk)P7FsRqSb5aKZJN1=|`Sn#4+`W; zR-epFFf9U{hfxOh(DMOy?UWl4$CRRU3(T+0{|9F$_2jsO6C3gn7Q*eLrT&z1k{{6- zqm-Ld=p23v)WR?7!(V<|;S!jm#G7+hJ|nSvfsLFmdE*8rce z;)OHW;@sb|hXujea_@ohMN;FbI3@zqJ{2d8&^~6VFq|-?7kveh`jg!<7_^EnL3a{5^Z5`P zLt@V2BBz+wDhqia>?)gpk2Q&3=C$NJc~zt&I7^X`R-F@tRcTcU|EjnLpK zXHKqbh#0Jzc-ia~7KDSWREO6cp2KKMJ{P~~0ZQJt41zjpP)fNskO&#XiIb^)z4$4D z7n9C?BM(J}-l3(#Za*>%#u8_??QfVsJe))fc|sI&OU80JpJP_YoCDQ!N0N8Cb5!KNEQE1gxZFi|Oo5DZF3|gf|OL9ezUyeNKp$`Qai~KIX}8G$pu1 z>XmEw;FgDhv8&lwe1|uS@|fB%w4CVBz+*XgIry)KY?*nKStFkLZNyDuaK5n7d}d zC8~9v3=aSOs#_4^^TM*r;7Ns9GKw#Sj5we?%QQgJ}=$z)lbrn6cFhmm! zz@R!qGlUe*mYn-y{wO;j8>b>|rs9HTKq8Zy+J&tMT zsS_Q^1B@8t__Ukv>Suo~uiFv2NUYevlsq7V_d9_Ft>6jl%6J(01#sTpTjLQ)%!VlL zJJSJ$4f`Kt0@Cuz1?naMXjwHC%Jaj8gJl>egzA&E*7MN~o$2ZaEXiCLJP+vAFr{%6 zuK6$@EGHXL-OnDL)It%@VKM(x9XimLG@&Oc$fL@5ql_|-)-gkc@#cbnZIat#&K#o~ z*vbmr5{3~M9uS*?zox9+PbEt@CQ2+NP1$(F>kCGBrQE$uz-qvy?iLn`3YnixF_CNq z*EKv82bS{G;INQhAZ(V!!oNWR8%n#!Nz{N160pg(=l5IdR+4`rLeb@%iVE;nkaG&+ z91`HIQLH&+9S{IJ{*&4VTS6fu8l!q+rxpXWkfLXtt#}qDZ(xH31UeiRB6!V&BB&Xu zUs`@o$HinLt%Fhp5%{C&_vsj%T8to>CMsST9~MQ|Y|J0do`q99Jyr!I4IH~MgP4NF zLb9S9l^yMKy6lT8goG!UCL^V7-B0J`hV1RdC0>l)(GZ1R~2S5q^MO2iM6lJ_sZlyiBIwtNk=LLEh6ij#8QNf z!Yc2={GPHI?9MWgBHKxMEi@xqdz(IUCvv$2o@bh~jL1Ts%9l?v1Sz02;XWQW&OY z?ff&f!*a+Z(XojYp6_sA=b0-Q;M}VCm%`Ix`ZRgLY(wDZ_oud;WjF8SzBoDX2h9*C z@ku@QG8sO_y%1Ap!#{{3!M0qWQ0aoJJcH?6mAK!ct{d!6ded>I)KCo06c%Wa$y9P2 zKj;c3!*i4@Drp!>y3UlB=v=NBNgeHAH>-6ik)Y{nok~o zZ;W&kUxJ~9fSM^*i#`8V>sneYqOyf{L()(bpE4?#>z7G*p<*yz6GTFH7aXZfvc zv<0dJEX<{PP?f{UyV)|-k#3bEmmuk3Hk7|XRm}-naVefsIVLj21O5D7b z;>p;7j4)NnAn;u=UbuOn{Dnka5tv}m;a!CTM-;TEAPYjHTc-RnhcXj@g%xvmD)IPv z4H}eXGA3*_-0b=sY=#8pjdhR`Wjp_&jBVJMVe9w9qCLZCBFs~ALMYdP4)+HHcM!br z8A4E&rETA(wHH(=N+Jni6dRCgI3?>1Yr-qAOXJ%5w1?7eH|&t4?NFHj)p#nKj-H<_$a& zyw3`L@n6d7SN=D6$Oa|B#Z-(i|Bho!GdMX8y!{@FG`VGr=4&EZiJX!S8fyt%?Sd=2 z*c)d~txIYs=PGLgAJFh@tgqVvxSCQa;wgNwnPCcHD}!4O=_QsJ^A{wCh^Tr)QUeFz ztFcZ<0W+!D0rj+Re6BE%iWdc$NmJQXhKn11SxFcVM*p~|j4z6bH#A)j8g#@`Yu?=_ z9YeZyCHZOfD9MLgo;QG3*r;TyDaR$mDJ7;`CS}%^AY<~o%7-QNm4z=)vMr2f7Je>V zD$A)#7o*^y#_(ymS%*M1-dlKaT}z=1o54|av_6685n!GlniM=I%Vn8Mmc#A z^q3K&+CwEvm(IXza0@a7US8@g{L>~7XvE8Qf?66QIM=xj>>p%U^w>?nY~{V+t~Rs zQSA?cQKZPa$fN<GG~O8U2=C|D4QooFYxhJNaHX=j*4i( zQ9Uguqd~Sg*eMkQn)d6_4XY~0W!}_awX3H%eF<3eK|YvF>V`fmYSa~)`fQiUkShd{ zjh&Hr@^#l6l5=ZGb|Y)l?^pxdkPU|9O2A*5Y+UxI{AX})HwR5gf6m~^F7QTi!79BR zs}eaK<>>N8oUFejR|SQF)GYFUV$!=FrsC`8{&eeQ zPNEbdQ1-@+LtgBE`qYc5hq!!as;k+0>TyA#ZQ)u{S)wTzt4zvIuoQ#co(SR+) zK$zCh^~5N&2M{SeNw{m0m0S6+>g8mi_dB`o5O0!?80h#*zRhDt0R>XpUp+|05Sgr? zPXMx0J{NL=<_QnU5*OSl1zi$O!=w9WV>De?sG}GA4 zXAfqi%+Qp(ryrH*NaLRlZk2xan0g=+p|}eiLs{~NTTZl)McH%Jo;V=bXVMjM1qH{s zn89~xC|*Dgr@2gI2@%!P5+vY|;_`)-G7{AUWqXD)zmOijV}W(uSKmvgp(ivwD1@&ig@VgYnW2KlOEcKXb?HJNRG?Ld1G|KrKK@ zDNFj{H=iW`KC6=JS&KBuY&1%(bw$1qk~H&zF^plS)24}S{7oD961Ee{Wfojo=Ig#R zTuPhYP5yJ;Y-)uTK|3R^fFlA3@}n3|MD8L(m4eW7r8x?P3mdu<69me4#oUTRQlTz) zidpUXvKC?H5w20oC!5IorbE*A)X(J)rN-0@jtX~~(XlQt<};TnAf@rnGz-8()7uRH z?wjVAdP>_mM|hdEgeGbUx{w)8f^`Ukc5rO)$Epi+^6Pi0#lTuO<8T$tQ=Fnw`QF!= z3jCpHPU^|@WLFcZ0e6Wk7iHu~Jc;Fs+-C`3uOlb*HCb1tQ2Nq~R!St{1U%$xWswU`ueFOg1NKCw?? z30j~xogA`lK9=F4qL?lz<(9ZjF9+5m8gW)0-a{qN5d(sTv8Ik z`sY4>Gb9#_OUJbMiLqMdcwNM8z0jZ+iS6^=uP+ik=MSxkh{`{+!a2jz3M z=y)mT5wsBGLD!*We9V0Ch4po?e;suVVbe}WH3*tOAVf3sC#9>Tj$$6PZc^j0|4(CS z$xxE1B^M~d=Z926k+VXYahtJ+aj!g+YMUu|>BxZI!U^BdH{z=dc#3Is)7_F@BM5CK zjWvAFHg2Yg@E&=usG4t0)sOKmBpJdn;Rr-yDv-Tr-C7qfI<=3>C|;Hn0vYZc$-MMJ z(Q%l1Rr>4I3{Om z2WifsBB3<_B1SIwb zaOH!7%3}_(+42XalH`M+-IaJv#y$#o?W zw>Fka8KhD0TcmK>C~U1&vSk~JKQ0bKm@8DOqHWAW;FgC-J&F6;u}W&qS4zeO1l&zz z$k>XU1~I%$T;dEbVjmNZk7-O?ZB1s13y>D-v0LlQL~V%dIV2ZhrFscneyV&ZgOJa* z{z{|bif4GTt_8Jwk#1L|nA9(s1{EdBwC0W!6Ze{fHFBM>S(A(1Fs0^Nw94sgT5;4G z)<#Lm12G`EnjJq(;`ec-6frU-sK?Z{;3vPyg=oy?Wo}?Fm$nI>WfD?BSsm`HrgIVG zaD6T23jM_8`^KBHsK2QPmNj^mO|eV}#&?|0cw2SRnt_U3>0iKc{>9+Njb^aJwcAbm z>(1hTehv8Ha_~Wqfz5!GMwcB8w5=&x@DeoZWlae@D^9Vt6bxawze~BJzujcU9rl|w zWodeHGRey=u8yUCFDBN)u)B}>Nb)svUqeqa%8h&;ksH7$l*iX4qp7YMH$w_PRuz=k z+$yBwc$fFRS`nFav}>lqz&tkcWmcf#hyemh^9zbZJ|nGjTU%+`0x;#m5p>?!W@1DY z&$t}hQ-3&2yGX6jkq#8y^>Z;A)xw}CyuD3e{5=GU9_B&#zm{BN%!2t)%j=@3yhef7 zxV0Iwxx1ovklHziQ!d;nEY|lPIqEl>e6EG1KiB z2_|W`DyZP`twkfF6opnn$8p~yp^VJ?Vyh$P)9!j9JnQi4<8?-+cXc zB~?z`rC787%Kso(4Ey*n+80&IOngVCkFXeJ=Ivzy%ilSCVtaj za(CGUEZ1vwg%nt7CNZh2pi@O$@&m!H;mY}CJ+y2E1pLgI^bG#zIV~kO2$S_;I?`6+ z)<~3H#4WAU2!_Z_uEg1nLi<0uA^I#3 zzFaWQ9%W2B>zZ9<>=UhumlUJ9s>3uh1$noz2l~?ur!N~q0i^2^?e53g%IVFb42ypH zWfJ#2bm5xVeaeSvr;hQVnWo1dhP~&q1?EF%+X%gHA{!q|g{#q(_9E@3*>En%=}5!G zmE#_(T}zIx2*0HhnQgUAwe@kIZ980>+~Ov#6jVw$jSK2}vq)R3m=MMM6?**IvE=Pl zYZHjC?+v2vek#REvOERLHv+|}77}qgm)`uoR&tVnbI+KGl#bem2p`v2xLt`&q+Df8 z2pvTOlgP0W=axA~JY@3JobIPupW@cSuGqs7=te!^)v_K8(%1Y>fb>rVfW`m6@cDOVnwi#AvYWj?I0 z3oj}&`QIeyWG?p}trRBKlrN+kr@Q*b1Y|%|H~l&`B4G(g;1ki-UCjD;@yP3KQErur z2FZmWC)X%95>aiq$u!S#NZYrSz^+{cDOnxCT-nuSR)=KM7!6{tS^M!~J-lZG2tQsUzq{N` zlFI+SMMw5wYxz4B*&A4ZFdG(h+jCK7$0b-aO~Zh9`+jo$xeh(2%7hVUx(JcTB}|zFtj>q7n?TUL9K}w$dG^5Tx{R(o$Ar@NU-ER)5QkyV zP93#1aKXj`9YGm;7GMe%G3q8ecK1Z`3wisZ8*v)LqzxLy8;5iy=JG`NT?S2o5uR9o zaRDO;OLTP56o4aveoLW0Ng~?&r@{uh+*Qv;HCzZPem{w#K=X1=Xlq;&qL%oHLvh!U zKYR&)T1Vr{em{`295mnQOJ~L}vf%Ybls8VS>!&R=CqWEdW0PZ<;C(cc`@hA`7^P7D zyt^T-2Du3D`*CnAbtrT^Q#ne~hg%tsCr&>XEE~5f3}oo2g!%Ff!~TBmP?1~RT=}}i zbT|a=Is#}ge_2lY^*E_-;4K}4r^a`#H=1vEfqqz%E29>q$L4$3u^UN+2zA+|=!l7U zh}UAw<_xi~JM*-6)j^=EjLC)ve1!k_Bj4|~rMkp+w`}EV4bmkW{^U@$Mra^n(q_`} zf>A#CirvhBT_iA?9?`gSAb-R93!FPv*O14BUl-`qD`_dPa6S0LkxJ#KfSW@H|N0^t z=Y}#;#y9v_Vspp>k$QoNTm{kr1>6*gSKgF#d+%b%a_q!?CRo2lt!&uzFf7XNr)LXE zMY{H5Qk5F|!zI-#TWGvI>h zJj-M!SM8veR@q`u#boVc!?dL9cTJbeWUGo~Fid&O{2&D+ni|&jQ5C2?RFRlwp!+GX z%l~=&gmd!+4a+6&6oJHj`h-6qT}Vjvty&k#T{EG8y1|}!VRfgfXC)ISuG6tYwt9@O z3nI(4%w(OhO*rNUKVWlsw<@%zo0bdKfWK)!$34E#3WVm;Inrcp-F0=QuahJXO+WLx zVw_fQ3FA%D1FE2+VIknI1CFm`IbI{4eI z)#9?aV@mVthz5eT|28OL1YUB^(v^Z7i||OgW{2E651)@+-CLog2RC;s_^(N{9!Dsq zo=ZBIc&BY71fE@~q7-+Ufs3Gp@KIb&^lHa{y)Vt_7W2($j(B9p9I#Yq7qTD{vNXi7 zXtdxm_0?Ci<>o*g%)A^Miz%3pG%8T zuxTaCbq=OAh>SZCj_e(vfqNZX4WXn6k0_YS*2J%)(Ndy_ekxm`7RBEO#fW|2Exg@v zk*=_<A7m`yl=;*odA6MbEoYDk$f;s`qcf_gml~+TEYR> zqEOmQc3kUcz-L?jiO`?oPEq0Qvdbzv2q-wH13j&92qd?MnZ8M>LU0L4dI z0LR?*$WaUE@J=an4^41)nk&5vh<@Fx$Y(&ByH`T~uRTN%WDgKy_$JrBTIj0GQMKxP?BIdt!ZkgJuPPIFU*NU+Y+e zRHWrRI?XV--(4AGvjO8)4QQ2b9n=)$!@JutN5o4y>N7>FK7v@I+03epu$N1NYA1_2 z`K@jmLErF=PDfe0Q*TLT_l@`zaKc&1(L$;5mC>{ujNb{AJEpi|hdJgN*t+V9kX*A$ zam*y8ZNlV;mCILas3yV7t!Yi+aD+YUZDK##_@`+bqK#^j&8(mGdKuRM`KAKt35C5+ zr7;u1aif-X;rS0uQ#Y7wpAHAM-K@WIdf5|wU>=caqZ)k4qc0KJ`6FzD_$Rj{C!!{q zwyUylwuQI;lJL3Pi(dQHw8?t;G;2ULW&Px+?9~&wt~C`U^ylkjTfm_}&smNXnGi~*Ki9FTqxm@@aSVy0^g^8d+`lND0|XzgBM4ZipcdXWkOsZ7ITR^7oyYE;f^~9 zfpNj%61C_=@dQQkNJ_6@rXj;ckR}XK>JT`ZG9-chZFwz>7sMkrrG5?(+-H!)*I=T@ zMXqUpQOJ^UF{+bNTdNzO3RF*#7nJJ4e46R{EJ(gm-aYY*DYD-xH{hkB-kN${U}=$xw)J^AI3c0@fD^tWn;$#31;ppT7NaSXqHYs zhQ?zAt3#~0vQNHS;lFDS_)Fn9{XBebILIOR@;}e>7hK`(x|H-L%%h>2Jy@ zz#q6KgbV3P|NM#?db&#~PoCNw200$i;(!9}x}MROIoj6-ghk?qvHjaPwZ1ug`r89A z+T;KQ2`Mh(R>WF(N}`0hHnu0cO6f17(XcogQz-=aS#rS*aOU|EhG|G9lx}>*hQAeM z&R^&DjxhZE(q-|3V=JQlq-;RD6n4*{*;W;ez;3a0rn<26AIiF1AyjSYR@ zk^*e%(>DDucWNhbJ%Q1ttzuv?o`QY7m)3IS1U4ix0RFvvl+J*hb5ZqNL+c!es|&88`ajqkf%t>u}{&Fj~v&S z)J={33KQ|D%?`VL2Xod&46LepV&H5ul7+>PL0F;nLlIh%Bo-`aQ&BDFh^O;pmo9%R z55EAIH_YsnVW%&_X99}v1TT)0+SpFCT>wcV`Um!&)R2_n^?<#49zdixao3(a@-tkz5>|zT%uloqafGMfsUOMVXF)FcrbUrQ2Q-X@ zrClkD?si+g>)2yXZagxUa0nXs?=m?MoFP&@sTz*p#wWQiDJYl>JEe$sF02#0dGJAk z40cyOo4F(4TvjP4xstVQ@>ba&4R$DX6t;I-4pd98%!IDHk=MEDI4@(5)1fGwS+Yl(S!Ti8$Zi5w++K?J=raQ$7-O zA0&z-jp!JWB)%DI=FCYS*Z#NjM?1W6!40A~ORjYAcZ{amkj&i_!!+|2FEEH2#&y&9 zyL$1*SD7sB$KQQ-qh4r&Yu(X_f2CUe@fRd`5bQEuC7`70Tx^o`b_t5lF@^U>Fwj2Mj z2~W)etv@G6GeV9Oo?su}vbF=}&Ff_a!d2?SCCBzyuMEYjWlaZw5#9GFT|gwaM)@#l zq~cK?ADOQ(x_*{HQ-wRODMz4z0``DdW7UC=TYiXxxSS;qDw~1e?t2>5ZOq9n}SNkKE zO$oPD^YgUB6pa(tRMU@~`SNQZd@d^GKxus1qpEUJ z8!r4e(V>fRadSC5QjkeTZQ~H>AS_ou8t$>El56c?s~A+tFTj^$pj<1GtMbxdipuL z=jLRu9w2uX$H^Ig3gK67A1y5ESdKNU&ZL~Rgl61>gE-ZCkBTb*id$8aIZ$2Usd)^` z;>Epp_0~BNbnIg=A)QEw$K^2N$49b2VJVdStSMsIYYYFl9=Hohc+-c2X=UnBYQ(79 zEk$*xR|)r{i%O+Q8`X_5)nnt#OY8Pxv#wTLrX`In8^?otomUGU{C%o=lHVeZ?U@Y) zUxLcukhRsx8ELcOV1hNmug~hyv@PqW?$LFDTT~f<->j{WZ!h2$HP~YAe3Rt^nd2sx zpukF-h^K=I5i}W>D+#DJG!1Fl5k%sfj0ZiYB?DX^g0`6!JHD2{XD&Ka|IDoy2~t=57|-kb4oqO-`yF?P%$}C6S}PPU~fOQSaygnnQj=; zj56oeAwH>@OFIhB!f}^!g!kNV4p6@~Hk{d*IdI68ffquYf-6{9&2pLDnAQe|Dc9M1 zN8dou3k|ytiP-c~-66HFkfEFVFgYg|1{oo8hGm(kLH2qcz)M0C0I;Pn7bgjd7J`|E4>Z`T%Ns6VK-p3vQ@ib#xWrlPHy&c z*M%>(i<~zp>cc7O6V_)0R6F#^9IKw&PevqI7Y;;h%T5gA@hyp$)8KTB2y>b#(auoE zf&fPa)iHZq^V^kZ$!NaIZ0B9!aCjP#RVl*~en$xFT5`>C@67$kb^*niGU7L*OXC)Z z@~-)y%QlTP4fTcGUBZ#9+8f`S7i+o5kt4s@fxLs{XaLMa{#p>S9HVQ#FzT7v$i!1l zSn-wfy)AupT>s!3!Lb%*&4>x*89EEyYqendBy6HZduDkz_o}6KM5K1~?j9txuurFx z(?pfUq{G>1C@4V)^;gQXT9c0>0eGbn{FB3vzim>|agFhtgR1(G=Ut8N{#`yr5fnyY zEQJ@G5tqv+smB`4oU=zWWcNi~udRdaf<;Y{zKBCq1O7A>vX-bw$_dYReG`3%p^!CS|U1Zcy%V)aqwJ%jg4d zQP$y@uLseW7?+xFF4qNmvKt|h3pXcs-{`lreWSL|3@u1U+lKXXtI>0eH= z#Dp&iRC;_z1UC9C^CD~dK{ps*kY74779%bAJ>PkSi>rxBFD?6FzO6=y0hxmSgv&5y z;K0}REEGjVR}G_0R;r?2|CPBGlb#ky3Kzp}y&*c)YiXpSI#=@ErEFZohF&VigK28j zV{poH_6Cul5j0NZg<4u#5gkcWaxIriEi1inhEfu)?=#ouqtcO7NHUqgb4Mv%dhyiV zFzt@FMj-Q+*!PISD@~E__$3}YUWZ>1~^-Q)$Aqp*5`88`2p^ zJCM-E5gMY(g*K=Ou{@`zx&CCC>$m*nSM9M57*eLOiFmisN=N4BpyO7e@ZMdLQeTmv zRgYw##s4?E;{g6CYK8FnG7tXGslVb|j?(Gs!_95SzT|_Tr|*RMC>kXomj!{K^x1H+ zRYyyk#g_Gf9zW#fYm>Z12rBN|=DLuAbNbBN&ZXusN4erU4ejqSvD)XGI(Ni-G2}ze z%;Ii|_x)%`sveLV1U{9^^P4tA5e&fIhK**pQ@X3aYLPpjLJ-{W>YekjTSJ6oyO!64 z^UszP?X6xUa)yQ_w&!PyNyaB?=pVb3SK}7#8k+jfXt*GuGbNGhVv`QPEmCm9YWlD) z`get?0Cwp|sf4Ajho{auTxLv5?h48bbJ3UmMse}t9aO?yr5vJMqr*pUMw%nM*p2gC z{>EKy4oShDw1s$ldr+lTKbnpqIcZ?iS&$AXL1saXwa99!8LEI~7c;KIRcb`HI4WeI z#m()TK^?2HovOmXOLxAQ5sp#SrI~_6TEUC_dVLz;dBZ?poeaN{AeSjt{#tP1iD6eUI5%|(L z)6U^#dx2hfnU7q>L0=OhiyJwKhc<*2_+P^gcRL2tu%EV7vZ+*HzcU<7L0#IAY(%*p z9uG~}G%f!Tiog4&OCNyGZw7R7Q;1qjhvY=!!chdbnzAD*$ki!S<+fW#{br znzpgxTca<`Y>boZo0#Io>zkPaj!;Xut9`nn1n(lqQHxG!HL(ggb)6$pv3TaHFKXX1 z)EW@_$O6D`3pQC@V&RQMRg4Na+Ra*WInr4L_d3#Twyk#hWc_RKLo6Bcva<}S6uU19!E&=$sm!{*FkB0GXC9&KJk!+EkxyvnCpO)2bN8vT2~VclH!Rjnv$#^^#fl? z>Qzl(M}I{TCV2T)4`1QY-k2nYZnjFVRGI|G&$KL7yu$N&H! z0000_MM6+hFJo_RbY*UIb1ze6V{~b6ZZI%2F)ny$bZu;{eQl3i)v@mP{E970S0U17 z{K88xF-Eo%K`?d*c1Wb7=xX;1-CNVWd+6Rh%;ZxzDB?!QB0iib;^z9|u`k!hz=#)f zgqTsphj#qw{E6Y0oT{g))~dC8_Y8I-CD@+n-g~{&s+Xsps&(f1t??+^>`!Oqq4UKl`g{y_&pPojET5lwXbeb&>JI9`C;~ zFE^h%c41Q0{i=Ta>h?zeSk{$)J$J0`Z`H^7;Xlc`!(uw?*Uw>K$ByG=qq17hrv1@# z$7c2Rs6QL_`}MJ`rf29^yR+G`Y&h+|{@k&(wd3@^__;Oy9X;j|9n(0))o^jE%7*2^-naAY{`G_X52}GZ;P~+5*&p!GHX0*% zrZIxvbh6PcHjbUWs9zmU4)$(WgY0DfR8~*RgZ+2rS#|&IG5zDg=Lh?L?dI8-UR7ta zgZ=ASJuDX=S6R(t>KyF9n~fIyuxqZ*!!r?x{G`C-h=(O`8o8jujnH` zk_T5q`dqD#9xlGD_{TfhCV%c=?{3B4+uN;Z`M#mIRrDZUx3}qadpi^Q!l(4U?r^g7 z02vIM)vukx$$*RftrUhPjqs+51qBG>d4rt2nWVNg}zmdmwuyt)|tT4j;0DbIb7 zjd{t}vI}z(N**e0FD)@0l`7k!bsu6XJ-nI6Krb?p!+QoaYTe`Se*b@7WQpx!A!z_Z zdI*-EUXhLhkHKW~?|y$H`#GJet3^#`bykcz2LzPix?e%I~5Mf=Db{^xgREI zR}c0-X`GaGNb+<-58mKIrn{iJ08&lzLoy+(U4I|5`zmXxN_@7;e4zidLJ?{RU0`HtSJRTu?UjzWrT((cN0~1$}7L|1WF=tqLs$ z6f9H>9a`*xeDTzY?wA&k4=w#)4nIUgkEe`{_1d+Hj>&>Fjh=M={Q6?IOG?f}pCsXn zFrQ5vY-pg-Vy9lqUZb7l+0X&)%9_=@x+GUL7v4Qux4Pu_^A{`V5#Bgj%dhFFn><_o z$w%F6P>gdL0BN`mEBuUxcfA`QPW!S`vvJvfr-HOzEvnxYRaw}xWbP+Vt`FqQ;H=4s zOXN7JTC9l*LQo?(Ic=xr71^LJL~RJepo(Lx>d34BcBG3}@UG<8K4`Qt)F_RojOO8^ zuIycyDedd~ym+j*L;w@(u(!Jb4M&51@cDneg`J{5SYwFpVugN(-vN~zMoDICogYW1 zp1;sN>X^`!UxVJH@m!~ukzjw&)j{Y;Wn8APokOYPNZ9Ce-C=(|%JJ#1Yf;E`bbqeY;S+kOMY;wPD0i}<^0{;4vR}<` z)W)^DFE z4R4g$1v18F=;KuXem9SXe#qLN7ycKc-sH`KPa13A_P6mw=yP+Hx)&&J=;uL&kd1=w zhet7kEQ(rOA5IE+ryGO5OjYC!h=jgx%)XyFV{G(u_JY2oKca4g_M`{x@L)eF*mZ!7 z-2bA>-~Be1VbBp_A94TB>Q=Lq-Jy4}G3=Titk~@!aon0`qOT!F6ZYf2u=$Y5{Q%Zw z*CfEr1%t5($>ND0Ng8;_KiH8$<4LtR;-dax%&-AwoXkx~l!LglU3RAq_5RK;ZmG)_ z9El>EvAJUf%p-YA4BuPxs0nyWX*9QJ0WS`t6rL#?&;RkUv*C2;%CU6rlxL2YXH!A_ z?)UF6dxl--#mS&pDSXI+coPn~4Vb?zuA@G5D&IH9iUmrenG+}0PMkQ=jAWWVt(??l zuRGdYlA8j;ajk+~VOeMI=^tMT)~Xs2Y%e}$pB$b+`w-VMIH}_T5*R%}b!BWtSy{*< zx9HT}{}b!$b#^%6<8>vz>5tWm)NjSG2Pa=d${cy~8g(nu!NChc2uH4428Tyq<>uuV zb}hSvz>b8sWgAkZ?3K$DzQL5=zRs3r!#mUR*TuiibG8uV(_Lj@=VNnqI;U4G-U`M= zmrnd_4nGQZFPAmkw6iUu7qlr27t&FT z>3!RLEXXN{JL+~(*57P2hO?>u5s%&JUo*J8L9D@frWcA)cV5>89(bNk(WvP4XB0tR zCRILW>&*U8Tr67|TC4ZR>gGbz>o6|UfERDM;r)_z7-<;q4~pmF<+!qqV2`7aUo}~gYg7l`C+f+dpT3T-* z<@gmP)I7-po7BWCjSxWNcRl_hy=nh#J6eZI9)Ihu#DNqA3|RJZ*b%78#H5Gsyi{x! z?$C$}e6i%%e{*efZ4D9?Y|)CbjX8Fz)SG={z70Roc~BU8+t9Psr-l_6Tq{1f8;B%# ztKcFD#ASX3hds0z0_rHxKv6k{`zU8s50e>kNY#x)U_pnw`sEUE&d>bOg$d3eH|!+$-o?icDz0MDxa? zkWVVR=%GUa2*MH3L5vr-1qaYG9^;L~o;xdTz|KrCpLpawqN+&8gm$JJ7{H;Gh7)@7^wZDea3Nvbd3x^_B3^a&QaR4fPu?8$r}T>g@fl5P z!ogClQTmYM@k?ZCCLs!=o$Cf5Q3gNabIyPrg9*uS@tH2`3#?N|u!<2J5k8sDb-LVt zGrKaG*Td}B#i&2agDWAzFLK#YEIS5i3n(UXC-)RtW^aqbe_0iApDyz-riCdcdomeA z81-85v<`>(EVMF8$W(}dId!nbI=f|?sTF{u&-e$Qo220#I!jY1sQ9JL;E z4gfs3zb?289cbC_crp*Qte2s2*ocosQq}kGOsd?)VpFXktjwBQs@FI&+kd&V4)G^Rd(Y$07X>C|fu^voBJ_+m7&_g_* zs}%i7(DPB9yF*IC{0W&_Bm!cNPGeeDqHF9`1UQ#5(YfkR&8caSOUDF%1QX5~8HML# zU;qqLRH%Net69Z6lI|H9x~cZXj*lGRf%E7To0T*J@KzRfmX#SxvF(@mP`qH~!?QS? zJV64xJT6U~LZpY1ykTqRQc6QMs~S&4khWv_#r?lXzGoNS1uwrpENY#)P!H^ItYuep za9vmuH8vw4nk`8{rygxKyy#!2Ys~&~oC2hqCfmbKo3C=irYwf5gAI&g0ifxDccxji z#eo!6!4~MlQbmp-!oKB!JB&?s`9ER-+I+Z+9J_BL6)#8nHC-)s_{j>7vx^LFihKXd z5IBfa?A=JoQ)zhEFaoy?WbQ(bY950{h(ztLWAkq5oIc$GcO8mDybQn;!U1m((I+%= z2m}2A(NpH^FjT%6am%dQuy;0eIYAQ`38%o)3WXe#2*S3+L%BVY1yqlqsAlA8Xt;jS z04VFSEOvm8v&8aJq$);)o&itO^lH=B1zD94R&qkMAjZq+hyI>|kKl~f!;n7++yc_g zh|(C??=1d9Qh%&4cwmtB((4jQPK@DpekQLQA#JCAqN=jPc9bDnQs-Z9Nc`*L(!3Gh za%zlL;aSU8i$@pFxcnLIe3I-Duo#AogD}pOU~8Lhm6<@v#zj2!UD_@B_HH&9mKG|X zgMV=^ykR+WAv)$Tq2XuUi5v;I@2?aaq$}BaxCp1E#${()*XVi65!HeoyRFZKFgB)P$uuwYju zx(lhX1@^wA_k4IC0~^tIK`dkNfdpgTNR_1Ti7Nw~bH<6#u%P`)hh7OSLdIWKy18%6 z8O@p^GC>01$dsdGzOO0zoNZu zI|v)$yH&Dgu%pdrNwV-7)%uku<0V=Sk7sn2V>CW3pcxbl%+LmWInJi?@Q(p|u#>_c zt=KUPU^`YcaGq|7q9k>iOVUZs2WEO1hE(Oo;0}QO0a{ki+?14GEZMaei(WB>2v{02 zhP4Vadl-yjDm$}-$d{=L(?P%m7P}!UtbQz;H;GAZ13dngfdpm>IqDL23r=^=E2b$e zu~t6FX+R~c7Ctsk#lhbHs{lcL-~%p2l!x=EQO)1=%MlW5oI!x*&@3?weDLX?a7i-D z(Z*;OX7wrcy8$QsiZkP7hf>a=*RY~j+eJ4PSGJZ?Gw4&FREUD zS{EaH^H;y?^w-N-T~tS%#Kpghqy5J*TPgtx02>FNMmzxZ<#|UO*v~E^)3VH^PdtDz z%y!h2&@J&fW3g((#cd-9_U8B~|CK}Koyurd-C%;lS&v$5otKag^llwDy>*pxsJeTw zhkL@?Vy_IR@P%o=sIyng*XxvuMjN!PPI-cT${SkTPgClbzQR(IWY5#h7g8527|KsMc+q8laAzD|2&mBy4fyVfWfCqOue7-x8 zr?EuTe3%pI3WgviU-^S6oD*Ga!#si`WMZ``-cbaE^hEmPZ#1%cv@|iKi3-|26{L|r z^^)^cz?5;f2b$eOK=#I*6rZfcBjs&anX1dJu0So+E=fjqjiX3k+o1hf+#UOcUdyhq z_Hj??Nv;&Gh0t})n~z?k_bq`gkpf3Fb()Mtw1ex3ATLMr;bhzjIGu@DA!w=%Pi=JI_An%^R_lEIZ>fV&}qwC(gQ)1$7>SC ztmb!NHXu53EXIhnB@G$C@>|;$&qt@hn~+vOgf$^P*&x=K>O}d+MDrtwHsx;ydb*M` zm?Ofe6B);v#B+fHo#ws_`E``-2uJM79H0ot%YKNLgj8tKX(ZwU4v&x{4-0WGYb@6l zKz^n`p5O(|%nmT2$nQJVV$Jl#iJ10`ISkVYuKx_naFGs0*`I|hDMKjWkyXj@S5Lku z9qpTq6Bu5^cQ7SsB7@b&KLE7^%5VN?(mUe-i&Vj}j6 z_`8gfa{cZt#hUHX#pWg;Hlpj{)kdH{tw5MT?~omN?mmO6Y+Ce3(ND>n^3~=o1qHsQHVB=$5 zfd45WKbhzXX1X}${+N3OspT}c4e1xIcb)9R0tr} zI6kZ*N!&b3N;xA?dtfUpLbUOKxM6mL7Mk(_q+pU>|=1Rk{8d6l2HY;5{xh{dgmiYJ4Iku{a zLxXd{SXb~+6P4rws_^3r)5+u6rD9Mq3n!99`(s(v<-jYfW+JRg`Wqo|WXe^WRB|Li z-r>zk45P=LG|%FTHWqg`^!QG6!NB?zV_dW3sY{$Z20o`m0#a6dyE4@pBCw`BD3(3AyHD}7AUgpD$wh*9`;Pnp)q(#y)r;yFbqSjMJ=>Ta%1mhp*(*1|*; z*N}WCr@6fQA`D_DB?4Z==hm9l;q|;;0!89MfrnML682sEr-f)nbXd&I%@n=v zMOCn+u8@PukTn-#1>z9XI7Y{I2|HCkF=}dyh1%p@awS}fh5eoyIZsChpUHDVmAm<8 zp587)7Q6ERHe2<>8}o(0lCZ$%C-b^L8kPO2ur%W`n=9(V5f=`9*}L*$QY&^G%3V_EAq`x3hP?oz*3n7) zX5&y5#RG^yQ_k@Y3N}Bi28X#6aBpd7|4~61C;?X@tgg&j{Qb>P)Olyc0UK-XQL#R$ z-3~O1dD8-#%N0xJ_h~VUQk|@JH&N-Cm1U_NozgO4NBA_kLzHHA@H`Vh!tJh6@KPS8 zBV>s+ct~GE_J&Wq)!J{0I!u!en?jX9Vad)|fSIv5OI=omc|ZiE#>yCmhswyo{{O{8 z{s;t39x7)SbdB?1xX^23K*UeqWhTt+3DmN%&%VL=5G{WlbVVgmf6C#7&^I9 zyx<+-*?i!#|EB%ZOzq=OK6Pd`Z;t--v9psi$LZ&1FRW!R0OAqqn7mbYvZdY(K(ouJ zZGhm)^TPaePOhAnaRnogo?~=Z&}ig>S@j8Im$wS2WQ;k65xbC{}!X^769tO~PV0V8Ee3|OndsSeg=t8*Bv(EvqCG0z2c06G}@B>=!RbW3uvNyg&+2jjw&p z;hM|t6A7l&@`nSi4#g&ZzZuUkwBPzrjM)Zsg`c%2YrDntAVcm#zyXqjAYbIl`Uw3l zG}hG9YV9mO$zCAgE=F}RwNnstp$G5T{ITBSNrJi3!lcp^KTo|G-A*rFm z%N-?$8Y1J6PxZ_RP|T}VWUA%ux7hSC>2rR+Dk^dAV-a4n27#~t-m zKmwSy2;|5NHXqdYNZZ}bX}sSsfq?T7Xz{Z6SlOIBaFe-pxFATXamEd0@!|_LW0zXI zZaqKI>I@6rtq<5DzG4h!%%0sDjX4TLKRZ%g52vMOuBv%ezBt~Q5wXZDAYh@3ho7#V zU>{QG^5l>6P&-jZU|f=$lBj?X&5dQL21!JHR=^N+vn$20;2|Bt90<#TZVB0U|Lfnf zbE5(4pFF!zjLXrepPic)X4Wql?Tr_yik{gWQ1!jf>S^P{!(eb>H~40 zB*#@_t7%NXO3ZK-xnzjwE5)>&<(VF2?F6%t{pNArxHYaF(&Es55b|Wq=uxK2!PB$eK{i;@=mc03vc^ajmV+O-@}r!jL~O1 z0-+3)BRE+NGD2|iv(Ww`#uq_nuLv~KB$jG6AB9?%6Vc%S!uh!)^jwm7*+eX&&bdfO>DB=Ri$|qEP`HYnHh+hb!2w|=`j$5s^Ts{ zxJQN=HK1js{tCF}nx$8MOi##1Q42{Ts{aqVYOZws3_@gN z;P6IH@ZJ*)_q|e*YDRmigq7ar*i1w~bE$^ajzjExO8r+U#iCyYrK3s%Kw6_ZOy<{s z*q_g0^Gjdt^w>Z+Gvcen=>M_xJG9EprvRA#-6*SB=@W}fg zx-1FL8}Lb~7BZA?A$8zX2bdl+X-!-TS$rx~T0}+^sDCjBwK5dlG0Kz_(d3O2b?o)etKOvQ<G!Fsrox1jWM}mBg(u;7PhoNAx=70Uc)46kS{FZQ~m- zYeG6xJ!ej14bMfLMjscoSLFJVsIe2#CiTGpx8Z~_vT0}-8qE8B$y$LUIK;k7Mcc{K zPoKzFzhBA`Ww#AxNjiGH(yyx7_Gpv4lrmyC9rbHk=L-|*a}pNMwewDw;wVk&OHGCh z%#eJITXswHrLmH3=}8YhpNlT6V;t4qW4+m!11NyHAePCsFj70Q@WZ%IuK+_q4GG5a zaBE|7%|*iW>=UHsU4l|8Ety$TxT*Z2W8cV zc6IjTf6D`n1EgKDL+J3CYR@~%>vnkie5*;=QBh+dN%9paLQZn$T4k!6VK1|~LkEB{ z>nLfIwRl7hIQKXEx%5N_Aqa? zN-=q(+0Qo0ZZ>&6yHr$=<$n=?wTD&-&#w3yj`L7E6_6}O0Ksp1e`RZ`e zV+**pwib|a*W1G-PES1*v9z@2U-0QhU0Q7MAa^E2J+zixY_{W1(F%m7B1lF%c?1Ay z1-7_)TUxE^Y9+wxR1(nZeo`B!{C>3poS^~txheuU zqmm>N-|TSQr`g7e=V3vMD70ALZJKN}mtqp%=0ftp1?$^MVOXK~SKyOuGJcKsCQWw{ z)m(IhNt#w~;(EqOBFfnR7C-nwTWC^x+|^q2B8rl}4B>*4mNrGDIn3;_$^wh(b}bR? zFd4_t9WLp)pHM*p@F*zDw3t{zOC()eC-zET%8h|?`4Luf1Cc{)*Bu6(P|O0P9_lX1 z!ELQS@g#VqeDibQqjW-S^KPNs50C&yu=ZjU*kEEg{~a+0N@<4L5@4t#Ch^&fiy~}k zUqYWSxyT1umlFPB&>t~SmNvmD^*DrXH_@qz(QpcOC^{)0A8?0y*S^o2|BkYQ#*&@K zN4^PuB0d>g^$ArdIv?t(n6D5Uwn(SS@c1Jyn-NXasF;dz7axO;5+0nV1{R-nTimkYtwn-A|M7KH~8Jx8r}tT_$z&Gx-hAvnedC-46Sp4 zusZoi_U>?9T-9?tj4-2`Wf?j}t7m*s@9S7@k-+Y(=HXGMFbaGB@STB^E-{FAeE+Gp z$KepjGCXWe%xfg$gII%#fSWCFQoQG|4=*vE5FV*`uAImn2H&w)tb!Dvr>6>jaMUnI ziFGVnRtxn;;7lSJk>n`0q41h@A(3O9sKTp&i-dXDBn7kiAVtsv`&HBI3BQ5o z;w-vUJ;9KOrwNU>bgBYJ==AB7YXoEjFogI3Qna=IJ`+FaL6?U`vI+3htgDf-Q$oLc z?i0iWx&3%tI`Hp3L$Esx3u+$bsVCQ-3hi)ygNvb%Kc+8P$~8~lEcGDLT{BT=kK!eU zBjNh5uU452*VcindBY!Wf#IKxYbP$+1Znj5`pve!c{W7?XI;1qTePU09Ar^pefQWn zT<4Gq)5->?nX97}9^K;Jk7DCzt_EBD=UB^;(fg38Gr<`*E!vW`37Ymg`NPb=D63Km zWwaEGqxV&*;`b_K#Vvmw_EqWd zp_xy}8?HVm|D+C5C%TcCNff^PSS3R9zVqh(HF&0R-tw6LLIhf9wT>%60P-_V4wu{UfE$v;H~nq~aH zjxJ#k_B7v&b1pm}wBCgq?|D3H?NtOPrHUY4i{{&_XcZY(6ua158P4Kh^Y0=6k57q) zNhl*e4-Zef(R0dZlj3@d)13xvL1232X1ro{UJuLe@Yvbb`(j%byk!keo}fio(^a_8 zXm7g0?xYIG)%<9jcU=zbAI7{7pLH{9ffhk@xMQJJXcg6YSxS>Akj)s@`1BBF6Calda6sJBCCM^7!Ch1b>-}!cYnv|6YQ9bpEN7q2_owUqQGeUAW{qp8z>VVm zACh;oP+7rLQ*FZ0(hkFZA)MLKMiQpKhwNo<7`1WtS$B!6H zRuMm>>zJk|1rs{?WLuLV9swDB7vUseYAh>9fIeSEpIP#pL0)9r{mZ2+8bWiwfGt%b z%IQY2$YHtu(8MO(s+5$!C)Y4o!B1?vsjWIl?|ma}QFm0p&ACo_c{YpYWibk`Gn2yM zzrfj+@0B@7FFtWN9y&Bz5|kgNc+^LF7btC0gWW`%ixTzp7EK*=!{%t;FzG%lyA7=v z9?6ZjbxXkli7aC@l#U6c*mkZ4Q3SxSXGSMf@v*{^EOih)rgsbL7*tKUUc;b?Hl?Aq zNBnWQDnMXImX1TuIa{Z1E3aSU#oQb$1B{67QV-&c~y3YElNm>G*pqu?H+M_&bC8Cv1|nZ zMKJtuLH+7-RbwO!ge4Ts3Dz_UO48oBwT)Uh*;Zv~9~O&aKHn=WRL z^S6~;twZuS+;TsA-%~5r$TVj#UHoS@)yn$Ny2f$(eA8bq9T>?!HDE+(*{yBMwKiI& zc?}zsE)*@?z(W=7_v_NCeN-UKr^wpmKKFjPsOQsuH0d3=HCZoT8x8ykW9--c}91!W3j+Rv>b!R$r%CcW-mjOa(DOD^{(CR^6Oz)_lNzWXM{i0 z&NkNRJbPAA|La#T_{-HXUo7}vnp<77awCjNO>M&@1{?&RVeXE`XcFi z3&)*XqV(p`F|;x^_U=L_eiwGRHWO-_mP~8rZl0tS|2P{a2))bqdIrb$y07N4B#4un z$3{$XTKp}vR8@Z__8y6p9(2xmBpKB*3$tm~z%W|1^tjK>Gt_=K>L;g=tch!Y3?uIhag<@k&bf(;+h975o1MVg z{A5tWzQ414$+8L|qSru`volN|_2GJ~_>`>hjaFfEDTG%hvznz0c=Hu)2c9=mCfFaZ z$Pm*(`DlS-d!>p`*W!B%&?YQzpci_kuEbIKc8C2t?Qag@d(h2HBYkU}Tzj`ErPI68 zGE$wIG==wP{)eQ%aUp@-=3Td3Ntxjm^KjENq7}2CCvzkH3n&^S=zaC^=_GHofidxx zE_aU@yC;U`1`kcv3dl(rJwgYC$&CtnfwzP@+QT===06?pgA6Cry-;1RZBKqm(BXC@ z>-~67Kto9pVWC~i@7%KizY_B0&#RHkDdI+$b$w%U+$#=%rPUuf6Y;0PWcJEuq1wk(DE_4%y|Fa)B!$36rOq z;TK!4Po_N=-#46Wmf%jmE(W7XrxYyoVY60p02(*vsKJxrPeXH|lpNjg6W>a6EKA%p zf5!_#bLr~u`*Jq#mUVR5^Fl6iG(BiNEPx+u>e8o;LQl2z@oex1QaEm`Y(nijN^@j& zA`2on9{bDY9@fFrE~9B1-wW^?U2&CoCXO`PPBm_xW__RQ7a8`6FO%hFG-GW*+AK=& z^>R?3_KR@uNc;DaTH@d#)qENACh+%IzO%G%P$FiltQ(avEMioX4rTd{567u%#AB(o z5E+x>MNZMQe|QbXfomNtS87b9v|TS?66_1iMb!*g@$Y%$rR_(I`qjt+0?fAbdRyFZ zAt^4t*Fs#qcy;OdqUy}2vjjs0fQ-{*WFaYU96VjisyFekV=e?~K?bF5 z#w@f!wdyMk5ZiE?v^-M$kPcP=(JcTJjoKP6&GHJlkU)*PbYO!PlzWBDfn@9L&_^ z6{vX$c~-xg&gRSt{7oNRj+ctrxU3Yo7o5eXwHh5x(;(=c2AZV8G{qllPP^7mv0lp_ zlXq%cIic= zCjH&r@y=n6lRG)ZWrZsIEKs#-ZAUm2D;?^J-%j``;3tUT%P6}l6jL$+FopcUx!N9vn0(}}1@_QR;aAu$*5IQZJ(F-n9r$k!XN$rN% z0-DSn#@83O#_G=~c`f>VI!x_r+V=!7&I9Rkz8{(=Iq!^-EqFYQyVQcKz?L$-vLk8eDui5lgrd9#ap=MY z7|ttSTsIs+?n0knebq!ehCT~el-PGz51IClyjo1K$@$vddEypV5vP4dS2VHpoY zzn{z%F3uX|h24n{n}m!zEu;#e%wC>wJB+rjr2f{4DkO?IxHW>^OOs)h{o=ddfAGR| zQq;3tN&K-wdCC*uceP|R-3I6d(mIqB^w>!H>$;m8q?h=W?xY?SRZr^x8;t0rwg7QJ zZN;I=sgLccg~H+Y&p#|ar@d#0zbg#Mc1_&Ht22e%`cv3eGN-upQCi%?YsZEKkWEY^ z3ua0hmp$wj6D90TwU@2;O^cNty*6@*7}fi7gr%jrlM<-HOKrNw3_>B?fE&xI#^ukt z>@*n@J<-HRg~YE(+osS@9g5h_M~er@qf8r_mbegLcl-Gx&L8W1sA7b$ncSOzt`U(3 z<+)F7PN+1)i>9sBcIH566Zha_X#C6} zBF)sKEbpBFTU=_BRok0)2INOqmk?u@$r+m$&n;*uRQtDf@M^oYTI@Pk-Oxkh05}8l zxXxZfn`JfrGC6IU_hIU0Si!a(L*pLtb0%weq%ZOL3_tA?S6()u|S;m=FF4qNa#qLxYLf7+G)G}}A5#A|qw6!TfIL04 zWJ{8|yW}zYqtk-mA?7l2YSm{xb>?Pm#|tU zaRg4tp}`&_=j4$`xTEUD|JY{!6&w443a3EwEz*A~$VsCy=*w?X{l&1n?*NiitvVgO z1QZ4vWyN!gfO`>7BFZDyton!6uM~&nXU}zsXMC~dxFkq=sS$&KQsTM57sTFi65{5E z3ecL3Gb{n@P{aO~ z|2#X942qiq?rt;25S~WBE6d0JohtRKcyT~0Wk8*FwLK{s2c5}}M+PIkyM3HU8RZYn z3AK5)Ds%-(VPjsiJEY+O%Yo+vvAc=zQhRlh63sYX{_DK(SHl zAaT0%mn`ocCZ@KQypW6E<=#{7`MkS_ZK%Wv2OT~7gqy%V1r^djx)_9o(0^PJduOZXtY`de=AF_x=q=H2Xxuvm$(z0d5gShoKEFx8^h@3v3l`W5> zov{10w61Ke$&pX52eEBpcuNaH;^V+k_WxK`T>cE3Gvhs)iE>eYnA?4YSTc9N620Qy zL>b6kfXL;dH^ZnFNN86uh6}OO#~zV0Lnj`JX&@ufUkrXMtkK*VK?H3I`76Q@mzL?E zh$YHrs_lug9F&5}^r}gofM>ed{upvl-rTa^3Y&^rU|DJQX1OMNkCp=3=V038th1{S zApUD*YcRsbkqa(H>*juB*f@K^8H;8Xr91)cCPnjLo-!?1&snwO=+XC7V7J?J=%{|T zOZrul-aUyjQ%UbAFg#a#;bP6I2V2yzyXrRkS7-uk-g0mKR~k1nbTfUn*OM8LU+{^p z%7Ao39X9AdQpA*EhMJ{Yr-cziGS+08*6L!9eu#~=Te-h1AMMCJv7h}QU*pY$k82*d z-S=2ccVXFzNk*z%N$@XMY`zEDGPBqZqzF-B$dGYk#0|~I*z-Q0grMCUIc@R`$XP!aExxR%;VCp zWjacKH9%1EibFT>85BVGCm?v}_=1o4W9oO#mjWZXBSR?Ow?aWfX9+xW^{6|9({&UV zp7snA*^wKYiJ@$=aEYL^v_KYJ|JayYtb8<2M!e7c0_jl;@T%#JCQNQG&I;_7o))om zHFR>=^Fi~3L#w_nRd9wW%PB5peLeAIDoU0>l(C$vrM`b*Y|6g{&#j_J%)J(EEC)%@cBn^Ji2LV(gol1M9^scrHbKO%U*gEPvC=)Fz_c znXr3rw=Pr~pk2laM{(?Ke-H5k_w4N3We&o<>84+itv|tb^R&f7x8mI3{1a~!nIx~2 zgW@*hdaIlqBA|h*5?lmqqTE#JY&k%IuDk+y}WRUe|sd!9d6|`k>(ErAR&$ z3H=Q>oyW&+KuEm@7F(Bj0+If^*8OMUo#ZlLE|zSe@nd^m5p-1J)($o zjS}(CU8x=S#crjLBZ_*=5t|loWW^wBP^d|d-O9HEh(mcCwgZu%NBf<7o_yr;zo%O9 zZ#9Z+sor#nPuoEI0inaPRPP8+5=K^7R;2E9XMVSuEm3av7OhAT>FpmNFFakdbwbWZ znmds)@#+Ry213_`zq|fWVtp@QvMGni-JJ@2@rbB@yO)%Dc0-1Ib0NNgyC64TW1%_+ zCb+^i+}=%sq)Ye@!vp6-x8ai~3cc|$JVjC?Y-+1CA6K@m==qMZLH&E#)Qxq}jNPLz zxX=gs!g?4&e@!Q!7E2>-d|ySb?2~$)@z2F~7*Jae%$t|ww8k(O>qbWC92B+ui8!Ew zcNyfgd}ni2Z94?5GW`@S!S&s~?2kPxa8`+6Y-^>z8oAK-77!_7pemq%q-$CBp!OZjhT5il+7roXP z&(#OHm7LpMxBzc*FAfItgHfF??opCq;YV5x4rX9Vxxig{A0rMhX?0TieHlqL_IFnX zI(vZ?VE(@0kq;)Pcr@u9oFfBFpu0(8iIEEb-6%tzpI4YS?JW^4B~Mn9ioyzTFEq$f zyIzfaVn5YqsuNFIQGwf4ObzNyHqBt2fP0NC?qLT})r!Z=M=hPwsqi7$zgzibfVKM4 z?x$1B9J_+!umo22Cw|4?tAvfka{%prVT5!0$EO+i16;9?FAjk~l`?0~)|CEM_byjENH>Pe z$0$O48>aSX@eTSVeVl!g?RC?!BrDbAFO+e4t@V=YrJMV(j^W#*6O&Z4XROKov>~8# zQS;4;wd}z{c`?5skkdl&dATX?=X*zi5t+IzW>-^YSBGlTZvXi_(Y%F) zP&RD8T1!e-Q$R3X_BW+C9ag~It7L^o^e5!y>6K0M_{S(=+M4x~;QpAccZ$mG9_Gum zKI!nlS_*XXADo*9D__S*w8HJ@<8-tia%QUbA%L-F%9EY^q~G4{c=vc7qWpQj@Zz6t zMT237i+8Ce*~`oQsaNCmQDJzsFYiv0m2;AF!E488!Tw+{=v&}y53&Suc8@`797p* z^Ls(G6~{Y^qM6!M`{B9Z(qh52SGP%KHS2NEf(yd7R=n-uetc@#*gNj`7)J7 zgR>ilaZOwdVs<;U$9iPqVSbX^C2*{bL+Kn8cEu-OTx3F$ zY5F@?n_$~Ii~GojZ?pIarx2k=joheo5MS|d#8~dc{kyCv=%dE>@w`6wl2pC1#(cd>D*GIg!1%({@#w*QtgECzEDO`=#!I*y(WS^GXBn6eB=c_I5mVBGe z$1sjT5?*r(!M!2+=0Gt=CR~cGW^0b1%=tMXs!QNobvKa`ls3U9GK3H%u9O99lrp;Ljw?RhefeRZf)0cf5I&-)n!{*}jL6 zp)fZP!;jAlDVM}O#?Cw4T$ey;i(v0bvvlFh0lM4L%#Fd{uGkOio;qHv>E7b9DOU~M zvqE#U_e;#fv8cxVB{N&2<5}lP?^}L7`>e;NoML|N&uSUX&DZiYZSaeKg2N$xHhf`$ zUTKH?4N|NrQk;jd6y}9b9$oiuve%1Urn{*f{ACzeR)dV9UpqyjXViHM2giETx9mMA z1wcEhGW_qG{RP{6I|d9LQvXzp)upDA)7qmdX(&u&BXgVsg*FNE5ASlw&zpN8@(vsx z^X;;Uhj^EFiQW*6$Id-F3tbuFH^+?vT!U&*TVlj(=yMv6$2D(m)RELK&11Pdn#x{V zuEf$hcgPres80}!2Z;{6@nXL6_IXweeA?){-;;Gqoh@f{|wzTWWWWk}xrQ_P8~4ivXP5UM>8Zth8*e+E5U z2z7NEldmCZI+Gp~FG3*o6zm(-4cjRcN`;BrTqwEX9kL`^2S3c7(46U$rUbI#F!?>I z&dE45gx4EGYtrF=uFwU7FvFf(5S~$#M>}uOBepou7_OhjlZ=DjI!*TsU__#BY$8L8 z`S5uw2;YB_WsZN&(H|Bz(C-z=mx*!61$;!R=@;Ie z|EWx*8}2^PTo33Lmv``mk8l3wh0GMAiuC$bZUQ0W;qh)pJTub$Zg;;+rW?yy*CFuP zCsFk9@qnihst0rrrRH*NNwMfqHJ2qo>O{KT5pq||;dh#&%P46`JTjjO@n&<2!d3}) zc_+F()%%0{Y^S#QK0f$f*Mr)nw-*7(x^X=e2ODw3!=^|$1FhpYSGEYGac(vmXs;|v zr&JO(ksFMx|e<6*7V5z^fb@?+tfd zB{Q!c`aEQ7=76W_-hW$T64?*Zko-ga{mBYYx{AM;S&zJO7~l zweb*?ZB2I`)X-HkAb2ubePpe#EeIxs=xn%=iv;&)< zXX9H_c@G`{?~z|ls4n>p4GOC9G^SJ!0`hbeJ637Q2e>#T1VMHwGd`BLVwBB*J)XVY z28xFInxW;5l>5rI&=j15I_I779A~rc1h-rpxYpDU&IZfek%O)AF93xe5CVortXks^ zpD_cBJC67X3Xv!(G=mNJT2zCn_DHx7Nj2tpR*wQj0di*R3**zcUIJc1MKH%>B0Ww; zsN4~pjh060HEu{vmfpgLF$SnJv#*!~tm)H%a3Wv!_7gJQ|IxEtD*#YEbzBGDf(JpNcO5vPm}!Dn|4-|HeNS-q+H z3NrgNOgjFs`8?(oG=wv)+Sk9L4U}Yo9fXVNbDy>Q9wVv~M7A=VM?0AGUo>1`>Jbr? zA@{5;OA|VfnT2h3eU2jZN_2Znua)1o5>R|$ZAde>U%MKc(GpOruErrJlD>Q#BJ{rh z%GACh>pdmAL6Mr_82Qbo&%*Mr9hcV7NX$9-stVkJ-e87YyWKeouHL~(VRyb3=I))hHxc6Ir3u%e~JB0oeJ7?s&V83VOYgjBc~Jw9vEH##1gN^(L;ab6^vz~6=i!{=n)`5h28Npfi7$B8BUZL4W)K}XJU$&K8IL(%o$ zR!fbRi0#c(&A**@J*~9FwPXI?jjQ5iHGZ0gH%2{Lyv_uZ)`A7^FmOOTzWLA?y_u5Q zvc&AVy%1Fp59@Gx{+_@^Gr2rDp7Xx63U>}yT)(%Qd^H25eInRZIAa>5qElVO9g}4A z#n^?u(Aue2i&hUz`%8y=D;JD!KMR!GWlHLDQldAh@;6S`dFA(hS8nzd+pD2QTLh$&g+l$9Llex-A481#ej@A7+1l?kusaM!>DbY70C}z2cARRs8??3D1-zxD zger_gdy~Z)9^kzoPOF*~3GCPy)8OK2aH8$-USKed!LtuQ^3cOwzez^EgeEXjXaHs^ zD4zsoLR;c8HFVA55X<}5$w0n-&&IQ5q;!tPybX$lV9%3=+za-8fGfG5sa~*Bvk<@@ zq+ftIw7lI`7d`tINQW&CtF8pm0*$`gBM)wH>3!{yu*JvTRnvtjFqOcRbKV=B&WLE_ z(+g&$Lk`4mJov=kCH6#euKKU)-dlN)(U9a{?~@zjurg9zVh*G_LT$<7T#S6PJTTE> z%fXmuz5Ecregyyt^y-nn8v&@}N`!@1P_pQ3+04muf z=>~)B1qHT`Bj%SbShfeG4@T6XWWO^vKUlfCp;-y+V!~UiqQW?1q8K0;#(RM{2r7iC zR{}xaim(c68YUtg7N2Dn%SN)uBdM+@W432#d2ACL@W`y%3-Y=R=%uQ|HMHH~g82&K zKBiES9e3UO&WOxHml}hy9EB$D!?=G!L9n8f;y(H$Fsq!q+YpyCftXohL8_AaoS?=L>L~0*!tPat@hdN*7V_#JvDpJU z-%6*fAY-9*IP`gD$@51XAy!SUV5Lo{5%lpJ`ALGYk3Lu-5k($g*{%b@qLux2K(~o! zka0~dg0bU}ehf{sSLfh$KqZ&H=1Y#_af8>u3wa!dbU zwVup3EEXoa$%9cPZKWHhMv8lx{I*xZCfl*})&eVZlnW;pkEdC+920bce(EFL@W1fa zVu8Ztuker7sO+o7O95$PdF{1UheWCX`qweWq2xxFfab1W5#Vh^NC}Vr4p~V_TRLOb zJ|m8usBp7>X+Q{G9~ZB};8B+$H|{dwrv)2kXp9#`z9tQ zhnU}XzLLrC4DuYN_Bc0$P1K{?3vLlfO$hU$YfWJ^EzIhInqFi%SC9N(rW~j^t zn-oEshyKm+;vs59BaQ{{kA1=(eqgCq0{QIk4+g;e!Wz!yfxFfoL)yH4v&|5bPoK&& znab~i=dmr1SUeq&@Wys6@U~Bk&7ttqGo@2|ClwV8FPKCTu{}FEvX*kUAcg#}F0q7+ zqf$|2IyKzs5)IdU<~)L=3^PKbYL>Z^ZnEGhs3ME(Cj2`vBYy1A;3k;MtulBij2Z-j zzEw8+6l`8n2RDD{0!3g>J{pL&&}F8lY{#{PAZ5I0N}^0Mhs>>AN_+TM*a7Bc_2pYe z@T6?qicLJidpUuAM;)Wy&_f3y8j?8DV5TWDzh=4@Sup-S;k5HbFd$GiGnkt*R=i#o zm>w4z!!FRxS0K*u=G;+qF%nu$B-bAbDFIOtc^&C{9(4;ARwW+6(a|>hs94Z`G>duo zBfEMxJ>8m)lN=s4D&%zas`2E@DbtawC?Ui3>Ir zVo$~p_Zb50clrEckVv|V1BhEX;xDx>0yFyjQULT@YyL_-Ew6g96H%_kT#d5~9F-)w z63EDnvDOix2Sb)kX`wLU9@``|?rzs{JcDnCQnClTrPB6NlFVY9i|(BTToHs0n?cpE zC{Vof6CuygD3^RWYyJw9yG@(ueUwe& z*B`np>?QD@Zc%nc{qeUWRp{o+6PONz>{lX+WwSqX0+bJb)E$5C6MDF%+n6hEdQF>i z76@$8UOb9Sz-GpJ(Yc17R*;L)#*wg3ayGntO&iPVa6kc5q8f1Aka5229^i7;-2S>Y zu<`L>)=MeOxY{KR@>xti7{_S&d+fu91|h@fZVo(*N%K(6fi7>`l)*HT1oM4k{DR5 z!dj|`iC2QJ;|bpeo3(6_o1Y5>isbJ(iT|~t1Hl0G*AQaD!%z-(F1@xzN;>KN1+Sh? zkK5bN)hjO+qBW*|0;lCeF1}@_UZfuu6@pKa1Pgu${(E{u&SraIdAHyoiKSOM%$>+s zmQ3t8j!77|iwZ>?sBL8KD*D|V7S?1OFL?(@;`_6!d|NsqsE5YaGu(+KW|H;NO7>6J znp;Gh3RQ=n5cdUjzd~~J(e%jsi?*8@QMa-A{`6pzO~iwnQ61xO0>5}RP}pV-zJZf9 zkepA;4$1_Lti9POPFvx-DYzFzs}d{m{Wlq zOpk$*V1Bu6jIkU_`f2<+>gN33fqpq=fx{!ZsL6-Jv1Am& zB8@Ck2KBxf3OUcZjZm4q6p>HjUpDjNH zI$YmJof!Wtw$Bttf%^|A?(-)RbC)*#nl$}vUMKCx$CW)VzT5&O{TQ;3IBdTzluR5g zps4~P7#VFB)=-~oEqE4;mZaR<1uhE%(q{%G3t%M z_rqLh!FEKYRsSMZQFpsQOC0s~ zzHh)~WQSS>0JY&I%PlQ&Uqu55@Kv_1!Gn5Vq}aYCp>H;re! zTavxfI^i@Y8gu|;dZf`?V)^ESz_@A?EtN9YdR3y!8n8B?F^OGe3BeQD7PbSCw2NGD z(!zOGAtw|Xs^2vSz_%O-@iwAWD4TzXq`E;Vqd#z^+sGU!9NryX*Sx%9W0YJ)hGjDTdjw5)S|K) zj2fm_S~eBEg@v^Ur8|>g!0QQ8X>~O$Q*mnVdDyLc$^!Na2qz&O7Tbr1MqT&*0-GqG zf4%tqp?iTXvs-XZek^uE?ThpT`-bpkpg*fHO*@Q^r|sL+GCISQ^r&F=#@wUp{*YZ9 zjFbK#$OWtlx|?}_bvlrq?z~vC0R!Gh;#!TtT4kbS_Qji&@Hlyrzi2YH%RKI4Fl*co z$Fu;DAos}-qfAHS+)qb;_x-j_hD0>ANg6G*LHnEXD1MHZ*nJA7`!Mm3BJAY+UeVZd zWE`;vs}{~k^ru&%USd?MK?B^|B^XZI?|ccz!Wh$>bIUzbdg=;L8ru%X61AWxplB|{ zl^X3PFjP+C0^b^Lau_2))OJ#*Xtfgz1C0YDs7dR*W$5BVAV*cm7$# z={G^m^0C8WOAP$0uUyIB$H}jjaBM*-hRLwyNT1lVVF#chbwCazI$)7C8R2BTnd;u7 z4Ow7z&d4d|*OfWdzn_O@`X?QRT)E|-=h$9!%h6fCSXxl^r+QU*;$Z7v!>WZcEx*^xkZS! z0$*V9eYP%WLY>F@iS-yu+-zn=@Uk9FiveH`){rR8v^$gbCvsxoz08(WIUasZ9UW! zzBt@Wkj1tjOq>1#=MU5LMWo|T-GeYN9AWeW|Jzi{2v(HaZ_%|gKHfayd@dg|Biv21 zF&OtX$@uqT@(MTFeHHg?GrsIu{v9S=p@2kfvWxDr%W^9FV{?xyy@xFE9X2o9o{Lto zM>PKpt3_8Rvo)dr;);%5;GmPayBi!%i?QYVh#j&@us>_VF~hIFX;#o7YMajW+EuN^ zw!Y;>LD3ftRm?dU z#`Oh+0dOW4_@QjMo|w9K>Okl2=f(VNE+@Q-^+*$Xh^JlTqiTR5AK@HYiDf>`LDTz9jh4C0eo50 zjfgwD@y?mrxkuV>s>VyrloW$1(7#wOXk5719!0Hyy6ef1Y&nEPkYjRPw}&OjL&JgM zftwZ2rr3@njB7DtuK51_?{9)EBgGgJ*W~drJuprt=a-w_R0^SNt8ro~aD=;#Y?$MX zX{w-YU$}@X)RuhTb&JrG;?=Uw31+Cy`N7Q{O>;3kFVNTD%gdj_tf7YRI2|b*?HR{n z(SqLTEFK!IF8)m}W@ugf`=4AbgB-oE+5O=s5SU-W|) z`y1$;j$R6a-e@_%!|3+frs$Dlf_B_>2k`6Vvn0w2kfc+MU{51kSSo6(|_ z3}+G21iNnL#=DRZkJ(f>!pOqB;%kF37qxATCr671IeI8OW6xQjTMHEn74hbrLp*4u zo%22E3;OAj^!6S=lIRd=Wl2=)mjLT^ze-fFCEBaX^+pnX6G@WUnZ9@4ZAls3CjV&%8mfO=@d0 z!4B$Lgl0-By*y7aifNr`q+kxZ+%`agDEOBFX0NeTLHfdtaZ;AaDM%nl?UBUhYmuek zJ~-?E(Vwy097>TDZ}s+sJKGAsO-@{<3y`y%^(yT}G$#>9Ia_@(4az=bgUI8c^tm>8 zfC>g~HS===rScw`H+>FWW(WGp7-_LAQ1!3K@j&HH*H{`XvU1qA1yJGZo7V`B8h5TK zCx_<)OIH>e>7AjLS?W?&AXU^0`r<;lHf1a zLwZt&{vHckH{zL9drJBvEi&EscyVQ@dXaHjKY2E!Y{<6 zTDnBm?X)WAWdKTi=O#j1mdrPBw6QUPSBYHo-~2p^`1BycJI{TTa!UK!QhKtRF5HOC zykzmrI{LtYPJU?48eGOB>>cR>)0}#g%zg z3mjBgaVeRU@C#`U(iyE5IsIU0Oi8qcojE^>t zo@HbQ-;vSkt8JNLc-1y4(YS%-a}QA2J0TgmQ=-I7uBw9NJ$MTlhLr@{=32s0M0D}J zsL%x*ZWJ(ePcmQrQs&wPvddqz9|y>nm%v<9*-4%a01vdFNG3@iR3A?b9gWMWxlJ%t zGHxhq{DSi(SYHUSf0I#FVE3V@Ib2}U6n$E zW}f+EHp;kBkOoYjJ5wA~Q2QEk0clC1e^n^^=f4WQQ`YgKF?VkCIa>noq1>pR64kaC z5sTCagTBwmAOH^|ohTd_KmI;WW|lYevAH%H|IJ?6S3a9e7m+TNbi8WCRaLGsklEUQ(s*`|J^Z^O;;T` zQJogc*YXRRRcK#9_b`$1!T=SINsVEz)#opyN!W&vhXH4gcG-ryny0|;D^NFT3XVpq zoD7u(t9AYJ(JzDS)nu1$uh|RV@XmRLTEbdDD?q-JE8`M`B^q2!=EiMk zC`0`uTH6`n>Al9anE7UXEsvFmsSu{MT0tl@6mC~#kQ8QwnANvS?4U&kH)8dXicML_ zqaFNEVAzg!mE)4tj7lB!7z-q58q1u}o!vLTRIHHJUwB4L(q?WO8E058<5y|pJU%WT@z1l4lhBZNNy{VGC z*pi`6S2UUX4^~UW2fza0j^i5vx>8tgA%P-Vf%=c=cx0K&XVhD`LZHCXsp~P7hfLWy z4i*I^0GpUb$4ZkGc-CFF@yfgOKozUD>FTQlLN5~m)dF4*5 z8{zvr%~BAVdAI$9zCE3bzBB=9Qz2CRr3!3^yIUCSa|3g1Qy;tpg&ThtvEFmJ$*u+) zxLBg69zla`6#W+(H9b?T`5>}Ge^~LY2UDe z0?BF#Oz(#VIk|Uc?Fm_MT9lt6#43&FyvjPK%49p?;94(c+breL`nPLjjtc$Q>Vs~E z=HPc&r@mP4?BvF+O-j7sAVRgFiD8x36{afn2uUDSznZ>P zG8^p@K;Fv5yscOgT6vm_O2?l}2QbgqXY83}FNd7o)S~D3PGwb{-33sIcuL&{pG01r z-9qM4D6JtFYG%zAfbS54=W)%OJOPUA%_#5(%xT^E9q`1;UVFJl95_ z3HQJGA3zUf_6fA?XG=){(7J64y(j}W3bL^(yn(52SK#JkzIHM3J5N(`7lEUdo< z{eVMQBX1unZNut^yS-*O4|~7gfB!XqHfsxDT&TAk*{{2wqgvvx?-PZfFJ8!@A-J%D z8W0`lqgb<)nL8mEDccPWxrkA1dTkLallM&2QsYOhDwDcsR~YlnH+m_!2K&4Iig+Hv zy2>_#$d_d*E5Q~mli-6sm5Adohjo2WiHW0&T004)F;x&?@v-u6`}`7)n3W zcw7Jan4Ij4`_OBg0i46*aoWyPJA~inakBS)J>yXl)**oTtG;-Su%ajHxmQR-cUYxc z`5!F0kyHHU-#iO}nQxza(73|A$gHO_G%sFZQlq;(@2QjDR&%~WSVU01%evRS04Fw} zU^VU}?ucYUN8`PNl=pjc(FYHRUMIbJN_)%=@N2jCppP!B4o~oRn+ujTorXO!;=_<& zvQLqP&F&m095YeF0hc+?AMnG@ou`7LWG?McY^ul2x7wIRKZ3EwiqQZ><|W7=R0+bG ztD9ndo#cTDjEV&T>SxAXwRL8n7qt_spy+QO+g_3I3#kOky`~-Zq&uD+$z<-bak9k@ zCkfNtHzd}?Fo#NsUf*H({9^`V$DKZ=0@3&yFw4~n|y7~^w#Ak!B5r*Be& zsMeziyRYEggUAR`86EPscEurWsWLK!sfBOpl|#zqm-sS|B)pX6y3#5uKMd76(ZMqf z-so{SpW|xj;q7$fMn!VH^m1@}1DHBq*v;vp_-ij0)DwAWJe$!YCfE$(T34^l#M&%z z3Nxs|6qk24UY79KctHxYwx4~?yH3Zp5Jenh&vIjA!M({5SpomLyYVy$opi3?RBXK1 zk{D&=q_nzZrw}qjyV#G@G$GbMVogT3Abc;d1Cd{@$YcFMymRjo^}`|{s-|2OBE zl)&Jb0t^61g8e@^PnQ4Ac_z!-{bj@)x%on^^QMxp5^nAPjyGP1Mn?GsNlEA+WV=7S ztW7awyN-_}K4h>z1k?a6Yc8A=I#hvF7V8t|jdE#>XC6!(UpVBd`-A`Cqr0(%`OIld znnH`N`?sN%Eg+l_J|p~(soqtqS{9D)V2M=NnF0}?NQ%_5jTa-PMi3c|9LdISEv=?7 za_~1eKpHY`W~eQ7Dd!zQ6dw{ou$B7Oxq2KWEch}p!@n{?1s?QB$ffgWC}5nKE!C;(V&Lr+AaK_cyG6%P95( zK|HAVp$FQfw*KYX%$6-~Ea9%kc`#UdldV*0ykxPHg)`P$txSD8W+|s4DIH44r(A*` zFc%&KYNMfJwZD9CM{C4OOM212=Kxb>kGznEaC91!L}}rwF*jQKwURxw!#Y7X&pv|kBa4XqJK=d$gONnO-&tDKBA*O!`FdksD24Mk`(qzm~ zaT&1WX%mK(rnX;!WY&?0*Az0R2P8C)XsR+Je2`I}E`losPOiY`m&IcO;pLl$K|Smr z&Ut8WRohEotA{#Q>{Iv5c0?-|7>!1!1R(LEzSfu6Q4`IUTw2ji|7y+rBzI#xUA44^ z1Vz>>+YIqsCuDPIa`3Tk$c^}9)v3O9-qB|?AZ;?4D=>3udX*Sow z62B`@)i3tsO_xkx^8zf3o=+dE!l^&u@r&Q7N$qC?yQr?Ee_OV<@;e+G$+>$RK20BT z_yYd-NJA%4YocjtM#lgF0Bj%t06qW!kQWtJP-ZZ)vvoGHb#`KKws5vKu{SU?`OkrN zNu0OcBt#V5c|a>lcy9-9Q%rfvRQ)UQ=1=WY8_qY}%G2h-8b@4pl_X7YW<%0q}JfwwbjUF$ru@_hD{a^dtFBu-AMGC;jfD8A(_ZT zXm0KkF1T=cs#Jd2T9d?<(2~T(SX3UuOBN2Ot0YS!NkEGAQ&CCbxp<>h zyie%^d7Y2+M^`z`no>4#_EdG;>}>VSsf^Gx62VP$399q*c_& zyKZxmRn1fbpF0_^4Rr{&zzMxjttnLb(5B-dioS1h`F_^tah=ef-bEvdTT&gXW%UyLgtve6xGc2T{X@9@gv}+YMtaqX zO3%CmU=I8CLY>AQ>Q-)`g2=>Oi?uiuj{GF*yaGx&obL$FIy2>Nz+7) z&f5BDjU=x%-i6olgowJr8IBt!(z?O48_C|8zt+B%{Qh^4MA1oVxh0hnZU(>r&QVYR z=Kl=R^xq(z7!2*~tV|rOJ?NdCO`HEfdCRUm1OB}558^RzO*uJ+9d1uC?@UEZF-MRx zQv{M4MiQzlsi3N=OshJnE+GnmB2`+}7M4;+T9$iOR#xUFe$@C}%aT^!bpPCZ@Hfoh z&u&}kTID$*2O|li+Z!bCGPS8sOe`v?53z?MHNMD8%1Gfe|9R#muJA%69;aICcIw5$ zn;=Sz{pUc*P2AwXpZ&v+!Nj1SaOHioi677%R~;GHA2X-OWbgjd*(O)*CN#!|$<5HpPqgF`6pFJRVc#G09#5FNHG79dtqM8HLs}e~tFo4!E zvYoX!OM8w$YH+gElBGd4IHx7vjoB(>hiQp+}B14GGR?Q zm>(?$p@4`V9T?6sVY)4Xbx7aG!1#?B0;2xzHdAE9Cl>Bl*)$c*mkVSKuoQ#zB67wh ztmjdmQ}DkyZTZ>d_wyeIWB`W$-4ESBjQ~s7Cu0Cy-v=NFh#IIF-~o6Gb?veL(LW4Z zArUu>`*W8!mU2jf@Co}Hg$|m8oHCoVPy#vla||}$i|d};loDA$m^v|P@m1YezEF{N zPmwX1i4;-vU^anAkY5m4klH`2KyDNoU)Yal| z=cv_)MYq2U>M0%I6lPai>=a+v0%}*BbnY4OoleBUjPg4H)|mG3;_Y;DJFpY$7JOt4 zMeqbt1(flSAb*`O%o5}V297cJd5|vSI~?zl2bc@0lLCyd@D`Jb z3Ue84kExFYM3ARVxh^yxAMpIjew!Rfa1MqTP7!b|Cmg#9^LD^l3=By+Ldb)HI>t)k zCl(-lD}nj*W2s~G)#;4qDFBp28l*ohSq|}rHK7O~0-Pu!kb^&0{aX*aWaNbP&^8~) zk(ss?8W{z)6zBt((30~A;erytIwFg$*&9iA2$3Eo1=Xkv0a=uDd=Otxq=Nv=Ln!{i z>>*-^M!+9$OsmC4bO#9!TRYoMQsvZNmFqYCxM{dl``Xyg%?N?jZ;_`x2lCKs?_YFW?^tybZ*=26ZG? za21yo%=GojXO6Nv$OHiX!zxD$5QD)d3yujHzb6vf#lUdXhn~wdVzd{-Y?#r6=DSyjVY^_AbG<9TXDab zrlhu2V}r~dPCT2`)5mVB{P|mHi(fppq(PVDl~#S zs9<1{B?|;u3p?j2>kyjxqsQ}Pz<&{%-IgI6*wT+ZdtnlUh+!Jz2p>hATwqI}H?t(b zRGY!Hr$aeT0&~#;b%%5kGElEn5h|CnIF|oFzG49D3Jh+-4Rl%t_JdQw0%udnp+3H! zLB5|6pPHdP(h0@p`&Ikvg>CDAeC0y=6al?hhO^){B8@n?$e(Qo(vzRpI-lnY`2zdn zE9De*lJ9O87(oNv<{|{(JaLOYa)t&sMHfFV*nzyk8{a`DjsOHgU$Odn`dW*n+}5J? z-HM(#MXn+?Wk#|W&U<}oJ!u@cc33=_U{l~SM|Rm>-4L@@s)Inc`t+~%>iQ; z&Plu9d6a@%1O=|QO56{&f9`$9>*RQ!4s6?X+h%r?rg-exZsnFE)G@SmV=sD2jqvV6 z`5*wOKq~z{T5wm;nhVcW-fXW@(v?vI-*tON7}&U-3xZ!Ij3;P4iC~=={%LZz6sT=0 zw+%4gowbjOI}#^=o)SPj>P2J)zn}-yu9d$pc)9<#EU@$3A`*n|!m!JE^ozi&w-muE zAw915CK@KooaG$Xhn!}BT%~+YGyS>P4N3mN&O0aIsh`1Q`Rqge)JLEs=bfz;^qTEf zur8|pSsFiGfe!@x0m#t;>Y|2itTD)UY~JOlIk+Jd{tujUmh<1HSode8*k|YJB!VrA z)(cAp&#YxWz^5<9>F;8%O)BYMpXcP#k$z$Pu0;r^eikecK+k^@X@|uWh9F>JU?~}KLp;u&UbWU_Jpm^_a8bZnrNm0JOEc<>#`>~Pq=2+ zxmQiU7kMseh#G;5w?);PuI;}77^&X&Y zdI!MR8FU}{33Z@Xz@5@ff#US4Z&L{RzliDtz~Zj9Kz&<>kLzj&U42~_JLyMOqQ=fW zJM^i8HwHcm@vXzh(Rm&6c$JTohaGt# z{Ng%uiVhp5a_;caw2%5^+E)cR0L7uhuBePU{4VuN)Xydeas3IE1JJ$?U~`Ag|F31I z-u{mz?9m&bx=Wd3kO!4l|88{sFZC|;{V#QcP89xA2{N@1=re$z3mth2^=p)t4xsD4 zq-(%ypw_T%NvHmH)#EN;(93>Z%Dxmj=^WL?A9c{xQR?@vG~8Qg$c<>bO1P&3I^>nm z?Y?pYt~(9(GlAwP9drx6KxN>wAwCPbLusIXhw6SDz-{mY6vz8uli|osu#tlR*O9T{ zlVS|`%b_pb;IFBDoB~_6f;RYI#s$jHkv$7@Sa+!Fz~0tFN%#2>`LT9TE`^vvaft@} z?cpr=Gjb+n_H2pbD8W2y$wD+mn0>CH2eH4thYn0P#SFr{I@2 zL%S65%wXisjDq^xP&z|t4tx9s`C&ZNBf)?51{!E=Ukv!u-2H3A`LW{+NqGf10&@cB z{tIX>0~)*l>;d-xXnR6D4HRgXkjuzg;PDNJ5A+PH16=4Cpd(MGxjD_zDbFDf0REUU zIe-WC3!?$n0dD7@Jrd}j0QdHRI97q&1X`1IFQ{CYUw}4{1CwCzN9SP9VZh;ir~|L5 ztc0@=;05O?V`dV_0p?P^GB(JFB*Xf904TpQVXZ3Qk+q&zl-B|;>Hfn3H!17Oj^dKzI`7_8X0nT+4_XNExfL3>)L)Zh(e#T4^@b5Ux z-vO{6@beM$!Gl#nxdQN%!Q2!<#wLQSv!HK3lpVRs2173JCgeID`f0EUs#jD8DNcf} z#ToRr;~dlBJFs4ls1NAWGlLyb{Sb7C>W{NQC#n9?``{jfEvI(+Exw+ItLg=xFP8mvq|S0*DEeR(h5(*ji^^a2jmckQcz&*0-A-_6Ocmy;ulx z>afEg;Dx84s~%)B;F62d2t;F$zdyc&g7Iz?L~0<0r9wL%&eI_%57rV3&yQdp-V666 z0W5%XaVko}m!X~ybDx9U)4;EKLfaK|UJW|@9M&pE(QwX|k{@(`kVkNSw}!qspj#c! zKZ)>6!W(#a2H=#iC-qM;0*>ASjuanQi{`VG7GW)zLvvK2t*_hDI*!*}pm@;xp#DRb z`uDUBd)x#Fg?!VS`~rHNjm%glWCl8G#_R-G0`L{UQ|Ozl=Ly|kz>CtIW}s^+dIakX z1F(boV?+ME^*^p@4bT(DOkgYy>h}Ta0G|Jsy}IzA`#jyf|1?ji!x+rF`RX|3wf>Ba zSqf197{D9qj6g#&;AsJPB|-f&fG?o_i@uN683N!3@C^EWq5KY@4B%(O*fT?2^f%hl z{t;);r&s1G{?lA~)`s&neRi-8>S<7?=Odac_J{gndLCll1swhYypI7MfD>B|Fc$jW z)%OYYZ=qxW&On`(4FCrW{bvmI$x!ZxH6B7a>}8wQUy;f4|50|w|C{V!&W+cN>wQl9 zaG-Ai)WHX}XF+{_H@ZIs-0T5v1Fm*ZP5|f!un5|p>idQI4JeHOfL2BdDT^O9-RL#Jn%Hk`}qF_4?51mLfN(6;RF7$q`vbPh%wawG*;2GQ*R{YzC==y z7V1fQUkRm%+Y7O)>g5@f`dZ{G|LfXaXj=y`4`791pR)jT?il*63O`2g z060V6=MJMcLz*n>%)))@uO2!moS~9>0lqJN_3gkfF zNkE=L-{bHAGD4qOj}YRY9PVkRF_=w9)etYLp}ie=>ImfwfTIAduLB~1SULhNq3_Y4 zeGK4J!1D}1J=6~w;D!NCbb)&YxDW6Epw(f3UsU=tKify{!wYmgr`BNhG~`3mowyue0o0gg2PSc-hXCVv4~ zrT0zUpdKKM0(T8fpic>4A2lru;G}<3D`TOBg*IzO-x$rHuXE81;VrNUaz;H+IEq8X zr~-{glknSkHhv#3#LMwo{0VNvyYW8!CH{lB5(UwcIFd+ulU!0jibw^iA@7p+$O3YZ zd`-@h?-`acW*|y4j*KVc#{@9(OcFDOnZ(Ry<}mY_wajPCW~Pxj!JKBkWzASS)}9Sx z!`a?!KXxEHhSj-z%lK&aO$WnXUz{MXn{TWv&xln_LgOo_D?K`m5_>*LJy) z+)QpI_mum|{pC^e7%fsmI@n%i$bYT zE4&qcibzGCqMu^2VzFYQVy9x4;(`(>86~eYQJN_&lnzR{Ql)fPdMmZcC}ol|Rhg;m zudGrIRnAl{Q+}d6qWo1wR7NV9%1)(Fd8y90J$BQ%uXW$%e#HHh`x*D|-0!&ms^-;E z>Ns`0dXRdA#!@5Kcxj?Fy){Leg_=d0^_m?%)qk;n@$EX@3!P4QVJsHpAcvD~1nP-O zP=E9mT7zfedH4go6tBVS@n*aOGZX|*vkYtcUzCjMN1Uc*_M?nsk8N~1) z2Xl~vit%OqK@N#bJ;-4?$YCDy0rN4liP^$zXHGI_S;Wdf4h|rP2sWD?z>Z>PyC9Im z8dv0M=PGwib$|$$M98v7Hsc4J`UIG02Ax#;}YN`Vl#zuaU#cy>4ymy7Qg>cfPrE_*$Z<3_Z!FW{Cwxmjbk?++<0(v&W#H<+HTysasH;o?LTgs-F|rc;*Gy< zUqXWN6eU)s*M(QhA6+mklKw+(G~+HMQwrMA=8`?MWH z=z3t=mbS%hv)U%Km9+)8DchXe?At8bjM~^A`~R^1hj%(L`|0M5AJT6Mci&ucb1_^; z+&FdP;EmlkKDn{z#(UTQy3yxG{EZNV_((oZ4B6+)FH11wrFc2Gu{wZpcolPv^YWgZCEc`SH1&XiTNz!UZXt#hZjvj|C31(O2_ zi3jNK5LW=ih<*6>mwXjj@NN7Zkq-x%F?&mVK)hajN4!PiryrFZl?00;#QEYn$r7=T zc&tIfmjIdxtRfxzcg^|xKSHtbdi|K>snkj+A4{G{O=(RkliGFOnfKq;mQ+h>B%>rp zJKOUlYlL$4Kj8ArFz+Cu(St^YkHHHKMxP^Nv>ok02hlvlqs@p#I}r!*V-flQEe6kZ z0NEfTh(8n26f_BKK�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 z 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